Detailed Memory map of MSX?

Por MSXGuy

Supporter (4)

Imagen del MSXGuy

15-01-2022, 12:45

Hello.

I have been trying to find a full and detailed memory map for the MSX computers, but I couldn't find anything.
Is there somewhere where I can find something like the next link for the C64?

https://sta.c64.org/cbm64mem.html

Thanks.

Login sesión o register para postear comentarios

Por aoineko

Champion (404)

Imagen del aoineko

15-01-2022, 13:18

For MSX:
- In page #0 (address 0000h-3FFFh) you have the Main-ROM's BIOS that contain many routines and some data.

- In page #3 (address A000h-FFFFh) you have BIOS working area with many variables (staring from F380h or F30Fh)

Por Manuel

Ascended (18718)

Imagen del Manuel

15-01-2022, 17:19

Don't forget, C64 is a single machine. MSX is a standard, which allows for more variation and there are mechanisms in place to compensate for that.
It would be interesting though to understand what part is the most interesting for you and what you want to use the information for. Then we can give more detailed information.

Por MSXGuy

Supporter (4)

Imagen del MSXGuy

17-01-2022, 08:56

Yes, that is exactly what I was looking for. Thanks.

Manuel wrote:

Don't forget, C64 is a single machine. MSX is a standard, which allows for more variation and there are mechanisms in place to compensate for that.
It would be interesting though to understand what part is the most interesting for you and what you want to use the information for. Then we can give more detailed information.

Coming from the C64 world, the MSX is somehow confusing.
If MSX is a standard, wouldn't memory addressing, BIOS calls and other key parts of the computers be the same?
Otherwise, software and hardware would be incompatible between machines. What kind of variation are you refering to?

Por gdx

Enlighted (5342)

Imagen del gdx

17-01-2022, 09:37

On MSX, you need to understand how slots work and how the system handles them. You need to have an overview of the existing configurations and anticipate how they might differ depending on the situation in which your program will be run.

If you look up the routines in the ROMs and call them directly, you'll get a program that only works on your model (and a few others with luck). You have to go as much as possible through the BIOS jump tables and the few routines that have been declared standard.

Some I/O ports react differently depending on the MSX used. And don't consider free RAM to contain the same values at boot.