]> Gitweb @ Texas Instruments - Open Source Git Repositories - git.TI.com/gitweb - processor-sdk/audio-preprocessing.git/blob - file_demo_bios/am572x/AM572x_dsp_startup.gel
file_demo_bios: update makefile
[processor-sdk/audio-preprocessing.git] / file_demo_bios / am572x / AM572x_dsp_startup.gel
1 /*******************************************************************/ 
2 /* This GEL file is loaded on the command line of Code Composer    */
3 /* The StartUp() function is called every time you start           */
4 /* Code Composer.  You can customize this function to              */
5 /* initialize wait states or to perform other initialization.      */
6 /*                                                                 */
7 /* AM572x C66x DSP                                                 */
8 /*                                                                 */
9 /*                                                                 */
10 /*******************************************************************/
13 #define WR_MEM_32(addr, data)   *(unsigned int*)(addr) =(unsigned int)(data)
14 #define RD_MEM_32(addr)         *(unsigned int*)(addr)
15 #define uint32_t                unsigned int
19 StartUp()
20 {
21     GEL_TextOut("--->>> (local) AM572x C66x DSP Startup Sequence In Progress... <<<---\n");
23     /*------------------ Memory Map Config -------------------*/
24     GEL_MapOff();
25     GEL_MapReset();
26     memorymap_init();
27     GEL_MapOn();
29     /*------------------ Load Common Gel Files -------------------*/
30     /* GEL_LoadGel("$(GEL_file_dir)//AM572x_dsp_basic_emulation.gel"); */
31     /* GEL_LoadGel("$(GEL_file_dir)//AM572x_dsp_cross_triggering.gel"); */
33     /* GEL_LoadGel(".//load_mics.gel"); */
35     GEL_TextOut("--->>> AM572x C66x DSP Startup Sequence DONE! <<<---\n");
36 }
38 memorymap_init()
39 {
40     GEL_MapAddStr(0x00800000, 0, 0x00800000, "R|W|AS4", 0);     /* DSP RAM  Access 288K (L2 RAM) + 32K (L1P SRAM) + 32K (L1D SRAM)*/
41     GEL_MapAddStr(0x01BC0000, 0, 0x00001000, "R|W|AS4", 0);     /* DSP EDM register - 4KBytes */
42     GEL_MapAddStr(0x01C20000, 0, 0x00001000, "R|W|AS4", 0);     /* SYSC- CONFIG - 4KBytes */
43     GEL_MapAddStr(0x01C21000, 0, 0x00001000, "R|W|AS4", 0);     /* WUGEN - 4KBytes */
44     GEL_MapAddStr(0x01C30000, 0, 0x00000100, "R|W|AS4", 0);     /* L1 config register - 256Bytes */
45     GEL_MapAddStr(0x01C30200, 0, 0x00000100, "R|W|AS4", 0);     /* L2 config register - 256Bytes */
46     GEL_MapAddStr(0x01C30400, 0, 0x00000200, "R|W|AS4", 0);     /* Unicache debug - 512Bytes */
47     GEL_MapAddStr(0x01C30800, 0, 0x00000800, "R|W|AS4", 0);     /* Attr MMU - 2KBytes */
48     GEL_MapAddStr(0x01D10000, 0, 0x00010000, "R|W|AS4", 0);     /* 3PCC CONFIG - 64KBytes */
49     GEL_MapAddStr(0x01D05000, 0, 0x00000400, "R|W|AS4", 0);     /* 3PTC0- CONFIG - 1KBytes */
50     GEL_MapAddStr(0x01D06000, 0, 0x00000400, "R|W|AS4", 0);     /* 3PTC1- CONFIG - 1KBytes */
51     GEL_MapAddStr(0x01800000, 0, 0x00010000, "R|W|AS4", 0);     /* Interrupt controller - 64KBytes */
52     GEL_MapAddStr(0x01810000, 0, 0x00001000, "R|W|AS4", 0);     /* DSP Securty ID - 4KBytes */
53     GEL_MapAddStr(0x01812000, 0, 0x00001000, "R|W|AS4", 0);     /* DSP Revision ID - 4KBytes */
54     GEL_MapAddStr(0x01840000, 0, 0x00010000, "R|W|AS4", 0);     /* DSP Cache CFG and MAR registers */
55     GEL_MapAddStr(0x01D00000, 0, 0x00020000, "R|W|AS4", 0);     /* ABE NC L4 S3220 */
56     GEL_MapAddStr(0x01D22000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE NC McBSPLP1 - module */
57     GEL_MapAddStr(0x01D23000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE NC McBSPLP1 - L4 interconnect */
58     GEL_MapAddStr(0x01D24000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE NC McBSPLP2 - module */
59     GEL_MapAddStr(0x01D25000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE NC McBSPLP2 - L4 interconnect */
60     GEL_MapAddStr(0x01D26000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE NC McBSPLP3 - module */
61     GEL_MapAddStr(0x01D27000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE NC McBSPLP3 - L4 interconnect */
62     GEL_MapAddStr(0x01D28000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE NC McASP1 CFG Port */
63     GEL_MapAddStr(0x01D29000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE NC McASP1 CFG - L4 interconnect */
64     GEL_MapAddStr(0x01D2A000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE NC McASP1 DATA Port  */
65     GEL_MapAddStr(0x01D2B000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE NC McASP1 DATA - L4 interconnect */
66     GEL_MapAddStr(0x01D2C000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE NC SLIMBUS1 - module */
67     GEL_MapAddStr(0x01D2D000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE NC SLIMBUS1 - L4 interconnect */
68     GEL_MapAddStr(0x01D2E000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE NC DMIC - module */
69     GEL_MapAddStr(0x01D2F000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE NC DMIC - L4 interconnect */
70     GEL_MapAddStr(0x01D30000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE NC WDT3 - module */
71     GEL_MapAddStr(0x01D31000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE NC WDT3 - L4 interconnect */
72     GEL_MapAddStr(0x01D32000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE NC McPDM - module */
73     GEL_MapAddStr(0x01D33000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE NC McPDM - L4 interconnect */
74     GEL_MapAddStr(0x01D38000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE NC GPTIMER5 - module */
75     GEL_MapAddStr(0x01D39000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE NC GPTIMER5 - L4 interconnect */
76     GEL_MapAddStr(0x01D3A000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE NC GPTIMER6 - module */
77     GEL_MapAddStr(0x01D3B000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE NC GPTIMER6 - L4 interconnect */
78     GEL_MapAddStr(0x01D3C000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE NC GPTIMER7 - module */
79     GEL_MapAddStr(0x01D3D000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE NC GPTIMER7 - L4 interconnect */
80     GEL_MapAddStr(0x01D3E000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE NC GPTIMER8 - module */
81     GEL_MapAddStr(0x01D3F000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE NC GPTIMER8 - L4 interconnect */
82     GEL_MapAddStr(0x01D80000, 0, 0x00010000, "R|W|AS4", 0);     /* ABE NC DMEM - module */
83     GEL_MapAddStr(0x01D90000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE NC DMEM - L4 interconnect */
84     GEL_MapAddStr(0x01DA0000, 0, 0x00010000, "R|W|AS4", 0);     /* ABE NC CMEM - module */
85     GEL_MapAddStr(0x01DB0000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE NC CMEM - L4 interconnect */
86     GEL_MapAddStr(0x01DC0000, 0, 0x00010000, "R|W|AS4", 0);     /* ABE NC SMEM - module */
87     GEL_MapAddStr(0x01DD0000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE NC SMEM - L4 interconnect */
88     GEL_MapAddStr(0x01DE0000, 0, 0x00010000, "R|W|AS4", 0);     /* ABE NC PMEM - module */
89     GEL_MapAddStr(0x01DF0000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE NC PMEM - L4 interconnect */
90     GEL_MapAddStr(0x01DF1000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE NC AESS - module */
91     GEL_MapAddStr(0x01DF2000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE NC AESS - L4 interconnect */    
92     GEL_MapAddStr(0x01E00000, 0, 0x00100000, "R|W|AS4", 0);     /* IVA-HD - 1MBytes */
93     GEL_MapAddStr(0x01F00000, 0, 0x00100000, "R|W|AS4", 0);     /* OCP Interconnect Registers - 1MBytes */
94     GEL_MapAddStr(0x10800000, 0, 0x00020000, "R|W|AS4", 0);     /* SL2->L1 - 128KBytes */
95     GEL_MapAddStr(0x10820000, 0, 0x00020000, "R|W|AS4", 0);     /* SL2->L2 - 128KBytes */
96     GEL_MapAddStr(0x10900000, 0, 0x00040000, "R|W|AS4", 0);     /* SL2 locked Region  - 256KBytes */
97     
98     GEL_MapAddStr(0x10D00000, 0, 0x00004000, "R|W|AS4", 0);     /* ABE  L4 S3220 */
99     GEL_MapAddStr(0x10D22000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE  McBSPLP1 - module */
100     GEL_MapAddStr(0x10D23000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE  McBSPLP1 - L4 interconnect */
101     GEL_MapAddStr(0x10D24000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE  McBSPLP2 - module */
102     GEL_MapAddStr(0x10D25000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE  McBSPLP2 - L4 interconnect */
103     GEL_MapAddStr(0x10D26000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE  McBSPLP3 - module */
104     GEL_MapAddStr(0x10D27000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE  McBSPLP3 - L4 interconnect */
105     GEL_MapAddStr(0x10D28000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE  McASP1 CFG Port */
106     GEL_MapAddStr(0x10D29000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE  McASP1 CFG - L4 interconnect */
107     GEL_MapAddStr(0x10D2A000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE  McASP1 DATA Port  */
108     GEL_MapAddStr(0x10D2B000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE  McASP1 DATA - L4 interconnect */
109     GEL_MapAddStr(0x10D2C000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE  SLIMBUS1 - module */
110     GEL_MapAddStr(0x10D2D000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE  SLIMBUS1 - L4 interconnect */
111     GEL_MapAddStr(0x10D2E000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE  DMIC - module */
112     GEL_MapAddStr(0x10D2F000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE  DMIC - L4 interconnect */
113     GEL_MapAddStr(0x10D30000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE  WDT3 - module */
114     GEL_MapAddStr(0x10D31000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE  WDT3 - L4 interconnect */
115     GEL_MapAddStr(0x10D32000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE  McPDM - module */
116     GEL_MapAddStr(0x10D33000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE  McPDM - L4 interconnect */
117     GEL_MapAddStr(0x10D38000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE  GPTIMER5 - module */
118     GEL_MapAddStr(0x10D39000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE  GPTIMER5 - L4 interconnect */
119     GEL_MapAddStr(0x10D3A000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE  GPTIMER6 - module */
120     GEL_MapAddStr(0x10D3B000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE  GPTIMER6 - L4 interconnect */
121     GEL_MapAddStr(0x10D3C000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE  GPTIMER7 - module */
122     GEL_MapAddStr(0x10D3D000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE  GPTIMER7 - L4 interconnect */
123     GEL_MapAddStr(0x10D3E000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE  GPTIMER8 - module */
124     GEL_MapAddStr(0x10D3F000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE  GPTIMER8 - L4 interconnect */
125     GEL_MapAddStr(0x10D80000, 0, 0x00010000, "R|W|AS4", 0);     /* ABE  DMEM - module */
126     GEL_MapAddStr(0x10D90000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE  DMEM - L4 interconnect */
127     GEL_MapAddStr(0x10DA0000, 0, 0x00010000, "R|W|AS4", 0);     /* ABE  CMEM - module */
128     GEL_MapAddStr(0x10DB0000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE  CMEM - L4 interconnect */
129     GEL_MapAddStr(0x10DC0000, 0, 0x00010000, "R|W|AS4", 0);     /* ABE  SMEM - module */
130     GEL_MapAddStr(0x10DD0000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE  SMEM - L4 interconnect */
131     GEL_MapAddStr(0x10DE0000, 0, 0x00010000, "R|W|AS4", 0);     /* ABE  PMEM - module */
132     GEL_MapAddStr(0x10DF0000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE  PMEM - L4 interconnect */
133     GEL_MapAddStr(0x10DF1000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE  AESS - module */
134     GEL_MapAddStr(0x10DF2000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE  AESS - L4 interconnect */
135     
136     GEL_MapAddStr(0x10E00000, 0, 0x00004000, "R|W|AS4", 0);     /* ABE Locked Region  L4 S3220 */
137     GEL_MapAddStr(0x10E22000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE Locked Region  McBSPLP1 - module */
138     GEL_MapAddStr(0x10E23000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE Locked Region  McBSPLP1 - L4 interconnect */
139     GEL_MapAddStr(0x10E24000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE Locked Region  McBSPLP2 - module */
140     GEL_MapAddStr(0x10E25000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE Locked Region  McBSPLP2 - L4 interconnect */
141     GEL_MapAddStr(0x10E26000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE Locked Region  McBSPLP3 - module */
142     GEL_MapAddStr(0x10E27000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE Locked Region  McBSPLP3 - L4 interconnect */
143     GEL_MapAddStr(0x10E28000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE Locked Region  McASP1 CFG Port */
144     GEL_MapAddStr(0x10E29000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE Locked Region  McASP1 CFG - L4 interconnect */
145     GEL_MapAddStr(0x10E2A000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE Locked Region  McASP1 DATA Port  */
146     GEL_MapAddStr(0x10E2B000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE Locked Region  McASP1 DATA - L4 interconnect */
147     GEL_MapAddStr(0x10E2C000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE Locked Region  SLIMBUS1 - module */
148     GEL_MapAddStr(0x10E2D000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE Locked Region  SLIMBUS1 - L4 interconnect */
149     GEL_MapAddStr(0x10E2E000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE Locked Region  DMIC - module */
150     GEL_MapAddStr(0x10E2F000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE Locked Region  DMIC - L4 interconnect */
151     GEL_MapAddStr(0x10E30000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE Locked Region  WDT3 - module */
152     GEL_MapAddStr(0x10E31000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE Locked Region  WDT3 - L4 interconnect */
153     GEL_MapAddStr(0x10E32000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE Locked Region  McPDM - module */
154     GEL_MapAddStr(0x10E33000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE Locked Region  McPDM - L4 interconnect */
155     GEL_MapAddStr(0x10E38000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE Locked Region  GPTIMER5 - module */
156     GEL_MapAddStr(0x10E39000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE Locked Region  GPTIMER5 - L4 interconnect */
157     GEL_MapAddStr(0x10E3A000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE Locked Region  GPTIMER6 - module */
158     GEL_MapAddStr(0x10E3B000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE Locked Region  GPTIMER6 - L4 interconnect */
159     GEL_MapAddStr(0x10E3C000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE Locked Region  GPTIMER7 - module */
160     GEL_MapAddStr(0x10E3D000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE Locked Region  GPTIMER7 - L4 interconnect */
161     GEL_MapAddStr(0x10E3E000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE Locked Region  GPTIMER8 - module */
162     GEL_MapAddStr(0x10E3F000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE Locked Region  GPTIMER8 - L4 interconnect */
163     GEL_MapAddStr(0x10E80000, 0, 0x00010000, "R|W|AS4", 0);     /* ABE Locked Region  DMEM - module */
164     GEL_MapAddStr(0x10E90000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE Locked Region  DMEM - L4 interconnect */
165     GEL_MapAddStr(0x10EA0000, 0, 0x00010000, "R|W|AS4", 0);     /* ABE Locked Region  CMEM - module */
166     GEL_MapAddStr(0x10EB0000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE Locked Region  CMEM - L4 interconnect */
167     GEL_MapAddStr(0x10EC0000, 0, 0x00010000, "R|W|AS4", 0);     /* ABE Locked Region  SMEM - module */
168     GEL_MapAddStr(0x10ED0000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE Locked Region  SMEM - L4 interconnect */
169     GEL_MapAddStr(0x10EE0000, 0, 0x00010000, "R|W|AS4", 0);     /* ABE Locked Region  PMEM - module */
170     GEL_MapAddStr(0x10EF0000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE Locked Region  PMEM - L4 interconnect */
171     GEL_MapAddStr(0x10EF1000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE Locked Region  AESS - module */
172     GEL_MapAddStr(0x10EF2000, 0, 0x00001000, "R|W|AS4", 0);     /* ABE Locked Region  AESS - L4 interconnect */
173        
174     GEL_MapAddStr(0x20000000, 0, 0xE0000000, "R|W|AS4", 0);     /* External - SOC Mems andPeripherals - 3.5GBytes */
175     
176     GEL_MapAddStr(0x80000000, 0, 0x40000000, "R|W|AS4", 0);     /* External - EMIF1 - 1GBytes */
177     GEL_MapAddStr(0xC0000000, 0, 0x40000000, "R|W|AS4", 0);     /* External - EMIF2 - 1GBytes */
179     
180 OnReset()
181
185 OnResetDetected()
188     GEL_TextOut( "Core Reset has occurred.\n\n" );
191 OnTargetConnect()
192 {    
194
195  
196     
197 /* GEL file to load microphone files */
199 #define MIC1PATH  "$(GEL_file_dir)/t8/y16L8g3m7090_1.pcm"
200 #define MIC2PATH  "$(GEL_file_dir)/t8/y16L8g3m7090_2.pcm"
201 #define MIC3PATH  "$(GEL_file_dir)/t8/y16L8g3m7090_3.pcm"
202 #define MIC4PATH  "$(GEL_file_dir)/t8/y16L8g3m7090_4.pcm"
203 #define MIC5PATH  "$(GEL_file_dir)/t8/y16L8g3m7090_5.pcm"
204 #define MIC6PATH  "$(GEL_file_dir)/t8/y16L8g3m7090_6.pcm"
205 #define MIC7PATH  "$(GEL_file_dir)/t8/y16L8g3m7090_7.pcm"
206 #define MIC8PATH  "$(GEL_file_dir)/t8/y16L8g3m7090_8.pcm"
208 #define OUTPUTPATH  "$(GEL_file_dir)/t8/fileOutput.bin"
210 BFLoadMic(buffer,micpath)
212     GEL_MemoryLoad(buffer,0,160,micpath,32);
215 BFSaveMic(buffer,num, micpath)
217     GEL_MemorySave(buffer,0,num,micpath,8,0,32);
220 menuitem "Microphone Load Functions";
222 dialog BFLoadOneMic(buffer "Buffer Address",micpath "Microphone File Path")
224     GEL_TextOut("Loading %s\n","",,,,micpath);
225     BFLoadMic(buffer,micpath);
228 hotmenu BFLoadMic1()
230     GEL_TextOut("Loading %s\n","",,,,MIC1PATH);
231     BFLoadMic(filBuf0,MIC1PATH);
234 hotmenu BFLoadMic2()
236     GEL_TextOut("Loading %s\n","",,,,MIC2PATH);
237     BFLoadMic(filBuf1,MIC2PATH);
240 hotmenu BFLoadMic3()
242     GEL_TextOut("Loading %s\n","",,,,MIC3PATH);
243     BFLoadMic(filBuf2,MIC3PATH);
246 hotmenu BFLoadMic4()
248     GEL_TextOut("Loading %s\n","",,,,MIC4PATH);
249     BFLoadMic(filBuf3,MIC4PATH);
252 hotmenu BFLoadMic5()
254     GEL_TextOut("Loading %s\n","",,,,MIC5PATH);
255     BFLoadMic(filBuf4,MIC5PATH);
258 hotmenu BFLoadMic6()
260     GEL_TextOut("Loading %s\n","",,,,MIC6PATH);
261     BFLoadMic(filBuf5,MIC6PATH);
264 hotmenu BFLoadMic7()
266     GEL_TextOut("Loading %s\n","",,,,MIC7PATH);
267     BFLoadMic(filBuf6,MIC7PATH);
270 hotmenu BFLoadMic8()
272     GEL_TextOut("Loading %s\n","",,,,MIC8PATH);
273     BFLoadMic(filBuf7,MIC8PATH);
276 hotmenu BFLoadMicAll()
278     BFLoadMic1();
279     BFLoadMic2();
280     BFLoadMic3();
281     BFLoadMic4();
282     BFLoadMic5();
283     BFLoadMic6();
284     BFLoadMic7();
285     BFLoadMic8();
286     GEL_TextOut("Done Loading Microphones\n");
289 menuitem "Microphone Save Functions";
291 hotmenu BFSaveOutput()
293     GEL_TextOut("Saving %s\n","",,,,OUTPUTPATH);
294     BFSaveMic(filOutBuf0,filConfig.outlen/2,OUTPUTPATH);