Rick's b.log - 2013/03/02 |
|
It is the 24th of November 2024 You are 3.144.42.233, pleased to meet you! |
|
mailto:
blog -at- heyrick -dot- eu
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:
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:
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!
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 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.
The display on my keyboard while playing "Fanfare" via MIDI.
Maestro; grab from HD videoI 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.
No comments yet...
© 2013 Rick Murray |
This web page is licenced for your personal, private, non-commercial use only. No automated processing by advertising systems is permitted. RIPA notice: No consent is given for interception of page transmission. |