Daniel Caetano wrote: >> How about in the reverse case (MSX2 ROM to MSX machine)? > > Then I think it'll hang on boot. MSX2 BIOS will probably look > a lot of things that do not even exist on MSX1 (it will read the > clock, set VDP palette, etc)
I wonder... a lot of things won't pose any problems. Take the palette update for example, setting the palette doesn't give 'feedback' to the CPU, so even if a palette is not supported the BIOS won't notice that. I also think that settings made to 'unknown' VDP registers pass through transparently, although I don't really know the exact VDP behaviour in that case. When looking at the new status registers in the v9938 (which are the only things the BIOS could 'crash' on), most flags in the 'new' registers aren't used by the BIOS. However there is one real problem: the CE bit (Command Execute flag). MSX2 BIOSes definately do VDP commands, and they will get into an endless loop if the CE bit never gets reset. However, on the brighter side, bit 0 of s#0 is part of the '5th sprite number', and I think when there is no 5th sprite on a line that bit's value will be 0. So that probably won't give problems either! If clock settings are a problem (are they? my previous msx at least used to have a clockchip with a failing battery), then you can indeed use that 'adapted' BIOS. However in that case the clockchip is indeed a factor which makes a 'real' MSX2 BIOS fail to run on MSX1. Maybe the BIOS will however check the VDP ID bits in (I believe) status register 1. If that would make it fail that would be kind of a pity, wouldn't it, eh? ;) Actually, I doubt it does, because on the v9938 it reads '000', which can hardly become any lower, so there's not much to compare with (cp 0 : jp nc? lol). At least it doesn't have any problems with my v9958 which reads out as 010. ~Grauw --- Ushiko-san! Kimi wa doushite, Ushiko-san nan da!! _______________________________________________ MSX mailing list ([EMAIL PROTECTED]) Info page: http://lists.stack.nl/mailman/listinfo/msx