OpenMSX Universal ROMs Mapper

Page 3/3
1 | 2 |

By Accumulator

Champion (329)

Accumulator's picture

16-04-2023, 01:50

I was creating some cheat possibilities for games, so reading values, and watching where the values were changing.
And of course starting the ROM from DOS or BASIC. The error is ithat selected ports, slots, sec. slots are not mapped correctly when executing init address the specified slot.
Some ROMs have initial slot values in the header of the ROM, before Init address.
When starting ROM from DOS or BASIC it fails in reset, screen corruption or other unwanted behavior.
I am able to start any ROM in any slot from DOS or BASIC, but the slot/page selection was unclear.
The solution is not far in the future.. I think I nailed the problem..
1) Stack Pointer, 2) Address Values, 3) Base Mapper selector, 4) Size of virtual Ram Blocks, 5) RAM above &hF0F0, 6) ....

2Megabit ROMs and having 64kB RAM, possible even with ASCII 16 mapper.. Final solution and details follow...

Cartridge Mapper you can compare with car engine manufacturers, every car producer puts her name on it, and just another adjustment. It seems 100 engine manufacturers, and in fact there are only 10 or so.....

By gdx

Enlighted (6207)

gdx's picture

16-04-2023, 02:30

As for me, I noticed that OpenMSX 0.15 (On Mac + Nekolauncher) has problems when I change some Roms of an extension or machine. I didn't talk about it because I'm using an old version and I don't understand exactly what's going on. The problem may come from NekoLauncher.

In summary, when I replace the Roms of extension or machine, sometimes an error message tells me that the SHA1 of another Rom is incorrect and the emulation does not start. Yet the added SHA1 is correct and the Rom SHA1 indicated as incorrect has not been modified.

So it would seem that there is indeed a bug in the interpretation of SHA1 which occurs in certain situations.

By TomH

Champion (361)

TomH's picture

17-04-2023, 17:46

Accumulator wrote:

The mapper is detectable by comparing write addresses in the start of the running code.
Konami5, VRC, Konami8 , ASCII8, ASCII16 etc have each their own way of addressing the memory space.

There are titles, especially newer homebrews, that keep their title screen in the initial bank and don't do any paging prior to user interaction.

EDIT: no doubt that's why the tool you've linked to warns — as automatically translated — "Depending on the type of ROM, it may not be saved correctly."

Page 3/3
1 | 2 |