Blame test/midifile.h

Packit Service db8eaa
/* definitions for MIDI file parsing code */
Packit Service db8eaa
extern int (*Mf_getc)();
Packit Service db8eaa
extern void (*Mf_header)();
Packit Service db8eaa
extern void (*Mf_trackstart)();
Packit Service db8eaa
extern void (*Mf_trackend)();
Packit Service db8eaa
extern void (*Mf_noteon)();
Packit Service db8eaa
extern void (*Mf_noteoff)();
Packit Service db8eaa
extern void (*Mf_pressure)();
Packit Service db8eaa
extern void (*Mf_parameter)();
Packit Service db8eaa
extern void (*Mf_pitchbend)();
Packit Service db8eaa
extern void (*Mf_program)();
Packit Service db8eaa
extern void (*Mf_chanpressure)();
Packit Service db8eaa
extern void (*Mf_sysex)();
Packit Service db8eaa
extern void (*Mf_metamisc)();
Packit Service db8eaa
extern void (*Mf_seqspecific)();
Packit Service db8eaa
extern void (*Mf_seqnum)();
Packit Service db8eaa
extern void (*Mf_text)();
Packit Service db8eaa
extern void (*Mf_eot)();
Packit Service db8eaa
extern void (*Mf_timesig)();
Packit Service db8eaa
extern void (*Mf_smpte)();
Packit Service db8eaa
extern void (*Mf_tempo)();
Packit Service db8eaa
extern void (*Mf_keysig)();
Packit Service db8eaa
extern void (*Mf_arbitrary)();
Packit Service db8eaa
extern void (*Mf_error)();
Packit Service db8eaa
extern unsigned long Mf_currtime;
Packit Service db8eaa
extern unsigned long Mf_realtime;
Packit Service db8eaa
extern unsigned long Mf_currtempo;
Packit Service db8eaa
extern int Mf_division;
Packit Service db8eaa
extern int Mf_nomerge;
Packit Service db8eaa
#ifdef READ_MODS
Packit Service db8eaa
extern unsigned char *Mf_file_contents;
Packit Service db8eaa
extern int Mf_file_size;
Packit Service db8eaa
#endif
Packit Service db8eaa
Packit Service db8eaa
/* definitions for MIDI file writing code */
Packit Service db8eaa
extern int (*Mf_putc)();
Packit Service db8eaa
extern int (*Mf_writetrack)();
Packit Service db8eaa
extern int (*Mf_writetempotrack)();
Packit Service db8eaa
Packit Service db8eaa
extern void midifile();
Packit Service db8eaa
extern unsigned long mf_sec2ticks();
Packit Service db8eaa
extern void mfwrite();
Packit Service db8eaa
extern int mf_write_meta_event();
Packit Service db8eaa
extern int mf_write_midi_event(unsigned long delta_time, int type,
Packit Service db8eaa
	int chan, char *data, unsigned long size);
