📄 2ifinput.lst
字号:
467 00467 00CA 5815 lds EverHoldFlag,00h
468 00468 00CB F400 rts
00469 ;*********************************************************
00470 ;*********************************************************
00471 ;*********************************************************
00472 KeyModeChangePro:
473 00473 00CC 6C79 lda PortBState
474 00474 00CD 80CF jb0 GoToKeyModeChangePro
475 00475 00CE D013 jmp MainHalt
00476 GoToKeyModeChangePro:
477 00477 00CF C0DD call KeyModeChange
478 00478 00D0 D013 jmp MainHalt
00479 KeyPowerPressPro:
480 00480 00D1 C0E3 call KeyPowerPress
481 00481 00D2 D013 jmp MainHalt
00482 KeyAddPressPro:
483 00483 00D3 6C79 lda PortBState
484 00484 00D4 80D6 jb0 GoToKeyAddPressPro
485 00485 00D5 D013 jmp MainHalt
00486 GoToKeyAddPressPro:
487 00487 00D6 C0FD call KeyAddPress
488 00488 00D7 D013 jmp MainHalt
00489 KeySubPressPro:
490 00490 00D8 6C79 lda PortBState
491 00491 00D9 80DB jb0 GoToKeySubPressPro
492 00492 00DA D013 jmp MainHalt
00493 GoToKeySubPressPro:
494 00494 00DB C13F call KeySubPress
495 00495 00DC D013 jmp MainHalt
00496 ;=================ModeChangeKey处理程式==============
00497 KeyModeChange:
498 00498 00DD 6C25 lda SysModeFlag
499 00499 00DE B0E1 jz GoToChangeAMMode
500 00500 00DF C286 call InitFMState
501 00501 00E0 D183 jmp FreqUpDownKeyExit
00502 GoToChangeAMMode:
503 00503 00E1 C2AC call InitAMState
504 00504 00E2 D183 jmp FreqUpDownKeyExit
00505 ;=================PowerKey处理程式===================
00506 KeyPowerPress:
507 00507 00E3 6C79 lda PortBState
508 00508 00E4 80EF jb0 GoToSetPowerAsLow
509 00509 00E5 C05D call SetPowerAsHigh
510 00510 00E6 6C0C lda DispSaveL
511 00511 00E7 6808 sta DispFreqL
512 00512 00E8 6C0D lda DispSaveM
513 00513 00E9 6809 sta DispFreqM
514 00514 00EA 6C0E lda DispSaveH
515 00515 00EB 680A sta DispFreqH
516 00516 00EC 6C0F lda DispSaveU
517 00517 00ED 680B sta DispFreqU
518 00518 00EE D183 jmp FreqUpDownKeyExit
00519 GoToSetPowerAsLow:
520 00520 00EF C060 call SetPowerAsLow
521 00521 00F0 6C08 lda DispFreqL
522 00522 00F1 680C sta DispSaveL
523 00523 00F2 6C09 lda DispFreqM
524 00524 00F3 680D sta DispSaveM
525 00525 00F4 6C0A lda DispFreqH
526 00526 00F5 680E sta DispSaveH
527 00527 00F6 6C0B lda DispFreqU
528 00528 00F7 680F sta DispSaveU
529 00529 00F8 5808 lds DispFreqL,00h
530 00530 00F9 5809 lds DispFreqM,00h
531 00531 00FA 580A lds DispFreqH,00h
532 00532 00FB 580B lds DispFreqU,00h
533 00533 00FC D183 jmp FreqUpDownKeyExit
00534 ;===============AddKey处理程式===============
00535 KeyAddPress:
536 00536 00FD 6C25 lda SysModeFlag
537 00537 00FE B11F jz GoToFMAddPro
00538 ;;;;;;;;;;;AM模式;;;;;;;;;;;;
539 00539 00FF 58F0 lds 70h,AMDispFreqUMax
540 00540 0100 2C0B eor DispFreqU
541 00541 0101 A114 jnz GoToAMAddOneStep
542 00542 0102 5BF0 lds 70h,AMDispFreqHMax
543 00543 0103 2C0A eor DispFreqH
544 00544 0104 A114 jnz GoToAMAddOneStep
545 00545 0105 58F0 lds 70h,AMDispFreqMMax
546 00546 0106 2C09 eor DispFreqM
547 00547 0107 A114 jnz GoToAMAddOneStep
548 00548 0108 5870 lds 70h,AMDispFreqLMax
549 00549 0109 2C08 eor DispFreqL
550 00550 010A A114 jnz GoToAMAddOneStep
00551 ;加到1710K时,将522K送显示BUFFER
00552 ;将最小发射频率送FREQCOUNT
553 00553 010B 5802 lds PrgCountL,AMBottomPrgCountL
554 00554 010C 5A03 lds PrgCountM,AMBottomPrgCountM
555 00555 010D 5A04 lds PrgCountH,AMBottomPrgCountH
556 00556 010E 5885 lds PrgCountU,AMBottomPrgCountU
557 00557 010F 5908 lds DispFreqL,AMDispFreqLMin
558 00558 0110 5909 lds DispFreqM,AMDispFreqMMin
559 00559 0111 5A8A lds DispFreqH,AMDispFreqHMin
560 00560 0112 580B lds DispFreqU,AMDispFreqUMin
561 00561 0113 D183 jmp FreqUpDownKeyExit
00562 GoToAMAddOneStep:
563 00563 0114 C2EB call DispRAMToWork
564 00564 0115 3590 addi* WorkReg+0,9
565 00565 0116 5570 daa* WorkReg+0
566 00566 0117 3101 adci* WorkReg+1,0
567 00567 0118 5571 daa* WorkReg+1
568 00568 0119 3102 adci* WorkReg+2,0
569 00569 011A 5572 daa* WorkReg+2
570 00570 011B 3103 adci* WorkReg+3,0
571 00571 011C C2F0 call WorkToDispRAM
572 00572 011D C2F5 call AMCountRAMAddOneStep
573 00573 011E D183 jmp FreqUpDownKeyExit
00574 GoToFMAddPro:
00575 ;;;;;;;;;;;FM模式;;;;;;;;;;;;
576 00576 011F 58F0 lds 70h,FMDispFreqUMax
577 00577 0120 2C0B eor DispFreqU
578 00578 0121 A134 jnz GoToFMAddOneStep
579 00579 0122 5870 lds 70h,FMDispFreqHMax
580 00580 0123 2C0A eor DispFreqH
581 00581 0124 A134 jnz GoToFMAddOneStep
582 00582 0125 5C70 lds 70h,FMDispFreqMMax
583 00583 0126 2C09 eor DispFreqM
584 00584 0127 A134 jnz GoToFMAddOneStep
585 00585 0128 5870 lds 70h,FMDispFreqLMax
586 00586 0129 2C08 eor DispFreqL
587 00587 012A A134 jnz GoToFMAddOneStep
00588 ;加到108.0M时,87.0M送显示BUFFER
00589 ;将最小发射频率送FREQCOUNT
590 00590 012B 5A02 lds PrgCountL,FMBottomPrgCountL
591 00591 012C 5A83 lds PrgCountM,FMBottomPrgCountM
592 00592 012D 5E04 lds PrgCountH,FMBottomPrgCountH
593 00593 012E 5A05 lds PrgCountU,FMBottomPrgCountU
594 00594 012F 5808 lds DispFreqL,FMDispFreqLMin
595 00595 0130 5B89 lds DispFreqM,FMDispFreqMMin
596 00596 0131 5C0A lds DispFreqH,FMDispFreqHMin
597 00597 0132 580B lds DispFreqU,FMDispFreqUMin
598 00598 0133 D183 jmp FreqUpDownKeyExit
00599 GoToFMAddOneStep:
600 00600 0134 C2EB call DispRAMToWork
601 00601 0135 3510 addi* WorkReg+0,1
602 00602 0136 5570 daa* WorkReg+0
603 00603 0137 3101 adci* WorkReg+1,0
604 00604 0138 5571 daa* WorkReg+1
605 00605 0139 3102 adci* WorkReg+2,0
606 00606 013A 5572 daa* WorkReg+2
607 00607 013B 3103 adci* WorkReg+3,0
608 00608 013C C2F0 call WorkToDispRAM
609 00609 013D C2FC call FMCountRAMAddOneStep
610 00610 013E D183 jmp FreqUpDownKeyExit
00611 ;===============SubKey处理程式===============
00612 KeySubPress:
613 00613 013F 6C25 lda SysModeFlag
614 00614 0140 B162 jz GoToFMSubPro
00615 ;;;;;;;;;;;AM模式;;;;;;;;;;;;
616 00616 0141 5870 lds 70h,AMDispFreqUMin
617 00617 0142 2C0B eor DispFreqU
618 00618 0143 A156 jnz GoToAMSubOneStep
619 00619 0144 5AF0 lds 70h,AMDispFreqHMin
620 00620 0145 2C0A eor DispFreqH
621 00621 0146 A156 jnz GoToAMSubOneStep
622 00622 0147 5970 lds 70h,AMDispFreqMMin
623 00623 0148 2C09 eor DispFreqM
624 00624 0149 A156 jnz GoToAMSubOneStep
625 00625 014A 5970 lds 70h,AMDispFreqLMin
626 00626 014B 2C08 eor DispFreqL
627 00627 014C A156 jnz GoToAMSubOneStep
00628 ;减到552K时,将1710K送显示BUFFER
00629 ;将最小发射频率送FREQCOUNT
630 00630 014D 5802 lds PrgCountL,AMTopPrgCountL
631 00631 014E 5803 lds PrgCountM,AMTopPrgCountM
632 00632 014F 5E84 lds PrgCountH,AMTopPrgCountH
633 00633 0150 5905 lds PrgCountU,AMTopPrgCountU
634 00634 0151 5808 lds DispFreqL,AMDispFreqLMax
635 00635 0152 5889 lds DispFreqM,AMDispFreqMMax
636 00636 0153 5B8A lds DispFreqH,AMDispFreqHMax
637 00637 0154 588B lds DispFreqU,AMDispFreqUMax
638 00638 0155 D183 jmp FreqUpDownKeyExit
00639 GoToAMSubOneStep:
640 00640 0156 C2EB call DispRAMToWork
641 00641 0157 3790 subi* WorkReg+0,9
642 00642 0158 5770 das* WorkReg+0
643 00643 0159 3301 sbci* WorkReg+1,0
644 00644 015A 5771 das* WorkReg+1
645 00645 015B 3302 sbci* WorkReg+2,0
646 00646 015C 5772 das* WorkReg+2
647 00647 015D 3303 sbci* WorkReg+3,0
648 00648 015E 5773 das* WorkReg+3
649 00649 015F C2F0 call WorkToDispRAM
650 00650 0160 C303 call AMCountRAMSubOneStep
651 00651 0161 D183 jmp FreqUpDownKeyExit
00652 GoToFMSubPro:
00653 ;;;;;;;;;;;FM模式;;;;;;;;;;;;
654 00654 0162 5870 lds 70h,FMDispFreqUMin
655 00655 0163 2C0B eor DispFreqU
656 00656 0164 A177 jnz GoToFMSubOneStep
657 00657 0165 5C70 lds 70h,FMDispFreqHMin
658 00658 0166 2C0A eor DispFreqH
659 00659 0167 A177 jnz GoToFMSubOneStep
660 00660 0168 5BF0 lds 70h,FMDispFreqMMin
661 00661 0169 2C09 eor DispFreqM
662 00662 016A A177 jnz GoToFMSubOneStep
663 00663 016B 5870 lds 70h,FMDispFreqLMin
664 00664 016C 2C08 eor DispFreqL
665 00665 016D A177 jnz GoToFMSubOneStep
00666 ;减到87.0M时,将108.0M送显示BUFFER
00667 ;将最小发射频率送FREQCOUNT
668 00668 016E 5E02 lds PrgCountL,FMTopPrgCountL
669 00669 016F 5D83 lds PrgCountM,FMTopPrgCountM
670 00670 0170 5E04 lds PrgCountH,FMTopPrgCountH
671 00671 0171 5A85 lds PrgCountU,FMTopPrgCountU
672 00672 0172 5808 lds DispFreqL,FMDispFreqLMax
673 00673 0173 5C09 lds DispFreqM,FMDispFreqMMax
674 00674 0174 580A lds DispFreqH,FMDispFreqHMax
675 00675 0175 588B lds DispFreqU,FMDispFreqUMax
676 00676 0176 D183 jmp FreqUpDownKeyExit
00677 GoToFMSubOneStep:
678 00678 0177 C2EB call DispRAMToWork
679 00679 0178 3710 subi* WorkReg+0,1
680 00680 0179 5770 das* WorkReg+0
681 00681 017A 3301 sbci* WorkReg+1,0
682 00682 017B 5771 das* WorkReg+1
683 00683 017C 3302 sbci* WorkReg+2,0
684 00684 017D 5772 das* WorkReg+2
685 00685 017E 3303 sbci* WorkReg+3,0
686 00686 017F 5773 das* WorkReg+3
687 00687 0180 C2F0 call WorkToDispRAM
688 00688 0181 C30A call FMCountRAMSubOneStep
689 00689 0182 D183 jmp FreqUpDownKeyExit
00690 ;==========================================
00691 FreqUpDownKeyExit:
692 00692 0183 F602 sf 02H ;SET BCF=1
693 00693 0184 EE00 fast
694 00694 0185 C31B call Display
695 00695 0186 C18A call TransDataControlByD0
696 00696 0187 EE80 slow
697 00697 0188 F702 rf 02H ;SET BCF=0
698 00698 0189 F400 rts
00699 ;**********************************************************
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -