Beep, beep, beep… that’s the most you’ll usually get out of a Tandy TRS-80 Model I! A sound card was simply not planned when the computer was developed in 1977. It was only later, when computers became more and more entertainment devices, that good sound also became more and more important. And today, a computer without sound is no longer conceivable!
Michael Wessel, a German retro computer enthusiast and electronics hacker living in California, has now developed a modern sound card for the Model I, the MIDI/80, and published it on Github. As a beta tester, I was able to try it out shortly after publication. Read about my experiences here.
“The MIDI/80 extension is a powerful and versatile General MIDI (GM) sound card and a complete MIDI interface,” says Michael Wessel, summarizing the functions on his GitHub page.
The GM sound can be generated in different ways: either a Waveblaster-compatible sound module can be used, which is plugged into the designated header of the MIDI/80. However, an external GM expander such as the Roland MT-32 can also be used at the MIDI OUT socket. The MIDI data can then be sent flexibly to one or both devices.
A small daughter board with MIDI IN and OUT jacks can be connected via two pin headers. This turns the MIDI/80 into a powerful MIDI processor. For example, a MIDI keyboard can be connected via MIDI IN and the TRS-80 records the data for storage or playback. The MIDI data recording is fast enough to allow real-time recording of entire multi-track, complex General MIDI songs.
Michael Wessel is actively developing the software for the TRS-80. Currently, there is already a DRUM TRACKER, a MIDI SYNTHESIZER and some demo songs. He has also developed a MIDI/80 board for the TRS-80 models III and IV. The software MIDORG/CMD transforms the TRS-80 into a full polyphonic multitimbral MIDI keyboard. The software is a collaboration with George Phillips.
Michael Wessel has published the complete project with hardware and software, including the Gerber data, on his Github page. This means that anyone who wants to build a sound card for their TRS-80 can easily do so themselves.
ORchestra/80
As early as 1980, the company Software Affair released a synthesizer expansion for the TRS-80. The Orchestra-80 is a combination of an expansion card and a software package. The circuit board contains a precision digital-to-analog converter and the associated electronics to convert the binary computer output signal into a high-fidelity audio signal. It supports six octave ranges and up to five simultaneous notes or voices over two stereo channels. There is also an easy-to-learn programming language for making music. Up to five voices can be generated with it with up to five instrument sounds at the same time. The language has functions for generating sophisticated computer-aided music. The software was developed especially for the Orchestra and was only compatible with it. The MIDI standard was not adopted until 1982. Later, the Orchestra was also available for Model III and IV.
I received the package directly from California with a fully assembled and soldered MIDI/80 card including the Adafruit MIDI-Port Breakout Board. I have since purchased the Waveblaster expansion board from Serdashop in Belgium. Since the card is plugged between the TRS-80 console and the expansion unit, two ribbon cables with post connectors are also needed, which I was able to crimp myself. According to Michael’s recommendation, the cables should be kept as short as possible to avoid external interference. The TRS-80 is poorly shielded and the connection between the console and the expansion unit is easily susceptible to interference. The cable connection was never a problem and the card always worked reliably.
The heart of the MIDI/80 is an STM/32 microcontroller of the type BluePill STM32F103C8T6 with 75 MHz ARM Cortex-M3, which is responsible for data exchange, timing and conversion. A simple 5V power supply is used to power the device.
The Expansion Bus is looped through completely. There are five LEDs on the card to visualize the read/write activities of the MIDI data. There are also DIP switches and a reset button. Speakers can be connected directly to the provided socket using a cinch plug. Further technical details can be found on the Github page.
Then you’re ready to go. First, I tried out the demo songs that Michael offers on the Github page as disk images for download and that can be run under LDOS. With these, the MIDI/80 can already show what it can do quite well. In any case, I was thrilled when I heard the great sound for the first time.
The DreamBlaster S2 card is a great addition here because it handles the MIDI data authentically. The sound is very clear and the beats are powerful. The TRS-80 transmits the data in real time directly from the memory to the sound card. For MIDI IN the card also has a buffer. Basically, the MIDI/80 can also be operated “standalone”. A MIDI keyboard, for example, can be used as a source device.
So I connected my Commodore MK-10 MIDI keyboard without further ado and played with that too – it works perfectly.
But things get more interesting with a USB-MIDI adapter for the PC. I use a Roland UM-One Mk2 for this. Under Linux, there is the powerful DAW software Ardour, which supports the USB MIDI adapter without the need to install drivers. This allows you to play MIDI songs and transfer them to the MIDI/80 via MIDI-IN. The TRS-80 can then receive the music data for storage. Michael Wessel provides a small tool for this (PLAYREC/CMD), which currently only stores the data in RAM and then can play it back. It would also be desirable to be able to save it to a file. However, I am sure that this function will be available very soon.
After the first tests, I can say that the expansion is working absolutely stably so far and is really fun. With DRUMS/CMD, the trashy keyboard turns into a drum set and MIDORG/CMD turns it into a complete synthesizer. So with the MIDI/80 you get a modern alternative to the Orchestra/80 with better sound and far more functions. Soon I will test the possibilities of controlling the extension from BASIC and creating midi files with the MIDI2BIN converter.