Cloudschatze
Veteran Member
Complementing its already capable sound-related functionality, the Tandy PSSJ has yet another, hitherto unknown/uncommon feature: its serial UART is nearly MIDI output compatible, requiring only proper configuration and a simple, passive adapter to provide current-loop and DIN connectivity to a MIDI device.
The "trick" here is that, in the Tandy 1000 RL, RLX, SL(/x) and TL(/x) systems, the serial portion of the PSSJ is clocked with 24 MHz OSC input signal. A configurable division of either thirteen (default), or one, then determines in the UART input clock frequency. With the latter setting, the requisite, MIDI-compatible 31250 bps serial rate can be derived.
A simple debug script can be used to configure the UART for MIDI-compatible operations (where FFEB bits 1-7 will need to be set as appropriate for your system/configuration):
o ffeb d5
o 3fb 83
o 3f8 30
o 3f9 00
o 3fb 03
q
From there, it's simply a matter of constructing, or purchasing, the necessary hardware adapter. There are a few simple designs for Palm Pilot devices that can be used for this purpose, similar to the following:
http://www.frankwillems.com/gig-rig/old_gig-rig9.html
Note that the Palm Pilot is a DCE device. If you build an adapter based on related designs, connect the resistor to pin 3 of the D-SUB connector, rather than pin 2.
If building an adaptor isn't your thing (it's certainly not mine), molded adapters are available from miniMusic that are reasonably priced and look great. Being designed for use with a Palm Pilot, you'll need to use a null-modem cable.
With that, you're almost there. Just need to hack/modify the MPU-401 routines of game drivers for serial-port output, and then boom, MIDI with the PSSJ...
The "trick" here is that, in the Tandy 1000 RL, RLX, SL(/x) and TL(/x) systems, the serial portion of the PSSJ is clocked with 24 MHz OSC input signal. A configurable division of either thirteen (default), or one, then determines in the UART input clock frequency. With the latter setting, the requisite, MIDI-compatible 31250 bps serial rate can be derived.
A simple debug script can be used to configure the UART for MIDI-compatible operations (where FFEB bits 1-7 will need to be set as appropriate for your system/configuration):
o ffeb d5
o 3fb 83
o 3f8 30
o 3f9 00
o 3fb 03
q
From there, it's simply a matter of constructing, or purchasing, the necessary hardware adapter. There are a few simple designs for Palm Pilot devices that can be used for this purpose, similar to the following:
http://www.frankwillems.com/gig-rig/old_gig-rig9.html
Note that the Palm Pilot is a DCE device. If you build an adapter based on related designs, connect the resistor to pin 3 of the D-SUB connector, rather than pin 2.
If building an adaptor isn't your thing (it's certainly not mine), molded adapters are available from miniMusic that are reasonably priced and look great. Being designed for use with a Palm Pilot, you'll need to use a null-modem cable.
With that, you're almost there. Just need to hack/modify the MPU-401 routines of game drivers for serial-port output, and then boom, MIDI with the PSSJ...