📄 ht83f60_tpl_adpcm_new.lst
字号:
328 0000 C T0PS1 EQU [0EH].1
329 0000 C T0PS2 EQU [0EH].2
330 0000 C T0E EQU [0EH].3
331 0000 C T0ON EQU [0EH].4
332 0000 C T0M0 EQU [0EH].6
333 0000 C T0M1 EQU [0EH].7
334 0000 C T1PS0 EQU [011H].0
335 0000 C T1PS1 EQU [011H].1
336 0000 C T1PS2 EQU [011H].2
337 0000 C T1E EQU [011H].3
338 0000 C T1ON EQU [011H].4
339 0000 C T1M0 EQU [011H].6
340 0000 C T1M1 EQU [011H].7
341 0000 C PA0 EQU [012H].0
342 0000 C PA1 EQU [012H].1
343 0000 C PA2 EQU [012H].2
344 0000 C PA3 EQU [012H].3
345 0000 C PA4 EQU [012H].4
346 0000 C PA5 EQU [012H].5
347 0000 C PA6 EQU [012H].6
348 0000 C PA7 EQU [012H].7
349 0000 C PAC0 EQU [013H].0
350 0000 C PAC1 EQU [013H].1
351 0000 C PAC2 EQU [013H].2
"File: HT83F60_TPL_ADPCM_New.hed Holtek Cross-Assembler Version 2.86 Page 7
352 0000 C PAC3 EQU [013H].3
353 0000 C PAC4 EQU [013H].4
354 0000 C PAC5 EQU [013H].5
355 0000 C PAC6 EQU [013H].6
356 0000 C PAC7 EQU [013H].7
357 0000 C PB0 EQU [014H].0
358 0000 C PB1 EQU [014H].1
359 0000 C PB2 EQU [014H].2
360 0000 C PB3 EQU [014H].3
361 0000 C PB4 EQU [014H].4
362 0000 C PB5 EQU [014H].5
363 0000 C PB6 EQU [014H].6
364 0000 C PB7 EQU [014H].7
365 0000 C PBC0 EQU [015H].0
366 0000 C PBC1 EQU [015H].1
367 0000 C PBC2 EQU [015H].2
368 0000 C PBC3 EQU [015H].3
369 0000 C PBC4 EQU [015H].4
370 0000 C PBC5 EQU [015H].5
371 0000 C PBC6 EQU [015H].6
372 0000 C PBC7 EQU [015H].7
373 0000 C ESIAI EQU [01EH].0
374 0000 C ESIBI EQU [01EH].1
375 0000 C SIAF EQU [01EH].4
376 0000 C SIBF EQU [01EH].5
377 0000 C SIMENB EQU [020H].1
378 0000 C SIM0B EQU [020H].5
379 0000 C SIM1B EQU [020H].6
380 0000 C SIM2B EQU [020H].7
381 0000 C RXAKB EQU [021H].0
382 0000 C RNICB EQU [021H].1
383 0000 C SRWB EQU [021H].2
384 0000 C TXAKB EQU [021H].3
385 0000 C HTXB EQU [021H].4
386 0000 C HBBB EQU [021H].5
387 0000 C HAASB EQU [021H].6
388 0000 C HCFB EQU [021H].7
389 0000 C SD0B EQU [022H].0
390 0000 C SD1B EQU [022H].1
391 0000 C SD2B EQU [022H].2
392 0000 C SD3B EQU [022H].3
393 0000 C SD4B EQU [022H].4
394 0000 C SD5B EQU [022H].5
395 0000 C SD6B EQU [022H].6
396 0000 C SD7B EQU [022H].7
397 0000 C SA1B EQU [023H].1
398 0000 C SA2B EQU [023H].2
399 0000 C SA3B EQU [023H].3
400 0000 C SA4B EQU [023H].4
401 0000 C SA5B EQU [023H].5
402 0000 C SA6B EQU [023H].6
403 0000 C SA7B EQU [023H].7
404 0000 C TRFB EQU [023H].0
405 0000 C WCOLB EQU [023H].1
406 0000 C CSENB EQU [023H].2
407 0000 C MLSB EQU [023H].3
408 0000 C CKEGB EQU [023H].4
409 0000 C CKPOLB EQU [023H].5
410 0000 C PWMC EQU [026H].0
411 0000 C DAC EQU [026H].1
"File: HT83F60_TPL_ADPCM_New.hed Holtek Cross-Assembler Version 2.86 Page 8
412 0000 C LVDF EQU [026H].2
413 0000 C SINGLE_PWM EQU [026H].3
414 0000 C MSB_SIGN EQU [026H].7
415 0000 C VOL0 EQU [029H].0
416 0000 C VOL1 EQU [029H].1
417 0000 C VOL2 EQU [029H].2
418 0000 C V4 EQU [029H].4
419 0000 C V5 EQU [029H].5
420 0000 C V6 EQU [029H].6
421 0000 C V7 EQU [029H].7
422 0000 C SIMENA EQU [02BH].1
423 0000 C SIM0A EQU [02BH].5
424 0000 C SIM1A EQU [02BH].6
425 0000 C SIM2A EQU [02BH].7
426 0000 C RXAKA EQU [02CH].0
427 0000 C RNICA EQU [02CH].1
428 0000 C SRWA EQU [02CH].2
429 0000 C TXAKA EQU [02CH].3
430 0000 C HTXA EQU [02CH].4
431 0000 C HBBA EQU [02CH].5
432 0000 C HAASA EQU [02CH].6
433 0000 C HCFA EQU [02CH].7
434 0000 C SD0A EQU [02DH].0
435 0000 C SD1A EQU [02DH].1
436 0000 C SD2A EQU [02DH].2
437 0000 C SD3A EQU [02DH].3
438 0000 C SD4A EQU [02DH].4
439 0000 C SD5A EQU [02DH].5
440 0000 C SD6A EQU [02DH].6
441 0000 C SD7A EQU [02DH].7
442 0000 C SA1A EQU [02EH].1
443 0000 C SA2A EQU [02EH].2
444 0000 C SA3A EQU [02EH].3
445 0000 C SA4A EQU [02EH].4
446 0000 C SA5A EQU [02EH].5
447 0000 C SA6A EQU [02EH].6
448 0000 C SA7A EQU [02EH].7
449 0000 C TRFA EQU [02EH].0
450 0000 C WCOLA EQU [02EH].1
451 0000 C CSENA EQU [02EH].2
452 0000 C MLSA EQU [02EH].3
453 0000 C CKEGA EQU [02EH].4
454 0000 C CKPOLA EQU [02EH].5
455 0000 C
456 0000 C LASTPAGE EQU 0700H
457 0000 C
458 0000 C #define CF [0AH].0
459 0000 C #define Carry STATUS.0
460 0000 C #define ZF [0AH].2
461 0000 C #define ZERO [0AH].2
462 0000 C
463 0000 C
464 0000 C
465 0000 C #DEFINE HT83SYSTEMFREQUENCY HT86SYSTEMFREQUENCY
466 0000 C
467 0000 C EXTERN _MAIN_VOLUME :BYTE
468 0000 C EXTERN F_C_FUNCTION :BIT
469 0000 C EXTERN _FSTANDBY0 :BIT
470 0000 C
471 0000 C EXTERN B_CH0_USER_SR :BIT
"File: HT83F60_TPL_ADPCM_New.hed Holtek Cross-Assembler Version 2.86 Page 9
472 0000 C EXTERN SAMPLINGRATE0 :BIT ;DBIT ;;CHANNEL NO
473 0000 C EXTERN SAMPLINGRATE1 :BYTE ;DB ? ;;TMRC
474 0000 C EXTERN SAMPLINGRATE2 :BYTE ;DB ? ;;TMR
475 0000 C
476 0000 C EXTERN _PLAY_VOICE0 :BYTE ;DB 2 DUP (?) ;;TRACKNO
477 0000 C EXTERN _PLAY_VOICE1 :BIT ;DBIT ;;CHANNEL
478 0000 C EXTERN _PLAY_VOICE2 :BIT ;DBIT ;;FILTER
479 0000 C
480 0000 C EXTERN _PLAY_SENTENCE0 :BYTE ;DB 2 DUP (?) ;;SENTENCENO
481 0000 C EXTERN _PLAY_SENTENCE1 :BIT ;DBIT ;;CHANNEL
482 0000 C EXTERN _PLAY_SENTENCE2 :BIT ;DBIT ;;FILTER
483 0000 C
484 0000 C EXTERN VOLUME0 :BYTE ;DB ? ;;VOLUME INDEX 0 - 7
485 0000 C
486 0000 C EXTERN CUE_CHANNEL :BIT ;DBIT
487 0000 C EXTERN CUE_IN :BIT ;DBIT
488 0000 C EXTERN CUE_CODE :BYTE ;DB ?
489 0000 C EXTERN CUE_NUMBER :BYTE ;DB ?
490 0000 C
491 0000 C
492 0000 C EXTERN SR0ISR :NEAR
493 0000 C
494 0000 C EXTERN __PLAY_VOICE :NEAR
495 0000 C EXTERN __PLAY_SENTENCE :NEAR
496 0000 C EXTERN _DAC_RAMP_UP :NEAR
497 0000 C EXTERN _DAC_RAMP_DOWN :NEAR
498 0000 C
499 0000 C EXTERN _SETSTANDBY :NEAR
500 0000 C EXTERN _SET_VOLUME :NEAR
501 0000 C EXTERN _VOLUMEUP :NEAR
502 0000 C EXTERN _VOLUMEDOWN :NEAR
503 0000 C EXTERN _STOPCH0 :NEAR
504 0000 C
505 0000 C
506 0000 C EXTERN _SYSTEM_INITIALIZATION :NEAR
507 0000 C EXTERN _CLRRAM :NEAR
508 0000 C EXTERN _FUNCCHECKSUM :NEAR
509 0000 C EXTERN _INITTIMEBASE :NEAR
510 0000 C
511 0000 C
512 0000 C IFNDEF _HOLTEK_C_
513 0000 C
514 0000 C
515 0000 C
516 0000 C
517 0000 C
518 0000 C _PLAY_VOICE macro t2,t1,CH,volume,filter ;speech1 macro tH,tL,CH,vol,filter
519 0000 C ;;
520 0000 C CLR TMR0C
521 0000 C ;;1nd parameter
522 0000 C IFNB T2
523 0000 C MOV A,T2
524 0000 C MOV _PLAY_VOICE0[1],A
525 0000 C ENDIF
526 0000 C ;;2nd parameter
527 0000 C IFNB T1
528 0000 C MOV A,T1
529 0000 C MOV _PLAY_VOICE0[0],A
530 0000 C ENDIF
531 0000 C ;;3nd parameter
"File: HT83F60_TPL_ADPCM_New.hed Holtek Cross-Assembler Version 2.86 Page 10
532 0000 C IFNB CH
533 0000 C IF CH==0
534 0000 C CLR _PLAY_VOICE1
535 0000 C ELSE
536 0000 C SET _PLAY_VOICE1
537 0000 C ENDIF
538 0000 C ELSE
539 0000 C CLR _PLAY_VOICE1
540 0000 C ENDIF
541 0000 C ;;4nd parameter
542 0000 C IFNB VOLUME
543 0000 C MOV A,VOLUME
544 0000 C CALL _SET_VOLUME
545 0000 C ELSE
546 0000 C ENDIF
547 0000 C ;;5nd parameter
548 0000 C IFNB FILTER
549 0000 C IF FILTER == 1
550 0000 C SET _PLAY_VOICE2
551 0000 C ELSE
552 0000 C CLR _PLAY_VOICE2
553 0000 C ENDIF
554 0000 C ELSE
555 0000 C CLR _PLAY_VOICE2
556 0000 C ENDIF
557 0000 C CALL __PLAY_VOICE
558 0000 C ENDM
559 0000 C
560 0000 C
561 0000 C
562 0000 C
563 0000 C
564 0000 C _PLAY_SENTENCE MACRO T2,T1,CH ,VOLUME ,filter ;;SENTENCE macro tH,tL,CH,vol,filter
565 0000 C ;;
566 0000 C CLR TMR0C
567 0000 C ;;1nd parameter
568 0000 C IFNB T2
569 0000 C MOV A,T2
570 0000 C MOV _PLAY_SENTENCE0[1],A
571 0000 C ENDIF
572 0000 C ;;2nd parameter
573 0000 C IFNB T1
574 0000 C MOV A,T1
575 0000 C MOV _PLAY_SENTENCE0[0],A
576 0000 C ENDIF
577 0000 C ;;3nd parameter
578 0000 C IFNB CH
579 0000 C IF CH==0
580 0000 C CLR _PLAY_SENTENCE1
581 0000 C ELSE
582 0000 C SET _PLAY_SENTENCE1
583 0000 C ENDIF
584 0000 C ELSE
585 0000 C CLR _PLAY_SENTENCE1
586 0000 C ENDIF
587 0000 C ;;4nd parameter
588 0000 C IFNB VOLUME
589 0000 C MOV A,VOLUME
590 0000 C CALL _SET_VOLUME
591 0000 C ELSE
"File: HT83F60_TPL_ADPCM_New.hed Holtek Cross-Assembler Version 2.86 Page 11
592 0000 C ENDIF
593 0000 C ;;5nd parameter
594 0000 C IFNB FILTER
595 0000 C IF FILTER == 1
596 0000 C SET _PLAY_SENTENCE2
597 0000 C ELSE
598 0000 C CLR _PLAY_SENTENCE2
599 0000 C ENDIF
600 0000 C ELSE
601 0000 C CLR _PLAY_SENTENCE2
602 0000 C ENDIF
603 0000 C CALL __PLAY_SENTENCE
604 0000 C ENDM
605 0000 C
606 0000 C
607 0000 C
608 0000 C
609 0000 C _VOLUME macro VOLUME0
610 0000 C MOV A,VOLUME0
611 0000 C CALL _SET_VOLUME
612 0000 C ENDM
613 0000 C
614 0000 C
615 0000 C
616 0000 C
617 0000 C
618 0000 C _SAMPLINGRATE MACRO CHANNEL, M_SR
619 0000 C IF M_SR != 0
620 0000 C IF CHANNEL==0
621 0000 C CLR TMR0C
622 0000 C IF(HT86SYSTEMFREQUENCY/(4*M_SR)<=256)
623 0000 C MOV A,256-HT86SYSTEMFREQUENCY/(4*M_SR)
624 0000 C MOV TMR0,A
625 0000 C MOV A,51H
626 0000 C ELSEIF(HT86SYSTEMFREQUENCY/(8*M_SR)<=256)
627 0000 C MOV A,256-HT86SYSTEMFREQUENCY/(8*M_SR)
628 0000 C MOV TMR0,A
629 0000 C MOV A,52H
630 0000 C ELSEIF(HT86SYSTEMFREQUENCY/(16*M_SR)<=256)
631 0000 C MOV A,256-HT86SYSTEMFREQUENCY/(16*M_SR)
632 0000 C MOV TMR0,A
633 0000 C MOV A,53H
634 0000 C ELSEIF(HT86SYSTEMFREQUENCY/(16*M_SR)<=256*2)
635 0000 C MOV A,256-HT86SYSTEMFREQUENCY/(2*16*M_SR)
636 0000 C MOV TMR0,A
637 0000 C MOV A,54H
638 0000 C ELSEIF(HT86SYSTEMFREQUENCY/(16*M_SR)<=256*4)
639 0000 C MOV A,256-HT86SYSTEMFREQUENCY/(4*16*M_SR)
640 0000 C MOV TMR0,A
641 0000 C MOV A,55H
642 0000 C ELSEIF(HT86SYSTEMFREQUENCY/(16*M_SR)<=256*8)
643 0000 C MOV A,256-HT86SYSTEMFREQUENCY/(8*16*M_SR)
644 0000 C MOV TMR0,A
645 0000 C MOV A,56H
646 0000 C ELSE
647 0000 C MOV A,256-HT86SYSTEMFREQUENCY/(16*16*M_SR)
648 0000 C MOV TMR0,A
649 0000 C MOV A,57H
650 0000 C ENDIF
651 0000 C SET B_CH0_USER_SR
"File: HT83F60_TPL_ADPCM_New.hed Holtek Cross-Assembler Version 2.86 Page 12
652 0000 C MOV TMR0C,A
653 0000 C ELSE
654 0000 C ; if frequency out of range
655 0000 C Message 'ERROR in sampling rate macro -- Sampling rate out of range!'
656 0000 C ENDIF
657 0000 C ENDIF
658 0000 C ENDM
659 0000 C
660 0000 C
661 0000 C
662 0000 C
663 0000 C
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -