📄 main.lst
字号:
79A1 [02] 86 598 pula
79A2 [04] 81 599 rts
79A3 600 $Include 'it.asm'
601 ;/**************************************************
***************************/
602 ;/* PROJECT : RF key demonstrator (ASK or FSK)
*/
603 ;/* Functions: Dummy_isr
*/
604 ;/**************************************************
***************************/
main.asm Assembled with CASM08Z 3/18/2003 3:17:52 PM PAGE 15
605
606 ;***************************************************
***********
607 ;* dummy_isr - Dummy Interrupt Service Routine.
608 ;* description : it just does a return from
interrupt.
609 ;***************************************************
***********
610
611 dummy_isr:
612
79A3 [07] 80 613 rti
79A4 614 $Include 'Transmit_Frame.asm'
615 ;/**************************************************
***************************/
616 ;/* Transmit_Frame
*/
617 ;/* Description : Make the data frame and transmit
it out. */
618 ;/* In :
*/
619 ;/* Out :
*/
620 ;/* local variables :
*/
621 ;/**************************************************
***************************/
622
623 Transmit_Frame:
624
79A4 [05] CD797F 625 jsr Make_frame
79A7 [05] CD78BC 626 jsr Wake_up_Rx ; wake up
Romeo2
627
628 end_wake_up_rx:
629
79AA [01] 8F 630 wait ; wait for
end of tone transmission
79AB [04] 55A5 631 ldhx nb_1
79AD [03] 650000 632 cphx #0000
79B0 [03] 26F8 633 bne end_wake_up_rx
79B2 [05] CD78F9 634 jsr Transmit ; transmit
the UHF frame
635
79B5 [04] 81 636 rts
637
638 ; This is a constant delay for approximately 0.8
seconds, used while in
639 ; fast transmission mode.
640 delay_800_ms:
79B6 [02] A618 641 lda #!24
642
643 Next_delay:
79B8 [03] 45FFFF 644 ldhx #$FFFF
79BB [05] CD7880 645 jsr tempo
79BE [01] 4A 646 deca
79BF [03] 26F7 647 bne Next_delay
79C1 [04] 81 648 rts
main.asm Assembled with CASM08Z 3/18/2003 3:17:52 PM PAGE 16
649
650 * This is a pseudo-random delay, which will last
for approximately 0-100 ms.
651 *
652 Random_delay:
79C2 [02] 87 653 psha
79C3 [03] B622 654 lda TCNTL
79C5 [02] A407 655 and #%00000111
79C7 [03] B7B4 656 sta Random_Number
79C9 [03] 2754 657 beq No_more ; No added
delay if rand# %000.
658
79CB [02] A102 659 cmp #%010
79CD [03] 2302 660 bls Delay_25_ms ; Delay for
25 ms if rand# %001 or %010.
79CF [03] 2008 661 bra Not_25_ms
662
663 Delay_25_ms:
79D1 [03] 45BFFF 664 ldhx #$BFFF
79D4 [05] CD7880 665 jsr tempo
79D7 [03] 2046 666 bra No_more
667
668 Not_25_ms:
79D9 [03] B6B4 669 lda Random_Number
79DB [02] A104 670 cmp #%100
79DD [03] 2302 671 bls Delay_50_ms ; Delay for
50 ms if rand# %011 or %100.
79DF [03] 200E 672 bra Not_50_ms
673
674 Delay_50_ms
79E1 [03] 45FFFF 675 ldhx #$FFFF
79E4 [05] CD7880 676 jsr tempo
79E7 [03] 457FFF 677 ldhx #$7FFF
79EA [05] CD7880 678 jsr tempo
79ED [03] 2030 679 bra No_more
680
681 Not_50_ms:
79EF [03] B6B4 682 lda Random_Number
79F1 [02] A105 683 cmp #%101
79F3 [03] 2702 684 beq Delay_75_ms ; Delay for
75 ms if rand# %101.
79F5 [03] 2014 685 bra Not_75_ms
686
687 Delay_75_ms:
79F7 [03] 45FFFF 688 ldhx #$FFFF
79FA [05] CD7880 689 jsr tempo
79FD [03] 45FFFF 690 ldhx #$FFFF
7A00 [05] CD7880 691 jsr tempo
7A03 [03] 453FFF 692 ldhx #$3FFF
7A06 [05] CD7880 693 jsr tempo
7A09 [03] 2014 694 bra No_more
695
696 Not_75_ms:
697 Delay_100_ms: ; If rand#
not found yet, delay for 100 ms.
7A0B [03] 45FFFF 698 ldhx #$FFFF
7A0E [05] CD7880 699 jsr tempo
7A11 [03] 45FFFF 700 ldhx #$FFFF
main.asm Assembled with CASM08Z 3/18/2003 3:17:52 PM PAGE 17
7A14 [05] CD7880 701 jsr tempo
7A17 [03] 45FFFF 702 ldhx #$FFFF
7A1A [05] CD7880 703 jsr tempo
7A1D [03] 2000 704 bra No_more
705
706 No_more:
7A1F [02] 86 707 pula
7A20 [04] 81 708 rts
709
710 ; $Include 'init_ASK.asm'
7A21 711 $Include 'init_FSK.asm'
712 ;/**************************************************
***************************/
713 ;/* PROJECT : Mosport State Machine Mimic MODULE
: State_0a (No Tx here) */
714 ;/* Functions: (Initialization mode, occurs upon
power-up) */
715 ;/* Init
*/
716 ;/* Init_ports
*/
717 ;/* Init_KBI
*/
718 ;/* Init_ICG
*/
719 ;/**************************************************
***************************/
720 ; Version 1 --Jeff Burgess (Adapted from Eric
Perraud RKE Code)
721 ;/**************************************************
***************************/
722 ;/* Init_KBI
*/
723 ;/* Description : it enables keyboard interrupts
*/
724 ;/* In :
*/
725 ;/* Out : INTKBSR, INTKBIER
*/
726 ;/* local variables :
*/
727 ;/**************************************************
***************************/
728
729 Init_KBI:
7A21 [04] 121A 730 bset 1,INTKBSR ; mask keyboard
interrupt
7A23 [04] 1A1A 731 bset 5,INTKBSR ; & IRQ
7A25 [04] 1C1A 732 bset 6,INTKBSR ; clear the pending
IRQ request
7A27 [04] 141A 733 bset 2,INTKBSR ; clear the pending
keyboard request
7A29 [04] 111A 734 bclr 0,INTKBSR ; keyboard interrupt
triggered by falling edge only
7A2B [04] 161B 735 bset 3,INTKBIER ; enable keyboard
interrupt KBD3 to wakeup from stop
736 ; by Daytona
7A2D [04] 131A 737 bclr 1,INTKBSR ; enable keyboard
main.asm Assembled with CASM08Z 3/18/2003 3:17:52 PM PAGE 18
interrupts
7A2F [04] 81 738 rts
739
740 ;/**************************************************
***************************/
741 ;/* Init_ICG
*/
742 ;/* Description : it initializes the ICG @ 2 MHz
*/
743 ;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -