2 #define MOD_NO_SAMPLE 31
6 #define LOG(x, fmt) fprintf(stdout, "LOG: %s : %" #fmt "\n", #x, x)
7 #define CHECK(x) fprintf(stdout, "%s\n", #x)
17 struct sample_header
{
18 u8 name
[22]; //22 bytes
22 u16 loopstart
; //2 bytes
23 u16 looplength
; //2 bytes //more like loop-end
24 char *smpdata
; //1 byte
27 struct pattern_entry
{
35 struct pattern_entry pattern_entry
[64][4];
40 struct sample_header sample
[31];
43 struct pattern
*patterns
;
64 struct mod_header modheader
;
66 void process_row(void);
67 s8
get_sample(struct mix_channel
*chn
);
70 void init_player(void);