Close
0%
0%

MIDI-80 for the TRS-80

A MIDI Sound and Interface Card for the TRS-80 Model 1, III, and 4

Similar projects worth following
MIDI/80 is a powerful and versatile General MIDI (GM) sound card for the TRS-80 Model 1, III, and 4. It is also a full-fledged MIDI interface.

GM sound is either produced by a Waveblaster-compatible sound module that plugs onto MIDI/80's Waveblaster header or via a GM expander, such as the Roland Sound Canvas SC-55 or Roland MT-32, connected to MIDI/80's MIDI OUT DIN socket. MIDI data can be sent to either or both of these devices.

Standard MIDI IN & MIDI OUT DIN sockets (optional) turn your TRS-80 into a powerful MIDI processor. You can connect a standard MIDI keyboard to the MIDI IN DIN socket, and record MIDI messages with the TRS-80 into memory. MIDI messages can also be played back from the TRS-80 memory. The MIDI data recording is fast enough to allow for the real-time recording of entire multi-track complex GM songs.

Software for the TRS-80 is under active development. So far, we have a TRS-80 DRUM TRACKER, a TRS-80 MIDI SYNTHESIZER, and demo songs.

MIDI/80 is a MIDI Sound & MIDI Interface card for the TRS-80 Model 1, III, and 4.

MIDI/80 Model 1

TRS-80 Model with Expansion Interface, MIDI/80, and Orchestra 85 replica:

MIDI/80 Model 1

TRS-80 Model III with MIDI/80 and FreHD HD emulator connected to the MIDI/80 expansion port pass-through edge connector:

MIDI/80 Model III

MIDI/80 on a TRS-80 Model 4 with TRS-IO++:

MIDI/80 Model 4

Features

MIDI/80 offers:

  • A powerful and sonically impressive, versatile General MIDI (GM) sound & MIDI interface card for the TRS-80 Model 1, III, and 4.

    GM sound is either produced by a Waveblaster-compatible soundmodule that plugs onto MIDI/80's Waveblaster header, or via a GM expander (such as the Roland Sound Canvas SC-55 or Roland MT-32) conntected to MIDI/80's MIDI OUT DIN socket. MIDI data can be sent to either or both of these devices. Both the Waveblaster module as well as the MIDI DIN sockets are optional, but in order to act as a soundcard, either of these options need to be present.

  • Standard MIDI IN & MIDI OUT DIN sockets (optional) turn your TRS-80 into a powerful MIDI processor. You can connect a standard MIDI keyboard to the MIDI IN DIN socket, and record MIDI messages with the TRS-80 into memory. MIDI messages can also be played back from the TRS-80 memory. The MIDI data recording is fast enough to allow for the real-time recording of entire multi-track complex GM songs, i.e., from a PC playing back a .MID MIDI file via MIDIBAR.

  • Stand-alone mode: equipped with a Waveblaster sound module, MIDI/80 is also a "headless" GM expander, not unlike the Roland Sound Canvas SC-55 (without display though). The MIDI/80 firmware provides a standalone MIDI mode - this mode is enabled by putting DIP Switch 3 into "ON" position. No TRS-80 is required in this standalone mode, only a 5 V power supply and an external amplifier.

  • Compatible with popular TRS-80 standard expansions: Model 1 Expansion Interface, FreHD, Orchestra soundcards, Talker/80, etc.

  • OpenSource BluePill firmware, Gerbers, and TRS-80 software available here.

  • TRS-80 software available, and more under development: Drum Pattern Tracker, MIDI Recorder, TRS-80 Synthesizer, etc.

  • DIY friendly: only thru-hole and off-the-shelf components are used.

  • Inexpensive: MIDI/80 can be assembled for ~35 USD. The most significant cost factor is the Waveblaster module, if required. If you already own an external MIDI expander such as the Roland Sound Canvas or similar, no Waveblaster plugin module is required.

Technical Details

  • Requires standard 5V "wall wart" power supply; 1 to 2 Amps, center positive.

  • Requires an external stereo amplifier to be connected to the standard 3.5 mm stereo audio jack.

  • Powerful BluePill STM32F103C8T6 Microcontroller clocked at 75 MHz (ARM Cortex-M3).

  • Compatible with all Waveblaster soundcards from Serdashop that don't require a 12 V supply.

    Waveblasters

  • Uses off-the-shelf Adafruit MIDI breakout module. The MIDI sockets are optional, as is the Waveblaster sound module.

  • Five activity LEDs that indicate read and write activity on the TRS-80 IO bus related to MIDI/80, as well as incoming and outgoing MIDI message activity. Useful for debugging MIDI problems.

  • Full TRS-80 expansion port pass-through. MIDI/80 is a "good citizen on the bus" and compatible with Talker/80, FreHD, Orchestra 85 and 90, etc.

  • Reset button on the BluePill microcontroller.

