Off-Topic > Off-Topic - Tiny Core Lounge

does alsa have a built in midi-synth ?

(1/2) > >>

hitsware:
What I want to do is use some dialect of BASIC
(similar to QBasic) to output raw midi-bytes to
a midi-synth. NOT play a midi-file.
In Dos with QBasic I could write to the MPU-401
with :

--- Code: --- OUT 816, data-byte
--- End code ---
I've tried DOSBox with TLC to no avail
No avail with XP either, so I may just
not have it set up right.
In both cases the SOUND command works
(pc speaker) but the supposed SB emulator
does not. (no mpu-401 or opl-3)
I'd like to trash the DOSBox and use something
more native to Linux.
Any insights appreciated ...........   

Rich:
Hi hitsware
The  alsa.tcz  extension includes the  amidi  command which may be of some use:
http://linux.die.net/man/1/amidi
Alsa-modules includes:
/usr/local/lib/modules/3.0.21-tinycore/kernel/sound/core/snd-rawmidi.ko.gz
/usr/local/lib/modules/3.0.21-tinycore/kernel/sound/drivers/mpu401/snd-mpu401-uart.ko.gz
/usr/local/lib/modules/3.0.21-tinycore/kernel/sound/drivers/opl3/snd-opl3-synth.ko.gz
Modprobing one of those might provide the interface you are looking for.

hitsware:
THANK YOU ! Rich  :)
That'll give me a start.

hitsware:
OK......
Got alsa

--- Code: ---speaker-test  # produces noise
--- End code ---
gives me sound.....     

--- Code: ---cat /proc/asound/cards  # '0' is default channel I think ?
--- End code ---
returns:
0[Intel  ]: HDA-Intel - HDA-Intel                                       
                HDA Intel at 0xe280000  irq 45

--- Code: ---amidi -S "90 3C 7F"  # midi message for C note
--- End code ---
returns :
cannot open port "default": inappropriate ioctl for device

Any Insights Wellcome (This is sort of fun, reminds me of my first OPL-3 attempts)  :)

Rich:
Hi hitsware

--- Quote ---cannot open port "default": inappropriate ioctl for device
--- End quote ---
I'm guessing that if you execute   amidi -l   you get the same error. You may have to modprobe one of
the midi drivers.

Navigation

[0] Message Index

[#] Next page

Go to full version