> > The slot containing the BIOS which should be used on a MSX computer > > can be found at location #FCC1. MSX1 documentation claims that this > > address contains a byte indicating whether or not slot 0 is expanded, > > but all later ASCII documentation -including the MSX Datapack- defines > > it as slot address of the BIOS/MAIN ROM. > > But #FCC1 is RAM. The slot address in that system variable is set by the > BIOS at boot time. Now let's say that the BIOS didn't to that job for > me. How could I find out where's the MAIN-ROM for that computer?
Well, if you don't want to refer to #FCC1, I guess the only way to find the 'true' main rom would be selecting page 0 for every (sub)slot and checking whether the contents of the presently selected page makes sense as a main rom. You could use for example the fact that most BIOS calls will start with a JP-instruction to discern the main rom from the sub rom or other roms. Then, if you happen to end up with more than one main rom, you select the main rom which has the highest value for the MSX identifier byte (location #002d ???). Hmm, isn't it much easier and safer to use the value at #FCC1? Regards, Bernard Lamers (P.S. Javi, congratulations with your new job. We are waiting for you over here.) -- For info, see http://www.stack.nl/~wynke/MSX/listinfo.html