If you come up with a clear scenario which works on real MSX but not in openMSX, we can investigate.
Already working on it..... however can you supply me with a link, where I can find all ROMs, easy to download?
I am now working with filehunter zip files and extracting one by one. Of course I can use the firefox plugin download'm all and auto extract, but I think 'the filehunter' is not so happy with all the concurrent downloaded files.
Checking now file by file.
I noticed a similarity by reading and writing in the address space 4000h-3fffh, by the ROM. Similar addresses when initializing and zero-ing certain address-spaces.
If I can automate it with 200 ROMs, auto checking, would be super helpful. So I can put a label on the certain address-space, instead of 'Mapper !' or 'Mapper 2'
The names I got from the OpenMSX array in the source file.
In my opinion some Mappers overlap, and there are less mappers than currently noted. There are only few real producers of the mapper IC. Addressing different address in reading or writing to change the virtual mapping, which would suggest another producer but it is just different addressing to confuse.
Just make a single example with a single ROM, so that I can understand what you mean.
Just in text, quickly..
If you disassemble a Rom, from & h4010, and save the init address, stored in &h4002 and & h4002,
You will see values written to certain addresses, for example Konami to &h6000, &h8000, etc
Also the Stack Pointer is noticeable, eg. & HF380, moving stack.
Writing to addreses in slot 1 ( cartridge slot 1), which should be read only, because it is a Rom..
Some using the 'where am I slot assembly code, which slot am i', writing to an slot 1 address space which should be RO.
And some other, does it make any sense?
OK, downloaded 5,182 ROMs... Sorry 'File-Hunter'!! You can just call me 'Download-Nazi'... My apologies for the used bandwidth, on the other hand, your lucky the ROMs are not like the current size of games for XBOX or PS4/5!!
I will do some analyzing.....
Just in text, quickly..
If you disassemble a Rom, from & h4010, and save the init address, stored in &h4002 and & h4002,
You will see values written to certain addresses, for example Konami to &h6000, &h8000, etc
Also the Stack Pointer is noticeable, eg. & HF380, moving stack.
Writing to addreses in slot 1 ( cartridge slot 1), which should be read only, because it is a Rom..
Some using the 'where am I slot assembly code, which slot am i', writing to an slot 1 address space which should be RO.
And some other, does it make any sense?
Sorry, but from this description I really have no idea what the problem in openMSX is... You explain how a ROM is programming the mapper by writing values to it to select banks. But that's all I understand from your description above.
If cartridge is in slot 1 and I select page 1, slot 1, and execute it gives an error. When I select page 1, slot 0, it executes the code....Not a problem... fine by me!
Unadvertised help is never appreciated...
OK, downloaded 5,182 ROMs... Sorry 'File-Hunter'!! You can just call me 'Download-Nazi'... My apologies for the used bandwidth, on the other hand, your lucky the ROMs are not like the current size of games for XBOX or PS4/5!!
I will do some analyzing.....
No worries. That is what the site is for. Some people download the complete 100GB, although I prefer people using the bittorrent for that.
As long as someone does not cause server problems, people can download all they want. If they hammer the server or cause issues I ban them. This has only happened 3 times in all these years.
Thank you very much! To be honest, I felt bit guilty, harvesting all the ROMs for MSX1 and up. You relieved me from any sorrows that may be.
Now you are here, what does the versions exactly mean? I see [a] [b] [etc] [etc] with different file sizes. To what extend do they differ from each other? Some ROMs have initial Mapper settings or codes in the header or trailer. Are they kept original or are they modified?
I have seen some patches to change the mapper configuration to use another mapper than originally intended.
If cartridge is in slot 1 and I select page 1, slot 1, and execute it gives an error. When I select page 1, slot 0, it executes the code....Not a problem... fine by me!
Unadvertised help is never appreciated...
Can you tell me exactly what you are doing? Are you running some test program? Are you doing something in the debugger? What do you mean with 'gives an error'? What error?
I'd like to be able to see what you're seeing and for that I need to be able to exactly reproduce your steps. But so far it's totally unclear to me, which makes it impossible to investigate.