Demo Videos

You can get a better understanding of MIDI/80's capabilities and features by watching some of these YouTube demo videos:

Overview & Usage

Connect the...

Read more »

  • Synchronizing multiple Trackers via parallel port clock

    Michael Wessela day ago 0 comments

    It is now possible to synchronize multiple Trackers running on different machines:

    External Clock

    Here is a demo video.

    The latest version of the Tracker, Version 1.96 (tracker5/cmd on the disk images) is now sending an external clock signal over the parallel port, on Data 0. Another TRS-80 Tracker can then be configured to latch on to this external clock by setting it into external clock mode with the ' key. The receiving TRS-80 Tracker is called the secondary, and the clock generating Tracker the primary. Enable the external clock mode on the secondary with the ' key. Then start playback as usual, in pattern (P) or song playback mode (!). As usual, you can always refer to the help page for key bindings (H). The secondary Tracker is frozen until it starts receiving the clock signal from the primary Tracker via the parallel port cable; the tempo setting of the secondary will be disregarded, as the tempo is determined by the external clock from the primary. External clock can be en- and disabled using the ' at any time; also, with the exception of the tempo setting, recording and all the other Tracker operations and settings work identical as if the internal clock was used.

    To make the cable, simply connect the Centronic ports of the two machines as follows: GND to GND (e.g., Centronics pin 2; note that there are multiple options for GND), and the Data 0 output (Centronics pin 3) of the primary to the BUSY input (Centronics pin 21) of the secondary. And easy way to construct the cable is to cut two TRS-80 printer cables in half, and solder the wires together:

    Clock Cable

    Printer Port Model III

    Printer Port Model I

  • Tracker Updates & Behringer Wave!

    Michael Wessel03/22/2025 at 17:49 0 comments

    ... celebrating the newest member of the TRS-80 MIDI Studio: the Behringer Wave, a clone / recreation of the legendary iconic PPG Wave 2.3 from 1982! Created by Wolfgang Palm, the inventor of Wave Table Synthesis, in my birth-town Hamburg, Germany. 

    It's mind boggling how much he achieved with so little, back in the day. All of the PPG software was programmed in bare-metal 6809 assembly language, no C-compiler, no libraries, nothing.

    Thank you, Behringer, for bringing this legend back to life, and for making it affordable! Now everybody can experience the magic that radiates from the legendary instrument. The build quality and sound is amazing!

    Just getting my feet wet, but here is first demo using the latest MIDI/80 Tracker 1.95 and the S2 for drums. Enjoy!

  • Small Tracker 1.91 Demo!

    Michael Wessel03/17/2025 at 14:17 0 comments

    Finally, the Tracker software is becoming more feature complete. By now, I have

    • multiple patterns (A-Z)
    • pattern chaining = song mode (a song is a sequence of patterns, and can be looped)
    • load & save
    • MIDI real time tracking via MIDI IN socket from a MIDI keyboard
    • real time tracking from the TRS-80 keyboard
    • quantization
    • some pattern tools (e.g., the ability to copy patterns)
    • etc.

  • DOWNPOLY uses MIDI-80!

    Michael Wessel03/01/2025 at 18:23 0 comments

    TRS-80 Musician DOWNPOLY is using MIDI/80 for his productions: 


    Thanks for the shout-out and the great music, Joel! It is quite amazing what he achieves with this setup. You can listen to his music on his channel:

    https://www.youtube.com/@downpoly

    Most of his songs are using the Orchestra soundcard for the TRS-80, played interactively via George Phillips' STORCH program, and the drums are coming from MIDI/80 using my Drum Tracker program.

    He is using an amazing number of effects as well, plays the Orchestra soundcard through a wah-wah, etc. Worth listing and watching. 

    I have a little Drum Tracker demo video online as well:

  • New MIDI Song Disk Batch Creation Tool

    Michael Wessel03/01/2025 at 16:01 0 comments

    The https://homecomputerguy.de/en/ has created a new batch tool that makes MIDI song disk creation a breeze - check it out here!

    https://github.com/lambdamikel/MIDI-80/tree/main/midibatchconv

    He also published some demo videos:

  • The MIDI-80 GitHub Repo is live

    Michael Wessel11/12/2024 at 03:31 0 comments

    The GitHub is live: https://github.com/lambdamikel/MIDI-80

    Please refer to the GitHub repo for all project files.

  • Thursday, October 31, 2024 - MatrixSynth Post

    Michael Wessel11/12/2024 at 03:28 0 comments

View all 7 project logs

Enjoy this project?

Share

Discussions

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates