DragonMMC & Superdos bugs
Posted: Mon Oct 29, 2012 11:27 am
Hi all,
Tape emulation is pretty much done and should work with a properly bit aligned cas file, such as the ones produced by Xroar.
Cartridge image loading also works, and a cart can be loaded and auto-started, e.g. a game, or just loaded e.g. a utility.
Tape and Cart emulation work on both the Dragon & CoCo (1,2, not tested on 3).
I'm currently working on adding disk image support to DragonMMC which is going quite well, I can mount a standard disk image (been experementing with the Diskdream image), and can load and run files off it, even ones that assemble from disk seem to work fine. It's about the same speed as real floppies at the moment as I have the AVR doing hexdumps of sectors as they are read, for debugging purposes but i expect things to speed up greatly once I stop doing this. Everything is read only at the moment but once I am sure that the translation is working correctly then enabling write should be easy enough.
I'm also planning on having the DOS emulation selectable, so that if you want to load something that doesn't play nice with DOS you can do so, by disabling dos. It should also be noted that at the moment I'm only supporting well behaved programs that make calls to the dos rom through the jump table at the beginning of the ROM, not things that make direct calls, if this turns out to affect a significant number of programs I may see what I can do. Also code that directly talks to the 2797 will not work for obvious reasons......
One thing that has struck me, does anyone have a list of bugs in Superdos that need fixing, as I may as well try and fix them whilst I'm about it, I can of course back port them to the main superdos code, so that we can fix the bugs in the normal version too.
Cheers.
Phill.
Tape emulation is pretty much done and should work with a properly bit aligned cas file, such as the ones produced by Xroar.
Cartridge image loading also works, and a cart can be loaded and auto-started, e.g. a game, or just loaded e.g. a utility.
Tape and Cart emulation work on both the Dragon & CoCo (1,2, not tested on 3).
I'm currently working on adding disk image support to DragonMMC which is going quite well, I can mount a standard disk image (been experementing with the Diskdream image), and can load and run files off it, even ones that assemble from disk seem to work fine. It's about the same speed as real floppies at the moment as I have the AVR doing hexdumps of sectors as they are read, for debugging purposes but i expect things to speed up greatly once I stop doing this. Everything is read only at the moment but once I am sure that the translation is working correctly then enabling write should be easy enough.
I'm also planning on having the DOS emulation selectable, so that if you want to load something that doesn't play nice with DOS you can do so, by disabling dos. It should also be noted that at the moment I'm only supporting well behaved programs that make calls to the dos rom through the jump table at the beginning of the ROM, not things that make direct calls, if this turns out to affect a significant number of programs I may see what I can do. Also code that directly talks to the 2797 will not work for obvious reasons......
One thing that has struck me, does anyone have a list of bugs in Superdos that need fixing, as I may as well try and fix them whilst I'm about it, I can of course back port them to the main superdos code, so that we can fix the bugs in the normal version too.
Cheers.
Phill.