It's a misconception mostly.
No, it's more user-friendly when you want to create a new machine in the blueMSX Machine Editor. But I know that openMSX does not have such tool. That's why you can't understand this different approach.
MB8877A(Fujitsu, not National Semiconductor) is seen on software side as a WDC WD1793/WD2793.
In blueMSX, it's named as National FDC because it's mainly used in National machines, but that's indeed a variant of WDC WD1793/WD2793. Similarly, blueMSX speaks about Philips FDC, Microsol FDC, SVI-738 FDC and Panasonic FDC.
National as computer brand, I see.
mars, thanks for all the info you gave. I'm going to see how far it gets me. I did notice that the 707 MSX ROM dump is different than the one that's on Hans Otten's site. There may have been multiple versions around. (Too bad it doesn't have a version number I can recognize.)
So far I learned:
- unlike what the Service and Technical Manual says, apparently the FDC registers are visible in all 4 pages (or at least page 1 and page 2), because the MSX-DOS that comes with the SVI-707 is reading the status reg from 0xBFB8.
- on the MSX-DOS disk there is the program "RAMDISK.COM", which also seems to write to the ROM swap registers.
You can also take a look at the blueMSX source code :
https://sourceforge.net/p/bluemsx/code/HEAD/tree/trunk/blueM...
As already precised, it's not perfect as launching directly MSX-DOS and using the mentioned poke does not work in blueMSX with this drive (but the poke works if I use the National FDC mapper for the MSX rom in a custom machine without the CP/M rom).
I don't know how it's possible it's working at all, because there's a bug in it: when reading these 2 special ROM switch registers, the switching should also be activated. After I implemented that and booting with the CP/M ROM (which is indeed the default and is in fact only 4kB in size), that ROM detected there was no CP/M disk and switched to the MSX-DOS ROM to boot the disk or get to disk-basic.
Next up I'll implement the ROM switching. That will at least make it go to MSX-DOS or disk basic.
To actually run CP/M disks I have to extend support for other formats in openMSX. It doesn't currently support such formats (40 tracks/side, 17 sectors/track and 256 bytes/sector), it seems.
I guess you are on the good way, I was suspecting that something was not emulated in the blueMSX implementation and it looks that you have just found out why the ROM switching did not work from CP/M to MSX-DOS when CP/M disk is absent.
To actually run CP/M disks I have to extend support for other formats in openMSX. It doesn't currently support such formats (40 tracks/side, 17 sectors/track and 256 bytes/sector), it seems.
Could you actually double check the SVI-738 disk emulation at a same time... I'm not quite sure if I have some wrong ROMs or is it just broken, but I seem to get loading errors, part of the files are missing etc... On the other hand I seem to have same problem on BlueMSX as well.
The original SVI-738 disk rom is source of trouble. It's better to use the SVI-738 Henrik Gilvad machine in blueMSX, as it has an improved disk rom.
The original SVI-738 disk rom is source of trouble. It's better to use the SVI-738 Henrik Gilvad machine in blueMSX, as it has an improved disk rom.
I know HG ROM is much better, but the original ROM is not broken in an original machine... It is just slow... Horribly show... especially with 720KB disks. I know this very well since I still have not bothered to desolder the original ROM from my SVI-738 (MSX2+) This comes back to the issue that there is probably something wrong with the emulation.
especially with 720KB disks.
??? SVI-738 disk drive can only handle 360kB disks.