home *** CD-ROM | disk | FTP | other *** search
- ; midi/midi.i
-
- ifnd MIDI_MIDI_I
- MIDI_MIDI_I set 1
-
- ifnd EXEC_LISTS_I
- include "exec/lists.i"
- endc
-
- MIDINAME macro
- dc.b 'midi.library',0
- endm
-
- MIDIVERSION equ 1
-
- STRUCTURE MSource,LN_SIZE
- APTR ms_Image
- STRUCT ms_RPList,MLH_SIZE
- APTR ms_UserData
- LABEL sizeof_MSource
-
- ; Node Types for MSource nodes
- NT_MSOURCE equ $20
- NT_PERMMSOURCE equ $21
-
- STRUCTURE MDest,LN_SIZE
- APTR md_Image
- STRUCT md_RPList,MLH_SIZE
- APTR md_DestPort
- APTR md_UserData
- LABEL sizeof_MDest
-
- ; Node Types for MDest nodes
- NT_MDEST equ $22
- NT_PERMMDEST equ $23
-
- STRUCTURE RIMatch,0
- UBYTE rim_count
- STRUCT rim_match,3
- LABEL sizeof_RIMatch
-
- STRUCTURE MRouteInfo,0
- UWORD ri_MsgFlags
- UWORD ri_ChanFlags
- BYTE ri_ChanOffset
- BYTE ri_NoteOffset
- STRUCT ri_SysExMatch,sizeof_RIMatch
- STRUCT ri_CtrlMatch,sizeof_RIMatch
- LABEL sizeof_MRouteInfo
-
- ; Midi Msg Type Flags for RouteInfo and returned by MidiMsgType
-
- MMF_CHAN equ $00ff
- MMF_NOTEOFF equ $0001
- MMF_NOTEON equ $0002
- MMF_POLYPRESS equ $0004
- MMF_CTRL equ $0008
- MMF_PROG equ $0010
- MMF_CHANPRESS equ $0020
- MMF_PITCHBEND equ $0040
- MMF_MODE equ $0080
-
- MMF_SYSCOM equ $0100
- MMF_SYSRT equ $0200
- MMF_SYSEX equ $0400
-
- STRUCTURE MRoutePtr,MLN_SIZE
- APTR rp_Route
- LABEL sizeof_MRoutePtr
-
- STRUCTURE MRoute,0
- APTR mr_Source
- APTR mr_Dest
- STRUCT mr_SRoutePtr,sizeof_MRoutePtr
- STRUCT mr_DRoutePtr,sizeof_MRoutePtr
- STRUCT mr_RouteInfo,sizeof_MRouteInfo
- LABEL sizeof_MRoute
-
-
- ; MIDI message defines - based on IMA MIDI Spec 1.0 except where noted
-
- ; Status Bytes
-
- ; Channel Voice Messages (1sssnnnn)
- MS_NOTEOFF equ $80
- MS_NOTEON equ $90
- MS_POLYPRESS equ $A0
- MS_CTRL equ $B0
- MS_MODE equ $B0
- MS_PROG equ $C0
- MS_CHANPRESS equ $D0
- MS_PITCHBEND equ $E0
-
- ; System Common Messages
- MS_SYSEX equ $F0
- MS_SONGPOS equ $F2
- MS_SONGSELECT equ $F3
- MS_TUNEREQ equ $F6
- MS_EOX equ $F7
-
- ; System Real Time Messages
- MS_CLOCK equ $F8
- MS_START equ $FA
- MS_CONTINUE equ $FB
- MS_STOP equ $FC
- MS_ACTVSENSE equ $FE
- MS_RESET equ $FF
-
-
- ; Standard Controllers (from MMA - 8-86)
-
- ; proportional MSB - 0-31, LSB - 32-63
- MC_MODWHEEL equ 1
- MC_BREATH equ 2
- MC_FOOT equ 4
- MC_PORTATIME equ 5
- MC_DATAENTRY equ 6
- MC_VOLUME equ 7
- MC_BALANCE equ 8
- MC_PAN equ 10
-
- ; switches/pedals - either on(7F) or off(00)
- MC_SUSTAIN equ 64
- MC_PORTA equ 65
- MC_SUSTENUTO equ 66
- MC_SOFTPEDAL equ 67
- MC_HOLD2 equ 69
- MC_DATAINCR equ 96
- MC_DATADECR equ 97
-
- ; Channel Modes
-
- MM_LOCAL equ 122
- MM_ALLOFF equ 123
- MM_OMNIOFF equ 124
- MM_OMNION equ 125
- MM_MONO equ 126
- MM_POLY equ 127
-
-
- ; Sys/Ex ID numbers (from MMA as described in IMA bulletin)
-
- MID_SCI equ $01
- MID_BIGBRIAR equ $02
- MID_OCTAVEPLATEAU equ $03
- MID_MOOG equ $04
- MID_PASSPORT equ $05
- MID_LEXICON equ $06
-
- MID_OBERHEIM equ $10
- MID_PAIA equ $11
- MID_SIMMONS equ $12
- MID_FAIRLIGHT equ $14
-
- MID_BONTEMPI equ $20
- MID_SIEL equ $21
- MID_SYNTHAXE equ $23
-
- MID_KAWAI equ $40
- MID_ROLAND equ $41
- MID_KORG equ $42
- MID_YAMAHA equ $43
-
- ; special Sys/Ex ID numbers: Non-Commercial, Non-Real Time, Real Time
- MID_NC equ $7d
- MID_NRT equ $7e
- MID_RT equ $7f
-
- endc
-