Bally_BASIC Bally BASIC

User Manual: Pdf Bally_BASIC

Open the PDF directly: View PDF PDF.
Page Count: 50

DownloadBally_BASIC Bally BASIC
Open PDF In BrowserView 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                      : 50
EXIF Metadata provided by EXIF.tools

Navigation menu