mailto: blog -at- heyrick -dot- eu

Navi: Previous entry Display calendar Next entry
Switch to desktop version

FYI! Last read at 10:28 on 2024/05/03.

RISC OS MIDI - reading MIDI data

Still can't get any joy on the Beagle; however for those using the Pi, I have updated MIDItest.
miditest.zip (about 5KiB)

MIDItest
MIDItest on a RaspberryPi; now in colour! [looks crappy due to composite video]

 

RISC OS MIDI - playback

One of the quirks of the Beagle was that while reading MIDI data failed, data could be transmitted to a MIDI device.
Keyboard display
The display on my keyboard while playing "Fanfare" via MIDI.

Now old-time RISC OS users may know that there used to be Acorn-built MIDI hardware for the Archimedes. Either a multi-port podule, or an option on the big full-width User I/O podule. To this end, if MIDI was available, then the !Maestro program can be used to play to MIDI devices.

This got my brain ticking.

It was quite easy to convert Maestro to work with USBMIDI. Internally, Maestro fires a bunch of notes at once, working bar-by-bar, and using the Sound_QSchedule SWI to queue the MIDI calls for dispatch at the correct time. So what I did was to open the MIDI output endpoint in Maestro, and then write a fake module that provides a single SWI. The SWI is &16F00 (not registered!) that accepts MIDI module parameters along with a file handle. The file handle is the endpoint file. My module pulls apart the MIDI module data and reformats it into a USBMIDI packet, which is then block-written to the file handle. This causes it to be transmitted to the MIDI device.

Sounds more complicated than it is.

The modified program, plus full sources to all the bits (Maestro is under Castle/ROOL licence, and the MIDIhack module is EUPL) is here:

meastrohack.zip (122KiB)

Maestro
Maestro; grab from HD video

 

Here is my video of Maestro on a Beagleboard xM playing the fanfare demonstration tune:

Craig Lynch, on the ROOL forum, used a RaspberryPi to play the Shostakovich demo on his Electone to raise Maestro to new heights of awesome:

Craig said the arrangement is:
I had the top stave played in the upper with piano, strings and a violin for a lead.
I had the bottom stave played by the lower and pedals with piano and a organ bass, set quite low on those.

If anybody else plugs RISC OS into a musical instrument, do get in touch (here or the ROOL forum) to say what you've done!

 

Your comments:

No comments yet...

Add a comment (v0.11) [help?]
Your name:

 
Your email (optional):

 
Validation:
Please type 65205 backwards.

 
Your comment:

 

Navi: Previous entry Display calendar Next entry
Switch to desktop version

Search:

See the rest of HeyRick :-)