First post, by carlostex
Recently there seems to exist a lot of interest in replicating/reengineering hacks, new boards, convwerters, new tools etc...
As far as sound cards, no one can complain. There is the MIF-IPC replica, to give new life to the otherwise useless old MPU-401 BOB's, the very recent but extremely successful Innovation SSI-2001 project and even shock__'s DSS/Covox all in one replica. Other projects are in the loom, including the Covox Sound Master and the newer GUS PnP replica.
What's a Tandy 1000 card, why and what is this all about?
On the early days of IBM PC there was nothing but PC Speaker. Clones started to appear but since the IBM PC was focused into the business market there was no need for a more complex and capable sound device. Clone makers just need to make their clone work run DOS, Lotus 1-2-3 and Wordstar. (Yes i know it was more than that).
Fortunately, although badly executed, IBM did enter the home market while keeping (arguably) compatibility with their own IBM PC standard. Because it was a home computer, it needed better graphics and it needed sound. So they expanded on CGA and used a rather simple (but far superior to the PC Speaker) 3 voice generator chip, the TI SN76489. his was the PCjr.
Although the PCjr failed, Tandy had cloned the PCjr, carrying over the enhanced graphics and sound (albeit with slight changes) and where IBM failed Tandy succeeded. Tandy Radio Shack being extremely popular at the time, provided a line of computers of their own that could be sold and supported in virtually every single store.
How is this important on an historical context? A lot of game publishers released games with both support for IBM PC and Tandy, supporting these computers out of the box. If you had a Tandy you would enjoy the enhanced graphics and sound if not... well some people got Tandy's later while others "suffered" with their IBM PC's and/or clones. Point is if you didn't have a Tandy, you couldn't enjoy such enhancements.
Why didn't Tandy release a card themselves for IBM PC's and clones?
Apparently they did have development boards, including the PSSJ and SN74689 (or should it be the NCR clone?). Commercially, i don't think they did.
So what's the goal here?
The goal would be at minimum provide SN76489 sound output via an ISA card installed on your normal XT or AT system. A little further would be to provide some way this board could provide Tandy graphics and BIOS extensions, via hardware or a TSR.
A complete but much more difficult would be all of the above, including PSSJ capability. This would be nearly impossible, short of maybe cannibalizing or harvesting PSSJ circuitry fro dead Tandy 1000's.
This hypothetical card would allow to enjoy Tandy 3 voice at minimum, Tandy Graphics and sound if going a little further or the complete Tandy multimedia capabilities for the last but nearly impossible choice.
The most realistic goal at the moment, is to consider only basic 3 voice sound chip, at least for starters.
Is this possible to achieve?
Theoretically yes, as mentioned by users here and other forums, it would be a simple circuit for the SN76489 sound generator, and probably cheap to produce. At the same time we would most likely need some software to complete the functionality.
So what are the problems/challenges this would present?
As mentioned on this forum some problems arise:
1 - Tandy sound is accessed through port C0h, which unfortunately is where the second DMA controller resides for AT systems;
2 - Some games need to detect Tandy specific BIOS extensions, or absolutely need Tandy Graphics to run;
3 - Some games will be speed sensitive;
How would you solve/go around those problems?
1- Either place the hardware directly on port 0xC0h which wouldn't be a problem for XT systems, or place it somewhere else and then redirect the calls via a TSR. EMM386 is not an option, though. Either way, Japael makes a good point about C0h and the possibility of it still working even without any redirection.
2 - Tandy BIOS extensions shouldn't be hard to emulate? Probably games just look for a specific string? Tandy graphics could also be emulated, as they are just CGA extensions. How it would be emulated is the question.
3 - For XT or even low end AT systems this wouldn't be a huge problem. I think these systems are slow enough and/or have still a margin to be slowed down further.
For faster systems such as 386's and even faster, it could be likely that some games would be unplayable, but still this does not invalidate the project IMO.
So what do we need to do this?
At first we need brains. Or if you prefer brain power, but then it also needs dedication.
First decision would be what we are going to do? Only simple 3 voice chip support or more than that?
Then we would need an engineer that would design the circuit for the ISA card. How complex the work would be would depend on decisions made.
Then someone really well versed in assembly so that we could have an effective TSR that would do all the artificial stuff we would eventually need.
What's the point of this if we have DOSBox or even TandEM?
Because the point is exactly not use any kind of emulation whatsoever. Even if some layer of own emulation might be needed in order to make the actual hardware work, the point of this would effectively be to create real hardware Tandy 1000 sound card and not just emulating Tandy sound.
All in all, i wold like to at least have a discussion about this without any unecessary derailing. Let the brainstorm begin. 😎