prog.h (617B)
1 /* mircotracker for synth programming */ 2 3 enum { 4 InHalt, 5 InRepeat, 6 InLoad, 7 InExec, 8 9 FHold = 1, 10 11 ProgMax = 128, 12 13 ModCtl = 0xff, 14 CtlRepeat = 0x00, 15 CtlHoldJmp = 0x01, 16 CtlJmp = 0x02, 17 CtlHalt = 0xff, 18 19 ModOpAbs = 0x00, 20 ModOpInc = 0x01, 21 ModOpDec = 0xff, 22 }; 23 24 typedef struct Inter Inter; 25 typedef struct Instruction Instruction; 26 27 struct Inter { 28 char *progstart; 29 int PC; 30 int state; 31 char cmd[16]; 32 s16int mod[4]; 33 }; 34 35 struct Instruction { 36 uchar m; 37 uchar op; 38 s16int arg; 39 }; 40 41 void interreset(Inter *); 42 void interstep(Inter *, int); 43 void interexec(Inter *, int); 44 void interinstr(Inter *, Instruction *);