Orchestra 90 for Dragon works on an MPI
Posted: Sat Aug 12, 2017 8:55 pm
Hello,
When Ed Snider (aka Zippster) began the production of the COCODAC-16 (an Orchestra 90 module that may be used
with CoCo and Dragon machines) he used the ROM from the last version of the Orchestra90 for the Dragon, that's to say V3S6.
Unfortunately this version needs to run in MAP1 to avoid technical hardware problems. So not good to be used from an EPROM and less in a Dragon32!
The problem is that the MultiPack (and the mini-MPI) do change only the 'hardware' link to the chosen slot via /SCS while it keeps the /CTS unaltered,
so that the ROM is not changed (and keeps working for a CoCo). But Dragon uses the /CART interrupt that is sent in the MPI to the slot related to
the /CTS, so it fails, being unable to access the drives in any different slot than the one where the Orc90 ROM is.
The only way to overcome this problem is to avoid using the CART signal (DRQ) and the NMI to detect the end of sector (read or write) too.
After some analysis and test cycles, Stewart found a very clever way to solve all of those problems.
We have been testing the new version V3S7 and now it seems solid enough to be published so that anyone could use it.
This version *must* be run from ROM in map0, because it uses the POKE&HFFD7,0 to set double speed at ROM area, as does the DELTA cartridge too.
The attached ZIP contains these files:
- Source code Orc90v3s7
- ROM that uses computer internal DAC
- ROM that sends data to Orchestra cartridge cheers
Stew & Pere
Ps You can see the whole history about this ROM conversion in this "Old thread"
viewtopic.php?f=5&t=5515
When Ed Snider (aka Zippster) began the production of the COCODAC-16 (an Orchestra 90 module that may be used
with CoCo and Dragon machines) he used the ROM from the last version of the Orchestra90 for the Dragon, that's to say V3S6.
Unfortunately this version needs to run in MAP1 to avoid technical hardware problems. So not good to be used from an EPROM and less in a Dragon32!
The problem is that the MultiPack (and the mini-MPI) do change only the 'hardware' link to the chosen slot via /SCS while it keeps the /CTS unaltered,
so that the ROM is not changed (and keeps working for a CoCo). But Dragon uses the /CART interrupt that is sent in the MPI to the slot related to
the /CTS, so it fails, being unable to access the drives in any different slot than the one where the Orc90 ROM is.
The only way to overcome this problem is to avoid using the CART signal (DRQ) and the NMI to detect the end of sector (read or write) too.
After some analysis and test cycles, Stewart found a very clever way to solve all of those problems.
We have been testing the new version V3S7 and now it seems solid enough to be published so that anyone could use it.
This version *must* be run from ROM in map0, because it uses the POKE&HFFD7,0 to set double speed at ROM area, as does the DELTA cartridge too.
The attached ZIP contains these files:
- Source code Orc90v3s7
- ROM that uses computer internal DAC
- ROM that sends data to Orchestra cartridge cheers
Stew & Pere
Ps You can see the whole history about this ROM conversion in this "Old thread"
viewtopic.php?f=5&t=5515