?? key05r2.lst
字號:
526 * Once both the ALT keys have been released *
527 * a calculation must be made to convert the *
528 * bytes found in ASCII Storage to binary *
529 * for transmission. *
530 * *
531 *****************************************************
532
0556 B6C1 533 alt_rel lda status ;Decimal Calculation
0558 A430 534 and #$30
055A 262B 535 bne complet ;One of the Alt Keys Still Pressed
536
055C B6C3 537 lda asc
055E AE64 538 ldx #$64 ;x 100
0560 42 539 mul
0561 B7C0 540 sta byte
541
0563 B6C4 542 lda asc+1
0565 AE0A 543 ldx #$0A ;x 10
0567 42 544 mul
0568 BBC5 545 add asc+2 ;Add Units
056A BBC0 546 add byte ;Add hundreds
056C B7C0 547 sta byte
548
056E CD0593 549 jsr RS232T ;Transmit number
550
0571 CC0320 551 jmp main ;Return to Main.
552
553 *****************************************************
554 * *
555 * ctrl_re Ctrl Released.(Hexadecimal Enter Routine) *
556 * Once both the CTRL keys have been released*
557 * a calculation must be made to convert the *
558 * bytes found in ASCII Storage to binary *
559 * for transmission. *
560 * *
561 *****************************************************
562
0574 B6C1 563 ctrl_re lda status
0576 A4C0 564 and #$C0
0578 260D 565 bne complet ;One of the Ctrl Keys Still Pressed
566
057A B6C4 567 lda asc+1
057C 48 568 lsla
057D 48 569 lsla
057E 48 570 lsla
057F 48 571 lsla
0580 BBC5 572 add asc+2
0582 B7C0 573 sta byte
574
0584 CD0593 575 jsr RS232T ;Transmit Number
576
0587 CC0320 577 complet jmp main ;Return to Main
578
579 *****************************************************
580 * *
KEY05R2.ASM Assembled with CASM 05/06/1998 18:19 PAGE 11
581 * clrasc - Clear ASCII Storage Locations (3 Bytes) *
582 * - These storage bytes are used for the *
583 * ALTDEC & CTRLHEX Routines. *
584 * *
585 *****************************************************
586
058A 3FC3 587 clrasc clr asc+0
058C 3FC4 588 clr asc+1
058E 3FC5 589 clr asc+2
0590 CC0320 590 jmp main
591
592 *****************************************************
593 * *
594 * RS-232 NRZ 8N1 Transmit Routine. *
595 * *
596 * Uses a 4.00 Mhz Crystal (2 Mhz Bus Speed) *
597 * to obtain a transmission speed of 9600 BPS *
598 * *
599 *****************************************************
600
0593 AE08 601 RS232T ldx #8 ; Number of Bits (8)
0595 1B01 602 bclr TXD,PORTB ; Start Bit (0)
0597 A61D 603 lda #$1D ; 29 Cycles 6[29] + 6
0599 CD05C4 604 jsr delay
059C 21FE 605 brn *
059E 9D 606 nop
059F 9D 607 nop
05A0 36C0 608 nextbit ror byte
05A2 2505 609 bcs rsmark
05A4 1B01 610 bclr TXD,PORTB ; Space (Logic 0)
05A6 CC05AD 611 jmp rsnext
05A9 1A01 612 rsmark bset TXD,PORTB ; Mark (Logic 1)
05AB 21FE 613 brn *
05AD A61C 614 rsnext lda #$1C ; 28 Cycles 6[28] + 6
05AF CD05C4 615 jsr delay
05B2 9D 616 nop
05B3 9D 617 nop
05B4 5A 618 decx
05B5 26E9 619 bne nextbit
05B7 21FE 620 brn *
05B9 21FE 621 brn *
05BB 9D 622 nop
05BC 1A01 623 bset TXD,PORTB ; Stop Bit (Logic 1)
05BE A61F 624 lda #$1F ; 31 Cycles 6[31] + 6
05C0 CD05C4 625 jsr delay
05C3 81 626 rts
627
05C4 4A 628 delay deca ; Delay = 6[A] + 6
05C5 26FD 629 bne delay
05C7 81 630 rts
631
632 *****************************************************
633 * *
634 * No-Shift - Lookup Table when Shift not Pressed *
635 * *
636 *****************************************************
637
05C8 00 638 noshift fcb $00 ; 00
KEY05R2.ASM Assembled with CASM 05/06/1998 18:19 PAGE 12
05C9 00 639 fcb $00 ; 01 F9
05CA 00 640 fcb $00 ; 02
05CB 00 641 fcb $00 ; 03 F5
05CC 00 642 fcb $00 ; 04 F3
05CD 00 643 fcb $00 ; 05 F1
05CE 00 644 fcb $00 ; 06 F2
05CF 00 645 fcb $00 ; 07 F12
05D0 00 646 fcb $00 ; 08
05D1 00 647 fcb $00 ; 09 F10
05D2 00 648 fcb $00 ; 0A F8
05D3 00 649 fcb $00 ; 0B F6
05D4 00 650 fcb $00 ; 0C F4
05D5 09 651 fcb $09 ; 0D TAB
05D6 60 652 fcb '`' ; 0E ` or ~
05D7 00 653 fcb $00 ; 0F
654
05D8 00 655 fcb $00 ; 10
05D9 00 656 fcb $00 ; 11 Left ALT
05DA 00 657 fcb $00 ; 12 Left SHIFT
05DB 00 658 fcb $00 ; 13
05DC 00 659 fcb $00 ; 14 Left Ctrl
05DD 71 660 fcb 'q' ; 15 Q
05DE 31 661 fcb '1' ; 16 1 or !
05DF 00 662 fcb $00 ; 17
05E0 00 663 fcb $00 ; 18
05E1 00 664 fcb $00 ; 19
05E2 7A 665 fcb 'z' ; 1A Z
05E3 73 666 fcb 's' ; 1B S
05E4 61 667 fcb 'a' ; 1C A
05E5 77 668 fcb 'w' ; 1D W
05E6 32 669 fcb '2' ; 1E 2 or @
05E7 00 670 fcb $00 ; 1F
671
05E8 00 672 fcb $00 ; 20
05E9 63 673 fcb 'c' ; 21 C
05EA 78 674 fcb 'x' ; 22 X
05EB 64 675 fcb 'd' ; 23 D
05EC 65 676 fcb 'e' ; 24 E
05ED 34 677 fcb '4' ; 25 4 or $
05EE 33 678 fcb '3' ; 26 3 or #
05EF 00 679 fcb $00 ; 27
05F0 00 680 fcb $00 ; 28
05F1 20 681 fcb ' ' ; 29 Space
05F2 76 682 fcb 'v' ; 2A V
05F3 66 683 fcb 'f' ; 2B F
05F4 74 684 fcb 't' ; 2C T
05F5 72 685 fcb 'r' ; 2D R
05F6 35 686 fcb '5' ; 2E 5 or %
05F7 00 687 fcb $00 ; 2F
688
05F8 00 689 fcb $00 ; 30
05F9 6E 690 fcb 'n' ; 31 N
05FA 62 691 fcb 'b' ; 32 B
05FB 68 692 fcb 'h' ; 33 H
05FC 67 693 fcb 'g' ; 34 G
05FD 79 694 fcb 'y' ; 35 Y
05FE 36 695 fcb '6' ; 36 6 or ^
05FF 00 696 fcb $00 ; 37
KEY05R2.ASM Assembled with CASM 05/06/1998 18:19 PAGE 13
0600 00 697 fcb $00 ; 38
0601 00 698 fcb $00 ; 39
0602 6D 699 fcb 'm' ; 3A M
0603 6A 700 fcb 'j' ; 3B J
0604 75 701 fcb 'u' ; 3C U
0605 37 702 fcb '7' ; 3D 7 or &
0606 38 703 fcb '8' ; 3E 8 or *
0607 00 704 fcb $00 ; 3F
705
0608 00 706 fcb $00 ; 40
0609 2C 707 fcb ',' ; 41 , or <
060A 6B 708 fcb 'k' ; 42 K
060B 69 709 fcb 'i' ; 43 I
060C 6F 710 fcb 'o' ; 44 O
060D 30 711 fcb '0' ; 45 0 or )
060E 39 712 fcb '9' ; 46 9 or (
060F 00 713 fcb $00 ; 47
0610 00 714 fcb $00 ; 48
0611 2E 715 fcb '.' ; 49 . or >
0612 2F 716 fcb '/' ; 4A / or ?
0613 6C 717 fcb 'l' ; 4B L
0614 3B 718 fcb ';' ; 4C ; or :
0615 70 719 fcb 'p' ; 4D P
0616 2D 720 fcb '-' ; 4E - or _
0617 00 721 fcb $00 ; 4F
722
0618 00 723 fcb $00 ; 50
0619 00 724 fcb $00 ; 51
061A 27 725 fcb $27 ; 52 ' or "
061B 00 726 fcb $00 ; 53
061C 5B 727 fcb '[' ; 54 [ or {
061D 3D 728 fcb '=' ; 55 = OR +
061E 00 729 fcb $00 ; 56
061F 00 730 fcb $00 ; 57
0620 00 731 fcb $00 ; 58 Caps Lock
0621 00 732 fcb $00 ; 59 Right Shift
0622 0D 733 fcb $0D ; 5A Enter
0623 5D 734 fcb ']' ; 5B ] or }
0624 00 735 fcb $00 ; 5C
0625 5C 736 fcb '\' ; 5D \ or |
0626 00 737 fcb $00 ; 5E
0627 00 738 fcb $00 ; 5F
739
0628 00 740 fcb $00 ; 60
0629 00 741 fcb $00 ; 61
062A 00 742 fcb $00 ; 62
062B 00 743 fcb $00 ; 63
062C 00 744 fcb $00 ; 64
062D 00 745 fcb $00 ; 65
062E 08 746 fcb $08 ; 66 Backspace
062F 00 747 fcb $00 ; 67
0630 00 748 fcb $00 ; 68
0631 31 749 fcb '1' ; 69 NUM - 1 or END
0632 00 750 fcb $00 ; 6A
0633 34 751 fcb '4' ; 6B NUM - 4 or LEFT
0634 37 752 fcb '7' ; 6C NUM - 7 or HOME
0635 00 753 fcb $00 ; 6D
0636 00 754 fcb $00 ; 6E
KEY05R2.ASM Assembled with CASM 05/06/1998 18:19 PAGE 14
0637 00 755 fcb $00 ; 6F
756
0638 30 757 fcb '0' ; 70 NUM - 0 or INS
0639 2E 758 fcb '.' ; 71 NUM - . or DEL
063A 32 759 fcb '2' ; 72 NUM - 2 or DOWN
063B 35 760 fcb '5' ; 73 NUM - 5
063C 36 761 fcb '6' ; 74 NUM - 6 or RIGHT
063D 38 762 fcb '8' ; 75 NUM - 8 or UP
063E 1B 763 fcb $1B ; 76 ESC
063F 00 764 fcb $00 ; 77 NUM LOCK
0640 00 765 fcb $00 ; 78 F11
0641 2B 766 fcb '+' ; 79 NUM - + (Plus)
0642 33 767 fcb '3' ; 7A NUM 3 or PAGE DOWN
0643 2D 768 fcb '-' ; 7B NUM - - (Minus)
0644 2A 769 fcb '*' ; 7C NUM - *
0645 39 770 fcb '9' ; 7D NUM - 9 or PAGE UP
0646 00 771 fcb $00 ; 7E SCROLL LOCK
0647 00 772 fcb $00 ; 7F
773
0648 00 774 fcb $00 ; 80
0649 00 775 fcb $00 ; 81
064A 00 776 fcb $00 ; 82
064B 00 777 fcb $00 ; 83 F7
064C 00 778 fcb $00 ; 84
064D 00 779 fcb $00 ; 85
064E 00 780 fcb $00 ; 86
064F 00 781 fcb $00 ; 87
0650 00 782 fcb $00 ; 88
0651 00 783 fcb $00 ; 89
0652 00 784 fcb $00 ; 8A
0653 00 785 fcb $00 ; 8B
0654 00 786 fcb $00 ; 8C
0655 00 787 fcb $00 ; 8D
0656 00 788 fcb $00 ; 8E
0657 00 789 fcb $00 ; 8F
790
791 *****************************************************
792 * *
793 * Shift - Lookup Table Used when Shift Pressed *
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -