BASIC compiler/interpreter for PIC32MX/MZ-80K (suspended)
リビジョン | 253 (tree) |
---|---|
日時 | 2018-07-08 10:18:42 |
作者 | kmorimatsu |
Initialize music at start up for avoiding noise when starting a program.
@@ -61,8 +61,6 @@ | ||
61 | 61 | |
62 | 62 | printstr("BASIC "BASVER"\n"); |
63 | 63 | wait60thsec(15); |
64 | - // Initialize music | |
65 | - init_music(); | |
66 | 64 | |
67 | 65 | printstr("Compiling..."); |
68 | 66 |
@@ -234,7 +234,8 @@ | ||
234 | 234 | } |
235 | 235 | else printstr("OK\n"); |
236 | 236 | |
237 | - wait60thsec(60); //1秒待ち | |
237 | +// wait60thsec(60); //1秒待ち | |
238 | + init_music(); // 音源初期化(所要時間、約2秒) | |
238 | 239 | |
239 | 240 | // 実行中HEXファイル名がHEXFILEと一致した場合はエディタ起動 |
240 | 241 | appname=(char*)FILENAME_FLASH_ADDRESS; |
@@ -326,28 +326,38 @@ | ||
326 | 326 | } |
327 | 327 | |
328 | 328 | void init_music(){ |
329 | + int i,t; | |
329 | 330 | stop_music(); |
330 | 331 | |
331 | - // Timer3 for PWM | |
332 | - PR3=0x100; | |
333 | - T3CON=0x0000; // Not yet started | |
334 | - TMR3=0; | |
335 | - | |
336 | 332 | // OC4 setting |
337 | 333 | RPF5R = 0x0b; //Use RPF5 for OC4 |
338 | 334 | OC4R=0x00; |
339 | - OC4RS=0x80; | |
335 | +// OC4RS=0x80; | |
336 | + if (OC4RS&0xff00) OC4RS=0x00; | |
340 | 337 | OC4CON=0x000e; |
341 | 338 | OC4CONSET=0x8000; |
342 | 339 | // OC3 setting |
343 | 340 | RPF4R = 0x0b; //Use RPF4 for OC3 |
344 | 341 | OC3R=0x00; |
345 | - OC3RS=0x80; | |
342 | +// OC3RS=0x80; | |
343 | + if (OC3RS&0xff00) OC3RS=0x00; | |
346 | 344 | OC3CON=0x000e; |
347 | 345 | OC3CONSET=0x8000; |
348 | 346 | |
349 | - // Start timer 3 | |
350 | - T3CONSET=0x8000; | |
347 | + // Timer3 for PWM | |
348 | + PR3=0x100; | |
349 | + TMR3=0; | |
350 | + T3CON=0x8000; | |
351 | + | |
352 | + // Move OC4RS and OC3 RS from 0x00 to 0x80 | |
353 | + if (OC3RS==0 || OC4RS==0) { | |
354 | + for(i=0;i<=(0x80<<10);i++){ | |
355 | + asm(WAIT); | |
356 | + OC4RS=OC3RS=i>>10; | |
357 | + //t=TMR3; | |
358 | + //while(t<=TMR3); | |
359 | + } | |
360 | + } | |
351 | 361 | } |
352 | 362 | |
353 | 363 | void musicSetL(){ |
@@ -73,12 +73,13 @@ | ||
73 | 73 | g_long_name_var_num=0; |
74 | 74 | cmpdata_init(); |
75 | 75 | |
76 | + // Initialize music system | |
77 | + init_music(); | |
78 | + | |
76 | 79 | printstr("BASIC "BASVER"\n"); |
77 | 80 | wait60thsec(15); |
78 | 81 | // Initialize environment |
79 | 82 | init_env(); |
80 | - // Initialize music system | |
81 | - init_music(); | |
82 | 83 | |
83 | 84 | printstr("Compiling..."); |
84 | 85 |