1 #ifndef GSONG_H
2 #define GSONG_H
3 
4 #ifndef GSONG_C
5 extern INSTR instr[MAX_INSTR];
6 extern unsigned char ltable[MAX_TABLES][MAX_TABLELEN];
7 extern unsigned char rtable[MAX_TABLES][MAX_TABLELEN];
8 extern unsigned char songorder[MAX_SONGS][MAX_CHN][MAX_SONGLEN+2];
9 extern unsigned char pattern[MAX_PATT][MAX_PATTROWS*4+4];
10 extern char songname[MAX_STR];
11 extern char authorname[MAX_STR];
12 extern char copyrightname[MAX_STR];
13 extern int pattlen[MAX_PATT];
14 extern int songlen[MAX_SONGS][MAX_CHN];
15 extern int highestusedpattern;
16 extern int highestusedinstr;
17 #endif
18 
19 void loadsong(void);
20 void mergesong(void);
21 void loadinstrument(void);
22 int savesong(void);
23 int saveinstrument(void);
24 void clearsong(int cs, int cp, int ci, int cf, int cn);
25 void countpatternlengths(void);
26 void countthispattern(void);
27 void clearpattern(int p);
28 int insertpattern(int p);
29 void deletepattern(int p);
30 void findusedpatterns(void);
31 void findduplicatepatterns(void);
32 void optimizeeverything(int oi, int ot);
33 
34 #endif
35