Bally_BASIC Bally BASIC
User Manual: Pdf Bally_BASIC
Open the PDF directly: View PDF .
Page Count: 50
Download | |
Open PDF In Browser | View PDF |
'I \ *I1ODCOMP 1-80 CROSS ASSEMBlERi HOME VIDEO GAt1E SYSTEM ADDR OB-JECT STm LABEL opeD OPERAND COI1MENT 642 643 644 645 b46 LIST S *************************** * BALLY BASIC INTERPRETER * i * * i * eCl JUlY 1978 BALLY MFG * * i * i * WRITIEN BY: JAY FENTON * * ;* i * BALLY BASIC IS BASED ON * i * PALO ALTO TINY BASIC BY * i * LICHEN WANG * ;* * i *************************** 664 ENDM 665 TSTC 666 667 668 669 670 TSTCC 671 672 "OCR RST DEFB DEFB END" MACR RST DEFB DEFB ENDtt MACR DEFtt DEFF ENDI'I EOO EOO EOO EOO EQIJ 673 674 675 ITEM )4FEF )AOOQ )A70C )2000 >0012 )OOFC >0000 )oolF >0067 )0010 )0018 >0020 >0028 >0030 1 i i 647 648 649 650 651 652 653 654 655 i TINY BASIC 656 i MACROS: 657 TOKEN MACR 658 DEFB DEFF 659 660 END" 661 DEFF: MACR DEFB 662 DEFB 663 )4E20 PAGE INTERPRETER #TINDX,#TGOTO iTINDX tTGOTO IWORDY (iWORDY. sltt 8)+800 iWORDY,ANnOFFH iCAT,#DOG 8 'iCAT/ iDOG-$-l iCAT1, #DOG1 8 iCAT1 #DOG1-$-1 iSTRANG,~JUMPTO /#STRANG' 676 IJUf'lPTO 677 678 679 BOTSCR 04E20H 6.90 TOPSCR 04FEFH OAlIOOH '681 BOTRAM OA70CH 682 DFTLMT 02000H 683 BOTROM 684 i TAPE INTERFACE 1-0 PORT 685 TAPEIO EOO 12H i -# OF STOP BIT WINDOWS FOR VALID DATA 686 STPBCT EQlJ OFCH 687 688 CR EOO 000 689 RUBOUT EQlJ IFH 690 NLLN EOO 67H 691 i EQUATES FOR RESTART INSTRlJCTIONS i EXPR 692 RSTEXP EOO 16 ; OIJTCH 693 RSTOCH EOO 24 ; IGNBlK 694 RSTIGN EQU 32 i PARN 695 RSTPAR EQlJ 40 i FINISH 696 RSTFIN EOO 48 697 698 ORG BOTSCR ZFfC. , *I1ODCOI'IP 1-80 CROSS ASSEMBLER* HOME VIDEO GAME SYSTEM ADDR OBJECT STMT LABEL OPCD OPERAND COMMENT }4E20 4E20 4E21 4E22 )4E52 4E52 4E54 4E55 4E56 4E57 4E58 4E59 4E5A 4E5B 4E5C 4E5E 4E60 4E62 4E6.'3 4Eb4 4EM 4E6D 4E6E 4EA2 4EM 4EAb 4EAS 4EAA 4EAC 4EAE 4EB0 4EB9 4EC2 4EC3 4EC5 )4EC7 4EC7 4EC9 4ECB 4ECD 4ECf 4EDl 4ED3 4ED4 )4F3C 4F3C )4F5C )4FEF 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 $ ; TAG TO NAIL BOTH ; PRODUCERS POINTER i CONSUMERS POINTER i ROTATING BUFFER j 1 PAST END OF BUFFER 2 1 1 1 1 1 1 1 VOM NEW LINE FLAG r~VBOARD SCAN TIMER j MUSIC NOTE TIMER i NEW MUSIC TIMER VAlUE i MASTER OSCILLATOR ; TONE VAlUE ; SHARP-FLAT FLAG 1 2 2 2 1 1 2 ; PIXEL TO DRAW VECTOR WITH ; MIN - I'1AX DELTAS FOR VECTOR DRAW i COORDINATE INCREMENTS FOR VECTOR DRAW i WORKING copy OF LINE NUMBER BEING TYPED ; AUTO LINE I FlAG-COUNTER i AUTO LINE NUMBER ZERO SURPRESS FlAG ; PREVIOUS LINE I TYPED 1 1 48 DEFS DEFS DEFS DEFS DEFS DEFS DEFS AlTFON: KEYTRK: VARBGN: DEWAR: DEVClO: DEVCl1: DEVTEM: VDMX: VDMV: OlDXV: REMAIN: DEFS 7 DEFS 1 DEFS 2*26 SCMi: BCnA2: TAPEST: CURRNT: STKGOS: VARNXT STKINP: LOPVAR: LOPINC: LOPlMT: LOPLN: LOPPT: BUFFER: BUFEND ST¥~MT i AlTERNATE FONT DESCRIPTOR ; KEYBOARD TRACKER 2 2 2 2 2 2 2 9 9 1 2 2 DEVICE VARIABLES: BACKGROUND COlOR i FOREGROUND COlOR i TEMPO i VDM X COORDINATE i VOl'! Y COORDINATE ; PREVIOUS COORDINATES FROM VECTOR DRAW ; REI'1AINDER FROM LAST DIVIDE ; FIRST ARG AREA i SECOND ARG AREA i TAPE STATUS i $ 2 2 2 2 2 2 1 104 $ 32 EQlI $ ~S ~~ TEXT: i ; i DEFS DEFS DEFS DEFS DEFS DEFS DEFS OEFS DEFS DEFS DEFS DEFS EQU DEFS DEFS DEFS DEFS DEFS DEFS DEFS DEFS Eoo DEFS 754 STACK 2 GOODIES $ PIXVAl: MNMX: INCRO: NLLNLN: NlLNCT: NlLNZS: OlDlN: ORG Eoo ORG DEFS ORG 7~3 2000 C36724 i TAPE INPUT CONPRO £00 PROPTR: DEFS CONPTR: DEFS TAPBUF: DEFS TBFEND Eoo TXTUNF: DEFS VDMNLF: DEFS KEYTMR: DEFS MUZTMR: DEFS NEWTt1R: DEFS MUZMO: DEFS MUZTON: DEFS SHARPF: DEFS PAGE TOPSCR $ BOTRAM 2 BOTROM BEGIN ; ** AUTOSTART CASSETTE If *MOOCOHP 1-80 CRG.SS ASSEMBLER* HOME VIDEO GAME SYSTEM ADDR OBJECT STMT LABEL 0pc,1) OPERAND COMMENT 2003 80 2004 20 200508 2006 02 2007 200A 2000 2010 2013 2016 2017 201A C3512A C39227 C38C2C C37D29 C39C28 Fl C3bA29 C39A2D 201D 0700 201F 0000 2021 0300 2023 B3FF 20252800 2027 0000 2029 42414C4C 2034 00 2035 57484154 203A OD 203B 484FS73F 203F OD 2040 5.'34F5252 20450D 2046 AE25 2048 6F25 204A 8A25 204C 8026 204E EC22 2050 1027 2052 A325 20542726 2056 4726 20583A22 205A 5026 205C 3627 20SE E625 2060 F620 2062 B020 2064 2064 2067 2068 20be 2060 206F 2070 2073 4C4953 D4 434(4541 D2 5255 CE 4E455S 04 PAGE 3 7S6 PIXTBL: DEFB 080H 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 771:.. 777 778 779 780 781 782 783 784 785 78b 787 7SS 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 80S 809 810 811 812 DEFB 020H DEFB 08H DEFB 2H ; TRANSFER VECTORS TO RESTART ROUTINES JP TSTCH i *RSTS ; I RST 16 JP EXPR i I RST 24 JP OUTCH .jp ifRST32 IGNBLK .JP PARN ifRST40 ifRST48 POP AF JP FINISH ; H LINK TO TAPE READ ROllTINE I f JP CHI(IO INITIAL VALUES FOR PARAMETER VECTOR INIDEV: DEFW 7 i BACKGROUND COLOR j FOREGROUND COLOR DEFW 0 j MUSIC TEMPO DEFW 3 DEFW -77 ; VDK X COORDINATE ; VDK Y COORDINATE DEFW 40 i RESET OLD X, Y FOR VECTOR DRAW DEFW 0 i ASCII MESSAC,£S: MS6: DEFM 'BALLY BASIC' DEFB CR WHAT: DEFM 'WHAT?' DEFB CR HOW: DEFM 'HOW?' DEFB CR SORRY: DEFM I SORRY·' DEFB (;R ; TABLE GIVING JlIt1P TO ADDRESS FOR COttlANDS TOKJT: DEFW LIST DEFW CLRSCR DEFW RUN DEFW NEXT DEFW LINEDR DEFW IFF DEFW GOTO DEFW GOSlJB DEFW RETURN DEFW BOXDRW DEFWFOR DEFW INPUT DEFW PRINT INTERRUPT VECTORS: j ff TAPE INTERRUPT VECTOR I f .JTAB: DEFW SIDINT jff MUSIC INTERRUPT VECTOR I I !TAB: DEFW TBIINT ; TABLE GIVING ASCI I (;HAAS FOR TOKENS TOKTXT: DEFK 'LIS' DEFB 'T' +80H DEFM 'CLEA' DEFB 'R/+80H DEFM 'RU' DEFB 'N'+SOH DEFM 'NEX' DEFB 'T I +SOH *I'IODCOt1P Z-OO CROSS ASSEMBLER* HOME VIDEO GAME SYSTEt1 ADDR OBJECT sm LABEL OPCD OPERAND COt1t1ENT 2074 2077 2078 2079 207A 2070 207E 2082 2083 2088 2089 208B 208C 20SE 20SF 2093 2094 2098 2099 209C 209D 209F 20AO 20Al 4C494E C5 49 Cb 474F54 CF 474F535S C2 52455455 CE 424F OS 464F D2 494£5055 D4 5052494E D4 535445 DO 524E C4 54 CF 4 DEFM'LIW DEFB 'E"+OOH DEFB '1-' DEFB T'+80H DEFM 'GOT' DEFB "O"+OOH DEFI1 'GOSU' DEFB -'B'+OOH DEFM 'RETUR; DEFB "W+OOH DEFM 'BO' DEFB -' X' +8OH DEFM 'FO' DEFB "R'+8OH DEFM 'INPU' DEFB T'+OOH DEFM 'PRIW DEFB 'T'+OOH DEFM -'STE' DEFB 'P' +8OH DEFM '-RW DEFB 'D'+OOH DEFB 'T' DEFB '0' +8OH 813 814 815 81b 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 8.37 838 PAGE i DEVICE VARIABLE TABLE 839 ; THIS TABLE IS IN INVERSE ORDER OF APPEARENCE IN MEI'IORY }OOO7 20Al 20A2 2003 20M 2005 20M 20A7 20A8 12 4D 18 59 03 59 03 2OA958 20AA 2MB 20AC 20AD 20AE 20AF OE 54 06 43 02 43 20BO 20Bl 20B2 20B3 F5 C5 D5 E5 2084 20B7 20BS 2089 20BB 20Be 215..."l4E 7E A7 2801 3"5 23 20BD 7E j 7 GUYS 840 PARNUM EQlI 7 841 DEVLST: DEFB 'R'-'@' 842 843 DEFB 'M' DEFB 'X'-'@' 844 DEFB 'Y' 845 DEFB 'C -'@' 846 DEFB 'Y' 847 DEFB 'C'-'@'848 849 DEFB "X" DEFB 'W-"@' 850 DEFB 'T' 851 DEFB 'F/-"@' 852 DEFB 'Co' S53 DEFB 'B'-'@' 854 DEFB 'C' S55 S56 j TINY BASIC INTERRUPT ROUTINE j SAVE REGISTERS S57 TB II NT : PUSH AF 858 PUSH Be 859 PUSH DE PUSH HL SbO 861 i DEAL WITH KEYBOARD SCAN TIMER 862 LD HL,KEYTMR LD A, (HL) 863 AND A 864 865 JR Z,TBlOO-$ DEC (HL) 866 867 TBlOO: INC HL 86S i HAS MUSIC TIMER COUNTED DOWN? 869 LD A,(HU l fMODCOI1P Z-80 CROSS ASSEMBLER* HOME VIDEO GAME SYSTEM COMMENT ADDR OBJECT SOO LABEl OPCD OPERAND A7 2808 35 201F AF 0311 1818 870 871 872 873 874 875 876 2OC923 20CA B6 20CB 2816 20CD 2B 20CE 20CF 23 2000 3600 20D2 23 20D3 7E 2004 0310 20D6 3647 20DS 23 20D9 7E 20DA 1).311 20De A7 lODD 2804 20DF 3EOF 20E1 0316 878 879 20BE 20BF 20CI 20C2 2OC4 2OC.s 2OC7 n 20E33AA24E 20E6 0304 20E80305 20EA 3AA44E 20ED 0306 20EF 0307 2OF1 2OF2 20F3 2OF4 El 01 Cl 1833 20F6 F5 20F7 D9 20FS 20FA 20FB 20FC 20FD DB12 iF 79 17 4F 8n 8SO 881 SS2 S83 8S4 885 886 887 ass 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 91-"'15 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 PAGE 5 AND A j YEP - PLAY NEXT NOTE JR Z, TBIN1-$ j ELSE DECREMENT IT DEC (HU JR NZ,TBIN3-$ j JUMP IF NOT NOW ZERO XOR A j ELSE SILENCE OUT• A j RESET DEFAULT MASTER OSC LD (HL).OA2 INC HL ; AND NEW TONE LD A. (HL) OUT 22E4 22E5 22E6 22E8 22E9 22EB 7C B7 203D B5 2S3A C9 1325 i D=ABS{DY) , E=ANS HL 1601 1602 ?ST1: LD HL,O 160:3 LD {LOPVAR l. HL 1604 LD (STKOOS),HL 1605 ?ST2: LD A'v CALL GETLN 1606 1607 PUSH DE 1608 LD DE,BUFFER 1609 IGNORE ANY LEADING 1)' 1610 LD Ii. WEl 1554 1555 I , J iHOOCOI'IP 2-80 CROSS ASSEMBLER* HOME VIDEO GAME SYSTEM ADDR OB.JECT STMT LABEL OPeD OPERAND COItIENT 24CB FE3E 24CD 2001 24CF 13 24DO CD622A 2403 E7 2404 7C 24D5 B5 2406 C1 24D7 284C 2409 22644E 240C IB 2400 7C 24DE 12 24DF 18 24EO 7D 24El 12 24E2 C5 24E3 D5 24E479 24E593 24E6 F5 24E7 cocm 24EA D5 24EB 2010 24ED D5 24EE CDE029 24F1 Cl 24F22A524E 24F5 C0942A 24FS bO 24F969 24FA 22524E 24FD Cl 24FE 2A524E 2501 Fl 2502 E5 2503 FE03 2505 28Al3 2507 85 2508 5F 2509 3EOO 25088C 250C 57 250D 210CA7 2510 EB 2511 CD4D29 2514 D28D29 251722524E 251A D1 2518 CDA62A 251E Dl 251F El 2520 CD942A 2523 1S9C 2525 E7 2526 OS 1611 1612 1613 1614 ?ST4: 1615 1616 1617 1618 1619 1620 1621 1622 1623 1624 1625 1626 1627 1628 1629 1630 1631 16..:.""'2 1633 1634 1635 1636 1637 1638 1639 1640 1641 1642 1643 ?ST3: 1644 1645 1646 1647 1648 1649 1650 1651 1652 1653 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664- CP , ....J ' JR NZ,?ST4-$ DE TSTNUM RSTIGN A,H L INC CALL RST LD OR PAGE 18 POP Be JR Z,EXECO-$ LD l I PUSH HL Hl,{STKGOS) 1828 LD 1829 1830 1831 1832 1833 1834 PUSH HL LD HL,O LD {LOPIIAR) , HL ADD HL,SP LD JP 1835 RETURN: LD 1836 LD 1837 OR JP 18'"£ (STKGOS) , HL RUNTSL HL,(STKGOS} A,H L I, QWHAT SYSTEM COMMENT PAGE 21 *I1ODCOMP 1-00 CROSS ASSEMBLER* HOt1E VIDEO GAME SYSTEt'l ADDR OBJECT STt'lT LABEL OPeD OPERAND COI1t1ENT 2b4F F9 2650 El 2651 22CS4E 2654 El 265522C34E 26SS Dl 2659 CDBS2A 26SC F7 2650 CDD42A 2660 CD5329 2663 2B 2664 22C94E 2667 2bbA D7 266B 22CD4E 2bbE 210100 2671 2674 D7 267522CB4E 2678 2AC34E 267B 22CF4E 267E EB 267F 22D14E 2682 010AOO 2bS5 2AC94E 26SS EB 2689 60 268A 68 268B 39 26BC 1001 2bBE 09 268F 7E 2690 23 2691 B6 2692 2817 2694 7E 2695 2B 2696 BA 2697 2OF5 26997E 269A AB 2698 20Fl 269D EB 269E 67 269F 6F 26AO 39 20AI 44 26A2 4D 26A3 210AOO 2bA6 19 20A7 CDA62A 26M F9 20AB 2AD14E 2bAE EB 20AF F7 2680 CDEC29 1339 LD SP,HL 1840 ?RESTO: POP HL 1841 1842 1843 1844 1845 18% 1847 ; FOR 1848 FOR: 1849 1850 1851 . 1852 1853 FRl: 1854 FRIA: 1855 1856 1857 18SS FR4: 1859 1860 1861 1862 1863 1864 1865 lSbb 1867 1868 1869 1870 FRS: 1871 FR6: 1872 1873 1874 1875 1876 1877 1878 1879 1SS0 1881 ISS2 1SS3 1884 1885 1886 ISS7 1SS8 1SS9 1890 1891 LD {STKOOS1,HL POP HL LD (CURRNT1,HL POP DE CALLPOPA RST RSTFIN AND NEXT CALL PUSHA CALL SETVAL DEC HL LD (LOPVAR) , HL TSTCC 77H,FRIA ; TO? RST RSTEXP LD {LOPIJITl, HL LD Hl.1 TSTCC 75H,FR4 j STEP? RST RSTEXP lD ilOPINC1,HL LD HL, (CIJRRNT I lD (lOPLN1, HL EX DE.HL lD (lOPPTl, HL LD BC,IO LD HL, (LOPVAR) EX DE,HL LD H,B LD L,B ADD HL,SP JR FR6-$ ADD HL,BC LD A, (HLI INC HL OR (HL) JR Z,FR7-$ LD A, (HL) DEC HL CP D JR NZ,FR5-$ lD A,(HLI XOR E JR N1,FRS-$ EX DE,HL LD H,A LD LA ADD HL.SP LD 8,H LD e,l LD HL,10 ADD HL,DE CALL MVDOWN 1894 SP,HL HL. (LOPPTl EX DE,HL RST RSTFIN 1895 NEXT: CALL TSTV 1892 FR7: 1893 lD LD PAGE 22 fMOOCOMP I-SO CROSS ASSEMBLER* HOME VIDEO GAtE SVSTEI1 ADDR OBJECT STI1T LABEL OPCD OPERAND COI1t1ENT 26B3 26B6 26B9 26BA 26BS 2bB£ 26BF 2bCO 2bC3 26G6 26C8 26C9 2bCC 2bCF 26Dl DA8b29 22C74E D5 EB 2AC94E 7C B5 CAS729 CD4D29 2809 Dl CDB82A 2AC74E lSES EB 2602 CDCC2F 2605 bF 2606 13 26D7 CDeC2F 26DA 67 26DS EB 26De 2ACB4E 26DF E5 26£07C 26E1 AA 26£27A 26£3 19 26E4 FAEB2b 26£7 AC 26£8 FA1227 2bEB EB 26£C 2AC94E 26EF 7B 2bFO CDE42F 2bF323 2bF47A 2bF5CDE42F 2bFS 2ACD4E 2bFB Fl 26FC 87 2bFD F20127 2700 EB 2701 C04329 2704 Dl 2705 380D 27072ACF4E 27M 22C34E 2700 2AD14E 2710 EB 2711 F7 2712 El 2713 01 2714 CDBS2A 2717 F7 1896 1897 1898 NXl: 1899 1900 1901 1902 1903 JP 1904 CALL 1905 1906 1907 1908 1909 1910 NX2: 1911 1912 1913 1914 1915 1916 1917 JR POP CALL LD JR EX CAll LD INC CALL LD EX LD 1918 PUSH 1919 1920 1921 1922 1923 1924 1925 1926 NX3: 1927 1928 1929 LD 1930 1931 1932 1933 1934 1935 1936 1937 1938 1939 1940 1941 1942 1943 1944 1945 1946 1947 1948 1949 1950 2718210000 2718 1801 JP lD PUSH EX LD lD OR 1951 1952 XOR LO ADD JP C,QWHAT (VARNXTl,HL DE DE,Hl HL. (LOPVAR) A,H L Z,AWHAT COI'IP Z,NX2-$ DE POPA HL, POPAF OR A JP P,NX4 EX DE,HL NX4: CALL CKHlDE POP DE JR C.NX6-$ lD HL, (LOPLN) LD (CURRtfT),HL LD HL. (LOPPTl EX DE,HL RST RSTFIN NX5: POP HL POP DE NX6: CAll POPA RST RSTFIN i REM, IF, INPUT, LET REM: LD HL,O JP JR IFl-$ PAGE 23 fI'IODCOt1P Z-SO CROSS ASSEI'IBLER* HOME VIDEO GAME SVSTEt1 ADM OBJECT SOO LABEL 271D 07 271E 7e 271F B5 2720 C19D25 2723 CDE229 2726 029625 2729 C3AF24 272C 2AC74E 272F F9 2730 El 2731 22C34E 2734 01 2735 01 )2736 2736 OS 2737CD082B 273A 1823 273C CDEC29 273F 3817 2741 CD6F27 2744 I1D44E 2747 D7 2748 D1 2749 EB 274A 7B 2748 CDE42F 274E 23 274F 7A 2750 CDE42F 2753 El 2754 22C34E 2757 01 2758 F1 2759 275C 18DS 275E F7 275F OS 2760 CDEC29 2763 3(}O3 2765 C38629 2768 43 2769 D1 27M CD242B 276D 18D2 276F C1 2770 OS 2771 EB 2772 2AC34E 2775 E5 2776213627 2779 22C34E 277C 210000 277F 39 27SO 22C74E 2783 OS 2784 C5 2785 3£20 1953 IFF: 1954 IF1: 1955 1956 1957 1958 1959 1960 1961 1962 1963 1964 1965 1966 1967 1968 1969 1970 1971 1972 1973 1974 1975 1976 1977 1978 1979 1900 1981 1982 1983 1984 1985 1986 1987 1988 1989 19% 1991 1992 1m 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 OPeD OPERANO COt1I1ENT RST RSTEXP LO A,H OR L JP NZ,RUNSI'IL CALL FNDSKP JP NC,RUNTSL JP RSTART II'olPERR: LD HL,(STKINP) LO SP,HL POP HL LO (CURRNTl,HL POP DE POP DE INPUT EQU $ IP1: PUSH DE CALL QTSTG JR IPB-$ CALL TSTV IP2: JR C,IP5-$ IP3: CALL IP12 LD DE,BUFFER RST RSTEXP POP DE EX DE,HL LD A,E CALL STHL INC HL LD A,D CALL SUt IP4: POPHL LD i CURRNT) HL POP DE IP5: POP AF TSTC ",',IP7 IP6: JR INPUT-$ IP7: RST RSTFIN IPS: PUSH DE CALL iSTV JR NC,IPl1-$ IPIO: JP QWHAT IPll: LD B,E POP DE CALL PRTCHS JR IP3-$ IP12: POP Be PUSH DE EX DE,HL LD HL, (CURRNn PUSH HL LD HL,IPI LD (CURRNTl.HL LD HL,O ADD HL,SP LD (STl 2m E5 2344 PUSH HL 2994 EB 2345 EX DE,HL 2995 CDCC2F 2346 CALL LDE me 67 2347 LD H.A 2999 13 2348 INC DE mA CDCC2F 2349 CALLLDE mD B4 2350 OR H mE EB 2351 EX DE.HL I , PAGE 30 IMODCOI'IP Z-SO CROSS ASSEI'IBLER* HOME VIDEO GAt1E SYSTEtl ADDR OBJECT STMT LABEL OPCD OPERAND COI'ItIENT 299F D1 29AO CAA924 29A3 ES 29M CDCC2F 29A7 EB 29AS S7 29A9 FA2C27 29AC C06B2B 29AF C1 29BO 41 29Bl C0242B 29B43E3F 2986 OF 29B7 CDFD2A 29BA C3A924 29BD 05 29BE 114020 29C1 lac7 29C3 7C 29C4 B7 29C5 FASD2A 29CB l100A0 29CB 13 29CC CDCC2F 29CF 4F 2900 IS 29D1 87 2902 DB 29D3 CDCC2F 2906 95 29D747 29DS 13 2909 79 29DA 9C 29DB 3.'304 29DD IB 29DE SO 290F 19£0 29E1 29E2 29E5 29E7 29E9 19£A 29EC 29ED C9 13 13 CDCC2F FEOD 20FS 13 18DF E7 FE25 29EF WID 29F1 D640 29F3 DB 29F4201C 29F6 13 29F7 EF 29FS 29 29F9 DASD2A 29FC D5 2352 2353 2354 2355 2356 2357 2358 2359 2360 2361 2%2 2363 2364 2365 2%6 'P..J-7 2368 rJ69 2370 2371 2372 2373 2374 2375 2376 2377 2378 2379 2380 2381 2382 2383 2384 2385 2386 2387 23SB PAGE 31 POP DE JP Z. TELL EX DE,HL CAlLLDE EX DE.HL OR A JP I'I,INPERR CAlL PRTLN POPBC LD S,C CALL PRTCHS LD A /1' . . RST RSTOCH CAlL PRTSTG JP TELL QSORRV: PUSH DE ASORRV: LD DE,SQRRV JR ERROR-$ ; FNDLN FNDLN: LD A,H OR A JP I'I,QHOW LD DE, TEXT FNDLP: INC DE CALL LDE LD C,A DEC DE ADD A,A RET C CALL LDE SUB L LD B,A INC DE LD A,C SBC A,H JR C.FU-$ DEC DE OR B FI2: RET FNDNXT: INC DE FL1: INC DE FNDSKP: CALL LDE CP CR JR NZ,FLl-$ INC DE JR FNDLP-$ TSTV: RST RSTIGN 2389 2390 2391 2392 2393 2394 2395 2396 2397 2398 2399 2400 2401 2402 2403 2404 2405 2406 2407 2408 TSTB: . CP '%' JR SUB RET JR INC RST ADD Z,TSTVO-$ ; PEEK-POKE? '@' C NZ,TV1-$ DE RSTPAR I-L,HL C,QHOW PUSH DE JP ----.--~ ~-- - - --- - -..... -.- ______ ,,~_."'_~,. o,~ *t1ODCOMP 1-80 CROSS ASSEMBLER* HOI'IE VIDEO GAME SYSIDI ADDR OBJECT STHT LABEL OPeD OPERAND COMMENT 29FD EB 29FE COCAlS 2AOl CD4D29 ZA0438BS 2AOb 2A524E 2A09 2B ZAOA 2B ZAOB 19 2AOC Dt ZAOD C9 2AOE 13 2AOF EF 2A10 2All 2M2 2A14 2A15 2A16 AF C9 FEIB 3F 00 13 2A17 OF 2Ala COCC2F 2A1B FE41 2AtD 3S2b 2AIF FE5B 2A21 3022 2A23 C5 2A24 D5 2AZ567 2A2b 0607 2AZ8 l1A220 2A2B IA 2AZC 13 2AZD BD 2AZE lA 2A2F 13 2A30200B 2A32 Be 2A33 2008 2A35 2A36 2A3S 2A39 2A3A 2A3B 78 CblA OF Dl 13 1807 2A3D lOEC 2A3F Dl 2A40 C1 2Ml IB 2A42 37 2M3 C9 2A44 Cl 2M57D 2A4b 216C4£ PAGE 32 2409 EX DE.HL 2410 CAll SIIE 2411 CAlL cot1P 2412 JR C,ASORRY-$ 2413 lD HL. iTXTUNF) 2414 DEC HL 2415 DEC HL ADD HL.DE 2416 2417 POP DE 2418 RET 2419 ; 7.(ADDR) PEEJ(-POKE CAlL 2420 TSTVO: INC DE 2421 ; GET ADDR RST RSTPAR XOR A ; CLEAR CV 2422 ; AND 00 BACK 2423 RET 2424 TVl: CP 27 2425 CCF RET C 242b 2427 INC DE 2428 IS SECOND CHARACTER ALSO ALPHA? 2429 ; SAVE FIRST ONE LD l.A 2430 CAlL LDE 2431 CP 'A' 2432 ; IF NOT IN RANGE A-I JR C.DEW4-$ 2433 CP '1'+1 2434 JR NC,DEW4-$ ; THEN DONT SEARCH 2435 PUSH Be 2436 PUSH DE ; SECOND CHAR TO H 2437 LD H,A 2438 LD B,PARNUI'I i B - ITERATION CTR 2439 LD DE,DEVLST ; DE - SEARCH TABLE 2440 DEWt LD A, (DE) j GET FIRST ENTRY 2441 INC DE 2442 CP L 2443 LD A, (DE) 2444 INC DE 2445 JR NZ,DEW2-$ 2440 CP H 2447 JR NZ,DEW2-$ 2448 ; f1ATCH FOUND - FIGURE OUT LOOKUP INDEX 2449 LD A,B 2450 ADD A,26 2451 LD L,A 2452 POP DE ; B\JI'f CHAR PTR 2453 INC DE 2454 JR DEW3-$ 2455 i f1ISf1ATCH - lOOP BACK IF POSS 2456 DEW2: DJNZ DEW1-$ 2457 j NOT POSSIBLE - RETURN NOT AVAR 2458 POP DE 2459 POP Be ; BACKUP TO CHAR START 2460 DEC DE j SET CARRV 2461 SCf 2462 RET 2463 DEW3: POP Be 2464 DEW4: LD A,l 2465 LD HL.VAROON-2 *I'IOOCOI'IP Z-80 CROSS ASSEMBLER* HOME VIDEO GAME SYSTEM ADDR OBJECT SmT lABEL OPCD OPERAND COI'II'IENT 2A4907 2A4A 85 2A4B bF 2A4C 3£00 2A4E 8C 2A4F 67 2A5O C9 lASl E3 2A52 E7 2A53 BE 2A5423 2A552807 2A57 C5 2ASS 4E 2A59 0600 2A5B 09 2ASe C1 2A5D IB 2A5E 13 2A5F 23 2A60 E3 2A61 C9 2A6221oooo 2A65 44 2A66 E7 2Ab7 FE30 2A69 08 2AM FE3A 2A6C DO 2A60 3EF0 2A6F A4 2A70 201B 2An 04 2A73 ('5 2A74 44 2A75 40 2A7629 2A77 29 2A7809 2A79 29 2A7A COCC2F 2A7D 13 2A7E EbOF 2ASO S5 2AS1 bF 2M23£00 2M4 8C 2A85 67 2A86 C1 2M7 CDf'.£2F 2A8A F2672A 2MD 05 2A8E 113B20 2A91 C38A29 RLCA ADD A,l lD L.A LD A,O ADC A,H LD H,A 2406 2407 2%8 2469 2470 2471 2472 RET 2473 i TSTCH AND TSTNUM 2474 TSTCH: EX (SP),HL 2475 RST RSTIGN 2476 CP (HU 2477 INC HL 2478 JR Z, TC1-$ 2479 PUSH Be 2480 LD C, (HL) 2481 LD B,O 2482 ADO HL,Be 2483 POP Be 2484 DEC DE 2485 TC1: INC DE 2486 INC HL 2487 EX (SP},HL 2488 RET 2489 TSTNUM: LD HL.O 2490 lD B,H 2491 RST RSTIGN 2492 TN1: CP '0' 2493 RET C 2494 CP 3AH 2495 RET NC 2496 lD A,OFOH 2497 AND H 2498 JR NZ,QHOW-$ 2499 INC B 2500 PUSH Be 2501 lD B,H 2502 LO C,l 2503 ADD HL.Hl 2504 ADD HL,HL ADD HL,Be 2505 ADD HL,HL 2506 2507 CALLLDE 2508 INC DE 2509 AND OOFH 2510 ADD A,L 2511 lO L,A 2512 LD A,O 2513 AOC A,H 2514 LD H,A 2515 POP Be 2516 CALLLDE 2517 JP P,TN1 2518 QHOW: PUSH DE 2519 AHOW: LD DE,HOW 2520 JP ERROR 2521 i t1VIJP 1'MlOWN, POPA. AND PUSHA I 2A94 CD4D29 2522 I'1VUP: CALL COMP PAGE 33 *MODCOf'IP z-so CROSS ASSEt1BI..ER* HOME VIDEO GAME SVSTEI1 ADDR OBJECT STI1T LABEL OPeD OPERAND COMHENT 2A97 C8 2A9S CDCC2F 2A9B E5 2A9C 60 2A9D 69 2A9E CDE42F 2AAI E1 2M2 13 2M3 03 2AA4 1SEE 2AM 78 2M792 2AAS C2AE2A 2MB 79 2AAC 93 2AAD C8 2AAE IB 2AAF 2B 2ABO CDCC2F 2AB3 CDE42F 2ABb 1SEE 2ABS C1 2AB9 El 2ABA 22C94E 2ABD 7e 2ABE B5 2ABF CAD22A 2AC2 El 2AC3 22CB4E 2ACb El 2AC7 22CD4E 2ACA E1 2ACB 22CF4E 2ACE El 2ACF 22D14E 2AD2 C5 2AD3 C9 2AD4215C4F 2AD7 CD2E29 2ADA Cl 2ADB 39 2ADe D2BD29 2ADF 2AC94E 2AE2 7C 2AE3 B5 2AE4 CAFA2A 2AE72AD14E 2AEA E5 2AEB 2ACF4E 2AEE E5 2AEF 2ACD4E 2AF2 E5 2AF32ACB4E 2AF6 E5 2AF72AC94E 2AFA E5 lAFB C5 2523 RET 2524 CALL 2525 PUSH 2526 LD 2527 LD CALL 2528 POP 2529 INC 2530 2531 INC 2532 JR 2533 I'IVDOWN:LD 2534 SUB 25.35 JP 253b LD 2537 SUB 253S RET 2539 MDl: DEC DEC 2540 CALL 2541 2542 CALL 2543 JR 2544 POPA: POP 2545 POP LD 2546 2547 LD 2548 OR 2549 JP 2550 POP 2551 LD 2552 POP 2553 LD 2554 POP 2555 LD 2556 POP 2557 LD 2558 PPi: PUSH 2559 RET 2560 PUSHA: LD CALL 2561 2562 POP 2563 ADD 2564 JP 2565 LD 2566 LD OR 2567 2"".J68 JP 2569 LD 2570 PUSH 2571 LD 2572 PUSH 2573 LD 2574 PUSH 2575 LD 2576 PUSH 2577 LD 2578 PUt: PUSH 2579 PlJSI1 Z LDE II. H.B L.C 8M II. DE Be 11VUP-$ A.B D NZ.MDl A.C E Z DE HL LDE STHL I'IVDOWN-$ Be II. (LOPVAR),HL A.H L Z,PPl II. (LOPINO, II. HL (LOPLt1T),HL II. (LOPLN}. II. II. (LOPPD.HL Be HL,STKLMT CH(;sGN Be HL,SP NC,QSORRV 11., (LOPVAR) A.H L Z,PUl 11., (LOPPT) II. 11.. (LOPLN) II. 11., iLOPLI1T) II. 11.. (LOPINC) II. 11.. (LOPVAR) II. Be PAGE 34 *I'IODCOMf' Z-SO CROSS ASSB1BLER* HM VIDEO GAf£ SYSTB1 ADDR OBJECT sniT LABEL OPCD OPERAND COtt1ENT lAFC C9 2580 2581 2AFD 2AFE 2AFF 2002 2003 2B04 97 47 CDI'..t2F 13 BS C8 OF FEOD 2OF5 C9 2005 2BOb 200s 2BOA 200B 200E 3E22 2B10 CDFE2A 2B13 FEOD 2815 E1 2816 CASD25 2819 23 281A 23 2B1B E9 2BtC 281F 3El7 2811 18ED 2B23 C9 28247B 2B25 BS 2B2b C8 2827 COCC2F 2B2A OF 2818 13 2B2C 18F6 }2BlE 2BlE 0600 2B3O CD2B29 2833 F2392B 2836 062D 2B38 OD 2839 D5 283A l10A00 2B3D D5 2B3E OD 2582 2583 2584 2585 2586 2587 2588 RET PRTSTG, QTSm, PRTNUI'I, PRTLN PRTSTG: SU8 A PSI: LD B,A PS2: CALL LDE INC DE CP B RET Z RST RSTOCH i 2589 CP CR 2590 2591 2592 2593 2594 2595 2596 2597 2598 2599 2600 2601 2602 2603 2604 2605 2606 2607 2608 2609 2610 2611 2612 2613 2614 2615 JR NZ,PS2-$ RET QTST6: TSTe LD QT1: CALL QT2: CP POP HI.. Z,RUNNXL INC HI.. INC HI.. JP (HI..) Q13: TSTCC 027H, QT5 LD A,027H JR QT1-$ QT5: RET PRTCHS: LD A,E CP B RET Z CALL LDE RST RSTOCH INC DE JR PRTCHS-$ PRTNUIi EOO $ 00: LD 8,0 LD B, I_I 2617 2618 PN4: 2619 2620 2621 DEC PUSH LD PUSH DEC PUSH CALL LD C DE DE,10 DE C 26~t2 2623 PN5: 2624 2625 2626 2627 2628 2629 285287 CALL CHKSGN JP p,PN4 2:61b 2840 2843 2844 2B45 2B48 2849 2B4A 2B4S 284C 2B4D 2B4F 2B5O 2851 79 CR JP 2B3F C5 CD1629 78 81 CA4F2B E3 2D E5 60 69 18F1 C1 OD 1"',/;/T3 A, ........ PSI 2630 2631 2632 2633 PN6: 2634 PN7: 2635 2636 Be DIVIDE A,B OR C JP Z,PNb EX (SP),HI.. DEC L PUSH HI.. LD H,S LD L.e JR PN5-$ POP Be DEC C A,C OR A LD PAGE 35 I-SO CROSS ASSaIBlER* HOI£ VIDEO GAt£ SYSTEI1 ADDR OBJECT SlltT LABEL OPCD OPERAND COJKNT *"OOO)IP 2B53 2B56 2858 2859 285B 2B5C 2B5D 2B6O 2861 2862 2B64 FA5B2B 3E20 DF 18F5 78 B7 C48C2C 5D 7B FEOA D1 2B65 CS 2B66 C630 2B68 DF 286918F6 2B6B CDCC2F 2B6E OF 2B6F 13 2870 CDCC2F 287367 2874 13 2B75 0E04 2877 CD2E2B 287A EO 2B7C DF 2B7D C9 2B7E 2B82 2B86 2B89 2B8F 2B92 2895 2896 2B99 2B9A 2B9D 2B9E 2BA1 2BA2 2BA5 2BA6 2BA9 2BAF 2881 3A 3A 3A 3A 3A 2637 2638 2639 2b40 2641 2642 2643 2644 2645 2646 2647 2648 2649 2650 2651 2652 2653 2654 2655 2656 2657 2658 2659 2660 2661 2662 2663 2664 2665 2666 2667 2668 2669 2670 2671 2672 2673 2674 2675 2676 2677 2678 2679 2680 2681 PHS: PN9: LD LD 2BDA 2BDE H,A INC DE LD C,4 CALL PRTtUI LD A,' , RST RSTOCH RET TAB2: ITEM 'TV', PUleD ITEM '1tJ I , PUTItJ lTE11 '1t'.PUTIO ITEI'! 'CALL I. DOCAlL ITEM '. " ReI lTEI1 '$'. BCIJIAT DEFB ':' TMN baH,TLlST DEFB ':' TOKEN 74H, TOUTPU DEFB ':' TOKEN 73H. TINPUT . DEFB I:' TOKEN 6AH, TLOAD DEFB ': I TAB3: 2683 2684 2685 2686 2687 2688 2689 2690 2691 2692 TAB6: 2693 2BD4 L.A INC DE CALL LIE 28BS 2BD8 LD E,L LD A,E CP 10 POP DE RET Z ADD A,'O' RST RSTOCH JR PN9-$ PRTLN: CALL LDE 2682 2BBC JP ",PHS LD A,' I RST RSTOCH JR PN7-$ LD A,B OR A CAlL NZ, OUTCH 2BB4 2BCO 2BC4 2BCS 2BCC 2BCF PAGE 36 TOKEN 7OH, TRETUR lTEI1 'STOP',STOP DEFF DEFLT TOKEN 76H,RND ITEI'! ITEM ITEI'! ITEM ITEM ITaI ITEM lTEI'! 'KN', GETPOT 'TR', GETTRG 'JX',GETJX I JY' , GETJY '!(p', GEM 'PX I, PIXFUN 'It", IOFUN ,.ASS' , ASS lTEl'! "'SZ I , SIZE DEFF HOTF lTEI'! '):', XPR1 ITEM 'I', XPR2 - - ---.--~--~----~.--'----~-"'-- ------.---.-.~.--':.----~-.- ~ - II'IODCOI'1P Z-80 CROSS ASSEJ1BL.ER1 HIJIE VIDEO GAtE SYSTEM ADDR OUCT sm LABEL OPeD OPERAND C\J9IENT 2BEI 2BE4 2BE7 2BEB 2BEE )2BF0 2BF0 2BF3 2BF4 2BF5 2BFb llD44E OF C5 OS E5 2BF7 OEM 2BF9 CD8b2D 2BFC 21624E 2BFF 7E lCOO A7 2C01 283S lC0335 lC04 FE05 2COb 200c lC08 lCOB 2COE 2COF lCl1 2A644E l10A00 19 CBBC 22b04E lC14 lC16 OC2F lC182A604E lCIB 0b00 lClD A7 lCIE ED52 lC20 FA26lC 2C23 04 2C2418F7 2C26 19 2C2722b04E 2C2A 21634E 2C2D 78 2C2E A7 2C2F 2005 2C31 7E 2C32 A7 2C33 28C7 2C35 AF 2C36 C630 2C38 77 2C39 1803 2C3B CD9A2D 2C3E £1 2C3F Dl 2C4O Cl 2694 2695 2696 2697 2698 2699 2700 2701 2702 2703 2704 2705 2706 2707 2708 2709 2710 2711 2712 2713 2714 2715 2716 2717 2718 2719 2720 2721 2722 2723 2724 2725 2726 2727 2728 2729 2730 2731 2732 2733 2734 2735 2736 2737 2738 2m 2740 2741 2742 2743 2744 2745 2746 2747 2748 2749 2750 PAGE 37 ITEI1 ITEM ITEM ITEt1 DEFF ')',XPR3 ':', XPRS '(=', XPR4 '(', XPRb XPR7 RANEND EQU $ GETLN: LD DE, BUFFER ; PR€Wr OR ECHO Gll: RST RSTOCH Gl2: PUSH Be PUSH DE PUSH ~ ; PLACE UP CURSOR BlOCK LD C,OAAH CALL CURSE ; RETURN CHAR FROt1 NEXT LINE I GL2A: LD HI..,NlLOCT ; SENSE FLAG LD A,UI.> AND A JR Z,GL2C-$ DEC (HU ; FIRST TItE THRU? CP 5 ; JUr1P IF NOT JR NZ,G!.2B-$ ; GET PREVIOUS LINE I AND BUt'IP IT LD HL (OLDLN) LD DE, 10 ADD ~,DE RES 7,H ; DONT ALLOW NEG Gl2J: LD (NLLNUn,HL ; tIOVE TO WORKING RM CELL I COI1PUTE DIVISION SUBTRACTOR Gl2B: SVSSUK INDEXW DEFW TBlDIV-2 LD ~, INlLNLN) LD 8,0 Gl2E: AND A SOC /-L,DE JP I1,Ol2F INC 8 JR Ol2E-$ Gl2F: ADD /-L,DE LD (NlLNLN) , /-L LD Hl., NlLNZS LD A,B AND A JR NZ,GL2G-$ LD A, (HL) AND A ; YES - JIJIP BACK JR Z,GL2A-$ XOR A ; I1AkE ASCII GL2G: ADD A. '0' ; SET NONZERO FLAG LD (HU,A JR GL2D-$ i NOTHIN FANCY ; GET NORI1Al CHARACTER Gl2C: CALL CHKIO Ol2D: POP~ POP DE POPOC ----_.~~~,,'_'="_=o.._;..~_"_."'_ ____ "::;:::__-=::=-" ~.-+.-,~ ..=,•. ~="'..,,""'" __ --+ ...---, - ----" -=- *MOOCOMP Z-80 CROSS ASSEMBLER* HOME VIDEO GAt1E SYSTEM ADDR OBJECT STI'IT LABEL OPeD OPERAND COI'IMENT 2C41 12 2C42 FEIF 2C44 202F 2C467B 2C47 FED4 2C492BA9 2C48 18 2C4C lA 2C4D FE68 2C4F 3007 2C51 CDS22E 2C54 3EIF 2C56 1898 2C58 OS 2C59 CDEB2E 2C5C 7E 2C5D ES 2C5E E67F 2CbO CDa22E 2C63 3ElF 2C65 CDCC2C 2C68 El 2C697E 2CbA 23 2C68 07 2CbC 30EE 2C6E 3EIF 2C70 OF 2C71 D1 2C72 C'3F42B 2C75 2C77 2C7A 2C7B 2C7D FEOD CAS42C 7B FE3C 2SF3 2C7F lA 2C80 13 2C'31 C3F32B 2CS4 13 2CS5 13 2CS6 3EFF 2C88 12 2C89 IB 2C'8A 3EOD 2751 GL3: 2752 2753 2754 2755 2756 2757 2758 2759 27bO 2761 2762 2763 2764 TOKIN: 2765 2766 TOKER: 2767 2768 2769 2770 2771 2772 2773 2774 2775 2776 2777 TOKEQ: 2778 2779 2780 GL9: 2781 GL4: 2782 2783 2784 2785 2786 2787 2788 2789 GL5: 2790 2791 2792 LD (DEl,A CP JR LD CP JR RUBOUT JR GLl-$ PAGE 38 NZ,GL4-$ A,E BUFFER. AND. OFFH Z,GL2-$ DEC DE LD A, WE) i TOKEN TO RUB OUT? CP baH JR NC.TOKIN-$ CALLPNOTE LD A,RUBOUT PUSH DE CALL TOKEPT LD A, (HU PUSH HL AND 7FH CALL LD CALL POP LD PNOTE A.RUBOUT VDM HL A. (HU INC HL RLCA JR NC, TOKER-$ LD A. RUBOUT RST RSTOCH POP DE JP GL2 CP CR Z,GL5 JP LD CP JR LD INC JP INC INC LD LD DEC CRLF: LD ; SUBROUTINE ; THE ARCADE i DIMENSIONS ; ECHO ONE RUBOUT CHAR A.E BUFEND. AND. OFFH Z.GL9-$ A, (DE) DE GLl DE DE A,OFFH (DEl.A DE A.CR 2795 TO SIMULATE A CHARACTER DISPLAY IN 2796 FRAME BUFFER. THE SII'IULATED VDM HAS 2797 26 CHARS BY 11 LINES. THE CHARACTER GRAPHICS ARE 5 X 7 2798 i IN A 6 X 8 FRAME. ALTERNATE FONT IS USED TO GET THIS. 2799 j THE 64 UPPER CASE ASCII CHARACTERS ARE DISPLAYED BY THIS 2SOO ; HANDLER. THE ASCII CONTROL CHARACTERS CARRIAGE RETURN AND 2801 i RUBOUT ARE ALSO PROCESSED BY THIS HANDLER. CR CAUSES 2802 ; THE DISPLAY TO GO TO THE NEXT LINE OF THE DISPLAY. WITH 2803 i SCROU. UP IF NECESSARY. RUBOUT CAUSES THE CURSOR TO MOVE 2S04 ; BAC1 ; INPUT FF STATE i WAIT FOR IT TO GO NONZERO AND 2 JR Z,TAPCHO-$ ; tEAMING START BIT WRITTEN i B =I OF BITS TO WRITE LD B,10 i WAIT ABOOT 1. S I'IILLISECONDS TO MOVE BEYOND CHANGE WINDOW TAPeHl: LD A, 192 TAPeH2: DEC A JR NI, TAPCH2-$ i ARE WE DONE WRITING? DEC B JR Z,\JDtICAL-$ ; JU\'IP IF SO i NO - SHIFT BIT INTO POSITION AND WRITE i (POSITION IS BIT 1 ) RLC C IN A, ,HL 3064 LD A,CR RET 3065 3066 WCLICK: LD A, (NEWTI"IRJ 3067 AND A 3068 JR NZ,WCLICK-$ 3069 LD A, GO 3070 LD 3A574E A7 20FA 7C FE63 2S1£ FE62 2831 FE2B 2831 FE2D 2830 FE30 2830 21002F 3C 3093 3094 3095 3096 3097 3098 3099 3100 3101 3102 3103 3104 3105 3106 3107 3108 3109 3110 3111 3112 3113 3114 3115 3116 3117 3118 3119 3120 3121 3122 3123 3124 3125 3126 3127 3128 3129 3130 3131 3132 3133 3134 3135 3136 3137 3138 3139 3140 3141 3142 3143 3144 3145 31% 3147 3148 3149 PAGE 44 RET SUBROUTINE TO SCAN TINY BASIC KEYBOARD KEYSCN: LD BC,0414H i B CNT, C PORT # LD DE,KEYTRK i DE KEYBOARD MEMORY XOR A SYSTEM RANGED i LOOK AT COLUMN KYSCNl: IN A, (C) i ISOLATE THE RELEVANT AND IFH JR NZ,KYSCN2-$ i .Jl/t1P IF BITS HIGH i BUMP PORT # INC C DJNZ KYSCNl-$ XOR A i SET ZERO STATUS ; NOTHIN - SAY ZIP LD (DE), A RET ; DEPRESSION FOUND - JUMP UP AND DOWN KYSCN2: DEC B j COME UP WITH BIT # LD C,O j SHIFT BIT OVER KYSCN4: RRCA JR C,KYSCN3-$ j JUI'/P IF THE ONE i ELSE COUNT UP INC C i AND TRY AGAIN JR k'YSCN4-$ ; FOUND BIT - ASSEMBLE KEYCODE i BIT , TO A KYSCN3: LD A,e i t 4 RLCA RLCA i COMBINE WITH COL # OR B INC A LD B,A LD A, (DE) XOR B i QUIT IF THE SAf£ RET Z j ELSE RESTORE LD A,B ; UPDATE TRACKER LD (DE), A i = = = RET ; SUBROUTINE TO PLAY A NOTE PNOTE: PUSH HL PUSH DE PUSH AF LD H,A j WAIT FOR PREVIOUS PARAMETERS TO BE EATEN PRWAIT: LD A, (NEWTf1R) AND A JR NZ,PRWAIT-$ j LOOP LD A,H i DIVIDE? CP b3H JR Z,PNOTDV-$ ; I'IlLTIPLV? CP 62H JR Z,PNOTML-$ CP '+' JR Z,PNOTPL-$ CP JR Z.. PNOTMN-$ ~-.! CP '0' JR Z.PNOTZ-$ LD HL,NOTES-cR HOCKIN: SYSTEM INDEXB ; CLICK? INC A f\1ODCOHP 1-80 CROSS ASSEMBLER* HOME VIDEO GAME SYSTEtI ADDR OBJECT STMT LABEL OPeD OPERAND COt1t1ENT 2EA7 280E 2EA9 3C 2EAA 2831 2EAC 3D 2EAD 3D 2EAE 32S94E 2EBl 3AAb4E 2EB432574E 2EB7 AF 2ESS 325A4E 2EBB Fl 2EBC Dl 2EBD E1 2EBE C9 2EBF 3ESF 2EC1 32584E 2EC4 lSF5 2EU 3E23 2EeS 1SF7 2ECA 3E01 2ECC 11 2ECD 3E02 2ECF lSE7 2ED1 21504E 2ED4 3AAb4E 2ED7 F3 2EDS 86 2ED9 77 2EDA FB 2EDB HIDE 2EDD 2EEO 2EE2 2EE4 2EES 2EE6 2EE7 2EE9 3A5A4E F92E EB Ft F5 Db31 1889 2EES 216420 2EEE Db68 2EFO CS 2EFt CB7E 2EF323 2EF42SFB 2EF6 3D 2EF7 1SF7 2EF9 Ob2F 2EFB 1e2F 2EFD FF2E 2EFF 2EFF 64 2FOO 59 2FOl 4F 2F024A 3150 3151 3152 3153 3154 3155 3150 3157 3158 3159 3160 3161 3162 31b3 3164 3165 3166 3167 3168 3169 3170 3171 3172 3173 3174 3175 3176 3177 3178 3179 3180 3181 3182 3183 3184 31B5 3186 31B7 3188 3189 3190 3191 3192 3193 3194 3195 3196 3197 3198 3199 3200 3201 3202 3203 3204 3205 32(16 Z.PNOTCL-$ INC A JR Z.PNOTNO-$ DEC A DEC A LD (l1UZTON) • A LD A, (DEVTEtI) LD (NEWTI'IR) • A PNOTCL: XOR A PSHARP: LD (SHARPF).A PNOTC1: POP AF POP DE POP HL RET PNOTDV: LD A,OAI PNOTDl: LD (MUZMQ).A .JR PNOTC1-$ PNOTML: LD A.0A3 JR PNOTDl-$ PNOTPL: LD A,l DEFB llH PNOTt1N: LD A,2 JR PSHARP-$ PNOTZ: LD HL.MUZTMR LD A. (DEVTEtll Dl ADD A.(HLl LD (HL),A EI JR PNOTC1-$ ; PLAY AINSWORTH NOTE PNOTNO: LD A, (SHARPF> SYSSIJK INDEXW DEFW DICKY EX DE.HL pop AF PUSH AF SUB ~1' PAGE 45 JR JR SUBROUTINE TOKEPT: LD SUB JOKEPl: RET JOKEP2: BIT INC i AINSWORTH NUt1BA? ; OPCODE TO MUNCH NEXT TWO BYTES INTO DE i RESTORE CHARACTER HOOKIN-$ TO POINT AT A TOKEN HL. TOKTXT i POINT AT TEXT LIST 6SH i QUIT IF POINTING AT EM Z 7,{HLl i MOVE PAST NEXT WORD HL JR Z. JOII.'EP2-$ DEC A i LOOP BACK AND CHECK JR .JOKEP1-$ j t1IJSIC TABLES DICKY: DEFW MUZNOR DEFW MUZMAX DEFW t1IJZMIN MlJZMIN: DEFB B1 DEFB C.S2 DEFB DS2 DEFB E2 i *11ODC0tIP Z-OO CROSS ASSEIB.ER* HOME VIDEO GAtE SYSTEtt ADDR OBJECT STItT LABEL OPCD (FERAND COMNT 2F0342 2F04 3B 2F0534 2F06 2F06 5E 2F0754 2F08 4A 2F0940 2FOA 3E 2FOB 37 2FOC 31 )OOFF >OOFE 2FOD FF 2FOE 0100 2FI0 OAOO 2F126400 2F14 E003 2F16 1027 2F18 2F18 59 2F194F 2FIA 40 2FIB 42 2F1C 3B 2F1D 34 2F1E 2E 2F1F 2F20 2F21 2F22 2F23 2F24 2F25 2F2b 2F27 2F28 2F29 2F2A 2F2B 2F2C 2F2D 2F2E 2F2F 2F30 2F31 2F32 2F33 2F34 2F35 2F36 2F37 2F38 2F39 FF 00 El 04 C8 BD B2 AS 9F 96 SO 85 FF 77 FF 6A 64 FF FE FE FE FE FE FE FE 2E 2C 3207 3208 3209 3210 3211 3212 3213 3214 3215 3216 3217 3218 3219 3220 3221 3222 3223 3224 3225 3226 3227 3228 3229 3230 3231 3232 3233 3234 3235 3236 3237 3238 3239 3240 3241 3242 3243 3244 3245 3240 3247 3248 3249 3250 3251 3252 3253 3254 3255 3256 3257 3258 3259 3260 3261 3262 3263 PAGE 40 DEFB FS2 DEFB GS2 DEFB AS2 MUZNOR: DEFB C2 DEFB D2 DEFB E2 DEFB F2 DEFB 62 DEFB A2 DEFB B2 ; TONE GENERATION TABLE - ORDERED BY ASCII CHARACTER CLICK EQU OFFH NUt1BA EQU OFEH NOTES: DEFB CLICK iCR i IRRELEVANT STtFF TO EAT TABLE SPACE TBLDIV: DEFW 1 DEFW 10 DEFW 100 DEFW 1000 DEFW 10000 I'IUZI'1AX: DEFB CS2 DEFB 052 DEFB F2 DEFB FS2 DEFB 002 DEFB AS2 DEFB C3 ; AND THE TABLE CONTINUES DEFB CLICK DEFB 0 DEFB AO DEFB ASO DEFB BO DEFB Cl DEFB CS1 DEFB 01 DEFB 051 DEFB El DEFB F1 DEFB FSI DEFB CLICK DEFB 001 DEFB CLICK DEFB ASI DEFB B1 DEFB CLICK DEFB tUIBA OEFB NltIBA DEFB NIJIBA DEFB NtI1BA DEFB NltIBA DEFB NI.IttBA DEFB NUttBA DEFB C3 DEFB CS3 :' " ft1OOCOI'IP 1-80 CROSS ASSEIiBLER* HOt1E VIDEO GAI£ SYSTEM ADDR OBJECT STm LABEL OPeD OPERAND cort1ENT 2F3A 2F3B 2F3C 2F3D 2F3E 2F3F 2F40 2F41 2F42 2F43 2F44 2F45 2F46 2F47 2F48 2F49 2F4A 2F4B 2F4C 2F4D 2F4E 2F4F 2F50 2F51 2F52 2F53 2F54 2F55 2F56 2F57 2F58 2F59 2F5A 2FSB 2FSC 2F5D 2FSE 2F5F 2F60 2F61 2F62 2F63 29 27 25 22 20 IF 10 IB 1A 18 17 15 14 13 12 11 10 OF OE OD OB OA 09 08 07 06 05 04 03 02 01 64 SE 59 54 4F 4A 46 42 3E FF FF 2F64 2F64 OD 2F65 01 2Fbb 00 2F6763 2FbS 37 2F69 38 2FbA 39 2F6B 62 2FbC 34 2F6D 35 2FbE 36 2F6F 2D 2F70 31 3264 3265 3266 3267 3268 3269 3270 3271 3272 3273 3274 3275 3276 32n 3278 3279 3280 3281 3282 3283 3284 3285 3286 3287 3288 326'9 3290 3291 3292 3293 3294 3295 3296 3297 3298 3299 3300 3301 3302 3303 3304 3.305 3306 3307 3308 3309 3310 3311 3312 3313 3314 3315 3316 3317 3318 3319 3320 DEFB D3 DEFB 053 DEFB E3 DEFB F3 DEFB FS3 DEFB G3 DEFB 6S3 DEFB A3 DEFB AS3 DEFB B3 DEFB C4 DEFB CS4 DEFB D4 DEFB DS4 DEFB E4 DEFB F4 DEFB FS4 DEFB G4 DEFB GS4 DEFB A4 DEFB C5 DEFB CS5 DEFB 055 DEFB F5 DEFB 65 DEFB A5 DEFB C6 DEFB DS6 DEFB Gb DEFB C7 DEFB 67 DEFB Bl DEFB C2 DEFB CS2 DEFB D2 DEFB 052 DEFB E2 DEFB F2 DEFB FS2 DEFB G2 DEFB CLICK DEFB CLICK i TABLE OF FIRST LEVEL "'ECODES FIRSTL: DEFB CR DEFB 1 DEFB 0 DEFB 63H DEFB '7' DEFB '8! DEFB '9' DEFB 62H DEFB '4" DEFB 15' DEFB '6 1 DEFB '-' DEFB '11 PAGE 47 - t fI1OOCOI'IP Z-SO CROSS ASSEt1BLER* HOt1E VIDEO GAME SVSTEM ADDR OB..ECT sm LABEL OPeD OPERAND COIt1ENT 2F71 32 2F72 33 2F732B 2F74 20 2F7S 30 2F76 1F 2F7730 2F78 2F78 A7 2F79 00 2F7A 01 2F7B 00 2F7C 01 2F7D 41 2F7E 44 2F7F 47 2FSO 4A 2F81 40 2F8250 2F83 53 2F84 56 2FS5 59 2F86 5F 2F87 5E 2FSS 26 2F89 24 2FSA 3C 2FBB 28 2FBC 23 2F8D 2F8D 5F 2FSE on 2FSF 2F 2F90 00 2F91 5B 2F92 42 2F9345 2F9448 2F95 4B 2F96 4E '1F97 51 2F9854 2F99 57 2F9A SA 2F9B 27 2F9C 2E 2F9D 40 2F9E 2C 2F9F 22 2FAO 38 2FAl 25 2FA2 2FA2 OF 2FA3oo 3321 3322 3323 3324 3325 3326 3327 3328 i FIRST 3329 KTBLl: 3330 3331 3332 3333 3334 3335 3336 3337 3338 3339 3340 3341 3342 3343 3344 3345 3346 PAGE 48 DEFB '2' DEFB '3' DEFB '+' DEFB ' , DEFB '0' DEFB RUBOUT DEFB ':' SHIFT KEY DEFB 0A7H DEFB CR DEFB 1 DEFBO DEFB 1 DEFB 'A' DEFB '0' DEFB 'G' DEFB 'J' DEFB '", DEFB 'P' DEFB '5' DEFB 'V' DEFB 'V' DEFB 5FH DEFB 5EH DEFB 'Ie' DEFB '$' 3347 DEFB '(' 3348 DEFB '(' :3349 DEFB '#" 3350 3351 i SECOND SHIFT KEY 3352 KTBL2: 33!"J3 DEFB 05FH 3354 DEFB CR DEFB 2FH 3355 DEFB 0 335b DEFB 5BH 3357 335S DEFB 'B' 3359 DEFB 'E' DEFB 'W 3360 3361 DEFB 'K' 3362 DEFB 'N' DEFB 'Q' 33b3 3364 DEFB 'T' DEFB 'I
Source Exif Data:File Type : PDF File Type Extension : pdf MIME Type : application/pdf PDF Version : 1.3 Linearized : No XMP Toolkit : Adobe XMP Core 4.2.1-c041 52.342996, 2008/05/07-21:37:19 Create Date : 2018:08:27 18:48:14-08:00 Modify Date : 2018:08:27 19:00:08-07:00 Metadata Date : 2018:08:27 19:00:08-07:00 Producer : Adobe Acrobat 9.0 Paper Capture Plug-in Format : application/pdf Document ID : uuid:7f00036d-0bba-9241-8262-044751abb879 Instance ID : uuid:3b57ad7c-fcac-a842-af56-98003be8bd21 Page Layout : SinglePage Page Mode : UseNone Page Count : 50EXIF Metadata provided by EXIF.tools