11 #include <sys/types.h>
16 #include <sys/soundcard.h>
21 #define MIDI_DEVICE /dev/midi
24 #define NOTE_DATA 0x7F
29 /* global, do we need sockets global? */
32 int all_stop(int fd) {
36 note_off(fd,j,i,(int)0x7F);
40 int midi_write_msg3(int fd,unsigned char status,unsigned char data1,unsigned char data2) {
49 int midi_write_msg2(int fd,unsigned char status,unsigned char data1) {
57 int note_on(int fd,int chan,int note,int vel) {
58 midi_write_msg3(fd,NOTE_ON|(CH_MASK&chan),note&NOTE_DATA,vel&VEL_MASK);
62 int note_off(int fd,int chan,int note,int vel) {
63 midi_write_msg3(fd,NOTE_OFF|(CH_MASK&chan),note&NOTE_DATA,vel&VEL_MASK);
68 /* test the io api ... */
70 int main(int argc,char **argv) {
76 channel=atoi(argv[1]);
79 midi_fd=open("/dev/sound/midi",O_RDWR);
85 note_off(midi_fd,0,38,127);
86 note_on(midi_fd,0,38,127);
88 note_off(midi_fd,0,42,127);
89 note_on(midi_fd,0,42,127);