• Please review our updated Terms and Rules here

Tandy 1000 EX/HX DMA Solution?

Great Hierophant

Veteran Member
Joined
Mar 22, 2006
Messages
1,928
Location
Massachusetts, USA
I cannot seem to find any homebrew memory board upgrades for the Tandy 1000 EX or HX that include the DMA function. DMA is typically required for DRAM refresh, but SRAM does not need periodic refresh and all homebrew upgrades use SRAM. DMA is also typically used for floppy disk drive data transfer, but if the floppy drive is reading or writing, you are pretty much waiting until it finishes, DMA or no DMA. DMA is also used by things like a Sound Blaster and an ECP parallel port, but try getting one of those things to fit inside the cavity for the PLUS cards in the EX and HX!

Anyway, there is one benefit to DMA that I feel is important, and that is compatibility with floppy disk protection. There are several games with protection schemes that will refuse to work if they do not see a DMA controller in a "PC", which is what a Tandy identifies as to non-Tandy aware software. (A few do work on a PCjr, which has no DMA, because the protection has a DMA-less exception for that system). They include :

Crossfire (PC) (Not PCjr. compatible)
Crossfire (PCjr rev1)
Frogger (Not PCjr. compatible)
GATO (v1.4)
The Great Escape (Thunder Mountain)
Hardball (Accolade) [5.25 rev0] (EGA Disk)
Hardball (Accolade) [5.25 rev1] (EGA Disk)
Hardball (Tandy Corp.)
King's Quest (128k Sierra PC rev0)
King's Quest (128k Sierra PC rev1)
Mr. Cool (rev0)
Quink (Thunder Mountain)
Top Gun (Thunder Mountain rev0)
Ultima II (Sierra PC rev0)
Ultima II (Sierra PCjr)
Ultima III (rev0)
Ultima III (rev1)
Ultima III (rev2)
Ulysses and the Golden Fleece (Not PCjr. compatible)

This video shows an ISA card solution, but I can see no reason why it could not be adapter to the PLUS form factor or attached to a PLUS adapter to add DMA to the EX or HX :
(links to github in video's description) Anyone have any experience with this?
 
The BOM for adding DMA to an EX/HX is basically the same so, sure, it’s doable if someone wants to bother. (The Tandy RAM Plus cards embedded the 8237 into a custom chip instead of using the discrete parts, which made it easier to fit into the small form factor, but logically it’s the same circuit as the DMA on the original Tandy 1000 memory expansion card.) The main difference from this project is instead of having a dedicated card edge for some of the “extra” signals the Tandy bus does some nonstandard shenanigans with the main 62 pins.

Given that “cracked” versions of most copy protected software exists I have kind of a hard time working up the motivation to implement this just to get a slightly more compatible floppy disk controller out of it. Also, for my HX I worked out an evil method of abusing one of the proprietary signals meant for the accessory DMA controller to instead selectively override the onboard ROM, freeing up the E and start of the F segments for expansion memory and ROM, which is for me at least far more useful.

(Although I guess maybe I could implement that memory hack *and* the DMA controller if I were clever? Might need an open collector buffer…)
 
There may always be a program with an unknown protection and not cracked, so adding the DMA controller eliminates one reason why the program may not work with these machines. Some people would like to run original disks rather than copies if possible.
 
Back
Top