comparison src/aci2/aci/ati_audio.c @ 244:bec9198fc306

aci2 ati_audio.c: my understanding of the 's' parser type was incorrect
author Mychaela Falconia <falcon@freecalypso.org>
date Mon, 24 Jul 2017 04:15:14 +0000
parents 9034c3a7267e
children 3b8d291ed45a
comparison
equal deleted inserted replaced
243:619febca2803 244:bec9198fc306
82 GLOBAL T_ATI_RSLT atAtE1 ( char *cl, UBYTE srcId ) 82 GLOBAL T_ATI_RSLT atAtE1 ( char *cl, UBYTE srcId )
83 { 83 {
84 T_AUDIO_MELODY_E1_PARAMETER e1_param; 84 T_AUDIO_MELODY_E1_PARAMETER e1_param;
85 T_RV_RETURN return_path; 85 T_RV_RETURN return_path;
86 86
87 e1_param.melody_name[0] = 0; 87 cl = parse(cl, "S", (LONG)(sizeof(e1_param.melody_name)),
88 cl = parse(cl, "s", (LONG)(sizeof(e1_param.melody_name) - 1),
89 e1_param.melody_name); 88 e1_param.melody_name);
90 if (!e1_param.melody_name[0]) 89 if (!cl || !e1_param.melody_name[0])
91 return (ATI_FAIL); 90 return (ATI_FAIL);
92 e1_param.loopback = AUDIO_MELODY_NO_LOOPBACK; 91 e1_param.loopback = AUDIO_MELODY_NO_LOOPBACK;
93 e1_param.melody_mode = AUDIO_MELODY_NORMAL_MODE; 92 e1_param.melody_mode = AUDIO_MELODY_NORMAL_MODE;
94 93
95 return_path.addr_id = NULL; 94 return_path.addr_id = NULL;
104 GLOBAL T_ATI_RSLT atAtE2 ( char *cl, UBYTE srcId ) 103 GLOBAL T_ATI_RSLT atAtE2 ( char *cl, UBYTE srcId )
105 { 104 {
106 T_AUDIO_MELODY_E2_PARAMETER e2_param; 105 T_AUDIO_MELODY_E2_PARAMETER e2_param;
107 T_RV_RETURN return_path; 106 T_RV_RETURN return_path;
108 107
109 e2_param.melody_E2_name[0] = 0; 108 cl = parse(cl, "S", (LONG)(sizeof(e2_param.melody_E2_name)),
110 cl = parse(cl, "s", (LONG)(sizeof(e2_param.melody_E2_name) - 1),
111 e2_param.melody_E2_name); 109 e2_param.melody_E2_name);
112 if (!e2_param.melody_E2_name[0]) 110 if (!cl || !e2_param.melody_E2_name[0])
113 return (ATI_FAIL); 111 return (ATI_FAIL);
114 e2_param.E2_loopback = AUDIO_MELODY_NO_LOOPBACK; 112 e2_param.E2_loopback = AUDIO_MELODY_NO_LOOPBACK;
115 e2_param.melody_E2_mode = AUDIO_MELODY_NORMAL_MODE; 113 e2_param.melody_E2_mode = AUDIO_MELODY_NORMAL_MODE;
116 114
117 return_path.addr_id = NULL; 115 return_path.addr_id = NULL;
125 /* AT@E2LSI - load melody E2 instrument list file */ 123 /* AT@E2LSI - load melody E2 instrument list file */
126 GLOBAL T_ATI_RSLT atAtE2LSI ( char *cl, UBYTE srcId ) 124 GLOBAL T_ATI_RSLT atAtE2LSI ( char *cl, UBYTE srcId )
127 { 125 {
128 T_AUDIO_MELODY_E2_LOAD_FILE_INSTR_PARAMETER e2_lsi_param; 126 T_AUDIO_MELODY_E2_LOAD_FILE_INSTR_PARAMETER e2_lsi_param;
129 127
130 e2_lsi_param.melody_E2_file_name[0] = 0; 128 cl = parse(cl, "S", (LONG)(sizeof(e2_lsi_param.melody_E2_file_name)),
131 cl = parse(cl, "s", (LONG)(sizeof(e2_lsi_param.melody_E2_file_name)-1),
132 e2_lsi_param.melody_E2_file_name); 129 e2_lsi_param.melody_E2_file_name);
133 if (!e2_lsi_param.melody_E2_file_name[0]) 130 if (!cl || !e2_lsi_param.melody_E2_file_name[0])
134 return (ATI_FAIL); 131 return (ATI_FAIL);
135 132
136 if (audio_melody_E2_load_file_instruments(&e2_lsi_param) == AUDIO_OK) 133 if (audio_melody_E2_load_file_instruments(&e2_lsi_param) == AUDIO_OK)
137 return (ATI_CMPL); 134 return (ATI_CMPL);
138 else 135 else
191 GLOBAL T_ATI_RSLT atAtVMP ( char *cl, UBYTE srcId ) 188 GLOBAL T_ATI_RSLT atAtVMP ( char *cl, UBYTE srcId )
192 { 189 {
193 T_AUDIO_VM_PLAY_PARAMETER play_param; 190 T_AUDIO_VM_PLAY_PARAMETER play_param;
194 T_RV_RETURN return_path; 191 T_RV_RETURN return_path;
195 192
196 play_param.memo_name[0] = 0; 193 cl = parse(cl, "S", (LONG)(sizeof(play_param.memo_name)),
197 cl = parse(cl, "s", (LONG)(sizeof(play_param.memo_name) - 1),
198 play_param.memo_name); 194 play_param.memo_name);
199 if (!play_param.memo_name[0]) 195 if (!cl || !play_param.memo_name[0])
200 return (ATI_FAIL); 196 return (ATI_FAIL);
201 197
202 return_path.addr_id = NULL; 198 return_path.addr_id = NULL;
203 return_path.callback_func = audio_callback; 199 return_path.callback_func = audio_callback;
204 if (audio_vm_play_start(&play_param, return_path) == AUDIO_OK) 200 if (audio_vm_play_start(&play_param, return_path) == AUDIO_OK)
233 T_AUDIO_VM_RECORD_PARAMETER record_param; 229 T_AUDIO_VM_RECORD_PARAMETER record_param;
234 int duration = 0, compression = 0; 230 int duration = 0, compression = 0;
235 LONG mic_gain = 0x100, network_gain = 0x100; 231 LONG mic_gain = 0x100, network_gain = 0x100;
236 T_RV_RETURN return_path; 232 T_RV_RETURN return_path;
237 233
238 record_param.memo_name[0] = 0; 234 cl = parse(cl, "Sddyy", (LONG)(sizeof(record_param.memo_name)),
239 cl = parse(cl, "sddyy", (LONG)(sizeof(record_param.memo_name) - 1),
240 record_param.memo_name, &duration, &compression, 235 record_param.memo_name, &duration, &compression,
241 &mic_gain, &network_gain); 236 &mic_gain, &network_gain);
242 if (!record_param.memo_name[0] || !duration) 237 if (!cl || !record_param.memo_name[0] || !duration)
243 return (ATI_FAIL); 238 return (ATI_FAIL);
244 record_param.memo_duration = duration; 239 record_param.memo_duration = duration;
245 record_param.compression_mode = compression; 240 record_param.compression_mode = compression;
246 record_param.microphone_gain = mic_gain; 241 record_param.microphone_gain = mic_gain;
247 record_param.network_gain = network_gain; 242 record_param.network_gain = network_gain;