Packit Service db8eaa
extern double mf_ticks2sec(unsigned long ticks,int division,unsigned long tempo);
Packit Service db8eaa
extern void mf_write_tempo();
Packit Service db8eaa
extern void mf_write_seqnum();
Packit Service db8eaa
extern void mfread();
Packit Service db8eaa
extern void mferror(char *s);
Packit Service db8eaa
Packit Service db8eaa
#ifndef NO_LC_DEFINES
Packit Service db8eaa
/* MIDI status commands most significant bit is 1 */
Packit Service db8eaa
#define note_off         	0x80
Packit Service db8eaa
#define note_on          	0x90
Packit Service db8eaa
#define poly_aftertouch  	0xa0
Packit Service db8eaa
#define control_change    	0xb0
Packit Service db8eaa
#define program_chng     	0xc0
Packit Service db8eaa
#define channel_aftertouch      0xd0
Packit Service db8eaa
#define pitch_wheel      	0xe0
Packit Service db8eaa
#define system_exclusive      	0xf0
Packit Service db8eaa
#define delay_packet	 	(1111)
Packit Service db8eaa
Packit Service db8eaa
/* 7 bit controllers */
Packit Service db8eaa
#define damper_pedal            0x40
Packit Service db8eaa
#define portamento	        0x41 	
Packit Service db8eaa
#define sustenuto	        0x42
Packit Service db8eaa
#define soft_pedal	        0x43
Packit Service db8eaa
#define general_4               0x44
Packit Service db8eaa
#define	hold_2		        0x45
Packit Service db8eaa
#define	general_5	        0x50
Packit Service db8eaa
#define	general_6	        0x51
Packit Service db8eaa
#define general_7	        0x52
Packit Service db8eaa
#define general_8	        0x53
Packit Service db8eaa
#ifndef PLAYMIDI
Packit Service db8eaa
#define tremolo_depth	        0x5c
Packit Service db8eaa
#define ctrl_chorus_depth       0x5d
Packit Service db8eaa
#define	detune		        0x5e
Packit Service db8eaa
#define phaser_depth	        0x5f
Packit Service db8eaa
#endif
Packit Service db8eaa
Packit Service db8eaa
/* parameter values */
Packit Service db8eaa
#define data_inc	        0x60
Packit Service db8eaa
#define data_dec	        0x61
Packit Service db8eaa
Packit Service db8eaa
/* parameter selection */
Packit Service db8eaa
#define non_reg_lsb	        0x62
Packit Service db8eaa
#define non_reg_msb	        0x63
Packit Service db8eaa
#define reg_lsb		        0x64
Packit Service db8eaa
#define reg_msb		        0x65
Packit Service db8eaa
Packit Service db8eaa
/* Standard MIDI Files meta event definitions */
Packit Service db8eaa
#define	meta_event		0xFF
Packit Service db8eaa
#define	sequence_number 	0x00
Packit Service db8eaa
#define	text_event		0x01
Packit Service db8eaa
#define copyright_notice 	0x02
Packit Service db8eaa
#define sequence_name    	0x03
Packit Service db8eaa
#define instrument_name 	0x04
Packit Service db8eaa
#define lyric	        	0x05
Packit Service db8eaa
#define marker			0x06
Packit Service db8eaa
#define	cue_point		0x07
Packit Service db8eaa
#define channel_prefix		0x20
Packit Service db8eaa
#define	end_of_track		0x2f
Packit Service db8eaa
#define	set_tempo		0x51
Packit Service db8eaa
#define	smpte_offset		0x54
Packit Service db8eaa
#define	time_signature		0x58
Packit Service db8eaa
#define	key_signature		0x59
Packit Service db8eaa
#define	sequencer_specific	0x74
Packit Service db8eaa
Packit Service db8eaa
/* Manufacturer's ID number */
Packit Service db8eaa
#define Seq_Circuits (0x01) /* Sequential Circuits Inc. */
Packit Service db8eaa
#define Big_Briar    (0x02) /* Big Briar Inc.           */
Packit Service db8eaa
#define Octave       (0x03) /* Octave/Plateau           */
Packit Service db8eaa
#define Moog         (0x04) /* Moog Music               */
Packit Service db8eaa
#define Passport     (0x05) /* Passport Designs         */
Packit Service db8eaa
#define Lexicon      (0x06) /* Lexicon 			*/
Packit Service db8eaa
#define Tempi        (0x20) /* Bon Tempi                */
Packit Service db8eaa
#define Siel         (0x21) /* S.I.E.L.                 */
Packit Service db8eaa
#define Kawai        (0x41) 
Packit Service db8eaa
#define Roland       (0x42)
Packit Service db8eaa
#define Korg         (0x42)
Packit Service db8eaa
#define Yamaha       (0x43)
Packit Service db8eaa
#endif
Packit Service db8eaa
Packit Service db8eaa
/* miscellaneous definitions */
Packit Service db8eaa
#define MThd 0x4d546864
Packit Service db8eaa
#define MTrk 0x4d54726b
Packit Service db8eaa
Packit Service db8eaa
#ifndef NO_LC_DEFINES
Packit Service db8eaa
#define lowerbyte(x) ((unsigned char)(x & 0xff))
Packit Service db8eaa
#define upperbyte(x) ((unsigned char)((x & 0xff00)>>8))
Packit Service db8eaa
#endif