(@~w#~w~/W#~вw@N 'N @@@@N 'N @@@@N 'N @@@@N ' DISC 10 RUN 2 run GENS  'GENS.BYT ()2CHORD.ASS*-2TUNE .ASS.2ACCLIN.ASS33VTEMP 46RNDSCR.ASS7:TEMP .ATT;ESPRTS .ASS)FIINTTRI.ASSWoNEWRUN.ASS@TRIANG.ASSNOISE .ASSnEXVTMP.ASSMOVSPR.ASSSHPLT2.ASS WS1 .ASSMEMORY.ASS~AUTOKY.ASS?XYLPHN.ASSDUMP2 .ASSHS4 .ASSLHLS4 .ASSyHLS5 .ASSMOVPIC.ASSSCDUMP.ASSELITE.BYT HLS .ASSHT .ASS4TEMP-FLCOLHI .ATTATTRED.ASSUSEFUL.ASSSKROUT.ASS&AELITE.PIC rBCELITE S\HLS1 .ASS]kHLS2 .ASS3uySAMPLE.ASSz{FLCOLS.ASS|~CHORD2.ASSPLOT .ASSsHS3 .ASSSHPLOT.ASSINTRI2.ASSTAPTST.ASSDISSYM.ASSrSELCAT.ASSDISC 10   k:23658j\,8:#:65535:140706:#:"J";0:1:9000(#:"PROGRAM :";A$ %#0;"TURN JOYSTICK ON ? (Y/N)" ""30 (=""40( 2"Y"100d < "J";1 d *1;A$ #' #(<.05|L,12 :.05|L,16:.05|L,19 #2<.05|L,12 :.05|L,16:.05|L,19 #< #7*1;"RUN"10 :1:0:9100# 2"Y"100d < "J";1 d *1;A$ #,  "65535":*;"RUN" dDISC 10 ' '*1;"GENS .ASS"0   0`  1 24576`:1 24635;`:1 24640@`:1 'CA$:A$=""24575_:*1;"GENS.BYT"24576`:5 ` !h ^#V#z(/ ^#V s#r^CõW~qEjÆü!:\!8"i!i"=\2>!:\ :2>(>) !@6@:\w  > >6R!:\>>>>_ 0^>L(>C>ׯ>ׯ7  z ́:\( !!#(#!j\>w~  []~|\{}Ϳn!:\7:\ >?>?>_#>2\K"!>"C!>s2\!\# > w\!"]*{!:\{/s"0,0 !M^VR0##oxW!M0>0^VR8<( ##'d DG|x*s}~# > > >1ͽ>2m>,2\>2h! "P"R!"b"dR"}!91/x1ͽgo"T"Vͬ "!:O!( ( ####^#V!~#!iA> GNx > f F~e  (͐ x Đ  ( 8?w#? ( 5B(\> B(́́+ >> !iL2O0Z"X "T"VͰKȸ(Z"P"TKȸ Kȸ(Z"R"VKȸ H#~('08 +Kȸ #;> ~# 7 #:\G~# (+ !0DM)) )O | <|0?:*P"Xͣ *R|KTy*V}ͣSSmRKbSbm`iRDMR8 :' 2\xKTS##͍͊>_NY(>*Q(>+#Q iY !    v~(:]>  _:^!iFADM *`T]s͸~(g  *`W~ r {!]p#q#w#s#r*`~ T]#:]͸!]F#N#^#~#fo~>X͸ *`~ F!'F=_!;F=POO!iF+A0*f H [f( [fx*TKTx  S:hwN#F*V| !B`iͣ# +m5~=e:T >2h>KPS^#V#*RRSTiSf!'~ ~  (#(`im KPSKRS(0*bm##RDM+j~6+ ~6')!i*b',GO +"b*dR!"T"Vͣͷ*T*dwn(s#r+KVJmKPS##*R ͂*TiiF_DMS( ##KbSbs#r###F_R> yD*dw ^#VB+m##> [bR͸ x͂i!]>w#6A#6#s#r*T>|x*dͣ*bͣ/!Zwi~# ͽ!!k w#*d"y! !iZ[bSw([dR<d8"u""! !iZ}>g. >^![w "! *u"{D "| o˼˄!!ͯ x *u"{go>2m*d"yD !ͯ x*w [R0FF *!i #~˿w#~(6 #! 6͒ #~(###~#!*[wRͣ!*Rͣ:m !*nͣx8 >z (*¸ j F̍ ÿ ~#~D #~-L #~-H #"sEVbSVe!0}F ͦ>; M*r !_! > ͋8~; m8# 0(8 >wˆé F A > ( & ?0(Mr  |  ~ ?!m6#s#rY ([&f [R0 [dR>"{"$"[{"{F(0 ~(*s#ré F͋((͞ {0 {͞F(z͞  x >8RF hY(m8Q( ++[R{QI{y{zA7?z >[(e(|s(>E>ݵc >cĞ0F̍ v( >V!9!D V&eE8%>go 0j0 8 ))))o;(J*(F (B (͋A ͌ (* (& ">F }ͦ>F̍ ÿ N# ( +͈H> >*~(\.6 #"V!i~x#x\ :pG +6+6x(#3G~ y#~p82O0c8v~ ~8 ( =0 <(<wăR 01!o|gx~O~#F#fhG !09~w(~#M+##~_ #Mwٷ~#VzzN!0 T])))_M+͋q ͋q 0*w#####͌q (~# ( ͌q(7(++++^#Vz(L@(F>"kv($~(%F> %#~(#"[s#r#~(#^#V<@>*6#6"kv ˆ#r+s˿͍q(w#+#"[s#r#"*R0 !8ѯ OwS*y[bR 7^#V#> Ck"y[\}S+͋*6 !i"!M0^V>/  ##~#~08A8 {:!GN #~ a7a͈;(AY͋Y(;(A{sEQ#͌A͋>+2rf.p( ,˘8t` H srSi(+" ͋_# +#( %(͍ +^q(Fͦ+ RH> IP Ezb !{0Gg| g0> }o[(2r-*I >X*ˆ:r&(R@(V!(Y*(/(X?(T|Ë>zO}}R0 Z m)80 Z8}o|gL}o|}o|Gz>(z|}}xR0 ?( `i|o>gɷRH( `>(E(þ*N GN 0*{n [R0[}R8 !m6!w#"{^ *3"#"! F~OĒ :p'2py!i !i 6͒ x z3{<Ɛ'@'w#ɐ ,; +&@*!/?)'$%#"LD`x> :W_@b!*j1{ Ks"C21eɠҰĨҸlGnOJR PCPUSHOPCALLP/ɡұĩҹC?EQN LSXhdkINC`x@]ҲĪҺMFDEFC JNZA'SBCbB`UB LA RA( L8 ETzC7REME Sz LC o RC gSTCAL ORUTugAɣīTIҳDһADD`b C`bJNDXOR BITz@RNEDOHALv&b`h"d 0,fN*.Sj$(lb2b8642n`c(&$"f 8642f.,*jbd0hbd0884DDAB2DEFGILKMNP<RSWX   C F{IKLQS5RXZ$Pardon? Table size: Options: Bad ORG!*ERROR* *WARNING* Pass 1 Pass 2 errors: absentTable used: from Executes: No Table space! *HISOFT GENS ASSEMBLER* Copyright HISOFT 1983 All rights reserved !$'*-0369<AJMPWmrMhrux#=K]ejr4IR[du &.Ma -0<A[fx} %,69>BLPS[^gr} &7>AGJRUdtw{  5TWiz   $ ' * - 0 5 8 ; N Q U ^ a d g j n r      # ) , 3 6 9 < ? B E J Q [ ^ e h   . = G J P ] a l s    " 1 5 F U _ d   & ) A H M T W c t ~ Q\`)47X\u{05:=@DIOUX`,FQjp} /3Z^t !&),09  H 05:=@DIOUX`,FQjp} /3Z^t !&),09  x ; DE=NOTES HL=LEN CHORD PUSH HL  EXX ( POP HL 2 LD B,0 < EXX F LD BC,257 P LD HL,0 Z EXX dCHORD1 EXX n DEC B x JR NZ,CHORD2 LD B,D DEC H CHORD2 LD A,H AND 1 NEG AND %11111 OUT (254),A DEFB 0,0,0,0,0 DEC C JR NZ,CHORD3 LD C,E DEC L CHORD3 LD A,L  AND 1  NEG  AND 31 " OUT (254),A , EXX 6 DJNZ CHORD1 @ DEC HL J LD A,H T OR L ^ JR NZ,CHORD1 h RET AND 1 NEG AND %11111 OUT (254),A DEFB 0,0,0,x ; IX=ADDRESS OF DATA (LAST=255) ; HL=LEN EACH NOTE TUNE PUSH HL ( CALL TUNCON 2 LD E,A < CALL TUNCON F LD D,A P POP HL Z PUSH HL d DI n CALL CHORD x POP HL LD A,(IX+0) INC A JR NZ,TUNE EI RET TUNCON LD A,(IX+0) INC IX LD C,A LD B,0 LD HL,TUNDAT ADD HL,BC LD A,(HL) RET TUNDAT DEFB 240,227,214,202,190,180,170,160,151,143,135,127  DEFB 120,113,107,101,95,90,85,80,76,71,67,64  DEFB 60,57,53,50,48,45,42,40,38,36,34,32 " DEFB 30,28,27,25,24,22,21,20,19,18,17,16,15 ,CHORD PUSH HL 6 EXX @ POP HL J LD B,0 T EXX ^ LD BC,257 h LD HL,0 r EXX |CHORD1 EXX  DEC B  JR NZ,CHORD2  LD B,D  DEC H CHORD2 LD A,H  AND 1  NEG  AND %11111  OUT (254),A  DEFB 0,0,0,0,0  DEC C  JR NZ,CHORD3  LD C,E  DEC L CHORD3 LD A,L  AND 1 & NEG 0 AND 31 : OUT (254),A D EXX N DJNZ CHORD1 X DEC HL b LD A,H l OR L v JR NZ,CHORD1  RET AND 1  NEG  AND %11111  OUT (254),A x6 ; B=LINE DE=ACC TO ACC DE'=GRAPHIC AD ACCLIN LD A,B  CP 192 ( RET NC 2 AND %111 < LD H,A F EXX P LD L,A Z LD H,0 d ADD HL,DE n LD A,(HL) x EXX LD C,A LD A,B AND #C0 RRCA RRCA RRCA OR H LD H,A LD A,(23296) ADD A,H LD H,A LD A,B AND #38  RLCA  RLCA  LD L,A " LD A,D , AND %11111000 6 RRCA @ RRCA J RRCA T OR L ^ LD L,A h LD A,D r AND #7 | INC A  LD B,A  LD A,#FF  SCF AL1 RRA  AND A  DJNZ AL1  LD B,A  LD A,D  AND #F8  LD D,A AL7 LD A,E  AND #F8  SUB D  JR Z,AL2  JR NC,AL6  LD E,255 & JR AL7 0AL6 RRCA : RRCA D RRCA N LD D,A X LD A,B b CPL l AND (HL) v LD (HL),A  LD A,B  AND C  OR (HL)  LD (HL),A  INC L  LD B,D  DEC B  JR Z,AL4 AL3 LD (HL),C  INC L  DJNZ AL3 AL4 LD A,E  AND #7  INC A  LD B,A  XOR A AL5 SCF * RRA 4 DJNZ AL5 > LD B,A H AND C R LD C,A \ LD A,B f CPL p AND (HL) z OR C  LD (HL),A  RET AL2 LD D,B  LD A,E  AND %111  INC A  LD B,A  XOR A AL8 SCF  RRA  DJNZ AL8  AND D  LD D,A  CPL  AND (HL)  LD B,A $ LD A,D . AND C 8 OR B B LD (HL),A L RET CPL p AND (HL) z OR 25343b >*1;"ELITE.PIC"32768:" "32768,6912 4*1;"ELITE.BYT":" "25344c,40192 TRIANG.ASSMOVPIC.ASSSCDUMP.ASSELITE.BYT HLS .ASSHT .ASS4TEMP-FLCOLx ORG 60000  ENT 60000 BACKG LD HL,64512 ( LD DE,65535 2BG1 CALL RND < LD BC,#805 FBG2 RRCA P JR C,BG3 Z DEC C dBG3 DJNZ BG2 n DEC C x JR NZ,BG1 LD (HL),A INC L JR NZ,BG1 LD HL,22527 BG4 CALL RND LD C,A LD B,#FC LD A,(BC) LD (HL),A DEC HL BIT 6,H JR NZ,BG4 RET RND LD A,D  RLCA  ADD A,%11100101 " XOR E , RLCA 6 RLCA @ LD D,A J LD A,E T ADD A,D ^ RRCA h CPL r LD E,A | XOR D  ADD A,D  ADD A,E  XOR D  SUB E  RET LD (HL),A DEC HL BIT 6,H JR NZ,BG4 RET RND LD A,D  RLCA  ADD A,%11100101 " XOR E , RLCA 6 RLCA @ LD D,A J LD A,E T ADD A,D ^ RRCA h CPL r LD E,A | XOR D  ADD A,D  ADD A,E  XO          ??mm??????????????????mmvvvmmmmmmmmmmmmmmmmmmmvvvmvvmvvvmmvmvvmmvvmvvmvvvvmmvvmvvvmvvmvvmvvvmmvmvvvmmmmmmmmmmmmmmmmmmmm???????????????????? x ;SPRITE ; BC=POS ; HL=GRAPH. ADR (; A=LEFT/RIGHT (0/1)BRDR 2;COPYD <; A=START LINE F; B=NO. LINES P;CLRBUF-CLRS BUFFER ZC1 EQU #127E dC2 EQU #241C nCOPYD LD L,A x LD H,224 LD DE,16384 LD C,H CD1 DEFW C1,C2,C1,C2,C1,C2,C1,C2,C1,C2,C1,C2,C1,C2,C1,C2 DEFW C1,C2,C1,C2,C1,C2,C1,C2,C1,C2,C1,C2,C1,C2,C1,C2 DEFW C1,C2,C1,C2,C1,C2,C1,C2,C1,C2,C1,C2,C1,C2,C1,C2 DEFW C1,C2,C1,C2,C1,C2,C1,C2,C1,C2,C1,C2,C1,C2,C1 INC E LD H,C INC L INC D LD A,D AND 7 JR Z,CD2  LD A,E  ADD A,C  LD E,A " DEC B , JP NZ,CD1 6 RET @CD2 LD A,E J AND C T JR Z,CD3 ^ LD A,-8 h ADD A,D r LD D,A |CD3 DEC B  JP NZ,CD1  RET DISPRT LD A,(DE)  INC DE  XOR (HL)  LD (HL),A  INC H  LD A,(DE)  INC DE  XOR (HL)  LD (HL),A  INC H  LD A,(DE)  INC DE  XOR (HL)  LD (HL),A & DEC H 0 DEC H : INC L D DJNZ DISPRT N RET XSPRITE PUSH BC b PUSH AF l LD A,C v AND 7  LD DE,BUF1  CALL MAKBUF  POP DE  POP BC  LD L,B  LD A,C  AND %11111000  RRCA  RRCA  RRCA  OR 224  LD H,A  CP 254  JR C,SPR1  BIT 0,D  JR Z,SPR2 SPR1 LD B,16 * LD DE,BUF1 4 JP DISPRT >SPR2 ADD A,-32 H LD H,A R CP 222 \ LD A,0 f LD DE,BUF1 p LD B,16 zSPR3 LD (DE),A  INC DE  JR NZ,SPR4  LD (DE),A SPR4 INC DE  INC DE  DJNZ SPR3  JR SPR1 CLRBUF LD H,#E0  LD D,H  LD C,0 CB1 LD L,C  LD E,C  INC E  LD (HL),0  LD C,127  LDIR $ INC H . INC D 8 JR NZ,CB1 B RET LMAKBUF LD BC,#10FF V AND A ` JR Z,MB1 j SUB 4 t JR Z,MB2 ~ JP NC,MB3  INC A  JP Z,MB4  PUSH HL  LD HL,#0318  INC A  JR Z,MB5  LD H,8 MB5 LD (MB6),HL  POP HL MB4 PUSH DE  LD D,(HL)  INC HL  LD E,(HL)  INC HL  XOR A MB6 RR D ( RR E 2 RRA < RR D F RR E P RRA Z RR D d RR E n RRA x EX (SP),HL  LD (HL),D  INC HL  LD (HL),E  INC HL  LD (HL),A  INC HL  POP DE  EX DE,HL  DJNZ MB4  LD HL,#1ACB  LD (MB6),HL  RET MB1 LDI  LDI  XOR A  LD (DE),A " INC DE , DJNZ MB1 6 RET @MB2 PUSH DE J LDI T LDI ^ XOR A h EX DE,HL r LD (HL),A | POP HL  RRD  INC HL  RRD  INC HL  RRD  INC HL  EX DE,HL  DJNZ MB2  RET MB3 DEC A  JP Z,MB7  PUSH HL  LD HL,#0318  DEC A  JR Z,MB8  LD H,8 &MB8 LD (MB9),HL 0 POP HL :MB7 PUSH DE D LD D,(HL) N INC HL X LD E,(HL) b INC HL l XOR A vMB9 RL E  RL D  RLA  RL E  RL D  RLA  RL E  RL D  RLA  EX (SP),HL  LD (HL),A  INC HL  LD (HL),D  INC HL  LD (HL),E  INC HL  POP DE  EX DE,HL * DJNZ MB7 4 LD HL,#13CB > LD (MB9),HL H RET XOR A vMB9 RL E  RL D  RLA  RL E  RL D  RLA  #x ORG 59998  DEFW 1  LD A,#18  LD (#FFFF),A ( LD A,#C3 2 LD (#FFF4),A < LD HL,START F LD (#FFF5),HL P DI Z LD A,#3A d LD I,A n IM 2 x EI RET START DI PUSH HL PUSH DE PUSH BC PUSH AF LD (59996),SP LD SP,59994 LD BC,(59998) S1 DJNZ S1 DEC C JR NZ,S1 LD HL,DATA LD DE,#5800-32 PUSH DE S2 EX DE,HL  POP HL  LD BC,288 " ADD HL,BC , BIT 2,H 6 JR NZ,S4 @ DEC H J PUSH HL T EX DE,HL ^ LD C,64 h DEFW J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J r POP DE | PUSH DE  LD B,55 S3 DJNZ S3  NOP  NOP  NOP  NOP  DEFW J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J  JR S2 S4 LD SP,(59996)  POP AF  POP BC  POP DE  POP HL  JP #38 J EQU #A0ED DATA EQU 50000 J r POP DE | PUSH DE  LD B,55 S3 DJNZ S3  NOP  NOP  NOP  NOP  DEFW J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J  JR S2 S4 LD SP,(59996)  POP AF  POP BC  POP DE  POP HL x ATTBLK LD H,A  LD A,C  AND %11111 ( LD L,A 2 LD C,H < LD A,B F RRCA P RRCA Z RRCA d LD B,A n AND %11100000 x OR L LD L,A LD A,B AND %11 OR %01011000 LD H,A ATBL1 LD B,E LD A,L ATBL2 LD (HL),C INC L DJNZ ATBL2 ADD A,32 LD L,A LD A,0  ADC A,H  LD H,A  DEC D " JR NZ,ATBL1 , RET 6PRINT PUSH DE @ RLCA J RLCA T RLCA ^ LD D,A h AND %11111000 r LD E,A | LD A,D  AND %111  OR #3C  LD D,A  LD A,C  AND %11111  LD L,A  LD A,B  AND %11000  OR %01000000  LD H,A  LD A,B  AND 7  RRCA  RRCA  RRCA  OR L & LD L,A 0 PUSH BC : LD B,8 DPRIN1 LD A,(DE) N LD (HL),A X INC DE b INC H l DJNZ PRIN1 v POP BC  POP DE  RET  LD L,A  LD A,B  AND %11000  OR %01000000  LD H,A  LD A,B  AND 7  RRCA  RRCA  RRCA  OR L & LD L,A 0 PUSH BC : LD B,8 DPRIN1 LD A,(DE) N LD (HL),A X INC DE b INC H l DJNZ PRIN1 v POP BC  POP  x ;INKEY -CHR$ IN A ;Z=(A=0) ;NOKEY -WAITS FOR NO KEY ;KEY -CHR$ IN A (Z=0) (;ATTBLK -A=COL 2 -BC=POS < -DE=SIZE F;PRINT-BC=POS P -A=CHR$ (BC,DE SAVED) ZINKEY2 LD BC,#FEFE d LD DE,1 n LD H,D xINK1 IN A,(C) LD L,5 INK2 RRA DEC E JR NZ,INK3 LD E,36 PUSH AF AND A INK3 JR C,INK5 LD H,D INK4 INC D DEC L JR NZ,INK2 RLC B  JR C,INK1  POP BC  POP DE " LD A,H , AND A 6 RET Z @ RR C J JR C,INK5 T ADD A,80 ^ JR INK6 hINK5 RR E r JR C,INK6 | ADD A,40 INK6 LD L,A  LD H,0  LD BC,KEYDAT  ADD HL,BC  LD A,(HL)  AND A  RET INKEY CALL INKEY2 INKEY3 LD B,A  PUSH BC  CALL INKEY2  POP BC  CP B  JR NZ,INKEY3  AND A  RET &KEYDAT DEFB 0 0 DEFM "ZXCVASDFGQWERT1234509876POIUY" : DEFB 13 D DEFM "LKJH " N DEFB 0 X DEFM "MNB" b DEFB 0 l DEFM "zxcvasdfgqwert" v DEFB 1,2,3,4,5,12,9,8,7,6  DEFM "poiuy"  DEFB 15  DEFM "lkjh"  DEFB 1,0  DEFM "mnb"  DEFB 0  DEFM ":`?/~|\{}"  DEFB 0,0,0  DEFM "<>!@#$%_)('&"  DEFB 34  DEFM ";"  DEFB 127  DEFM "]["  DEFB 1,4  DEFM "=+-^ "  DEFB 0  DEFM ".,*" *NOKEY CALL INKEY 4 JR NZ,NOKEY > RET HKEY CALL NOKEY RKEY1 CALL INKEY \ JR Z,KEY1 f RET pATTBLK LD H,A z LD A,C  AND %11111  LD L,A  LD C,H  LD A,B  RRCA  RRCA  RRCA  LD B,A  AND %11100000  OR L  LD L,A  LD A,B  AND %11  OR %01011000  LD H,A ATBL1 LD B,E $ LD A,L .ATBL2 LD (HL),C 8 INC L B DJNZ ATBL2 L ADD A,32 V LD L,A ` LD A,0 j ADC A,H t LD H,A ~ DEC D  JR NZ,ATBL1  RET PRINT PUSH DE  RLCA  RLCA  RLCA  LD D,A  AND %11111000  LD E,A  LD A,D  AND %111  OR #3C  LD D,A  LD A,C  AND %11111  LD L,A ( LD A,B 2 AND %11000 < OR %01000000 F LD H,A P LD A,B Z AND 7 d RRCA n RRCA x RRCA  OR L  LD L,A  PUSH BC  LD B,8 PRIN1 LD A,(DE)  LD (HL),A  INC DE  INC H  DJNZ PRIN1  POP BC  POP DE  RET  LD L,A ( LD A,B 2 AND %11000 < OR %01000000 F LD H,A P LD A,B Z AND 7 d RRCA n RRCA x RRCA  OR L  LD L,A  PUSH BC  LD B,8 PRIN1 LD A,(DE)  LD (HL),A  INC DE  INC H  DJNZ PRIN1  POP BC  x ORG 49152  JP START ATTBLK LD H,A ( LD A,C 2 AND %11111 < LD L,A F LD C,H P LD A,B Z RRCA d RRCA n RRCA x LD B,A AND %11100000 OR L LD L,A LD A,B AND %11 OR %01011000 LD H,A ATBL1 LD B,E LD A,L ATBL2 LD (HL),C INC L DJNZ ATBL2 ADD A,32  LD L,A  LD A,0  ADC A,H " LD H,A , DEC D 6 JR NZ,ATBL1 @ RET JPRINT2 PUSH DE T RLCA ^ RLCA h RLCA r LD D,A | AND %11111000  LD E,A  LD A,D  AND %111  OR #3C  LD D,A  LD A,C  AND %11111  LD L,A  LD A,B  AND %11000  OR %01000000  LD H,A  LD A,B  AND 7  RRCA  RRCA & RRCA 0 OR L : LD L,A D PUSH BC N LD B,8 XPRIN1 LD A,(DE) b LD (HL),A l INC DE v INC H  DJNZ PRIN1  POP BC  POP DE  RET MAKLST LD HL,33024  LD (IX+1),0  LD (IX+2),7  LD (IX+3),0  LD DE,40960 ML1 INC HL  INC HL  PUSH DE  LD C,(HL)  INC HL  LD B,(HL)  INC HL  LD E,(HL) * INC HL 4 LD D,(HL) > INC HL H LD A,D R AND E \ INC A f JR Z,ML2 p EX DE,HL z SBC HL,BC  INC HL  LD C,(IX+2)  LD B,(IX+3)  ADD HL,BC  LD (IX+2),L  LD (IX+3),H  EX DE,HL  POP DE  BIT 0,(IX+0)  JR NZ,ML3  PUSH HL  LD B,10 ML5 LD A,"."  CP (HL)  JR Z,ML4  INC HL $ DJNZ ML5 . POP HL 8 JR ML3 BML4 INC HL L DJNZ ML4 V POP AF ` JR ML1 jML3 INC (IX+1) t LD BC,10 ~ LDIR  JR ML1 ML2 LD DE,V4  PUSH BC  LD BC,10  LDIR  POP HL  LD C,(IX+2)  LD B,(IX+3)  AND A  SBC HL,BC  LD (IX+2),L  LD (IX+3),H  POP HL  LD D,H  LD E,L  INC DE ( LD (HL),32 2 LD BC,89 < LDIR F LD A,(IX+1) P DEC A Z RET Z d LD (IX+14),A nML6 LD HL,40960 x LD DE,40970  LD A,(IX+14)  LD (IX+15),A ML7 PUSH HL  PUSH DE  LD B,10 ML8 LD A,(DE)  CP (HL)  JR NZ,ML9  INC HL  INC DE  DJNZ ML8 ML9 POP DE  POP HL  JR NC,ML10  LD B,10 ML11 LD C,(HL) " LD A,(DE) , LD (HL),A 6 LD A,C @ LD (DE),A J INC HL T INC DE ^ DJNZ ML11 h JR ML12 rML10 LD BC,20 | ADD HL,BC  EX DE,HL ML12 DEC (IX+15)  JR NZ,ML7  DEC (IX+14)  JR NZ,ML6  RET DISLST LD B,(IX+16)  LD HL,40960  LD DE,10  INC B  DEC B  JR Z,DL1 DL2 ADD HL,DE  DJNZ DL2 DL1 LD B,5  PUSH HL &DL3 LD C,5 0DL4 LD A,(HL) : CALL PRINT D INC HL N INC C X LD A,15 b CP C l JR NZ,DL4 v INC B  CP B  JR NZ,DL3  LD BC,#1208  LD HL,NAMEDT  LD D,6 DL5 LD A,(HL)  CALL PRINT  INC HL  INC C  DEC D  JR NZ,DL5  POP HL  LD D,10 DL6 LD A,(HL)  CALL PRINT  INC HL  INC C * DEC D 4 JR NZ,DL6 > LD D,10 H LD BC,#010B R LD HL,V4 \DL8 LD A,(HL) f CALL PRINT p INC C z INC HL  DEC D  JR NZ,DL8  CALL DL7  LD BC,#0812  LD L,(IX+2)  LD H,(IX+3)  SRL H  RR L  SRL H  RR L  LD DE,100  CALL NPR  LD DE,10  CALL NPR  LD DE,1  NPR LD A,47 $ NPR1 AND A . INC A 8 SBC HL,DE B JR NC,NPR1 L ADD HL,DE V CALL PRINT ` INC C j RET t DL7 LD BC,#0612 ~ LD A,(IX+17) RRA SBC A,A AND 127 OR 8 LD DE,#0103 CALL ATTBLK LD BC,#120E LD DE,#010A LD A,120 CALL ATTBLK RET STSCRN LD DE,22528 LD HL,ATTDAT LD C,192  SS1 LD B,4  SS2 XOR A ( RLC (HL) 2 RLA < RLC (HL) F RLA P CP 3 Z JR NZ,SS3 d LD A,7 n SS3 ADD A,A x ADD A,A ADD A,A LD (DE),A INC DE DJNZ SS2 INC HL DEC C JR NZ,SS1 RET START LD IX,V0 CALL STSCRN CALL PING LD (IX+0),0 ST1 LD (IX+16),0  LD (IX+17),0  LD (IX+18),0  LD (IX+20),1 " CALL MAKLST , ST2 CALL DISLST 6 CALL PING @ ST3 LD A,(IX+18) J CP 10 T JR Z,ST5 ^ DEC (IX+20) h JR NZ,ST5 r LD (IX+20),30 | LD HL,23118 ADD A,L LD L,A LD A,(IX+19) INC A AND 7 LD (IX+19),A BIT 2,A JR Z,ST4 CPL AND 3 ST4 LD C,A XOR 15 ADD A,A  ADD A,A  ADD A,A  ADD A,C & LD (HL),A 0 ST5 LD A,127 : IN A,(254) D RRA N RRA X JR C,ST6 b LD A,254 l IN A,(254) v RRA JR C,ST6 BIT 0,(IX+22) JR NZ,ST3 LD A,(IX+17) CPL AND 1 LD (IX+17),A SET 0,(IX+22) JR ST2 ST6 RES 3,(IY+2) RES 5,(IY+2) RES 0,(IX+22) LD (IY+7),0  CALL #10A8 JR NC,ST3  CP 10 JR Z,C2 * CP 11 4 JR Z,C1 > CP 12 H JR Z,C3 R CP 13 \ JP Z,C4 f BIT 0,(IX+0) p JR NZ,C5 z CP "." JR Z,C6 C5 CP 8 JR Z,C7 CP 9 JR Z,C8 CP 32 JP C,ST3 LD C,A LD A,(IX+18) CP 10 JP Z,ST2 LD A,(IX+16) CALL ADLINE  EX DE,HL  LD (IX+21),0 C9 CALL NXTLIN $ JP C,ST2 . LD B,(IX+18) 8 CALL CHKSAM B JR C,C9 L LD A,(HL) V CP C ` JR NZ,C9 j LD A,(IX+21) t DEC A ~ LD (IX+16),A  INC (IX+18)  JP ST2 C1 CALL BACKON  JP ST2 C2 CALL FWRDON  JP ST2 C3 LD A,(IX+18)  AND A  JP Z,ST2  DEC (IX+18)  JP ST2 C7 CALL DISLST  CALL BACKON  JR NC,C7  JP ST2 C8 CALL DISLST ( CALL FWRDON 2 JR NC,C8 < JP ST2 FC6 SET 0,(IX+0) P JP ST1 ZC4 LD A,(IX+16) d CALL ADLINE n LD DE,(23627) x LD BC,6  EX DE,HL  ADD HL,BC  EX DE,HL  LD BC,10  LDIR  CALL PING  LD A,(IX+17)  LD B,0  XOR 31  LD C,A  RET PING LD DE,#4040  DI P1 LD A,%11000  OUT (254),A  LD B,D "P2 DJNZ P2 , INC D 6 XOR A @ OUT (254),A J LD B,E TP3 DJNZ P3 ^ DEC E h JR NZ,P1 r EI | RET NXTLIN LD A,(IX+21)  CP (IX+1)  SCF  RET Z  INC (IX+21) ADLINE LD HL,40960  AND A  RET Z  PUSH BC  LD BC,10 ADL1 ADD HL,BC  DEC A  JR NZ,ADL1  POP BC  AND A  RET &CHKSAM AND A 0 INC B : DEC B D RET Z N PUSH DE XCHKS1 LD A,(DE) b CP (HL) l INC HL v INC DE  JR NZ,CHKS2  DJNZ CHKS1  POP DE  AND A  RET CHKS2 POP DE  SCF  RET BACKON LD A,(IX+16)  AND A  SCF  RET Z  DEC A  CALL ADLINE  CALL CHKCHR  RET C  DEC (IX+16) * RET 4FWRDON LD A,(IX+16) > INC A H CP (IX+1) R SCF \ RET Z f CALL ADLINE p CALL CHKCHR z RET C  INC (IX+16)  RET CHKCHR EX DE,HL  LD A,(IX+16)  CALL ADLINE  LD B,(IX+18)  CALL CHKSAM  RET PRINT PUSH HL  CALL PRINT2  POP HL  RET NAMEDT DEFM "NAME: " V0 DEFW 0,0 V4 DEFW 0,0,0,0,0,0,0,0,0,0 ATTDAT DEFS 192 $XX ENT XX X+X X+16)  RET CHKCHR EX DE,HL  LD A,(IX+16)  CALL ADLINE  LD B,(IX+18)  CALL CHKSAM  RET PRINT PUSH HL  CALL PRINT2  POP HL  RET NAMEDT DEFM "NAME: " $V0 DEFW 0,0 .V4 DEFW 0,0,0,0,0,0,0,0,0,0 8ATTDAT DEFS 192 BXX ENT X  RET "NXTLIN LD A,(IX+2) , ADD A,(IX+4) 6 LD B,0 @ LD C,(IX+3) J JR NC,NL1 TNL2 SUB C ^ INC B h JR NC,NL2 r JR NL3 |NL1 CP C  JR C,NL4 NL3 SUB C  INC B  JR NC,NL3  ADD A,C  LD (IX+2),A  LD A,(IX+0)  LD C,(IX+1)  DEC B NL5 ADD A,C  DJNZ NL5  LD (IX+0),A  RET NL4 LD (IX+2),A  RET &ACCLIN LD A,B 0 CP 192 : RET NC D AND %111 N LD H,A X EXX b LD L,A l LD H,0 v ADD HL,DE  LD A,(HL)  EXX  LD C,A  LD A,B  AND #C0  RRCA  RRCA  RRCA  OR H  LD H,A  LD A,(23296)  ADD A,H  LD H,A  LD A,B  AND #38  RLCA  RLCA * LD L,A 4 LD A,D > AND %11111000 H RRCA R RRCA \ RRCA f OR L p LD L,A z LD A,D  AND #7  INC A  LD B,A  LD A,#FF  SCF AL1 RRA  AND A  DJNZ AL1  LD B,A  LD A,D  AND #F8  LD D,A AL7 LD A,E  AND #F8  SUB D  JR Z,AL2 $ JR NC,AL6 . LD E,255 8 JR AL7 B AL6 RRCA L RRCA V RRCA ` LD D,A j LD A,B t CPL ~ AND (HL) LD (HL),A LD A,B AND C OR (HL) LD (HL),A INC L LD B,D DEC B JR Z,AL4 AL3 LD (HL),C INC L DJNZ AL3 AL4 LD A,E AND #7  INC A  LD B,A ( XOR A 2 AL5 SCF < RRA F DJNZ AL5 P LD B,A Z AND C d LD C,A n LD A,B x CPL AND (HL) OR C LD (HL),A RET AL2 LD D,B LD A,E AND %111 INC A LD B,A XOR A AL8 SCF RRA DJNZ AL8  AND D  LD D,A  CPL " AND (HL) , LD B,A 6 LD A,D @ AND C J OR B T LD (HL),A ^ RET CPL AND (HL) OR C LD (HL),A RET AL2 LD D,B LD A,E AND %111 INC A LD B,A XOR A AL8 SCF RRA DJNZ AL8  AND D  LD D,A  CPL " AND (HL) , LD B,A 6 LD A,D @ AND C J OR B T LD (HL/x ; BC,DE,HL=POINTS A=SHADE (23296)=AD OF SCRN /256 TRIANG EXX  LD L,A ( LD H,0 2 ADD HL,HL < ADD HL,HL F ADD HL,HL P LD BC,SHADES Z ADD HL,BC d EX DE,HL n EXX x LD IX,23296 LD (IX+3),2 LD A,D CP B JR Z,TR2 JR NC,TR2 LD D,B LD B,A LD A,C LD C,E LD E,A TR2 LD A,H CP D JR NZ,TR3  DEC (IX+3)  JP Z,TR4  JR TR5 "TR3 JR NC,TR5 , LD H,D 6 LD D,A @ LD A,L J LD L,E T LD E,A ^TR5 LD A,D h CP B r JR NZ,TR6 | DEC (IX+3)  JP Z,TR4  JR TR7 TR6 JR NC,TR7  LD D,B  LD B,A  LD A,E  LD E,C  LD C,A TR7 LD A,(IX+3)  LD (IX+3),B  CP 2  JR Z,TR8  LD A,D  CP H  JR Z,TR8  SUB B  LD (23297),A & LD (23298),A 0 PUSH DE : PUSH HL D EX DE,HL N LD IX,23304 X CALL TRSET b POP DE l POP BC v LD IX,23309  CALL TRSET  JR TR9 TR8 LD A,D  SUB B  LD (23298),A  LD A,H  SUB B  LD (23297),A  LD (23300),DE  LD (23302),HL  PUSH BC  PUSH HL  LD IX,23304  CALL TRSET  POP DE  POP BC  LD IX,23309 * CALL TRSET 4TR9 LD A,(23299) > LD B,A H LD A,(23304) R LD D,A \ LD A,(23309) f LD E,A p CP D z JR NC,TR10  LD E,D  LD D,A TR10 CALL ACCLIN  LD IX,23304  CALL NXTLIN  LD IX,23309  CALL NXTLIN  LD IX,23296  INC (IX+3)  DEC (IX+1)  JR Z,TR11  DEC (IX+2)  JR NZ,TR9  LD BC,(23300)  LD DE,(23302)  LD IX,23304 $ CALL TRSET . JR TR9 8TR11 LD A,(23299) B LD B,A L LD A,(23304) V LD D,A ` LD A,(23309) j LD E,A t CP D ~ JR NC,TR12  LD E,D  LD D,A TR12 CALL ACCLIN  RET TR4 LD D,L  LD H,C  LD A,H  CP D  JR NC,TR13  LD H,D  LD D,A TR13 LD A,E  CP H  JR NC,TR14  LD E,H  LD H,A (TR14 LD A,H 2 CP D < JR NC,TR15 F LD D,H PTR15 CALL ACCLIN Z RET dTRSET LD (IX+0),C n LD A,E x SUB C  LD H,0  JR Z,TRS1  JR NC,TRS2  DEC H  NEG  DEC H TRS2 INC H TRS1 LD (IX+1),H  LD (IX+4),A  LD A,D  SUB B  LD (IX+3),A  AND A  RR A  LD (IX+2),A  RET "NXTLIN LD A,(IX+2) , ADD A,(IX+4) 6 LD B,0 @ LD C,(IX+3) J JR NC,NL1 TNL2 SUB C ^ INC B h JR NC,NL2 r JR NL3 |NL1 CP C  JR C,NL4 NL3 SUB C  INC B  JR NC,NL3  ADD A,C  LD (IX+2),A  LD A,(IX+0)  LD C,(IX+1)  DEC B NL5 ADD A,C  DJNZ NL5  LD (IX+0),A  RET NL4 LD (IX+2),A  RET &ACCLIN LD A,B 0 CP 192 : RET NC D AND %111 N LD H,A X EXX b LD L,A l LD H,0 v ADD HL,DE  LD A,(HL)  EXX  LD C,A  LD A,B  AND #C0  RRCA  RRCA  RRCA  OR H  LD H,A  LD A,(23296)  ADD A,H  LD H,A  LD A,B  AND #38  RLCA  RLCA * LD L,A 4 LD A,D > AND %11111000 H RRCA R RRCA \ RRCA f OR L p LD L,A z LD A,D  AND #7  INC A  LD B,A  LD A,#FF  SCF AL1 RRA  AND A  DJNZ AL1  LD B,A  LD A,D  AND #F8  LD D,A AL7 LD A,E  AND #F8  SUB D  JR Z,AL2 $ JR NC,AL6 . LD E,255 8 JR AL7 B AL6 RRCA L RRCA V RRCA ` LD D,A j LD A,B t CPL ~ AND (HL) LD (HL),A LD A,B AND C OR (HL) LD (HL),A INC L LD B,D DEC B JR Z,AL4 AL3 LD (HL),C INC L DJNZ AL3 AL4 LD A,E AND #7  INC A  LD B,A ( XOR A 2 AL5 SCF < RRA F DJNZ AL5 P LD B,A Z AND C d LD C,A n LD A,B x CPL AND (HL) OR C LD (HL),A RET AL2 LD D,B LD A,E AND %111 INC A LD B,A XOR A AL8 SCF RRA DJNZ AL8  AND D  LD D,A  CPL " AND (HL) , LD B,A 6 LD A,D @ AND C J OR B T LD (HL),A ^ RET CPL AND (HL) OR C LD (HL),A RET AL2 LD D,B LD A,E AND %111 INC A LD B,A XOR A AL8 SCF RRA DJNZ AL8  AND D  LD D,A  CPL " AND (HL) , LD B,A :x ; BC,DE,HL=POINTS A=SHADE (23296)=AD OF SCRN /256 TRIANG EXX  LD L,A ( LD H,0 2 ADD HL,HL < ADD HL,HL F ADD HL,HL P LD BC,SHADES Z ADD HL,BC d EX DE,HL n EXX x LD IX,23296 LD (IX+3),2 LD A,D CP B JR Z,TR2 JR NC,TR2 LD D,B LD B,A LD A,C LD C,E LD E,A TR2 LD A,H CP D JR NZ,TR3  DEC (IX+3)  JP Z,TR4  JR TR5 "TR3 JR NC,TR5 , LD H,D 6 LD D,A @ LD A,L J LD L,E T LD E,A ^TR5 LD A,D h CP B r JR NZ,TR6 | DEC (IX+3)  JP Z,TR4  JR TR7 TR6 JR NC,TR7  LD D,B  LD B,A  LD A,E  LD E,C  LD C,A TR7 LD A,(IX+3)  LD (IX+3),B  CP 2  JR Z,TR8  LD A,D  CP H  JR Z,TR8  LD A,H & SUB B 0 LD (23297),A : LD (23298),A D PUSH DE N PUSH HL X EX DE,HL b LD IX,23304 l CALL TRSET v POP DE  POP BC  LD IX,23309  CALL TRSET  JR TR9 TR8 LD A,D  SUB B  LD (23298),A  LD A,H  SUB B  LD (23297),A  LD (23300),DE  LD (23302),HL  PUSH BC  PUSH HL  LD IX,23304  CALL TRSET  POP DE * POP BC 4 LD IX,23309 > CALL TRSET HTR9 LD A,(23299) R LD B,A \ LD A,(23304) f LD D,A p LD A,(23309) z LD E,A  CP D  JR NC,TR10  LD E,D  LD D,A TR10 CALL ACCLIN  LD IX,23304  CALL NXTLIN  LD IX,23309  CALL NXTLIN  LD IX,23296  INC (IX+3)  DEC (IX+1)  JR Z,TR11  DEC (IX+2)  JR NZ,TR9  LD BC,(23300) $ LD DE,(23302) . LD IX,23304 8 CALL TRSET B JR TR9 LTR11 LD A,(23299) V LD B,A ` LD A,(23304) j LD D,A t LD A,(23309) ~ LD E,A  CP D  JR NC,TR12  LD E,D  LD D,A TR12 CALL ACCLIN  RET TR4 LD D,L  LD H,C  LD A,H  CP D  JR NC,TR13  LD H,D  LD D,A TR13 LD A,E  CP H  JR NC,TR14 ( LD E,H 2 LD H,A <TR14 LD A,H F CP D P JR NC,TR15 Z LD D,H dTR15 CALL ACCLIN n RET xTRSET LD (IX+0),C  LD A,E  SUB C  LD H,0  JR Z,TRS1  JR NC,TRS2  DEC H  NEG  DEC H TRS2 INC H TRS1 LD (IX+1),H  LD (IX+4),A  LD A,D  SUB B  LD (IX+3),A  AND A  RR A " LD (IX+2),A , RET 6NXTLIN LD A,(IX+2) @ ADD A,(IX+4) J LD B,0 T LD C,(IX+3) ^ JR NC,NL1 hNL2 SUB C r INC B | JR NC,NL2  JR NL3 NL1 CP C  JR C,NL4 NL3 SUB C  INC B  JR NC,NL3  ADD A,C  LD (IX+2),A  LD A,(IX+0)  LD C,(IX+1)  DEC B NL5 ADD A,C  DJNZ NL5  LD (IX+0),A  BET NL4 LD (IX+2),A & RET 0ACCLIN LD A,B : CP 192 D RET NC N AND %111 X LD H,A b EXX l LD L,A v LD H,0  ADD HL,DE  LD A,(HL)  EXX  LD C,A  LD A,B  AND #C0  RRCA  RRCA  RRCA  OR H  LD H,A  LD A,(23296)  ADD A,H  LD H,A  LD A,B  AND #38  RLCA * RLCA 4 LD L,A > LD A,D H AND %11111000 R RRCA \ RRCA f RRCA p OR L z LD L,A  LD A,D  AND #7  INC A  LD B,A  LD A,#FF  SCF AL1 RRA  AND A  DJNZ AL1  LD B,A  LD A,D  AND #F8  LD D,A  AL7 LD A,E  AND #F8  SUB D $ JR Z,AL2 . JR NC,AL6 8 LD E,255 B JR AL7 L AL6 RRCA V RRCA ` RRCA j LD D,A t LD A,B ~ CPL AND (HL) LD (HL),A LD A,B AND C OR (HL) LD (HL),A INC L LD B,D DEC B JR Z,AL4 AL3 LD (HL),C INC L DJNZ AL3 AL4 LD A,E  AND #7  INC A ( LD B,A 2 XOR A < AL5 SCF F RRA P DJNZ AL5 Z LD B,A d AND C n LD C,A x LD A,B CPL AND (HL) OR C LD (HL),A RET AL2 LD D,B LD A,E AND %111 INC A LD B,A XOR A AL8 SCF RRA  DJNZ AL8  AND D  LD D,A " CPL , AND (HL) 6 LD B,A @ LD A,D J AND C T OR B ^ LD (HL),A h RET CPL AND (HL) OR C LD (HL),A RET AL2 LD D,B LD A,E AND %111 INC A LD B,A XOR A AL8 SCF RRA  DJNZ AL8  AND D  LD D,A " CPL , AND (HL) x ORG 60000  ENT 60000  LD C,7 ( LD HL,100 2 EXX < LD BC,#80D0 F; FREQ=C-RND*B P EXX Z DI d LD DE,0 nL1 LD A,D x RLCA RLCA RLCA XOR E XOR %11010101 LD D,A LD A,E RRCA ADD A,D NEG LD E,A ADD A,D XOR D SUB E  ADD A,D  DEC HL  EXX "L2 SUB B , JR NC,L2 6 ADD A,C @ EXX J LD B,A T LD A,C ^ XOR %11000 h LD C,A r OUT (254),A |L3 DJNZ L3  LD A,H  OR L  JR NZ,L1  EI  RET ,D NEG LD E,Ahx CHORD PUSH HL  PUSH DE  PUSH BC ( LD L,D 2 LD C,254 < EXX F POP BC P POP DE Z POP HL d LD H,L n LD D,E x LD L,D LD B,C LD C,254 XOR A LD IX,C3 JR C8 C4 AND A RET C C3 EXX C8 OUTD JR NZ,C1 RET NZ CP L JP Z,C2  NOP  EXX  OUTD " RET Z , CP L 6 JR NZ,C4 @ LD L,D J JP C3 TC2 LD L,D ^ EXX h OUTD r RET Z | CP L  JR NZ,C4  LD L,D  JP C3 C1 CP L  JP Z,C5  NOP  EXX  OUTD  INC B  CP L  JP NZ,C6 C7 LD L,D  JP (IX) C5 LD L,D  EXX  OUTD & INC B 0 CP L : JP Z,C7 DC6 JR C3 C2 LD L,D ^ EXX h OUTD r RET Z | CP L  JR NZ,C4  LD L,D  JP C3 C1 CP L  JP Z,C5  NOP  EXX  OUTD  INC B  CP L x* ;MOVSPR MOVE SPRITE (16*16) ;>IX=AD DATA (6 BYTES) ; +0,1=AD BUF1 (48 BYT) (; +2,3=AD BUF2 (48 BYT) 2; +4,5=LAST SCRN POS <; HL=AD GRAPHIC F; BC=NEW POS PMOVSPR LD D,(IX+3) Z LD E,(IX+2) d LD A,C n PUSH BC x PUSH DE AND 7 CALL MAKBUF POP DE POP BC EXX LD D,(IX+1) LD E,(IX+0) LD (IX+3),D LD (IX+2),E LD H,(IX+5) LD L,(IX+4) LD B,0 LD A,H  CPL  AND 7  INC A " LD C,A , EXX 6 LD (IX+1),D @ LD (IX+0),E J CALL FA T LD (IX+5),H ^ LD (IX+4),L h LD B,16 r LD A,H | CPL  AND 7  INC A  LD C,A  JR DISSPR FA LD A,C  AND #F8  RRCA  RRCA  RRCA  LD L,A  LD A,B  AND %111000  RLCA  RLCA  OR L  LD L,A & LD A,B 0 AND %11000000 : RRCA D RRCA N RRCA X OR #40 b LD H,A l LD A,B v AND 7  OR H  LD H,A  RET DS1 EXX  DEC B  RET Z DISSPR LD A,(DE)  INC DE  XOR (HL)  LD (HL),A  INC L  LD A,(DE)  INC DE  XOR (HL)  LD (HL),A  INC L  LD A,(DE) * INC DE 4 XOR (HL) > LD (HL),A H DEC L R DEC L \ INC H f DEC C p JP NZ,DS1 z LD C,8  LD A,32  ADD A,L  LD L,A  JR C,DS1  LD A,H  SUB C  LD H,A  EXX  DJNZ DISSPR  RET MAKBUF LD BC,#10FF  AND A  JR Z,MB1  SUB 4  JR Z,MB2  JP NC,MB3 $ INC A . JP Z,MB4 3 PUSH HL 8 LD HL,#0318 B INC A L JR Z,MB5 V LD H,8 `MB5 LD (MB6),HL e POP HL jMB4 PUSH DE t LD D,(HL) ~ INC HL  LD E,(HL)  INC HL  XOR A MB6 RR D  RR E  RRA  RR D  RR E  RRA  RR D  RR E  RRA  EX (SP),HL  LD (HL),D  INC HL  LD (HL),E ( INC HL 2 LD (HL),A < INC HL F POP DE P EX DE,HL Z DJNZ MB4 d LD HL,#1ACB n LD (MB6),HL x RET MB1 LDI  LDI  XOR A  LD (DE),A  INC DE  DJNZ MB1  RET MB2 PUSH DE  LDI  LDI  XOR A  EX DE,HL  LD (HL),A  POP HL  RRD  INC HL " RRD , INC HL 6 RRD @ INC HL J EX DE,HL T DJNZ MB2 ^ RET hMB3 DEC A r JP Z,MB7 w PUSH HL | LD HL,#0318  DEC A  JR Z,MB8  LD H,8 MB8 LD (MB9),HL  POP HL MB7 PUSH DE  LD D,(HL)  INC HL  LD E,(HL)  INC HL  XOR A MB9 RL E  RL D  RLA  RL E  RL D  RLA & RL E 0 RL D : RLA D EX (SP),HL N LD (HL),A X INC HL b LD (HL),D l INC HL v LD (HL),E  INC HL  POP DE  EX DE,HL  DJNZ MB7  LD HL,#13CB  LD (MB9),HL  RET XOR A MB9 RL E  RL D  RLA  RL E  RL D  RLA & RL E 0 RL D : RLA D EX (SP),HL xb ;SHPLT2 -PLOTS 8 POINTS AROUND CENTRE ;A=SHADE 0-16 ;BC=POS-0-47,0-63 (SHPLT2 LD (23296),A 2 CALL ALPLOT < LD A,C F AND %111000 P RET Z Z CP %111000 d RET Z n LD A,C x SUB 8 LD L,A LD A,B LD B,L ADD A,8 LD C,A CALL ALPLOT RET ALPLOT CALL SPLOT1 LD A,C XOR 63 LD C,A CALL SPLOT1 LD A,47  SUB B  LD B,A  CALL SPLOT1 " LD A,C , XOR 63 6 LD C,A @ CALL SPLOT1 J RET TSPLOT1 LD A,(23296) ^ PUSH BC h CALL SHPLOT r POP BC | RET SHPLOT RLCA  RLCA  LD E,A  LD D,0  LD HL,GRPHCS  ADD HL,DE  EX DE,HL  LD A,C  AND %111110  RRCA  LD L,A  RR C  SBC A,A  XOR %11110000  LD C,A  LD A,B & AND %110000 0 RRCA : OR #40 D LD H,A N LD A,B X AND %1110 b RLCA l RLCA v RLCA  RLCA  OR L  LD L,A  RR B  SBC A,A  AND 4  OR H  LD H,A  LD B,4 SP1 LD A,C  CPL  AND (HL)  LD (HL),A  LD A,(DE)  INC DE  AND C  OR (HL) * LD (HL),A 4 INC H > DJNZ SP1 H RET RGRPHCS DEFB 0,0,0,0 \ DEFB 136,0,0,0 f DEFB 136,0,34,0 p DEFB 170,0,68,0 z DEFB 136,34,136,34  DEFB 170,17,68,34  DEFB 170,17,170,68  DEFB 170,85,170,17  DEFB 170,85,170,85  DEFB 170,119,170,85  DEFB 85,238,85,187  DEFB 170,255,170,221  DEFB 119,221,119,221  DEFB 170,255,221,255  DEFB 119,255,221,255  DEFB 238,255,255,255  DEFB 255,255,255,255 ,17,170,68  DEFB 170,85,170,17  DEFB 170,85,170,85  DEFB 170,119,170,85  Dx SAVE DI  PUSH IY  PUSH HL ( POP IY 2 PUSH IX < EXX F PUSH HL P LD H,0 Z LD DE,1024 d LD B,16 n EXX x PUSH DE LD L,0 LD IX,B12 B5 JR B6 B3 OUT (254),A RR L SBC A,A AND 10 SUB 5 ADD A,H LD H,A LD B,H INC B INC B B4 DJNZ B4  LD A,%1110  OUT (254),A " EXX , RRC H 6 SBC A,A @ AND -2 J INC A T ADD A,C ^ LD C,A h CP B r JP C,B5 | LD B,C  NOP  NOP B6 EXX  LD B,H  INC B B7 DJNZ B7  LD A,1  LD A,1  DEC C  JP NZ,B3  OUT (254),A B18 EXX  LD A,B  LD BC,#0808  EXX  LD C,8 & LD H,A 0 ADD A,A : ADD A,A D ADD A,H N SUB 39 X LD H,A b LD B,H l INC B vB1 DJNZ B1  EXX  LD A,H  EXX  LD L,A  EXX  LD A,0  LD A,%1110  OUT (254),A  JP (IX) B12 DEC DE  LD A,D  OR E  JR NZ,B13  LD IX,B14  LD H,170  JR B17 B13 LD H,0 * LD H,0 4 JP B11 >B14 LD IX,B8 H LD H,255 R POP DE \ LD H,255 f JR B11 pB8 DEC DE z LD A,D  OR E  JR Z,B9  LD H,(IY+0)  INC IY B11 NOP B17 EXX  LD B,H  INC B B15 DJNZ B15  LD A,1  LD A,1  JP B3 B9 LD IX,B10  JP B11 B10 LD IX,B16  DEFW 0,0,0 $ JR B11 .B16 POP HL 8 EXX B POP IX L POP IY V EI ` RET  JR Z,B9  LD H,(IY+0)  INC IY B11 NOP B17 EXX  LD B,H  INC B B15 DJNZ B15  LD A,1  LD A,1  JP B3 B9 LD IX,B10  JP B11 B10 LD IX,B16  DEFW 0,0,0 $ JR B11 .B16 POP HL 8 EXX B POP IX L POP IY V EI x ORG 60000  JP SAVE  JP LOAD ( JP CLATTR 2SAVE LD A,(23296) < ADD A,A F LD L,0 P LD H,A Z LD DE,49152 d ADD HL,DE n LD DE,#4000 x EX DE,HL S1 PUSH HL LD BC,8 LDIR POP HL INC H LD A,H AND 7 JR NZ,S1 LD A,H SUB 8 LD H,A LD A,L ADD A,32  LD L,A  JR NZ,S1  RET "LOAD LD A,(23296) , ADD A,A 6 LD L,0 @ LD H,A J LD DE,#C000 T ADD HL,DE ^ LD DE,(23297) hL1 PUSH DE r LD BC,8 | LDIR  POP DE  INC D  LD A,D  AND 7  JR NZ,L1  LD A,D  SUB 8  LD D,A  LD A,E  ADD A,32  LD E,A  JR NC,L1  RET CLATTR LD HL,22528  LD DE,22529  LD BC,767 & LD A,(23296) 0 LD (HL),A : LDIR D RET ,8 | LDIR  POP DE  INC D  LDxx ORG 60000  DI  LD A,#3A ( LD I,A 2 LD A,#18 < LD (#FFFF),A F LD A,#C3 P LD (#FFF4),A Z LD HL,INTERR d LD (#FFF5),HL n LD HL,60100 x LD (V1),HL y LD A,1 z LD (V2),A IM 2 EI RET INTERR PUSH AF PUSH HL BIT 5,(IY+1) JR NZ,INT1 LD A,(V2) AND A JR Z,INT3 BIT 3,(IY+1) JR NZ,INT1 INT3 LD HL,(V1) XOR A LD (V2),A LD A,(HL) INC HL LD (V1),HL AND A JR NZ,INT2  IM 1  JR INT1 INT2 LD (IY-50),A " SET 5,(IY+1) # CP 13 $ JR NZ,INT1 % LD A,1 & LD (V2),A ,INT1 POP HL 6 POP AF @ EI J RET TV1 DEFW 0 ^V2 DEFB 0 A LD (V2),A LD A,(HL) INC HL LD (V1),HL AND A JR NZ,INT2  IM 1  JR INT1 INT2 LD (IY-50),A " SE9x ORG 60000  ENT 60000  LD C,255  DI CALL BEEP ! EI " LD A,(L1+1) # LD B,A $ LD A,(L9+1) % LD (L1+1),A & LD A,B ' LD (L9+1),A ( RET )BEEP LD HL,#8000 2 LD DE,#100 3 LD D,C 4 SRL D <L4 NOP F NOP PL1 LD A,0 Z OUT (254),A d LD A,C n SUB D o JR Z,L5 p JR C,L5 x LD B,A L2 DJNZ L2 L5 LD B,D L9 LD A,%11111 OUT (254),A L3 DJNZ L3 LD A,L ADD A,C LD L,A JR NC,L6 INC H RET Z LD A,E ADD A,C  LD E,A  JR NC,L4  INC D " JP L1 ,L6 NOP 6 NOP @ NOP J NOP T JR L4 D B,A L2 DJNZ L2 L5 LD B,D L9 LD A,%11111 OUT (254),A L3 DJNZ L3 LD A,L ADD A,C LD L,A JR NC,L6 INC H RET Z LD A,E ADD A,C  LD E,A  JR NC,L4 x ORG 65000  LD B,120  CALL GETVAR ( INC HL 2 INC HL < INC HL F LD C,(HL) P PUSH BC Z LD B,121 d CALL GETVAR n INC HL x INC HL INC HL LD A,(HL) CP 192 JR C,ST1 XOR A ST1 POP BC LD B,A AND %111 OR #40 LD H,A LD A,B AND %11000000 RRCA  RRCA  RRCA  OR H " LD H,A , LD A,B 6 AND %111000 @ RLCA J RLCA T LD L,A ^ LD A,C h AND %11111000 r RRCA | RRCA  RRCA  OR L  LD L,A  LD A,C  AND 7  LD B,A  INC B  LD A,1 ST2 RRCA  DJNZ ST2  AND (HL)  CP 1  SBC A,A  LD D,A  LD A,H  AND %11000 & RRCA 0 RRCA : RRCA D OR #58 N LD H,A X LD A,(HL) b INC D l JR NZ,ST3 v RRCA  RRCA  RRCA ST3 AND 7  LD C,A  LD A,(HL)  AND %1000000  RRCA  RRCA  RRCA  OR C  LD C,A  LD B,0  RET GETVAR LD HL,(23627) GTVAR1 LD A,(HL)  CP B  RET Z * CP #80 4 JR Z,ERROR > PUSH BC H CALL #19B8 R POP BC \ EX DE,HL f JR GTVAR1 pERROR RST 8 z DEFB 1 D %1000000  RRCA  RRCA  RRCA  OR C  LD C,A  LD B,0  RET GETVAR LD HL,(23627) GTVAR1 LD A,(HL)  CP B  RET Z * CP #80 4 JR Z,ERROR > PUSH BC H CALL #19B8 R POP BC \ EX DE,HL f JR GTVAR1 pERx ORG 60000  ENT 60000  LD IX,16384  LD DE,6912 F1 EQU 20 F2 EQU 40 F3 EQU 80 SAVE DI  INC IX  PUSH DE ( LD DE,512 2 LD L,254 < LD IY,S1 F JR S2 PS1 LD A,D Z OR E d JR NZ,S8 n LD L,(IX-1) x POP DE LD IY,S3 JR S2 S3 LD A,D OR E JR Z,S4 LD L,(IX+0) INC IX NOP NOP NOP NOP JP S2 S4 LD L,254  LD IY,SEND  NOP  NOP " NOP , NOP 6 JR S2 @S8 DEC E J LD A,D T OR E ^ CP 1 h SBC A,A r CPL | AND 254  LD L,A  INC E  NOP  NOP S2 LD B,F2-8 S5 DJNZ S5  XOR A  NOP  NOP  OUT (254),A  LD H,8  DEC DE  LD B,F2-3 S6 DJNZ S6  LD A,31  LD A,31 &S7 OUT (254),A 0 RL L : LD BC,F1*257-1027 D JR NC,S9 N LD BC,F3*257-1283 X NOP b NOP lS9 DJNZ S9 v XOR A  NOP  NOP  NOP  OUT (254),A  LD B,C  NOP  NOP S10 DJNZ S10  LD A,31  DEC H  JP NZ,S7  OUT (254),A  JP (IY) SEND EI  RET D BC,F1*257-1027 D JR NC,S9 N LD BC,F3*x ORG 60000  ENT 60000  LD IX,16384  LD DE,6912 F1 EQU 20 F2 EQU 40 F3 EQU 80 SAVE DI  INC IX  PUSH DE ( LD DE,512 2 LD L,254 < LD IY,S1 F JR S2 PS1 LD A,D Z OR E d JR NZ,S8 n LD L,(IX-1) x POP DE LD IY,S3 JR S2 S3 LD A,D OR E JR Z,S4 LD L,(IX+0) INC IX NOP NOP NOP NOP JP S2 S4 LD L,254  LD IY,SEND  NOP  NOP " NOP , NOP 6 JR S2 @S8 DEC E J LD A,D T OR E ^ CP 1 h SBC A,A r CPL | AND 254  LD L,A  INC E  NOP  NOP S2 LD B,F2-8 S5 DJNZ S5  XOR A  NOP  NOP  OUT (254),A  LD H,8  DEC DE  LD B,F2-3 S6 DJNZ S6  LD A,31  LD A,31 &S7 OUT (254),A 0 RL L : LD BC,F1*257-1027 D JR NC,S9 N LD BC,F3*257-1283 X NOP b NOP lS9 DJNZ S9 v XOR A  NOP  NOP  NOP  OUT (254),A  LD B,C  NOP  NOP S10 DJNZ S10  LD A,31  DEC H  JP NZ,S7  OUT (254),A  JP (IY) SEND EI  RET D BC,F1*257-1027 D JR NC,S9 N LD BC,F3*Fx ORG 60000  ENT 60000  LD IX,16384 ( LD DE,6912 2 CALL LOAD < RET FF1 EQU 20 PF2 EQU 40 ZF3 EQU 80 dWP EQU 26 nSAVE DI x INC IX PUSH DE LD DE,512 LD L,254 LD IY,S1 JR S2 S1 LD A,D OR E JR NZ,S8 LD L,(IX-1) POP DE LD IY,S3 JR S2 S3 LD A,D  OR E  JR Z,S4  LD L,(IX+0) " INC IX , NOP 6 NOP @ NOP J NOP T JP S2 ^S4 LD L,254 h LD IY,SEND r NOP | NOP  NOP  NOP  JR S2 S8 DEC E  LD A,D  OR E  CP 1  SBC A,A  CPL  AND 254  LD L,A  INC E  NOP  NOP S2 LD B,F2-8 S5 DJNZ S5 & XOR A 0 NOP : NOP D OUT (254),A N LD H,8 X DEC DE b LD B,F2-3 lS6 DJNZ S6 v LD A,31  LD A,31 S7 OUT (254),A  RL L  LD BC,F1*257-1027  JR NC,S9  LD BC,F3*257-1283  NOP  NOP S9 DJNZ S9  XOR A  NOP  NOP  NOP  OUT (254),A  LD B,C  NOP  NOP *S10 DJNZ S10 4 LD A,31 > DEC H H JP NZ,S7 R OUT (254),A \ JP (IY) fSEND EI p RET zLOAD EXX  DI  PUSH HL  LD BC,#40AA L1 LD E,9  CALL WAIT  LD B,7  CALL WST1  CALL LDBYT  LD A,L  CP 254  JR NZ,L1  INC E L2 CALL WASTE2  DEFW 0,0,0  CALL LDBYT  LD A,L $ CP 254 . JR Z,L2 8 AND A B JR NZ,L1 L INC E V CALL WASTE2 `L3 DEFB 0,0,0 j CALL LDBYT t LD (IX+0),L ~ INC IX  EXX  DEC DE  LD A,D  OR E  EXX  JR NZ,L3  EI  POP HL  EXX  RET WASTE LD B,WP WST1 DJNZ WST1 WASTE1 LD B,64 WASTE2 RET WAIT LD A,C  AND 7 ( XOR E 2 OUT (254),A < CALL WASTE F RLC C P LD A,R Z LD D,A d JP NC,W1 nW2 IN A,(254) x AND B  JP Z,W2  LD A,R  SUB D  AND 127  RET W1 IN A,(254)  AND B  JP NZ,W1  LD A,R  SUB D  AND 127  RET LDBYT CALL WAIT  LD B,8  CALL WST1  LD H,A " CALL WAIT , CALL WASTE1 6 NOP @ NOP J ADD A,H T LD H,A ^ LD L,1 hLB1 CALL WASTE1 r CALL WASTE1 | CALL WASTE2  CALL WAIT  LD B,7  CALL WST1  NOP  PUSH AF  CALL WAIT  LD D,A  POP AF  ADD A,D  CP H  CCF  RL L  JR NC,LB1  RET  NOP @ NOP J ADD A,H T LD H,A ^ LD L,1 hLB1 CALL WASTE1 r CALL WASTE1 | CALL WASTE2  CALL WAIT  LD B,7  CALL WST1  NOP  PUSH AF  CALL WAIT  LD s x ORG 60000  ENT 60000  LD IX,16384 ( LD DE,6912 2 < FF1 EQU 35 PF2 EQU 45 ZF3 EQU 55 dSAVE DI n PUSH DE x INC IX LD DE,512 LD L,254 LD IY,S1 JR S2 S3 LD A,D OR E NOP NOP JR Z,S4 LD L,(IX+0) INC IX JR S2 S4 LD L,254  LD IY,SAVEND  NOP  JR S2 "S8 LD A,E , AND 254 6 OR D @ CP 1 J SBC A,A T XOR 1 ^ LD L,A h JP S2 rS1 LD A,D | OR E  JP NZ,S8  LD L,(IX-1)  POP DE  LD IY,S3  NOP S2 XOR A  OUT (254),A  LD B,F2-3 S5 DJNZ S5  LD H,8  DEC DE  LD A,0  LD A,15 S6 OUT (254),A  RL L  SBC A,A & AND F3-F1 0 ADD A,F1-2 : CALL WASTE D NOP N NOP X NOP b NOP l LD B,A v XOR A  OUT (254),A S7 DJNZ S7  DEC H  LD A,15  JP NZ,S6  OUT (254),A  JP (IY) SAVEND EI WASTE RET LOAD EXX  PUSH HL  LD B,64  DI L1 LD A,(LJ1)  LD (LJ2),A  LD (LJ3),A  LD (LJ5),A * XOR 8 4 LD (LJ1),A > LD (LJ4),A H LD (LJ6),A RL2 IN A,(254) \ AND B fLJ1 JP NZ,L2 p LD IY,LP1 z LD C,11  CALL LWASTE  CALL LWASTE  NOP  NOP  JR LBYT LP1 DEC L  JR NZ,L1  LD IY,LP2  LD C,8  JP LBYT LP2 LD IY,LP3  DEC L  JR NZ,L1  NOP  JR LBYT LP3 LD A,L $ CP 254 . JR Z,L3 8 DEC A B JR NZ,L1 L JR LBYT VLP4 LD (IX+0),L ` INC IX j NOP t NOP ~ NOP  LD A,C  OUT (254),A  LD A,R  LD D,A L4 IN A,(254)  AND B LJ2 JP Z,L4  LD A,R  SUB D  AND 127  LD H,A  EXX  DEC DE  LD A,D  OR E  EXX ( JR NZ,L5 2 EI < POP HL F EXX P LD IY,#5C3A ZLWASTE RET dL3 LD IY,LP4 n INC C xLBYT LD A,C  OUT (254),A  LD A,R  LD D,A L6 IN A,(254)  AND B LJ3 JP Z,L6  LD A,R  SUB D  AND 127  LD H,A  CALL LWASTE  LD A,0 L5 DEFW 0,0,0  LD L,1  LD A,C  AND 7 " OUT (254),A , LD A,R 6 LD D,A @L7 IN A,(254) J AND B TLJ4 JP Z,L7 ^ LD A,R h SUB D r AND 127 | ADD A,H  LD H,A  DEFW 0,0,0 L8 DEFB 0,0,0,0,0,0,0,0,0,0,0  LD A,C  OUT (254),A  LD A,R  LD D,A L9 IN A,(254)  AND B LJ5 JP Z,L9  LD A,R  SUB D  AND 127  LD E,A  CALL LWASTE  CALL LWASTE & NOP 0 NOP : NOP D LD A,C N XOR 7 X OUT (254),A b LD A,R l LD D,A vL10 IN A,(254)  AND B LJ6 JP Z,L10  LD A,R  SUB D  AND 127  ADD A,E  CP H  CCF  RL L  JR NC,L8  JP (IY)  CALL LWASTE  CALL LWASTE & NOP 0 NOP : NOP D LD A,C N XOR 7 X OUT (254),A b LD A,R l LD D,A vL10 IN A,(254)  INC E & JR NZ,SH7 0 INC D : LD A,8 D ADD A,H N LD H,A X AND %11000 b XOR %11000 l JR NZ,SH7 v RET SHSET AND 7  PUSH HL  RLCA  LD L,A  LD H,#5B  LD A,(HL)  AND A  LD (HL),255  POP HL  RET NZ  INC E  RET GETSHD AND 7  PUSH HL  LD H,#5B  RLCA  LD L,A * LD B,(HL) 4 INC HL > LD C,(HL) H POP HL R RET \SHDAT1 DEFB 0,0,6,0,3,6,0,2,4,6,0,1,3,5,6,0,1,2,4,5,6 f DEFB 0,1,2,3,4,5,6,0,1,2,3,7,4,5,6 pSHDAT2 DEFB 85,170,255,255,255,170,170,170,170,85,255,0 z DEFB 170,0,0,0 #5B  RLCA  LD L,A * LD B,(HL) 4 INC HL > LD C,(HL) H POP HL R RET \SHDAT1 DEFB 0,0,6,0,3,6,0,2,4,6,0,1,3,5,6,0,1,2,4,5,6 f DEFB 0,1,2,3,4,5,6,0,1,2,3,7,4,5,6 pSHDAT2 DEFB 85,170,255,255,255,170,170, x ;MOVE PIC 32768->16384 ;A=0 PIXELS ; 1 PIXELS WITH INV BLOCKS (; 2 SHADED WITH AUTO CONTRAST 2; 3 SHADED EVENLY <; 4,5 AS 2,3 BUT INV FDISPIC AND A P JP Z,NORMAL Z CP 1 d JP Z,PRISQR n PUSH AF x CALL SHADED POP AF CP 4 RET C LD HL,16384 LD BC,6144 DP1 LD A,(HL) CPL LD (HL),A INC HL DEC BC LD A,B OR C JR NZ,DP1  RET NORMAL LD DE,16384  LD HL,32768 " LD BC,6144 , LDIR 6 RET @PRISQR LD DE,16384 J LD HL,32768 T LD BC,6144 ^ LDIR h LD HL,38912 r LD DE,0 | LD BC,768 PS1 LD A,(HL)  PUSH DE  LD D,A  AND %111  LD E,A  LD A,D  AND %111000  RRCA  RRCA  RRCA  CP E  JR NC,PS2  POP DE  INC DE  PUSH DE  LD E,L & LD A,H 0 AND %11 : RLCA D RLCA N RLCA X OR %01000000 b LD D,A l EX DE,HL vPS3 LD A,(HL)  CPL  LD (HL),A  INC H  LD A,H  AND 7  JR NZ,PS3  EX DE,HL PS2 POP DE  INC HL  DEC BC  LD A,B  OR C  JR NZ,PS1  LD HL,384  AND A  SBC HL,DE  RET NC * LD HL,16384 4 LD BC,6144 >PS4 LD A,(HL) H CPL R LD (HL),A \ INC HL f DEC BC p LD A,B z OR C  JR NZ,PS4  RET SHADED LD HL,23296  LD DE,23297  LD BC,15  RRA  SBC A,A  LD (HL),A  LDIR  AND A  LD E,8  JR NZ,SH1  LD HL,38912  LD BC,768  LD E,0 SH2 LD A,(HL) $ CALL SHSET . LD A,(HL) 8 RRCA B RRCA L RRCA V CALL SHSET ` INC HL j DEC BC t LD A,B ~ OR C  JR NZ,SH2 SH1 LD A,0 SH4 DEC E  JR Z,SH3  ADD A,E  JR SH4 SH3 LD L,A  LD H,0  LD BC,SHDAT1  ADD HL,BC  EX DE,HL  LD HL,23296  LD B,8 SH5 LD A,(HL)  INC A  JR NZ,SH6 ( LD A,(DE) 2 PUSH DE < EX DE,HL F LD HL,SHDAT2 P RLCA Z ADD A,L d LD L,A n LD A,0 x ADC A,H  LD H,A  LD A,(HL)  LD (DE),A  INC HL  INC DE  LD A,(HL)  LD (DE),A  EX DE,HL  POP DE  INC DE  DEC HL SH6 INC HL  INC HL  DJNZ SH5  LD DE,38912  LD H,64 "SH7 LD A,(DE) , CALL GETSHD 6 PUSH BC @ LD A,(DE) J RRCA T RRCA ^ RRCA h CALL GETSHD r LD L,E | EX DE,HL  EX (SP),HL  EX DE,HL  LD A,E  LD E,B  LD B,A  PUSH BC SH8 SET 7,H  RES 6,H  LD A,(HL)  LD B,A  AND D  LD C,A  LD A,B  CPL  AND E  OR C & RES 7,H 0 SET 6,H : LD (HL),A D INC H N EX DE,HL X EX (SP),HL b EX DE,HL l LD A,H v AND 7  JR NZ,SH8  POP DE  LD A,-8  ADD A,H  LD H,A  POP DE  INC E  JR NZ,SH7  INC D  LD A,8  ADD A,H  LD H,A  AND %11000  XOR %11000  JR NZ,SH7  RET SHSET AND 7 * PUSH HL 4 RLCA > LD L,A H LD H,#5B R LD A,(HL) \ AND A f LD (HL),255 p POP HL z RET NZ  INC E  RET GETSHD AND 7  PUSH HL  LD H,#5B  RLCA  LD L,A  LD B,(HL)  INC HL  LD C,(HL)  POP HL  RET SHDAT1 DEFB 0,0,6,0,3,6,0,2,4,6,0,1,3,5,6,0,1,2,4,5,6  DEFB 0,1,2,3,4,5,6,0,1,2,3,7,4,5,6  SHDAT2 DEFB 85,170,255,255,255,170,170,170,170,85,255,0  DEFB 170,0,0,0 #5B  RLCA   x ;MOVE PIC 32768->16384 ;A=0 PIXELS ; 1 PIXELS WITH INV BLOCKS (; 2 SHADED WITH AUTO CONTRAST 2; 3 SHADED EVENLY <; 4,5 AS 2,3 BUT INV FDISPIC AND A P JP Z,NORMAL Z CP 1 d JP Z,PRISQR n PUSH AF x CALL SHADED POP AF CP 4 RET C LD HL,16384 LD BC,6144 DP1 LD A,(HL) CPL LD (HL),A INC HL DEC BC LD A,B OR C JR NZ,DP1  RET NORMAL LD DE,16384  LD HL,32768 " LD BC,6144 , LDIR 6 RET @PRISQR LD DE,16384 J LD HL,32768 T LD BC,6144 ^ LDIR h LD HL,38912 r LD DE,0 | LD BC,768 PS1 LD A,(HL)  PUSH DE  LD D,A  AND %111  LD E,A  LD A,D  AND %111000  RRCA  RRCA  RRCA  CP E  JR NC,PS2  POP DE  INC DE  PUSH DE  LD E,L & LD A,H 0 AND %11 : RLCA D RLCA N RLCA X OR %01000000 b LD D,A l EX DE,HL vPS3 LD A,(HL)  CPL  LD (HL),A  INC H  LD A,H  AND 7  JR NZ,PS3  EX DE,HL PS2 POP DE  INC HL  DEC BC  LD A,B  OR C  JR NZ,PS1  LD HL,384  AND A  SBC HL,DE  RET NC * LD HL,16384 4 LD BC,6144 >PS4 LD A,(HL) H CPL R LD (HL),A \ INC HL f DEC BC p LD A,B z OR C  JR NZ,PS4  RET SHADED LD HL,23296  LD DE,23297  LD BC,15  RRA  SBC A,A  LD (HL),A  LDIR  AND A  LD E,8  JR NZ,SH1  LD HL,38912  LD BC,768  LD E,0 SH2 LD A,(HL) $ CALL SHSET . LD A,(HL) 8 RRCA B RRCA L RRCA V CALL SHSET ` INC HL j DEC BC t LD A,B ~ OR C  JR NZ,SH2 SH1 LD A,0 SH4 DEC E  JR Z,SH3  ADD A,E  JR SH4 SH3 LD L,A  LD H,0  LD BC,SHDAT1  ADD HL,BC  EX DE,HL  LD HL,23296  LD B,8 SH5 LD A,(HL)  INC A  JR NZ,SH6 ( LD A,(DE) 2 PUSH DE < EX DE,HL F LD HL,SHDAT2 P RLCA Z ADD A,L d LD L,A n LD A,0 x ADC A,H  LD H,A  LD A,(HL)  LD (DE),A  INC HL  INC DE  LD A,(HL)  LD (DE),A  EX DE,HL  POP DE  INC DE  DEC HL SH6 INC HL  INC HL  DJNZ SH5  LD DE,38912  LD H,64 "SH7 LD A,(DE) , CALL GETSHD 6 PUSH BC @ LD A,(DE) J RRCA T RRCA ^ RRCA h CALL GETSHD r LD L,E | EX DE,HL  EX (SP),HL  EX DE,HL  LD A,E  LD E,B  LD B,A  PUSH BC SH8 SET 7,H  RES 6,H  LD A,(HL)  LD B,A  AND D  LD C,A  LD A,B  CPL  AND E  OR C & RES 7,H 0 SET 6,H : LD (HL),A D INC H N EX DE,HL X EX (SP),HL b EX DE,HL l LD A,H v AND 7  JR NZ,SH8  POP DE  LD A,-8  ADD A,H  LD H,A  POP DE  INC E  JR NZ,SH7  INC D  LD A,8  ADD A,H  LD H,A  AND %11000  XOR %11000  JR NZ,SH7  RET SHSET AND 7 * PUSH HL 4 RLCA > LD L,A H LD H,#5B R LD A,(HL) \ AND A f LD (HL),255 p POP HL z RET NZ  INC E  RET GETSHD AND 7  PUSH HL  LD H,#5B  RLCA  LD L,A  LD B,(HL)  INC HL  LD C,(HL)  POP HL  RET SHDAT1 DEFB 0,0,6,0,3,6,0,2,4,6,0,1,3,5,6,0,1,2,4,5,6  DEFB 0,1,2,3,4,5,6,0,1,2,3,7,4,5,6  SHDAT2 DEFB 255,255,255,170,170,170,170,85,255,0,170,0,0,0  DEFB 85,170 #5B  RLCA  x ; ENCODE SCREEN INTO PRINTER FORMAT ; PRBUFF=AD OF SPARE 8K ; BC=START POINT (; DE=SIZE OF BLOCK 2CODSCR EXX < PUSH HL F LD HL,PRBUFF P LD DE,1+PRBUFF Z LD (HL),128 d LD BC,8191 n LDIR x POP HL EXX LD HL,0 CS1 LD A,C PUSH AF LD A,E PUSH AF LD L,0 CS2 CALL POINT JR NC,CS3 PUSH BC LD B,H LD C,L CALL PLOT  POP BC CS3 INC L  INC C " DEC E , JR NZ,CS2 6 POP AF @ LD E,A J POP AF T LD C,A ^ INC H h INC B r DEC D | JR Z,CS1  RET POINT PUSH HL  PUSH BC  LD A,C  RRCA  RRCA  RRCA  AND 31  LD L,A  LD A,B  RLCA  RLCA  RLCA  AND %11100000  OR L  LD L,A & LD A,B 0 AND %111 : OR 64 D LD H,A N LD A,B X AND %11000000 b RRCA l RRCA v RRCA  OR H  LD H,A  LD A,C  AND 7  LD B,A  INC B  LD A,1 POIN1 RRCA  DJNZ POIN1  AND (HL)  CP 1  CCF  SBC A,A  POP BC  POP HL  RET PLOT PUSH HL * PUSH BC 4 LD L,C > LD A,B H LD H,-1 RPL1 INC H \ SUB 3 f JR NC,PL1 p ADD A,3 z AND A  RR H  RR L  RLA  LD B,A  INC B  LD A,128 PL2 RLCA  DJNZ PL2  LD DE,PRBUFF  ADD HL,DE  OR (HL)  LD (HL),A  POP BC  POP HL  RET C > LD A,B H x ; ENCODE SCREEN INTO PRINTER FORMAT ; PRBUFF=AD OF SPARE 8K ; BC=START POINT (; DE=SIZE OF BLOCK 2CODSCR EXX < PUSH HL F LD HL,PRBUFF P LD DE,1+PRBUFF Z LD (HL),128 d LD BC,8191 n LDIR x POP HL EXX LD HL,0 CS1 LD A,C PUSH AF LD A,E PUSH AF LD L,0 CS2 CALL POINT JR NC,CS3 PUSH BC LD B,H LD C,L CALL PLOT  POP BC CS3 INC L  INC C " DEC E , JR NZ,CS2 6 POP AF @ LD E,A J POP AF T LD C,A ^ INC H h INC B r DEC D | JR NZ,CS1  RET POINT PUSH HL  PUSH BC  LD A,C  RRCA  RRCA  RRCA  AND 31  LD L,A  LD A,B  RLCA  RLCA  RLCA  AND %11100000  OR L  LD L,A & LD A,B 0 AND %111 : OR 64 D LD H,A N LD A,B X AND %11000000 b RRCA l RRCA v RRCA  OR H  LD H,A  LD A,C  AND 7  LD B,A  INC B  LD A,1 POIN1 RRCA  DJNZ POIN1  AND (HL)  CP 1  CCF  SBC A,A  POP BC  POP HL  RET PLOT PUSH HL * PUSH DE 4 PUSH BC > LD L,C H LD A,B R LD H,-1 \PL1 INC H f SUB 3 p JR NC,PL1 z ADD A,3  AND A  RR H  RR L  RLA  LD B,A  INC B  LD A,128 PL2 RLCA  DJNZ PL2  LD DE,PRBUFF  ADD HL,DE  OR (HL)  LD (HL),A  POP BC  POP DE  POP HL $ RET B R LD H,-1 \PL1 INC H f SUB 3 p JR NC,PL1 z ADD A,3  AND A  RR H  RR L  RLA  LD B,A  INC B  LD A,128 PL2 RLCA  DJNZ PL2  LD DE,PRBUFF  ADD HL,DE  OR (HL)  LD (HL),A  POP BC  POP DE  POP HL $ x ; ENCODE SCREEN INTO PRINTER FORMAT ; PRBUFF=AD OF SPARE 8K ; BC=START POINT (; DE=SIZE OF BLOCK 2CODSCR EXX < PUSH HL F LD HL,PRBUFF P LD DE,1+PRBUFF Z LD (HL),128 d LD BC,8191 n LDIR x POP HL EXX LD HL,0 CS1 LD A,C PUSH AF LD A,E PUSH AF LD L,0 CS2 CALL POINT JR NC,CS3 PUSH BC LD B,H LD C,L CALL PLOT  POP BC CS3 INC L  INC C " DEC E , JR NZ,CS2 6 POP AF @ LD E,A J POP AF T LD C,A ^ INC H h INC B r DEC D | JR NZ,CS1  RET POINT PUSH HL  PUSH BC  LD A,C  RRCA  RRCA  RRCA  AND 31  LD L,A  LD A,B  RLCA  RLCA  AND %11100000  OR L  LD L,A  LD A,B & AND %111 0 OR 64 : LD H,A D LD A,B N AND %11000000 X RRCA b RRCA l RRCA v OR H  LD H,A  LD A,C  AND 7  LD B,A  INC B  LD A,1 POIN1 RRCA  DJNZ POIN1  AND (HL)  CP 1  CCF  SBC A,A  POP BC  POP HL  RET PLOT PUSH HL  PUSH DE * PUSH BC 4 LD L,C > LD A,B H LD H,-1 RPL1 INC H \ SUB 3 f JR NC,PL1 p ADD A,3 z AND A  RR H  RR L  RLA  LD B,A  INC B  LD A,128 PL2 RLCA  DJNZ PL2  LD DE,PRBUFF  ADD HL,DE  OR (HL)  LD (HL),A  POP BC  POP DE  POP HL  RET B cEL " # <@]\\]]]] ]]]]]-\X![!@P!!G`!\"\ ]M_P K SR P50000P P MP0P \Wq !G`v\MP0P \Wq !G`v>@@  0??~BBB~ > ~B"B~BB|BB|B|~B@@B~xDBBB~~@@|@~~@@|@@~B@NB~BBB~BB~~BB~BBDxDB@@@@@~BBfZBBBBbRJF~BBBB~~BB|@@~BBJDz~BDxDB~B@~~~BBBBB~BBBB$BBBBZfB$$BBBB$~ ~111187744//=f=fP?* _* _ /G2$3 3 3"#4z?'g'g_p( l_Y( 4# 44(E(& 4#g 4<4x(<X/x a aK +l,̙,L)9IY&7H   g  x #4E      D?%h??%?D .-< .<_( ,}D2$_!T$2t$0v$e,?t,T,e,v ,(t ,hT ,e ,v vw ef (tw hTU!20$Q`stTev     t T v e@@_@@  _ ?  /  &   .TP  (.pP  (Y200T`?`0 ?Tp?0p0p?00_2v0 vp2 1YQ7@b         T v( ( ( ( _&&&&_% % ?% % p?A %F2S  $T $ e@?2f@1D?2Ce 33 /33 l33 33Pb A12CceT3 3  3  3  / /p? / _ /_xwb 0t_T_QbsȠT??ܠ ^    0@QabstT             kkk_kkkkkkkkk_kkkkkkkkk?kkk?  /G3 ?3 _3 *"# ?d_h"3Jc '67  00_@ D_D 00!D D?2D 00?CU DTf 00dw Dttt߀tt!2ttSettv@P@P@P@Pޙ@ABCTdt  ! 2 S ev      g<_g<g<g;;= {pfs 7J )äy0qt~OwzH! ~2p O>2p,,~2p O>2q,,~2pG2p:(2,: G˸x2 :q:Ч:q:?Ч!i`V>2)q2pBq!q!H`qqq)0tufnV^å:p :?Ч: O: p?0x>2 2 !!r5!˾>2!rv~!v!A5(:p(>w!i`˖2..o:Ч. :AЧ :Ч>2:=(==>( !e`~> B{xups: !v: < v: (BsD sFsK1sQsRsS"sY+s1( (Ds!w#w#w#w#wr7~w~w~@w~w~w~w2(q~ w~W:r (:rwv{_G>0{G sxuK>y͜at̀&tͯ;: <(Z ~NЯ2p6B!e`at: < !pt4~<0 ̀͜0tͯ;!vxo > >N <^ : G2rG!~w3Я2q2q22q2A2u~KGt!>Gt!>"E*##9!"E>*##H*##˾!Xgt>w#:$q  9˾;̀; 2v2$q2qÞs2 q!qzu uu(І:(8>2 q!qzu uކ:Ч:u :(0>2q22u:p•v:u*x2u*u*{u:uG:zuO| g͠wz2*u*~u:uG:}uO| g͠wz2x2:u ![uR8>9![uR*x:u(G:uO!8#7=xz :uG>;xzÓw= +:u*x2u*u*{u:uG:zuO|(gv=pw:|u*x2|u*{u*u:zuG:uO| g͠wz2*{u*~u:zuG:}uO| g͠wz2x2:|u ![zuR8>:![{uR*x:|u(G:{uO!8#Nw7=xz :{uG>;xzÓw:|u*x*{u*u:zuG:uO|(v2>eiSXw ٧Rww|(>!j x = >) x)= >$ x"= y8 (íww >!j 8,= 78R0 7R787|B#80"7!q̓!qÃ:q!H` ~"=2q̓~~~&~2q>w":~= 2~>2pͱx>2pͱx22r:p?<2u*p"o>2|:q(>2|:{G:p2{m~!"}~Ss82w82y2z2v2x:o82o:p82px2:p{:uO:w|:uO:v|:v2v|0<_0:zGz {0|zk|AJ: *v  |x0`B8Y(W"v:uO:y|:uO:x|:x2x|<_0:zGz {0|zk|AJ: *x |x0U}B8"x:uO: :z:z8(2z:oʼzO:yͥz(2r :G?OxOx2:G?OxOx 2:oG:p2ox2p:zG:uU}|::o    :wܴ|:ww02wz!:G^#V#N#DG:@2xDG:2x!0_%%%0!%8 0!07880"7:G:wo:yg>x o>?p 5}gW|8_}_}HO*q[s:p L:p '>2z}>2}2}͆~͆~͆~ƀt>?2}>2z}: >2}2}v}O #~:p(>2~:( 2~>?2~>2~>2~>?2~2~:28#͆~͆~͆~Ss"qó{͆~͆~?:p 2F~ >x>͆~͆~>2F~:20͆~:(>?>:|G!~T]O~q}0$o|Ggh8KA9Y("x2d#cyy{nx<"Ld  +fd8iC8: w2 :=:=::qȯ2!H` :2>822~!q-!q-!H` fnU| B8  8tu! ^R>wtu>w>wwU@!H!A!I!>bk={ _ob@<6>!Xww#wwP!Z![\rerâsр1!!>= !~!>= {р:@Ч: (:?8$ ?8 ?8 :q >O]>2]-:q "]:?ȇ8 ]8>2 2sр1G!Ѕo0$"TS{р:pG y8:?Чy '2pxy͘!P[!Z0կ2p2!q~ ?~ 8~ 1"|(*>2!R!@Rт! R0>2qׂ|2p2!q~0rG~0hG~0]>2 !"|(!R!@Rтׂ>2p>2q:q(>2Ð~nf˼͉f|(>2q)::qG|P8x0xc> >cx>2q^VNFnf˼˺˸>>)8 !8 )8  :8:J|ͿxͿ0yͿ0x(88?(͆?(<{͆)0!:p!:(!y!VQ:G(x |%O ˸$|E"wY:GO(xA 0!y>>##= [w!y#$|E#!y>&##= [w!y#$|E#} o|g} o|g5P!$|E<$$<<$$<<<~A!         !AA~$ !p~+( w??O### >2#~+(w@### 2##QCQcQQQQ8QQQQQXQxQQG22>2m G>2m22ogxWGz(:#=7Oz???G>W($(8X>w,,B(w,6,$CX>w,$Cyw,w,w,w,w$w,w,w,w,w$>( 7(?~q:#=y(-6,d !T>2(:)`!Tٯ2(:)`!T>2(:)!Tٯ2(:)!T>2(:)!Tٯ2(:)O:)y7O:)y2Â: 2): >2)KC[>@K 2 >C(2!y@[xxS( 0 (083(0]Xx8xȇz8xژxxG2zÎy@O2zzͿbkyͿR>xͿR?>xͿRJˆxxGy@OCzͿbkyͿRxͿRx8ͿR@ø&o^$Vԇ͡ԇÉK [zDOxԉ: O:!xxG2><>x͊2"G: ͸%:GrC:"G: Ć%:GZ+xxG2xw[>x͊2"GK(Ć%:GZ+>͸%:GrCxx2GxwC( ͅ+ͅC͡Z͡rxx2Gxw[y͊2"y_:"DOC(1:"/ƁK ԉ:)¸{{o:O+C:"ƀK }_:)̏:OZr[y͊2"y_:"DOٯK >2 O:"o:!ԉ: O:"o:!:Oĉ̡É: O>ԉ:)ڏ{oÉ: O>}_G:)x K[zDOAOxͰ"G:)x<8= ]x2'AOxͰ"DO:)y!= :'GK>O:"_:)}_GͰ"s#(|%( {#} o8|g|0GͰ"s#($|( {#} o8|g|8zͿbkͿR"%*%ͿR080{0:( >8 >ϼ0s#~wUk~wz=?0,6j/221:({# | 80!0 |*}( -}({#}( -}(80!0 ( |(~wUk~wz=?0,6j/2Ӌ1:({# } 0:( >8 >ϼ0s#~wUkz?06j/211:({# | !0 ( |.-}<(}( i}(é{#-}<(!0 (( |(~wUkz?06j/2ӌ1:({# { 0:( >8 >ϼ0s#Uk~wz=?0,6j/231:({# | 80 ( | }( ié{#}(80 (( |(Uk~wz=?0,6j/2ɍ1:({# |%{ _} o0>( |g$|{ _} o0>м(|g{# :QOր8>2:RO`0>`2x2:S2s#:*!1͎= {#ކs#:*!1͎= {#``(XW??WW?X?@@xxxxwϿϿп;Dޏډۉ -6:;[un :>@2}>O2>?2!>P͈!H`~ O00 2. ofn"nf"І:2 .o '>2}>2>2!>"ډ""@"2Ȋ2>O2 2 2 >?2222{o:O+C:OZr{o<= ]= :'G}_GͰ"(|%(} o8|g|0GͰ"($|(} o8|g|8{ 0:( >8 >ϼ0s#Uk~wj:( | 8 ( | }8 KÑ{#}8 Uk~wj8 (( |(:( {0:( >8 >ϼ0s#~wUk~wj:( |%$| |88 |{}( D-}(H{#}(<È-}(HÌ~wUk~wj88 (@ |(:( k~(G>88w~(88pe~( G>88>wk~(88p} 0:( >8 >ϼ0s#~w:( | 8 ( | -}<( KÑ{#-}<(~w8 (( |(:( <:?Ч@:@Ч :q( !H`w"<̀͜;>B2ғ=!ӓ">2Г>2&>2+:@Ч >2>2>2!":Г2ѓ!ӓ~=w#G>ͬy82:ѓ=(2ѓ;:ғ=02ғ82:Г2ѓ̀:ғ=2ғ()ɯ2@2?>G!ӓ~־w#̀;2@2@ɯ2?>G!~w#>2i}2n}>2~>2p*q~h}>2i}>2n}>2~80!7:Ч.o2u2!#&(+-0257:2Г>02&>@2ғ!"?:q(J>82+> 2p2p2p2<2$q!˾̀͌/̀͌;'2q~xr͍r>>>2q'22p2q2A>22+BFlr!q6#6:q2q!H`!H`>w>w=www>w" ل̀͌$̀͘x͌; ̀Sx͘x͌̈́u;2$q!6 !w#!H`!2'w":͛:ͩ:ͷ :ϕ:"(ͦ2(qxtÒ^AHWW::" :(q0x2!ao0$=$=(A*%[#@~B# zWS#"%:"(A>2">2!'@S#"%*%[#d~,??_G>0C S#"%2":!(qw[#{_>0CC >>2+>2">!>!?"g.>2">2"@@!'y2x2í>2">2"P @ >2" 8888.͘:͎>2Ö!H`~"(~@0~@0~@0~Ϳ~Ϳ8R0>2Ė@nf͉ɖ`iі ~|(2nf͉Ŗ`i͖ ~|(2nf͉Ŗ`i͖ ~|(2–!U:OڻGyO(: #yG>("7O: +yG>(7O:–WG(z |%O $|E:WG(z ~w|%| ~w$|jy8-85_~w:Ö=( 2Ö'햯! P w,$ -~w,~w-~w,~w} o0>X|g} . o|g::qc>2q͘>!w>!w w>!5w#>$w!@w>!9w?:Ė=2Ė!*P w,$ !w>!w w>!5w#>w>!@w!9wIP![> = tЯ2G2p2p2)q22>2p2p2p!pw##!#Z:p8$:Ч(͕}oq#!q~:p(:p ~c(6~c !4N >W:p0!!(Zr#r!HZr#r::G >2Z*K6!"E 0z( >!H>"H>W>#H>$H!2q:pͧo! ~w!q:p(>c2qۚ!p:ͧ!p:ͧ:AЧ:(2qwO !ښ~5F~8w6͍!ښ~w :Ч!p~(4++!p!p~4*K6!"E>&H!"E>$H!:(dhJ!:q(lpJ*K6M"EW$ZH&$;<=> @@[\]^ _@+!"E*K6:Ч( G>%H:DG>@H*K6:Ч:G !~ :(w!G6!p`͵! ~!G??8 ?8?8 ~626~:Ї͜(!6!(q!5t!~(=wʺq: w:Ч:q>2!" 2_2!kw#!~w!|:Ч>(>#w>͜:2:2õsèDôgɯÂÍÍͻô: !i`: q>(>252e22:=2G:q :q :0xg2222222O!H`'~"( v( y2!H`>G2~"\2&V 2:O&^ >2:(&V ~'( !V( ~!`(>2:{a :(!f$n#~ 0(g A w>w&F "!(q:((&v( ~ 2w"ߵV ^V^:~!`(W:_@2_Mx v(&F(͵͂i AAAشߦ ~ 0  '=82:2͘͘͘ϞϞϞFN˸!4W)\eo&h^$V%i^$V0###fn˼ͨ8|(qp##|0"()<<eo<ɯ<5+<ͨ8 &n%~n%n%//DGhhhN!4$&t##s&V }`0|(w"ߵ~ ~ *p" ͫͫͫ~G >(x=w> v(ƀ2~G >(x=w>v(ƀ2'''~(F(N!F(!!8ywNKKKV ^ v~fn͘ptu#####":!:!0\!GJ˺ RRA:/˷OFVw:OFVw:OFVw:/˷OFVwը ˹_ O{ !x80 >0D:OyFV w :OyFVw:OFVw:OyF Vw##:pO!:ṕbj:ṕ!T\:pO!:p2>i!baAA!Yaߦ~N" 8 8yG:AЧ!xP~8 5 x40>wGxw"F8k0h8886~ (X͙0Q: K~ G 85 x 0!)͙ݾ%8W ~(>  ~(>~ /!H`'~"(~! (%F(+: : : !{a~(&V ͙> 2&V(V:͙!V($:> ͙>D>$gfnRfnRfnR!N( :`(8!84&n( 8'!V:(:j`(!^(+ ~%0 %o"o"o"&h"h"h"&Ç:( ~%(!!`' /G?"?"?"7 8*7 0*7 (&V(!~ -w& ò)|}nfN^VF! ɯ~~nf<!!sS ͬgͬoͬW("O999??8>Gzw?0|(P?/h?@8>?%?w%~(>w[z$0k &F(8 0p!V~ݮF:bЧ 8͙~&z $ z8$!(q~( :2:2 &F(8pO ! oF~͝F~͝F~͝0>o0>:pGO ^#V#N?S&nR8H &V^Oiy2V^Oiy2©F^V^Oiy2V^Oiy2©F~ 2éѯOiay2ަY:©O8@ި:G8րިxW8@0~,02 v()!V(#:pO~^(~ ^G@8 z 0& f¬:= &vި*| 8^:ިO:©?ިG:pG:é(WJ yO>OB(x?G>?G<< <<ިxͱ"W> w̮*)8|0Dx02>2Լɩ ^~PO͙oDgy/!!O:H2HD2H :w:©w:ަw:pG:é(O w ^:W:©_:pG:é(O~2$~2$$~V ^ !:2~(G:0~ ~¢<2ȩG8888 x!o0$~:ȩ Z~ݾ R~ݾ J~ݾ B~ݮGnf^VgtxWro^VxWroXF~ut##F~uto##F~uto##:ǩGL˼<0#y|8}}Dbx0D?&oVxo~:ǩ = N˹ o&x0D?&o^$V%xo~$foRJx xR0Ry|yD+x:ȩ $~ݾ #""""""222߬~ݮGnf^VgtxWro^VxWroFN˹ o~gutFN˹ o~gutoFN˹ o~guto (j8 07zD #80!7:s~ݶݶ'0x2ǩs+2"+2"+2"2ȩnfF[:O"2ĩ2nfF[:O"2ũ2nfF[:O"2Ʃ2:pO 5[:O:iy2[*:O:iy2©:ĩ:Ʃ3*:O:iy2[*:O:iy2©:ĩ:Ʃ:ũ:pGy(2é:!0$o:w#:©w#:pO:é0>w =ީ^VF~(O:0&~(~P O~P DG!0$0$o0$V#^#~ ͬ_͊͊͊NC ! O{ݮFx! x80 >ý0Dw####!F NV^"ttFpNqV ^s"ttF pNq V r ^"tt !g"#怬$44w(0! R0R!GC4B4Ulc0#B4Ul&0#J48 R0 !R7zW|DJ˼˺  R0RA<x|<}xo0$F!y(yo0$Nx!0$o~Šy99Oy( AͧbAͧ$,P`}(|0>=W{Gz0700 >2>-2>2@>-2XX 0J> 2>,2x2Å00 >2>-2Ѵ>2a>-2\40&> 2>,2Ѵx2ñ> 2@>,2Xx2;4> 2a>,2\x2kd= H@(5} ==G!@ͧCBAͧ[Bx(`(y{tòAͧ{@tòC@@(y??!!OiK@xAOC@x&8, &0&x%0%8(x&(( &x $} G!@ͧCBAͧ[Bx(*@`(L L {0 L(Fy8{@_h` A} zW0DWxG?z8bzWzրWh`(A} {_0D_xG{@8?b{_G4L͋J >>GB(>?>?HGyPG>BW999xgxgx8o| G!@x Gͧx(b( {|} {}|C(=yx??G˨ z( X(08X( DX ˈg`{ˠ( P(08P( DP ˀoM|8 x(Gyˠp(A}D|EyO%~w{_0 8|g} o4|g4,C,d 8~w{_0%|g} o`|g`$~w{_0 8|g} o҅|gÅ,Ô 8 ~w{_0$|g} oҭ|gí,ñ:q^&F(~% &N(nfRЧnfRЧnfR~&N(=~ʨ:Ч({w"ߵ:|Ч(n~(<: 2=͙&V(E~(j~ d!V ^~ 0VG~ 0M<0 x<0>2!(q!p: 2ɯw"F&v( :(2!(q~(:2 <2q:2:g!H`'~"( ~%  :G:Д2G!!(q֯2p!!`'w">g>g:״O2״:p0>2p! FˆG:p!}_~YO=  {>2״(::<2!(qy>8(Oz=8>2p:I= /!H`'=(!!(q&V p n j~%G0 w%~"(Pw"(0H= w"&v(:( (>2$f$n#~> ~U>0 ~< y2 >g͙G O2ִxWx_yO!?TD:ִOD!?@:ִOD:ִOD*|Ggh"b2Cp2Dp:q :p!}_~()! DKD!JDD<:(:! F˦:O:(=2 ˹!(qy2:<2y`2> 2222XDAdZO9999ʺ=k=ʟ===ʔ===M=u!aG?o0$#^#Vr$s#!>~w"~Oow!~ w ~?w>~w%w& !V ͙w͙w͙w͙w͙O6y͘!H`'~"O6y͘wwwww͙O6>͘%͙www̓ y(,!H`~"(6>P>jw>)w>wy>:p݆wq%&Ư> (!͙ (> (> ( ͙G>(>&V'!V!֯:f2f('???~ Fwp ~w##~F w p~F w p~Fwp͙w ͙w A(P͜>J̓ ͙?w~ w͙?w~ w>w͙w͙w>U>cA>(7A>(/> !2aP̓>w>w >Lw>w:p݆w > w&>w>U>'> w& !Yay͘>wwwwwwwww <!6> s& ë͙8ZP86>͘ >wG_:W(Iz (B:(OX6͙?( 8 88x͘(͙3%6y͙G0#H6y8 =?? y͙O6͙͘ "ȼV^~2ʼ~! <[~( G:8ѯ:*ȼʹ2Ѽ"˼ʹ2Ҽ"ͼʹ2Ӽ"ϼ!˼!Ѽ_ѯ$0< = ^N~͕^N~͕^N~͕ͯjx(ͯG 怫_ S_J˹4z)^V~###O:ʼ%G=y$8R0 RyO!{ @@=~>=UUU ~E !x}}A`A@AT BE AD  aAaa9A<9? |E""D@" DDABB@@A`a?!? DE ~B$@ Aay?|yp B}~@}8a `@  @@@ P    @`îîs|XHÇø [ØØ_zâ%H !.>7![H>7!H`h}| >G^px  e Ñ#×ÐM !b_>]_! "E>_^!bY(2!>2!b!b42! !>\_"E!Xs#  z_!!b4>}(!|5_!k4!#w ( ( !_~0>w!`~w#~w#4! zSw!:v:q?ʗ=0!Ч(>~r{l2y-q!!g>~5!|4>̃JAMESON FJZHS8' = '*M͑!2T]:2:2t!6H6w!!q 27&o}>2"'WWdW W0:Чӯq!.*}qӯ2<2*f[h}(>2Чү2>2>27*үRd<"ҧ( G2x0%:Ч(0  R8$ 8d88 '8:иؐG:Ч> >0%R*h"hЧ'R"h*f"f*fR8"fЧ7*hЧR0*f}7+"f!'R[h"hЧ~#ڵ A`ڙ8 ڜ֠r*WT~%#*W((>cG: x( ڰ[8ڴ8Õ~p#A85[01:(/:Ч( 22 : 2:( >2:ʹ!E4~ 8>wͱ!p] O!!! !@:F&G-G-G888 :EO Nw$!Z>c##!@C> w#!!XG>c( G> o0$!"X>w#w!ր!_~͙#~?Ù[_!~3f_*%*Z|"".$)=38BGLQV`e[jsx}s1[ * 8{ !@~w!@~w!@_!W_կo ̓x2֧(-*#H!u:_":*G6#:̓͡= !v~#ͩ>2*"!u":2֯2 !v~q#>2> !w#!u"֯2>2:֧*+~ "v֧R!" *~OpA# !!'_^#VKjr.7خ"3ةW؄؄؄خ3r.{ֱ\թZvWش؅؄kZ^؄؄؄؄؄^>͗->!TE>y>i͗! :>æ>2:e2>!_#=>>2!+~!ؾ(#!!5*+"IANAEIOU>>2 >> ~?% hO>n2<_s{1(=ʀ= 2:٧!SI7b%>2>Z!T~  ֶ#!TS!q >ZI>->Z! "E>_*a\:e!^(v(*fW{|}}=Wf_Əgoէ>2Я2!T2]'0 v: k>Z>Z!2T]!Tf> >2!"Ez_ͩ2:p8!H6ʹ!H6! ! "E:p`%>ͦʹ! ˾)!q!s~ .!t4F e !~ ##˾N#F>2sy2ux2v5:p:uo&"E:v( (:væ:ys(!E444%*w7:p8H:q 1:)q &!r~ >Fw:=(:Ч:Ч.5'{":Ч:<͢2A.:po d !˾##2v! ~0G~w:ۧ:q(Qh(`:Ч>2?t`*| +}G:А8!>2?>22s:pЯ2p! "E>2>_^Ç!~5(G>2!"Ex?͑:? @2:Ч(222:e<2`p2e!̓̓̓ܯ2_`f^s#Vr#:Ч :G:АO͢>FG:'2`p!_>:w :q )<2q!w!w2q22Lޯ2q!!:2:2B!qw#>2q*[Kx2 qy2 qz2q}2q{2q|2q !qH`:q!O`98:q!I`G98 WxGz==<' #w!Q`w#!q:O`>2Z` b`R`!q:J`>8^`V`!q:P`8>>;>:2:2:eЧ(O!n`~˾ !~(= 4 w!78>2*c#"c040H0O!q:8!e`˾>2@Я2p2p2q2G2>2p} 8>2.o͗}8}8>2:Ч!G8>F2'G???2pJAMESON TEMPNAMELAVELAVE!e~<w!!!^s#Vr&2.!F ( #!4+76o͌òõ:p8 0 oto&!"^:G:8*^ߧR8S^.*^ߧ6͌̀:G:ߧc:W :?W ɸ0HGy8!|(͆l&))"!:0!"6#*}@===(&*|(!_~#*w#~?(w#"*[*"*"*"!*"|22*"|2}???2? :2:G|G:?2އG:O:ވ2:W: :U )))"*"*|(>͗>2*7!é!!!:q2j!!p^#~W( G:O_#F#N#:jСG{z 2ͼ*#~" ! >-ͦ7>2*~ͩ*#"~(:%ͼ >2*~7_%>:%> %%>2ͷ:F<2E~#2E 2F>2F:F(:EЧ=2EЀ2!Pw$!%>%!q>w%~7#%>2: 8 8 (8 >T>K%>G!K>M%:  7ɧ$v*E">ͷ!P}!Pw#$*"E>!:k$0!!!!^2x2"*"2k!:_2 (O(-:08[0:8@8W: 00<2z*w#"%:(=2*+"v*6ͩZ: (`k>ͩ:+ (K:G:А8 ؇G>a D؇G>a2Q:G:А8 G>` D'G>`2R:2Q:?2R.o:==82 o:<<0>2 o:= <2oo:< =2o:2:2:+?G:QА85(3W:ROz!:QЀ8I >_:+O yWy(M:RO!:QЀO y_y(4:QOO yWy(~w#!˻˂DG~w#~w#?G~w#(~w#G~w#(~w#~w67 _ɯ7 Woy8oy@gyg~w~w:+?G:,O:RА88O:Q!:-O:RЀO:+8GWyW:+G:Q!:Q2Q>v2R>=2SqY 2Я2|!kw#!^ø!~6+>wͼ>ͦhOb!"*#"8d~!v0 ((͍!4~8ø!Xggw#]"2 (G18(:0=G02x%*8+ 08(:0W0G!*q]*8>7ͼ!2<:G*~8/w*^#V8'L:G0!|~8w*~8w:ͭѧ>>>ͼ%!?]^>7*f"*h"*~2*~2:|2*"f*"h*:w*:w:2|k>2!>G:%!/! >?æ:Ч 6!~o(.ˮ!b4>d2z>#2|!HøhO>_!>b*##"h8d~!5v8͍ͩ!4~^=(=(ø<:G*~wL0:|Ѐ2|*^#V!j"!"2!>͞!Թ!͢!_p"`: 8>2^2_>2:_<ͼi:_%ͼ*`~#^#V#"`&o4ͩ:^G:_< k!>?͞F͢s !~C>:h%>2_ͼ :_0͞:_`ͦ:_<8k!ԯ!?0"4"ͦ0!}>F:bwx(!>~/^#^#Vs]4=G!_p!:_>|>hG:͞!2]Çͼ>!X`c!@G_>2,>2->2+:2Q:?2R.:??2Sq!`@>!Q>F> 2+o>c>!`Zc!`P_&s2:= $ {:?G:Oͪ"'''6~wɯ>!@w#>cO:;2:=2:";2:"=2>2,>2->2+>a2Q>`2R.!'!x:2Sq>2+o"&:80:8 0a:G:ސ''O`:G:ސ'DGͪ"2Go:_0:G(?G~w#~w+|< |g> o0>g$ !ޯy<2wy<2Ex???0~>w>2!`h>>ͩͨ>͗>G:ހ͝>͗>2:<͢>͒:>͝!(!S>)͝>o͒*>2Ч! !M>͢>͗!! >2͢:Ч( !78>_*"*">_ͦͩé>p͒:(8ƪ%:??ƨ!ԭ*}0>D|??0͞???0͞*|G*|0͞*|G%*| *lg>2Ч #7>!"E>ͦh:q2!"!"!4~8> 2p!qhͼ!~>>͡>͡>!!>q͒! :_Ч(28xͦ>r͒! !b~ +0x͝!r:hk:ho:( >_r:hl:hq:hr:hs:ht>2!}zzw(!}FF#x%ͩ>:<2~#:`͞8rf%ͼ!:æ @ > 2p>h>!>ͦ:Ч( !X>T!kͩ:o(> _ͩ2!j"hԩ!4~8o CHTGORNMTDANTYSYSMP RKET SDTAGCULTULCH A PO LY UNIT VIEW TYCHYFEUDMUL-CTMUNTCFACYDEMOCCYCPE ˑESHIPPDUCT SHUM COLIHYPSPASHT ʡ˛ --  ?MAYDAY* CIOLIS DANR* LIGHT YESCH.LCASH IzTT LOj JAMMRST OF SE CGOEIPFOODXLOACSSSLI/WLUXUNCOCSPUTSCHYALLOYSFIMSFURSMSGOLDPLUMM-˟I S NOT FOUND CRLFISGRYEOWBLUEBCKSLIMYBUG-EYHNBYFFURRYDTFGLIRDLOBːRDHUMOIDFELESECTCOMMD DTYRO F SA FRTFTGHTyLOWc*EXT PULSEAMFUELMSI BAYE.C.M.fgSfhSi SCOOPSCAPE PODyBOMByDOCKG z MILITYMG G jGY GACCs ONACLOAKG DEVI wPST IMLLMAYDAY* VAD* MT:COFFDFUGIHMSSMOLY ABO PETTDDEADLY---- E L I T E ----PSTi AK* ACSS ME 1 2  3 EXT TAPE, PSS Y KEYTAPE ADRRY MB: mn PSS A, 'S GAME OR APPCIA OF R CGE S OF  AWD EIR HIGHE HR - -LI NGPRO*SHIP BODBYFU PIRE  HAD R LIS*K , ...FDTWELL KWNFAMOTRYMDLYMOASLYrGVAPKw v ASSu FTSOSSHYNSSLSTTSHOF d F dFOOD BNDSTRISPORYSCOSlWKÞCBBBSPGUVAGRSSCRGq CIV Wh _ `SA h Aq EAKq R ACVY] ^ _ `S' b cz k lJUIBNDYWBWGG BS `  hh FUEXOCHOOPYUSUEXCGƘENIGHT LIFECASISS COMSz   SUNGOVA* WL S*N UNRK BG DULL TEO VOLTGPLT DUMPGROSS  IVYECOMYG NGWAMOWOGTPOAROPHYSICIYAKSNASLUGTROPICDIMPBEXUNTFUNNYWEIRDUSUNPELIFTOCCASIUNPCTDADFUL\ [ F eef BY g BUT Ao pPLWLDE ADҚ DISICOMMDhMNTAIBTEOTTxyaOID~CITEXPECNTRICGrKLDEADLYEVVICIOS .  D YPKMSDT CUDSI RGSRO FSVOLCAPLTTULIPBACNWE  hHATTG MSICUBAKNAME? TO SA. DO (Y/N)?l JAMM A SP NEW GCKFND POPULI @@ _@+SIA VASI*WTBY GCOP: B FECI A TES E ÓA I  ASBA F EIR VASI FTA SURFA R:DEROY A I  TAKE (  WL NE*) GOOD LU*SHWASSNAKEWOLFOPDCMKEYGOFHj i x {k y {| }j iMETLEAKBURGSUPIMUDZO-GVAUM ULTHOEYCRIKEPOTNEY SHOW MCY...v: W:_(A= xg(! W{0_c=:W("!v(! c( z'Oz ?Wk(zGz O9' W! : ~( ,˾,˖˾--~w!v˶: >2 >'''=G !A0$o~2 !X}o~#F!o~w P01QALO92WSZMKI83EDXNJU74RFCBHY65TGV2=2 xܺ  q!!a2Hz! @@ABOUSEITILETSTONLONUTHNOALLEXEGEZACEBISOUSESARMAINDIREA?ERATENBERALAVETIEDORQUANTEISRIONB:RRTp:p: G:O*@ +H Y(\<Rt(R!z| !z|(cH 5| !z|(d(RzQ(!zRt(!"* P +X Y(\$Rt(R!| !f|(X 5| !f|(fd(RQ(!fRt(!" * ` h($R%h 0 !l(R" 2 sV1i%q{V>G^V@@    @@ <DHpHDB*]\"_\C*]\~}t[3|BB|DB<@<B<BBBBB<h 0 !l(R" 2 sV1i%q{V>G^V@@    @@ <DHpHDB*]\"_\C*]\~}t[3|BB|DB<@<B<Hx ORG 60000 ENT 60000  EXX  PUSH HL  LD HL,16384  LD DE,6912 # CALL SAVE ( EI - POP HL 2 EXX 7 RET <SHP EQU 20 AMP EQU 25 FLP EQU 30 KSAVE DI P LD BC,1024 U EXX Z LD B,1 _ LD DE,#0802 d LD C,254 iS1 LD A,1 n CALL SAVBYT s LD B,SHP-10 x EXX } DEC BC LD A,B OR C EXX NOP NOP NOP JP NZ,S1 LD A,0 CALL SAVBYT LD B,SHP-7 LD A,170 NOP CALL SAVBYT LD DE,#0F04 LD B,SHP-9 LD A,0 EXX S2 LD A,(HL) INC HL EXX CALL SAVBYT LD B,SHP-10 EXX DEC DE LD A,D OR E  NOP  JR NZ,S2  LD A,0  NEG  LD A,255  CALL SAVBYT " RET 'SAVBYT AND A , JR Z,SB1 1 SCF 6 RLA ;SB2 DJNZ SB2 @ LD HL,MP*256+LP E LD B,SHP J JR NC,SB3 O LD B,MP-SHP-2 T NOP Y NOP ^ NOP cSB4 DJNZ SB4 h LD B,MP m LD HL,SHP*256+LP rSB3 OUT (C),D w AND A |SB5 DJNZ SB5  OUT (C),E  RLA  LD B,H  JR NC,SB6  LD B,L  LD L,H  LD H,B  JR SB7 SB6 LD C,254  JR SB7 SB7 DEC B  RET Z  RET Z  DEC B  DEC B  DEC B  DEC B SB8 DJNZ SB8  OUT (C),D  LD B,H SB9 DJNZ SB9  OUT (C),E  LD B,L SB10 DJNZ SB10  OUT (C),D  LD B,L  DEC B SB11 DJNZ SB11  SLA A  OUT (C),E  RET Z  RET Z ! LD B,SHP-4 & JP SB2 +SB1 DJNZ SB1 0 LD B,LP-SHP+1 5SB12 DJNZ SB12 : LD B,LP ? LD HL,SHP*256+MP D OUT (C),D ISB13 DJNZ SB13 N SCF S OUT (C),E X LD B,H ]SB14 DJNZ SB14 b OUT (C),D g LD B,H lSB15 DJNZ SB15 q OUT (C),E v LD B,L {SB16 DJNZ SB16  OUT (C),D  LD B,L SB17 DJNZ SB17  OUT (C),E  RET C  RET LOAD EXX  DI L5 LD IX,L1  LD DE,#4042  LD C,8 L3 LD H,4 L2 LD B,255  LD A,6  CALL LOADW  DEC H  JR NZ,L2 L1 LD A,6  LD B,255  CALL LOADW  LD HL,#0800  LD B,6 L4 DJNZ L4  LD A,0  NOP  CALL LB2  JR NC,L1  DEC L  JR NZ,L3  NEG  LD A,2  CALL LDBW  DEC L % JR NZ,L3 * LD A,C / AND D 4 OR #E 9 LD C,A > LD E,#47 C LD IX,L9 H NOP M CALL LDBYT R DEC L W JP NZ,L6 \L7 LD A,2 a NOP f NOP k CALL LDBW p DEC L u JP Z,L7 zL6 INC L  JR NZ,L5  LD A,2  NEG  NEG  NEG  CALL LDBYT  LD A,L  CP 170  JR NZ,L5  LD IX,LERROR  INC C  LD E,#45  NEG L8 NOP  CALL LDBYT  LD A,L  EXX  LD (HL),A  INC HL  DEC DE  LD A,D  OR E  EXX  JR NZ,L8  RET L9 POP AF  JP L5 LOADW DEC A  JR NZ,LOADW LW1 LD A,C  XOR E  LD C,A  OUT (254),A $LW2 IN A,(254) ) XOR C . AND D 3 RET NZ 8 DJNZ LW2 = POP AF B JP (IX) GLB2 LD B,255 L CALL LW1 Q LD A,0 V NOP [ LD A,7 ` CALL LOADW e LD A,B j EXX o CPL t LD B,A y EXX ~ EX AF',AF  RET C  LD B,6 LB3 DJNZ LB3  JP LB1 LDBW DEC A  JR NZ,LDBW LDBYT LD HL,#801 LB1 LD B,255  CALL LW1  LD A,0  NOP  LD A,7  CALL LOADW  LD A,B  CPL  EXX  LD C,A  CP B  PUSH DE  LD D,0  EXX  LD A,0  RLA  EX AF',AF  LD B,255  NOP  LD A,0  LD A,3  CALL LOADW  LD A,0  NOP  LD A,7 # CALL LOADW ( LD A,B - EXX 2 CPL 7 CP B < RL D A EX AF',AF F LD E,A K AND D P JR NZ,LB4 U LD A,E Z OR D _ RRA d EXX i RL L n EXX s EX AF',AF x CP C } POP DE  EXX  RL L  EX AF',AF  DEC H  JP NZ,LB2  AND A  RET LB4 EX AF',AF  CP C  POP DE  EXX  JR C,LERR1  SCF  EX AF',AF  LD L,0  LD L,0  LD L,0  JR LB2 LERR1 JP (IX) LERROR POP AF LERR2 LD HL,22528  LD DE,22529  LD BC,767  LD (HL),%10111000  LDIR  AND A  RET LB4 EX AF',AF  CP C  POP DE  EXX  JR C,LERR1  SCF  EX AF',AF  LD L,0  LD L,0  LD L,0  JR LB2 LERR1 JP (IX) LERROR POP AF LERR2 LD HL,22528 {x ORG 60000 ENT 60000  EXX  PUSH HL  LD HL,16384  LD DE,6912 # CALL SAVE ( EI - POP HL 2 EXX 7 RET <SHP EQU 20 AMP EQU 25 FLP EQU 30 KSAVE DI P LD BC,1024 U EXX Z LD B,1 _ LD DE,#0802 d LD C,254 iS1 LD A,1 n CALL SAVBYT s LD B,SHP-10 x EXX } DEC BC LD A,B OR C EXX NOP NOP NOP JP NZ,S1 LD A,0 CALL SAVBYT LD B,SHP-7 LD A,170 NOP CALL SAVBYT LD DE,#0F04 LD B,SHP-9 LD A,0 EXX S2 LD A,(HL) INC HL EXX CALL SAVBYT LD B,SHP-10 EXX DEC DE LD A,D OR E  NOP  JR NZ,S2  LD A,0  NEG  LD A,255  CALL SAVBYT " RET 'SAVBYT AND A , JR Z,SB1 1 SCF 6 RLA ;SB2 DJNZ SB2 @ LD HL,MP*256+LP E LD B,SHP J JR NC,SB3 O LD B,MP-SHP-2 T NOP Y NOP ^ NOP cSB4 DJNZ SB4 h LD B,MP m LD HL,SHP*256+LP rSB3 OUT (C),D w AND A |SB5 DJNZ SB5  OUT (C),E  RLA  LD B,H  JR NC,SB6  LD B,L  LD L,H  LD H,B  JR SB7 SB6 LD C,254  JR SB7 SB7 DEC B  RET Z  RET Z  DEC B  DEC B  DEC B  DEC B SB8 DJNZ SB8  OUT (C),D  LD B,H SB9 DJNZ SB9  OUT (C),E  LD B,L SB10 DJNZ SB10  OUT (C),D  LD B,L  DEC B SB11 DJNZ SB11  SLA A  OUT (C),E  RET Z  RET Z ! LD B,SHP-4 & JP SB2 +SB1 DJNZ SB1 0 LD B,LP-SHP+1 5SB12 DJNZ SB12 : LD B,LP ? LD HL,SHP*256+MP D OUT (C),D ISB13 DJNZ SB13 N SCF S OUT (C),E X LD B,H ]SB14 DJNZ SB14 b OUT (C),D g LD B,H lSB15 DJNZ SB15 q OUT (C),E v LD B,L {SB16 DJNZ SB16  OUT (C),D  LD B,L SB17 DJNZ SB17  OUT (C),E  RET C  RET LOAD EXX  DI L5 LD IX,L10  LD DE,#4042  LD C,8 L3 LD H,4 L2 LD B,255  LD A,6  PUSH DE  CALL LOADW  POP DE  DEC H  JR NZ,L2 L1 LD A,6  LD B,255  PUSH DE  CALL LOADW  POP DE  LD HL,#0800  LD B,6 L4 DJNZ L4  CALL LB2  JR NC,L1  DEC L  JR NZ,L3  NEG  LD A,2  CALL LDBW  DEC L % JR NZ,L3 * LD A,C / AND D 4 OR #E 9 LD C,A > LD E,#47 C LD IX,L9 H NOP M CALL LDBYT R DEC L W JP NZ,L6 \L7 LD A,2 a NOP f NOP k CALL LDBW p DEC L u JP Z,L7 zL6 INC L  JR NZ,L5  LD A,2  NEG  NEG  NEG  CALL LDBYT  LD A,L  CP 170  JR NZ,L5  LD IX,LERROR  INC C  LD E,#45  NEG L8 NOP  CALL LDBYT  LD A,L  EXX  LD (HL),A  INC HL  DEC DE  LD A,D  OR E  EXX  JR NZ,L8  RET L9 POP AF  JP L5 LOADW DEC A  JR NZ,LOADW LW1 LD A,C  XOR E  LD C,A  OUT (254),A $LW2 IN A,(254) ) XOR C . AND D 3 RET NZ 8 DJNZ LW2 = POP AF B JP (IX) GLB2 LD B,255 L CALL LW1 Q LD A,0 V NOP [ LD A,7 ` CALL LOADW e LD A,B j EXX o CPL t LD B,A y EXX ~ EX AF',AF  RET C  LD B,6 LB3 DJNZ LB3  JP LB1 LDBW DEC A  JR NZ,LDBW LDBYT LD HL,#801 LB1 LD B,255  CALL LW1  LD A,0  NOP  LD A,7  CALL LOADW  LD A,B  CPL  EXX  LD C,A  CP B  PUSH DE  LD D,0  EXX  LD A,0  RLA  EX AF',AF  LD B,255  NOP  LD A,0  LD A,3  CALL LOADW  LD A,0  NOP  LD A,7 # CALL LOADW ( LD A,B - EXX 2 CPL 7 CP B < RL D A EX AF',AF F LD E,A K AND D P JR NZ,LB4 U LD A,E Z OR D _ RRA d EXX i RL L n EXX s EX AF',AF x CP C } POP DE  EXX  RL L  EX AF',AF  DEC H  JP NZ,LB2  AND A  RET LB4 EX AF',AF  CP C  POP DE  EXX  JR C,LERR1  SCF  EX AF',AF  LD L,0  LD L,0  LD L,0  JR LB2 LERR1 JP (IX) LERROR POP AF LERR2 LD HL,22528  LD DE,22529  LD BC,767  LD (HL),%10111000  LDIR  AND A  RET L10 POP AF  JP L1  POP DE  EXX  JR C,LERR1  SCF  EX AF',AF  LD L,0  LD L,0  LD L,0  JR LB2 LERR1 JP (IX) LERROR Px ORG 60000 ENT 60000  EXX  PUSH HL  LD HL,16384  LD DE,6912 # CALL LOAD ( EI - POP HL 2 EXX 7 RET <SHP EQU 20 AMP EQU 25 FLP EQU 30 KSAVE DI P LD BC,1024 U EXX Z LD B,1 _ LD DE,#0802 d LD C,254 iS1 LD A,1 n CALL SAVBYT s LD B,SHP-10 x EXX } DEC BC LD A,B OR C EXX NOP NOP NOP JP NZ,S1 LD A,0 CALL SAVBYT LD B,SHP-7 LD A,170 NOP CALL SAVBYT LD DE,#0F04 LD B,SHP-9 LD A,0 EXX S2 LD A,(HL) INC HL EXX CALL SAVBYT LD B,SHP-10 EXX DEC DE LD A,D OR E  NOP  JR NZ,S2  LD A,0  NEG  LD A,255  CALL SAVBYT " RET 'SAVBYT AND A , JR Z,SB1 1 SCF 6 RLA ;SB2 DJNZ SB2 @ LD HL,MP*256+LP E LD B,SHP J JR NC,SB3 O LD B,MP-SHP-2 T NOP Y NOP ^ NOP cSB4 DJNZ SB4 h LD B,MP m LD HL,SHP*256+LP rSB3 OUT (C),D w AND A |SB5 DJNZ SB5  OUT (C),E  RLA  LD B,H  JR NC,SB6  LD B,L  LD L,H  LD H,B  JR SB7 SB6 LD C,254  JR SB7 SB7 DEC B  RET Z  RET Z  DEC B  DEC B  DEC B  DEC B SB8 DJNZ SB8  OUT (C),D  LD B,H SB9 DJNZ SB9  OUT (C),E  LD B,L SB10 DJNZ SB10  OUT (C),D  LD B,L  DEC B SB11 DJNZ SB11  SLA A  OUT (C),E  RET Z  RET Z ! LD B,SHP-4 & JP SB2 +SB1 DJNZ SB1 0 LD B,LP-SHP+1 5SB12 DJNZ SB12 : LD B,LP ? LD HL,SHP*256+MP D OUT (C),D ISB13 DJNZ SB13 N SCF S OUT (C),E X LD B,H ]SB14 DJNZ SB14 b OUT (C),D g LD B,H lSB15 DJNZ SB15 q OUT (C),E v LD B,L {SB16 DJNZ SB16  OUT (C),D  LD B,L SB17 DJNZ SB17  OUT (C),E  RET C  RET LOAD LD (V1),HL  EXX  DI L5 LD IX,L10  LD DE,#4042  LD C,8 L3 LD H,4 L2 LD B,255  LD A,6  PUSH DE  CALL LOADW  POP DE  DEC H  JR NZ,L2 L1 LD A,4  LD B,255  EXX  LD HL,(V1)  EXX  PUSH DE  CALL LOADW  POP DE  LD HL,#0800  LD B,6 L4 DJNZ L4  CALL LB2  JR NC,L1  DEC L  JR NZ,L3  NEG  LD A,2  CALL LDBW  DEC L % JR NZ,L3 * LD A,C / AND D 4 OR #E 9 LD C,A > LD E,#47 C LD IX,L9 H NOP M CALL LDBYT R DEC L W JP NZ,L6 \L7 LD A,2 a NOP f NOP k CALL LDBW p DEC L u JP Z,L7 zL6 INC L  JR NZ,L5  LD A,2  NEG  NEG  NEG  CALL LDBYT  LD A,L  CP 170  JR NZ,L5  LD IX,LERROR  INC C  LD E,#45  NEG L8 NOP  CALL LDBYT  LD A,L  EXX  LD (HL),A  INC HL  DEC DE  LD A,D  OR E  EXX  JR NZ,L8  RET L9 POP AF  JP L5 LOADW DEC A  JR NZ,LOADW LW1 LD A,C  XOR E  LD C,A  OUT (254),A $LW2 IN A,(254) ) XOR C . AND D 3 RET NZ 8 DJNZ LW2 = POP AF B JP (IX) GLB2 LD B,255 L CALL LW1 Q LD A,0 V NOP [ LD A,7 ` CALL LOADW e LD A,B j EXX o CPL t LD B,A y EXX ~ EX AF',AF  RET C  LD B,6 LB3 DJNZ LB3  JP LB1 LDBW DEC A  JR NZ,LDBW LDBYT LD HL,#801 LB1 LD B,255  CALL LW1  LD A,0  NOP  LD A,7  CALL LOADW  LD A,B  CPL  EXX  LD C,A  CP B  LD (V1),HL  LD H,0  EXX  LD A,0  RLA  EX AF',AF  LD B,255  LD A,0  LD A,3  CALL LOADW  LD A,0  NOP  LD A,7 # CALL LOADW ( LD A,B - EXX 2 CPL 7 CP B < RL H > CP C A EX AF',AF F LD L,A K AND H P JR NZ,LB4 U LD A,L Z OR H _ RRA } LD HL,(V1)  EXX  RL L  EX AF',AF  RL L  EX AF',AF  DEC H  JP NZ,LB2  AND A  RET LB4 EX AF',AF  LD HL,(V1)  EXX  JR C,LERR1  SCF  EX AF',AF  LD L,0  LD L,0  JR LB2 LERR1 JP (IX) LERROR POP AF LERR2 LD HL,22528  LD DE,22529  LD BC,767  LD (HL),%10111000  LDIR  AND A  RET L10 POP AF  JP L1 V1 DEFW 0 D HL,(V1)  EXX  JR C,LERR1  SCF  EX AF',AF  LD L,0  LD L,0  JR LB2 LERR1 JP (I. KX=015:Y=0X:16,0;"COLOURS:";X;",";Y;" " ^A=637446399932 :B=AA+15:B,X*8:B+768,Y*8:B:A 0:Y:X (A=645126476732 :B=0302:A+B,B*2:A+B+1,B*2:B:A:A=07:8,A*4;A:A 2"COLOUR ?";C <+A=6374463999:A,C*8:A P 502 #()a=6374465279:A,7:A   < (cB:A:A=07:8,A*4;A:A 2"COLOUR ?";C <+A=6374463999:A,C*8:A P 502 #()a=6374465279:A,7:A  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~----~----~~----------~~~~~~~~~~~--~-~~~~~~~~~~--~-~~~~~~~~~~--~~~~~~~~~~~~--~~~~-~~~~~~~~~~~~~-~~~~-~~~~~~~~~~~~~-~~~~-~~~~~~~~~~~~~-~~~~-~~~~~~~~~~~~~-~------~~~~~~~~~~~--~-~~~~~~~~~~--~-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~x76 ORG 60000 START CALL REDIS ST1 CALL KEY  CALL COPYD  LD IX,23296 ( LD HL,KEYS1 2 LD B,10 < CALL SEARCH F JR NC,M7 P SRL A Z JR Z,SETPS1 d DEC A n JR NZ,M1 x INC (IX+0) JR M2 M1 DEC A JR NZ,M3 DEC (IX+0) M2 LD A,(IX+0) AND 31 LD (IX+0),A JR M4 M3 DEC A JR NZ,M5 INC (IX+1) LD A,(IX+1) CP 24  JR NZ,M4  LD (IX+1),0  JR M4 "M5 XOR A , CP (IX+1) 6 JR NZ,M6 @ LD (IX+1),24 JM6 DEC (IX+1) OM4 CALL COPYD T BIT 0,(IX+4) ^ JR Z,ST1 hSETPS1 LD A,(23298) r CALL SETPOS | CALL COPYU  JR ST1 M7 CP "8"  JR Z,M8  CP "9"  JP Z,M14  CP "B"  JR Z,M9  CP "T"  JR Z,M15  CP "S"  JP Z,M10  CP "V"  JP Z,M11  CP "L"  RET Z  CP "C" & JR Z,M12 0 CP "`" : JP Z,M28 D LD HL,KEYS2 N LD B,16 X CALL SEARCH b JP NC,ST1 g CALL BIP l AND 7 v LD C,A  RLCA  RLCA  RLCA  OR C  LD C,A  LD A,B  CP 8  JR NC,M13  LD (IX+2),C  JR SETPS1 M13 AND 7  LD C,A  LD A,(IX+2)  AND %11111000  OR C  LD (IX+2),A  JR SETPS1 *M8 LD A,(IX+2) 4 XOR 128 > LD (IX+2),A H JR SETPS1 RM9 LD A,(IX+3) \ INC A f AND 3 p LD (IX+3),A z CALL OK  JP START M15 LD A,(IX+4)  XOR 1  LD (IX+4),A  JR Z,M16  CALL ON  JP SETPS1 M16 CALL OFF  JP ST1 M12 CALL OK  CALL KEY2  SUB #30  JP C,ST1  CP 8  JP NC,ST1  LD C,A  RLCA  RLCA  RLCA  OR C  LD (IX+5),A $ CALL ON .M18 CALL KEY2 8 CP 13 B JR Z,M17 L CP "M" V JR Z,M17 ` SUB 48 j JR C,M18 t CP 8 ~ JR NC,M18  LD (IX+6),A  CALL BIP  CALL COPYD  LD A,(IX+6)  RLCA  RLCA  RLCA  OR (IX+6)  LD (IX+6),A ( LD DE,%1111100000000111 2 CALL CHCOL < LD DE,%1100011100111000 F CALL CHCOL P JR M18 ZM17 CALL COPYU d JP ST1 nCHCOL LD HL,22528 x LD BC,768 CHCL1 LD A,(HL)  AND E  XOR (IX+5)  AND E  JR NZ,CHCL2  LD A,(HL)  AND D  LD (HL),A  LD A,(IX+6)  AND E  OR (HL)  LD (HL),A CHCL2 INC HL  DEC BC  LD A,B  OR C " JR NZ,CHCL1 , RET 6M10 CALL BLOCK @ CALL COPYD JM19 CALL KEY2 T LD HL,KEYS1 ^ LD B,10 h CALL SEARCH r JR NC,M19 | SRL A  JP Z,ST1  LD IY,SCRRIG  DEC A  JR Z,M21  LD IY,SCRLEF  DEC A  JR Z,M21  LD IY,SCRDWN  DEC A  JR Z,M21  LD IY,SCRUP M21 CALL MOVE  CALL COPYU  JR M19 BLOCK CALL OK  LD HL,(23296) & LD (23301),HL 0 LD HL,#101 : LD (23303),HL DBLK1 CALL KEY3 N LD HL,KEYS1 X LD B,10 b CALL SEARCH l JR NC,BLK1 v SRL A  RET Z  DEC A  JR Z,BLK2  DEC A  JR Z,BLK3  DEC A  JR Z,BLK4  DEC (IX+8)  JR NZ,BLK1  LD (IX+8),1  JR BLK1 BLK4 INC (IX+8)  JR BLK1 BLK2 INC (IX+7)  JR BLK1 BLK3 DEC (IX+7)  JR NZ,BLK1 * LD (IX+7),1 4 JR BLK1 >KEY3 CALL COPYD H CALL KEY1 R RET C \ LD A,63 f CALL SETBLK p CALL KEY1 z RET C  LD A,0  CALL SETBLK  CALL KEY1  JR NC,KEY3  RET SETBLK LD (IX+9),A  LD A,(IX+5)  ADD A,(IX+7)  CP 33  JR C,STBL1  DEC (IX+7) STBL1 LD A,(IX+6)  ADD A,(IX+8)  CP 25  JR C,STBL2  DEC (IX+8) $ STBL2 LD A,(IX+7) . LD (IX+10),A 8 LD A,(IX+5) B LD (IX+0),A L STBL3 LD A,(IX+8) V LD (IX+11),A ` LD A,(IX+6) j LD (IX+1),A t STBL4 LD A,(IX+9) ~ CALL SETPOS INC (IX+1) DEC (IX+11) JR NZ,STBL4 INC (IX+0) DEC (IX+10) JR NZ,STBL3 RET MOVE LD A,(IX+7) LD (IX+10),A MOV1 LD A,(IX+8) LD (IX+11),A MOV2 LD HL,(23306) DEC H DEC L  LD BC,(23301)  LD D,H ( LD E,L 2 ADD HL,BC < EX DE,HL F PUSH DE P LD DE,MOV3 Z PUSH DE d JP (IY) n MOV3 CALL RDPOS x POP HL LD (23296),HL CALL SETPOS DEC (IX+11) JR NZ,MOV2 DEC (IX+10) JR NZ,MOV1 LD IY,#5C3A RET RDPOS LD A,L AND 31 LD L,A LD A,H AND 31  CP 24  RET NC  RRCA " RRCA , RRCA 6 LD H,A @ AND %11100000 J OR L T LD L,A ^ LD A,H h AND 3 r LD H,A | LD BC,64768 ADD HL,BC LD A,(HL) RET SCRLEF INC L LD A,L CP (IX+7) JR C,SCR1 LD L,0 SCR1 ADD HL,BC RET SCRRIG LD A,L DEC L AND A  JR NZ,SCR1  LD L,(IX+7)  DEC L & JR SCR1 0 SCRUP INC H : LD A,H D CP (IX+8) N JR C,SCR1 X LD H,0 b JR SCR1 l SCRDWN LD A,H v DEC H AND A JR NZ,SCR1 LD H,(IX+8) DEC H JR SCR1 M11 CALL BLOCK LD HL,(23301) LD (23308),HL CALL COPYD M20 CALL KEY2 LD HL,KEYS1 LD B,10 CALL SEARCH JR NC,M20  SRL A JR Z,M22  LD HL,(23301) DEC A * JR Z,M23 4 DEC A > JR Z,M24 H DEC A R JR Z,M25 \ LD A,H f DEC H p AND A z JR NZ,M26  LD H,23 JR M26 M25 LD A,H INC H CP 23 JR NZ,M26 LD H,0 JR M26 M23 INC L JR M27 M24 DEC L M27 LD A,L AND 31 LD L,A M26 LD (23301),HL  LD IY,MOVRT  CALL COPYD $ CALL MOVE . JR M20 8M22 CALL COPYU B JP ST1 LMOVRT LD BC,(23308) V ADD HL,BC ` RET jREDIS LD A,(23299) t AND A ~ JR Z,RD1  DEC A  JR Z,RD2  DEC A  JR Z,RD3  LD A,%11001100  JR RD4 RD1  LD HL,16384  LD DE,16385  LD BC,6143  LD (HL),0  LDIR  RET RD2 CALL BACKG  RET RD3 LD A,%10101010 (RD4 LD HL,22527 2 LD B,0 <RD5 LD (HL),A F DEC HL P INC B Z JR NZ,RD6 d CPL nRD6 BIT 6,H x JR NZ,RD5  RET M28 LD HL,64768  LD DE,64769  LD BC,767  LD A,(IX+2)  LD (HL),A  LDIR  JP ST1 KEY1 LD IY,#5C3A  RES 3,(IY+2)  RES 5,(IY+2)  LD (IY+7),0  CALL #10A8  LD IX,23296  HALT  RET KEY CALL COPYD " CALL KEY1 , RET C 6 LD A,63 @ CALL SETPOS J CALL KEY1 T RET C ^ LD A,0 h CALL SETPOS r CALL KEY1 | JR NC,KEY  RET ON LD HL,#3FF ON1 LD DE,6  PUSH HL  CALL #3B5  POP HL  LD A,L  SUB 10  LD L,A  JR NC,ON1  LD IX,23296  RET OFF LD HL,#800 OFF1 LD DE,4  PUSH HL  CALL #3B5  POP HL & LD A,L 0 ADD A,10 : LD L,A D JR NC,OFF1 N RET S LD IX,23296 XOK LD DE,4 b LD HL,8192 lOK1 PUSH HL v PUSH DE  LD BC,-30  ADD HL,BC  CALL #3B5  POP DE  POP HL  SRL H  RR L  RL E  JR NC,OK1  LD IX,23296  RET SEARCH CP (HL)  JR Z,SRCH1  INC HL  DJNZ SEARCH  AND A  RET SRCH1 DEC B * LD A,B 4 SCF > RET HSETPOS LD HL,(23296) R PUSH AF \ LD A,L f AND 31 p LD L,A z LD A,H STPOS2 SUB 24  JR NC,STPOS2  ADD A,24  RRCA  RRCA  RRCA  LD H,A  AND %11100000  OR L  LD L,A  LD A,H  AND %11  OR %01011000  LD H,A  POP AF $ LD (HL),A . RET 8COPYD SCF B JR COPY1 LCOPYU AND A VCOPY1 LD HL,64768 ` LD DE,22528 j JR C,COPY2 t EX DE,HL ~COPY2 LD BC,768  LDIR  RET KEY2 CALL KEY1  JR NC,KEY2  RET KEYS1 DEFB "Q",11,"A",10,"O",8,"P",9,"M",13 KEYS2 DEFM "'&%$#@!_76543210" M14 LD A,(IX+2)  XOR 64  LD (IX+2),A  JP SETPS1 BACKG LD HL,64512  LD DE,65535 (BG1 CALL RND 2 LD BC,#805 <BG2 RRCA F JR C,BG3 P DEC C ZBG3 DJNZ BG2 d DEC C n JR NZ,BG1 x LD (HL),A  INC L  JR NZ,BG1  LD HL,22527 BG4 CALL RND  LD C,A  LD B,#FC  LD A,(BC)  LD (HL),A  DEC HL  BIT 6,H  JR NZ,BG4  RET RND LD A,D  RLCA  ADD A,%11100101  XOR E " RLCA , RLCA 6 LD D,A @ LD A,E J ADD A,D T RRCA ^ CPL h LD E,A r XOR D | ADD A,D  ADD A,E  XOR D  SUB E  RET BIP PUSH AF  PUSH BC  PUSH DE  PUSH HL  LD DE,20  LD HL,#300  CALL #3B5  POP HL  POP DE  POP BC  POP AF  LD IX,23296  RET 'XX ENT XX ^ CPL h LD E,A r XOR D | ADD A,D  x ;INKEY -CHR$ IN A ;Z=(A=0) ;NOKEY -WAITS FOR NO KEY ;KEY -CHR$ IN A (Z=0) (;ATTBLK -A=COL 2 -BC=POS < -DE=SIZE F;PRINT-BC=POS P -A=CHR$ (BC,DE SAVED) Z;KEYPRS-A=NO (0-39) d; -RET;IF PRESSED Z=0,C=1,A=255 nINKEY2 LD BC,#FEFE x LD DE,1 LD H,D INK1 IN A,(C) LD L,5 INK2 RRA DEC E JR NZ,INK3 LD E,36 PUSH AF AND A INK3 JR C,INK5 LD H,D INK4 INC D DEC L  JR NZ,INK2  RLC B  JR C,INK1 " POP BC , POP DE 6 LD A,H @ AND A J RET Z T RR C ^ JR C,INK5 h ADD A,80 r JR INK6 |INK5 RR E  JR C,INK6  ADD A,40 INK6 LD L,A  LD H,0  LD BC,KEYDAT  ADD HL,BC  LD A,(HL)  AND A  RET INKEY CALL INKEY2 INKEY3 LD B,A  PUSH BC  CALL INKEY2  POP BC  CP B  JR NZ,INKEY3 & AND A 0 RET :KEYDAT DEFB 0 D DEFM "ZXCVASDFGQWERT1234509876POIUY" N DEFB 13 X DEFM "LKJH " b DEFB 0 l DEFM "MNB" v DEFB 0  DEFM "zxcvasdfgqwert"  DEFB 1,2,3,4,5,12,9,8,7,6  DEFM "poiuy"  DEFB 15  DEFM "lkjh"  DEFB 1,0  DEFM "mnb"  DEFB 0  DEFM ":`?/~|\{}"  DEFB 0,0,0  DEFM "<>!@#$%_)('&"  DEFB 34  DEFM ";"  DEFB 127  DEFM "]["  DEFB 1,4  DEFM "=+-^ " * DEFB 0 4 DEFM ".,*" >NOKEY CALL INKEY H JR NZ,NOKEY R RET \KEY CALL NOKEY fKEY1 CALL INKEY p JR Z,KEY1 z RET ATTBLK LD H,A  LD A,C  AND %11111  LD L,A  LD C,H  LD A,B  RRCA  RRCA  RRCA  LD B,A  AND %11100000  OR L  LD L,A  LD A,B  AND %11  OR %01011000 $ LD H,A .ATBL1 LD B,E 8 LD A,L BATBL2 LD (HL),C L INC L V DJNZ ATBL2 ` ADD A,32 j LD L,A t LD A,0 ~ ADC A,H  LD H,A  DEC D  JR NZ,ATBL1  RET PRINT PUSH DE  RLCA  RLCA  RLCA  LD D,A  AND %11111000  LD E,A  LD A,D  AND %111  OR #3C  LD D,A  LD A,C ( AND %11111 2 LD L,A < LD A,B F AND %11000 P OR %01000000 Z LD H,A d LD A,B n AND 7 x RRCA  RRCA  RRCA  OR L  LD L,A  PUSH BC  LD B,8 PRIN1 LD A,(DE)  LD (HL),A  INC DE  INC H  DJNZ PRIN1  POP BC  POP DE  RET KEYPRS LD C,#7F KP1 RLC C " SUB 5 , JR NC,KP1 6 ADD A,6 @ LD B,A J LD A,C T IN A,(254) ^KP2 RRA h DJNZ KP2 r CCF | SBC A,A  RET 8 PRIN1 LD A,(DE)  LD @ ;USE OF ROUTINE : ;(FROM BASIC) ; RAND
(; RAND USR 2;TO BLOCK CERTAIN ADDRS: <; POKE , F; LIST ADDRS IN PRINTER BUFFER P ORG 60000 ZSTART JR START2 dV6 DEFB 0 nSTART2 LD HL,0 x LD (V1),HL LD (V4),HL LD H,#40 LD (V3),HL LD DE,(23670) CALL PUSH L1 LD HL,(V3) DEC HL LD A,H CP #40 JP C,L2 LD D,(HL) LD (HL),0 DEC HL  LD E,(HL)  LD (HL),0  LD (V3),HL " LD (V2),DE ,L4 CALL INTBL 6 JP C,L3 @ LD HL,(V1) J INC HL T LD (V1),HL ^ LD HL,DISTBL h LD BC,27 r LD A,(DE) | INC DE  CPIR  JR Z,L5  LD C,2  CPIR  JR NZ,L6  LD C,1  LD A,(DE)  INC DE L6 CP #ED  JP Z,L7  CP #CB  JP Z,L8  DEC C  JR NZ,L9  LD C,25  LD HL,IXTRAS & CPIR 0 JR NZ,L9 : INC DE DL9 LD HL,LENS N LD C,A X RRCA b RRCA l AND 63 v ADD A,L  LD L,A  JR NC,L10  INC H L10 LD A,C  AND 3  XOR 3  LD B,A  LD A,(HL)  JR Z,L11 L12 RRCA  RRCA  DJNZ L12 L11 AND 3  JR Z,L4  LD B,A L13 INC DE  DJNZ L13 * JR L4 4L5 LD A,C > CP 24 H JR NC,L14 R CP 6 \ JR NC,L15 f LD C,A p INC C z LD A,(DE)  INC DE  LD L,A  RLA  SBC A,A  LD H,A  ADD HL,DE  JR L16 L15 SUB 5  LD C,A  LD A,(DE)  LD L,A  INC DE  LD A,(DE)  LD H,A  INC DE L16 CALL PUSH2 $ DEC C . JP NZ,L4 8 XOR A BL14 CP 26 L JR NZ,L3 V LD A,(DE) ` INC DE j INC A t CP #1C ~ JP NC,L4 L3 DEC DE  LD (V5),DE  LD HL,(V2)  EX DE,HL  AND A  SBC HL,DE  JP C,L1  LD A,(V4)  AND A  LD HL,TABLE  JR Z,L17 L20 LD C,(HL)  INC HL  LD B,(HL)  INC HL  EX DE,HL ( LD HL,(V5) 2 DEC BC < AND A F SBC HL,BC P JR Z,L18 Z JR C,L19 d EX DE,HL n LD C,(HL) x INC HL  LD B,(HL)  INC HL  EX DE,HL  LD HL,(V2)  INC BC  AND A  SBC HL,BC  JR Z,L22  EX DE,HL  DEC A  JR NZ,L20 L17 LD DE,(V2)  LD (HL),E  INC HL  LD (HL),D  INC HL " LD DE,(V5) , LD (HL),E 6 INC HL @ LD (HL),D JL21 LD A,(V4) T INC A ^ LD (V4),A h JP NZ,L1 r RST 8 | DEFB 3 L18 LD HL,(V2)  EX DE,HL  DEC HL  LD (HL),D  DEC HL,  LD (HL),E  JP L1 L19 INC DE  LD H,0  LD L,A  ADD HL,HL  ADD HL,HL  LD B,H  LD C,L  ADD HL,DE  EX DE,HL & LD HL,-4 0 ADD HL,DE : LDDR D EX DE,HL N LD DE,(V5) X LD (HL),D b DEC HL l LD (HL),E v DEC HL  LD DE,(V2)  LD (HL),D  DEC HL  LD (HL),E  JR L21 L22 LD HL,(V5)  EX DE,HL  DEC HL  LD (HL),D  DEC HL  LD (HL),E  DEC A  JP Z,L1  INC HL  INC HL  LD C,(HL)  INC HL * LD B,(HL) 4 EX DE,HL > DEC BC H AND A R SBC HL,BC \ JP NZ,L1 f INC DE p LD HL,-4 z ADD HL,DE  EX DE,HL  SCF  RLA  LD B,0  RL B  RLA  RL B  LD C,A  LDIR  LD A,(V4)  DEC A  LD (V4),A  JP L1  L7 LD A,(DE  INC DE  AND #C7 $ CP #43 . JP NZ,L4 8 INC DE B INC DE L JP L4 V L8 DEC C ` JR NZ,L23 j INC DE t L23 INC DE ~ JP L4 L2 LD HL,16384 LD DE,16385 LD BC,6144 LD (HL),0 LDIR LD BC,767 LD (HL),56 LDIR LD A,2 CALL #1601 LD A,1 LD (23692),A LD HL,STR1 LD B,9  L24 LD A,(HL)  RST #10 ( INC HL 2 DJNZ L24 < LD DE,(V1) F CALL NUMPR P LD A,13 Z RST #10 d LD A,13 n RST #10 x LD A,(V4) AND A RET Z LD B,A LD HL,TABLE L25 LD E,(HL) INC HL LD D,(HL) INC HL PUSH DE CALL NUMPR LD A,"T" RST #10 LD A,"O"  RST #10  LD E,(HL)  INC HL " LD D,(HL) , INC HL 6 PUSH DE @ CALL NUMPR J POP AF T POP DE ^ PUSH AF h LD A,32 r RST #10 | LD A,32 RST #10 CALL HEXNM2 LD A,"T" RST #10 LD A,"O" RST #10 POP DE CALL HEXNM2 LD A,13 RST #10 DJNZ L25 LD A,13 RST #10  RET  NUMPR PUSH HL  PUSH BC & LD A,32 0 RST #10 : LD HL,DECTBL D NP2 LD C,(HL) N INC HL X LD B,(HL) b INC HL l LD A,#2F v EX DE,HL NP1 INC A AND A SBC HL,BC JR NC,NP1 ADD HL,BC RST #10 EX DE,HL DEC C JR NZ,NP2 LD A,32 RST #10 POP BC POP HL  RET HEXNM2 LD A,32  RST #10 CALL HEXNUM * LD A,32 4 RST #10 > RET H HEXNUM CALL HN1 R LD D,E \ HN1 LD A,D f RRCA p RRCA z RRCA RRCA CALL HN2 LD A,D HN2 AND 15 ADD A,#90 DAA ADC A,#40 DAA RST #10 RET PUSH PUSH HL PUSH BC PUSH DE  JR P1 PUSH2 PUSH HL  PUSH BC $ PUSH DE . EX DE,HL 8P1 LD A,D B CP #40 L JR C,P2 V LD A,(V6) ` AND A j JR Z,P3 t LD HL,23296 ~ LD B,A P4 LD A,(HL)  CP E  INC HL  JR NZ,P5  LD A,(HL)  CP D  JR Z,IT2 P5 INC HL  DJNZ P4 P3 CALL INTBL  JR C,P2  LD HL,(V3)  LD (HL),E  INC HL  LD (HL),D  INC HL ( LD (V3),HL 2 LD A,H < CP #5B F JR C,P2 P RST 8 Z DEFB 3 dP2 POP DE n POP BC x POP HL  RET INTBL PUSH HL  PUSH BC  PUSH DE  LD B,D  LD C,E  LD HL,TABLE  LD A,(V4)  AND A  JR Z,IT1 IT3 LD E,(HL)  INC HL  LD D,(HL)  INC HL  EX DE,HL  AND A " SBC HL,BC , JR Z,IT2 6 JR NC,IT1 @ EX DE,HL J LD E,(HL) T INC HL ^ LD D,(HL) h INC HL r EX DE,HL | AND A  SBC HL,BC  JR NC,IT2  EX DE,HL  DEC A  JR NZ,IT3  SCF IT2 CCF IT1 POP DE  POP BC  POP HL  RET DISTBL DEFB #CF,#C9,#E9,#C2,#C4,#CA,#CC  DEFB #D2,#D4,#DA,#DC,#E2,#E4,#EA,#EC,#F2,#F4  DEFB #FA,#FC,#CD,#C3,#10,#20,#28,#30,#38,#18,#FD,#DD DECTBL DEFW 10000,1000,100,10,1 STR1 DEFB 22,0,0 & DEFM "LINES:" 0IXTRAS DEFB #34,#35,#36,#46,#4E,#56,#5E,#66,#6E : DEFB #70,#71,#72,#73,#74,#75,#77,#7E,#86,#8E D DEFB #96,#9E,#A6,#AE,#B6,#BE NV1 DEFW 0 XV2 DEFW 0 bV3 DEFW 0 lV4 DEFW 0 vV5 DEFW 0 LENS DEFB 32,4,0,4,96,4,64,4  DEFB 104,4,72,4,104,4,72,4  DEFB 0,0,0,0,0,0,0,0  DEFB 0,0,0,0,0,0,0,0  DEFB 0,0,0,0,0,0,0,0  DEFB 0,0,0,0,0,0,0,0  DEFB 10,132,8,164,9,132,9,132  DEFB 8,132,8,132,8,132,8,132 TABLE DEFS 1024 XX ENT XX S DEFB 32,4,0, CRLFISGRYEOWBLUEBCKSLIMYBUG-EYHNBYFFURRYDTFGLIRDLOBːRDHUMOIDFELESECTCOMMD DTYRO F SA FRTFTGHTyLOWc*EXT PULSEAMFUELMSI BAYE.C.M.fgSfhSi SCOOPSCAPE PODyBOMByDOCKG z MILITYMG G jGY GACCs ONACLOAKG DEVI wPST IMLLMAYDAY* VAD* MT:COFFDFUGIHMSSMOLY ABO PETTDDEADLY---- E L I T E ----PSTi AK* ACSS ME 1 2  3 EXT TAPE, PSS Y KEYTAPE ADRRY MB: mn PSS A, 'S GAME OR APPCIA OF R CGE S OF  AWD EIR HIGHE HR - -LI NGPRO*SHIP BODBYFU PIRE  HAD R LIS*K , ...FDTWELL KWNFAMOTRYMDLYMOASLYrGVAPKw v ASSu FTSOSSHYNSSLSTTSHOF d F dFOOD BNDSTRISPORYSCOSlWKÞCBBBSPGUVAGRSSCRGq CIV Wh _ `SA h Aq EAKq R ACVY] ^ _ `S' b cz k lJUIBNDYWBWGG BS `  hh FUEXOCHOOPYUSUEXCGƘENIGHT LIFECASISS COMSz   SUNGOVA* WL S*N UNRK BG DULL TEO VOLTGPLT DUMPGROSS  IVYECOMYG NGWAMOWOGTPOAROPHYSICIYAKSNASLUGTROPICDIMPBEXUNTFUNNYWEIRDUSUNPELIFTOCCASIUNPCTDADFUL\ [ F eef BY g BUT Ao pPLWLDE ADҚ DISICOMMDhMNTAIBTEOTTxyaOID~CITEXPECNTRICGrKLDEADLYEVVICIOS .  D YPKMSDT CUDSI RGSRO FSVOLCAPLTTULIPBACNWE  hHATTG MSICUBAKNAME? TO SA. DO (Y/N)?l JAMM A SP NEW GCKFND POPULI @@ _@+SIA VASI*WTBY GCOP: B FECI A TES E ÓA I  ASBA F EIR VASI FTA SURFA R:DEROY A I  TAKE (  WL NE*) GOOD LU*SHWASSNAKEWOLFOPDCMKEYGOFHj i x {k y {| }j iMETLEAKBURGSUPIMUDZO-GVAUM ULTHOEYCRIKEPOTNEY SHOW MCY...v: W:_(A= xg(! W{0_c=:W("!v(! c( z'Oz ?Wk(zGz O9' W! : ~( ,˾,˖˾--~w!v˶: >2 >'''=G !A0$o~2 !X}o~#F!o~w P01QALO92WSZMKI83EDXNJU74RFCBHY65TGV2=2 xܺ  q!!a2Hz! @@ABOUSEITILETSTONLONUTHNOALLEXEGEZACEBISOUSESARMAINDIREA?ERATENBERALAVETIEDORQUANTEISRIONB:RRTp:p: G:O*@ +H Y(\<Rt(R!z| !z|(cH 5| !z|(d(RzQ(!zRt(!"* P +X Y(\$Rt(R!| !f|(X 5| !f|(fd(RQ(!fRt(!" * ` h($R%h 0 !l(R" 2 sV1i%q{V>G^V@@    @@ <DHpHDB*]\"_\C*]\~}t[3|BB|DB<@<B<BBBBB<h 0 !l(R" 2 sV1i%q{V>G^V@@    @@ <DHpHDB*]\"_\C*]\~}t[3|BB|DB<@<B<l l (0:1:0:25343b *1;"ELITE.PIC" *1;"ELITE.BYT" (0::A=16384@ 2+B:B-1A,B:A=A+1:502 <16384@ F1,0,101e,17,0,91[,33!,0,99c,491,255,255,237,176,195,138,208,-1 ::A=16384@ 2+B:B-1A,B:A=A+1:502 <16384@ F1,0,101e,17,0,91[\*҂J(ʪ@*ʪ?wf󊪠=k>)\J>0?7';j@ۣ'rUP? JJ(UP? JJ(UlUP?SkfUP?EUP?A T@U@*J(? (?j[ݯꪨ_*R ꪨ_"Gڪ@o}U9UTp@*J'UT'QT~˺uUTO*_UTǿUP@"9xT@_?漀6޳|@*p`?ɩz{]X?8@Gu1F??@?U8~UU@* UU@xUUc߈}UU#&<UU 漀UT@xwT@`b *@* *< Ret~/z >>U@߀UGx#*E`U@'U@@* UPw>w0U@;hl?UU@꾳πUU@ AA/T@ Nexo6߿>)ʞ0oa=_~͚^?w~>o~>}CUOn޵耋O;hlϚ_w>w<?@UU\@~*7e6Z/>zq_p~`Rt?g7 7? ?@_?UO7`6޵$<@<g6|߈//P@{wU~~//b6>}7fxɩnCݿ+7`4/P/7?g6N9_=z˺x\U[GwO_//7g6^=w;߿}?|C|Cg6S^t@Uwݿp |??|*?|}C~TO꺯dL@ w"_WP?I$< /w?~E_I|$oow_R__I|$@ (__@_I8$O$ׯ@P_8@I)!@@Tׯ|?@H() ??_?_[/W9?!(g 666666666666666666666666l l (0:1:0:25343b *1;"ELITE.PIC" *1;"ELITE.BYT" (0::A=16384@ 2+B:B-1A,B:A=A+1:502 <16384@ F1,0,109m,17,0,91[,33!,0,99c,491,255,255,237,176,195,138,208,-1 ::A=16384@ 2+B:B-1A,B:A=A+1:502 <16384@ F1,0,109m,17,0,91[vx ; SAVE IX,DE BYTES SAVE LD HL,#1F80  DI ( LD A,2 2 LD B,A <S1 DJNZ S1 F OUT (254),A P XOR #F Z LD B,164 d DEC L n JR NZ,S1 x DEC B DEC H JP P,S1 LD B,47 S2 DJNZ S2 OUT (254),A LD A,13 LD B,55 S3 DJNZ S3 OUT (254),A LD B,70 LD L,(IX+0) LD H,0 SCF S8 NOP  NOP S4 RL L " JR Z,S5 ,S6 DJNZ S6 6 SBC A,A @ AND %1110 J OUT (254),A T LD B,74 ^S7 DJNZ S7 h XOR #F r RET C | OUT (254),A  LD B,72  JR S4 S5 INC IX  DEC DE  LD B,64  LD L,(IX+0)  LD A,H  XOR L  LD H,A  LD A,D  OR E  SCF  JP NZ,S8  RET SBC A,A @ AND %1110 J OUT (254),A T LD B,74 ^S7 DJNZ S7 h XOR #F r RET C | OUT (254),A  LD B,72  JR S4 S5 INC x SAVE LD HL,#1F80  DI  LD A,2 ( LD B,A 2S1 DJNZ S1 < OUT (254),A F XOR #F P LD B,164 Z DEC L d JR NZ,S1 n DEC B x DEC H JR P,S1 LD B,#2F S2 DJNZ S2 OUT (254),A LD A,9 LD B,#37 S3 DJNZ S3 OUT (254),A LD B,MED-7 S4 LD L,(IX+0) INC IX SCF S5 RL L  JR Z,S6  LD A,15 S7 DEC A "S8 DJNZ S8 , LD B,MED-5 6 JR NC,S9 @ LD B,LNG-MED-1 JS10 DJNZ S10 T SCF ^ RET NC h LD B,LNG-5 rS9 OUT (254),A | XOR #F  BIT 3,A  LD C,B  NOP  RET C  JR Z,S8  BIT 0,A  AND A  LD B,MED-9  JR NZ,S5  LD B,A  LD A,C  CP LNG-5  LD A,B  LD B,MED-10  NOP  JP S7 &S6 RET NZ 0 DEC DE : LD A,D D OR E N LD B,MED-17 X JR NZ,S4 bS11 DJNZ S11 lS12 DJNZ S12 v EI  RET R Z,S8  BIT 0,A  AND A  LD B,MED-9  JR NZ,S5  LD B,A  LD A,C  CP LNG-5  LD A,B  LD B,MED-10  NOP  JP S7 &S6 RET NZ 0 DEC DE : LD A,D D OR E N LD B,MED-17 X JR NZ,S4 bS11 DJNZ S11 lS12 D{x@0 ORG 60000  ENT 60000  LD IX,16384  LD DE,6912  CALL LOAD  EI  RET MED EQU 30 LNG EQU 45 SAVE LD HL,#1F80  DI  LD A,2 ( LD B,A 2S1 DJNZ S1 < OUT (254),A F XOR #F P LD B,82 Z DEC L d JR NZ,S1 n DEC B x DEC H JP P,S1 LD B,30 S2 DJNZ S2 OUT (254),A XOR 11 LD B,35 S3 DJNZ S3 OUT (254),A LD B,MED-7 S4 LD L,(IX+0) INC IX SCF S5 RL L  JR Z,S6  LD A,15 S7 DEC A S8 LD C,B "S13 DJNZ S13 , LD B,MED-5 6 JR NC,S9 @ LD B,LNG-MED-1 JS10 DJNZ S10 T SCF ^ RET NC h LD B,LNG-5 rS9 OUT (254),A | XOR #F  BIT 3,A  NOP  RET C  JR Z,S8  AND A  BIT 0,A  LD B,MED-9  JR NZ,S5  LD B,A  LD A,C  CP LNG-5  LD A,B  LD B,MED-10  NOP  JP S7 &S6 RET NZ 0 DEC DE : LD A,D D OR E N LD B,MED-17 X JR NZ,S4 bS11 DJNZ S11 lS12 DJNZ S12 v EI  RET LOADW DEC A  JR NZ,LOADW LW1 IN A,(254)  XOR C  AND H  JR NZ,LW2  DJNZ LW1  POP AF  JP (IY) LW2 LD A,C  XOR %1000111  LD C,A  OUT (254),A  RET LOAD DI  LD IY,L1 * LD A,15 4 OUT (254),A > LD C,%1010 H LD H,#40 RL1 LD A,1 \ LD B,0 f CALL LOADW p LD L,21 zL2 DJNZ L2  DEC L  JR NZ,L2  LD A,1  CALL LOADW  LD A,24 L3 LD B,40  CALL LOADW  LD A,24  CALL LOADW  LD A,B  CP 16  LD A,22  JR NC,L1  DEC L  JR NZ,L3 L4 LD B,32 $ CALL LOADW . LD A,0 8 LD A,B B CP 16 L LD A,4 V JR C,L4 ` LD B,15 j CALL LOADW t LD A,C ~ XOR 3  LD C,A  LD IY,LERROR  LD A,3 L9 DEC A  JR NZ,L9 L5 LD (IX+0),1 L6 LD B,255  CALL LW1  LD A,6  CALL LOADW  LD L,B  LD A,5  LD B,255  CALL LOADW  LD A,6  CALL LOADW ( LD A,L 2 CP B < RL (IX+0) F JR NC,L7 P INC IX Z DEC DE d LD A,D n OR E x JR NZ,L5  RET L7 LD B,3 L8 DJNZ L8  JR L6 LERROR SCF  RET CALL LOADW  LD L,B  LD A,5  LD B,255  CALL LOADW  LD A,6  CALL LOADW ( LD A,L 2 CP B < RL (IX+0) F x ORG 60000 ENT 60000  EXX  PUSH HL  LD HL,16384  LD DE,6912 # CALL LOAD ( EI - LD IY,#5C3A 2 POP HL 7 EXX < RET ASHT EQU 11 FLNG EQU 15 KSAVE DI P EXX U LD DE,1024 Z LD B,1 _S1 LD L,1 d CALL SAVBYT i LD B,SHT-9 n DEC DE s LD A,D x OR E } JP NZ,S1 LD L,255 CALL SAVBYT LD B,SHT-8 LD L,0 INC HL NOP CALL SAVBYT LD B,SHT-9 EXX NEG S2 LD A,(HL) INC HL EXX LD L,A CALL SAVBYT LD B,SHT-10 EXX DEC DE LD A,D OR E JP NZ,S2 LD B,SHT-10 NOP NOP CALL SAVBYT RET SAVBYT SCF  RL L SB2 DJNZ SB2  LD BC,SHT*256-256+LNG-2  JR NC,SB4  LD B,LNG-SHT-2 "SB3 DJNZ SB3 ' INC BC , LD BC,LNG*256-256+SHT-2 1SB4 XOR A 6 OUT (254),A ;SB5 DJNZ SB5 @ LD A,%1010 E OUT (254),A J LD B,C O NOP T NOP YSB6 DJNZ SB6 ^ LD A,%0101 c OUT (254),A h LD B,C m NOP r NOP wSB7 DJNZ SB7 | XOR %1010  OUT (254),A  RL L  RET Z  LD B,SHT-5  JR SB2 LOAD EXX  DI  LD C,%1000  LD IX,L10  LD IY,L2  LD E,%1000010  LD HL,#4000 L2 DEC L  JP Z,L3 L1 LD A,1  LD B,255  CALL LOADW  LD B,4 L8 DJNZ L8  NEG  JP LDBYT L3 LD IY,L4  NOP  JP LDBYT L4 DEC L  JR Z,L6  INC L  INC L  JR NZ,L10  INC L  LD IY,L9  JP LB1 !L9 DEC L & JR NZ,L10 + INC L 0 LD IX,LERROR 5 LD IY,L7 : LD E,%1000101 ? JP LB1 DL10 LD IY,L2 I LD IX,L1 J LD A,C K AND %11111010 L LD C,A N JR L1 SL6 NEG X NEG ] JP LDBYT bL7 LD A,L g EXX l LD (HL),A q INC HL v DEC DE { LD A,D  OR E  RET Z L5 EXX LDBYT LD L,1 LB1 LD B,255 LB4 IN A,(254)  XOR C  AND H  JR NZ,LB3  DJNZ LB4  JP (IX) LB3 LD A,C  XOR E  LD C,A  XOR %100  OUT (254),A  LD A,3  NOP  NOP  NOP  CALL LOADW  OUT (254),A  LD D,B  LD B,255  LD A,2  LD A,2  LD A,2  CALL LOADW  OUT (254),A  NEG  LD A,3  CALL LOADW  LD A,D % CP B * RL L / JR NC,LB2 4 JP (IY) 9LB2 INC IX > DEC IX C INC IX H DEC IX M JR LB1 RLERROR SCF W RET \LOADW DEC A a JR NZ,LOADW fLW1 IN A,(254) k XOR C p AND H u JR NZ,LW2 z DJNZ LW1  POP AF  JP (IX) LW2 LD A,C  XOR E  LD C,A  RET ,LB2 4 JP (IY) 9LB2 INC IX > DEC IX C INC IX H DEC IX M JR LB1 RLERROR SCF W RET \LOADW DEC A a JR NZ,LOADW fLW1 IN A,(254) k XOR C p AND H u JR NZ,LW2 z DJNZ LW1  POP AF  JP (IX) LW2 LD A,C  XOR E  LD C,A  RET x  ORG 60000 ENT 60000  EXX  PUSH HL  LD HL,16384  LD DE,6912 # CALL LOAD ( EI - POP HL 2 EXX 7 RET 8; NB: SAVE MORE BYTES THAN NEEDED <SHP EQU 20 AMP EQU 33 FLP EQU 42 KSAVE DI P LD BC,1024 U EXX Z LD B,1 _ LD DE,#0802 d LD C,254 iS1 LD A,1 n CALL SAVBYT s LD B,SHP-10 x EXX } DEC BC LD A,B OR C EXX NOP NOP NOP JP NZ,S1 LD A,0 CALL SAVBYT LD B,SHP-7 LD A,170 NOP CALL SAVBYT LD DE,#0F04 LD B,SHP-9 LD A,0 EXX S2 LD A,(HL) INC HL EXX CALL SAVBYT LD B,SHP-10 EXX DEC DE LD A,D OR E  NOP  JR NZ,S2  LD A,0  NEG  LD A,255  CALL SAVBYT " RET 'SAVBYT AND A , JR Z,SB1 1 SCF 6 RLA ;SB2 DJNZ SB2 @ LD HL,MP*256+LP E LD B,SHP J JR NC,SB3 O LD B,MP-SHP-2 T NOP Y NOP ^ NOP cSB4 DJNZ SB4 h LD B,MP m LD HL,SHP*256+LP rSB3 OUT (C),D w AND A |SB5 DJNZ SB5  OUT (C),E  RLA  LD B,H  JR NC,SB6  LD B,L  LD L,H  LD H,B  JR SB7 SB6 LD C,254  JR SB7 SB7 DEC B  RET Z  RET Z  DEC B  DEC B  DEC B  DEC B SB8 DJNZ SB8  OUT (C),D  LD B,H SB9 DJNZ SB9  OUT (C),E  LD B,L SB10 DJNZ SB10  OUT (C),D  LD B,L  DEC B SB11 DJNZ SB11  SLA A  OUT (C),E  RET Z  RET Z ! LD B,SHP-4 & JP SB2 +SB1 DJNZ SB1 0 LD B,LP-SHP+1 5SB12 DJNZ SB12 : LD B,LP ? LD HL,SHP*256+MP D OUT (C),D ISB13 DJNZ SB13 N SCF S OUT (C),E X LD B,H ]SB14 DJNZ SB14 b OUT (C),D g LD B,H lSB15 DJNZ SB15 q OUT (C),E v LD B,L {SB16 DJNZ SB16  OUT (C),D  LD B,L SB17 DJNZ SB17  OUT (C),E  RET C  RET LOAD LD (V1),HL  EXX  DI L5 LD IX,L10  LD DE,#4042  LD C,8 L3 LD H,4 L2 LD B,255  LD A,6  PUSH DE  CALL LOADW  POP DE  DEC H  JR NZ,L2 L1 LD A,4  LD B,255  EXX  LD HL,(V1)  EXX  PUSH DE  CALL LOADW  POP DE  LD HL,#0800  LD B,6 L4 DJNZ L4  CALL LB2  JR NC,L1  DEC L  JR NZ,L3  NEG  LD A,2  CALL LDBW  DEC L % JR NZ,L3 * LD A,C / AND D 4 OR #E 9 LD C,A > LD E,#47 C LD IX,L9 H NOP M CALL LDBYT R DEC L W JP NZ,L6 \L7 LD A,2 a NOP f NOP k CALL LDBW p DEC L u JP Z,L7 zL6 INC L  JR NZ,L5  LD A,2  NEG  NEG  NEG  CALL LDBYT  LD A,L  CP 170  JR NZ,L5  LD IX,LERROR  INC C  LD E,#45  NEG L8 NOP  CALL LDBYT  LD A,L  EXX  LD (HL),A  INC HL  DEC DE  LD A,D  OR E  EXX  JR NZ,L8  RET L9 POP AF  JP L5 LOADW DEC A  JR NZ,LOADW LW1 LD A,C  XOR E  LD C,A  OUT (254),A $LW2 IN A,(254) ) XOR C . AND D 3 RET NZ 8 DJNZ LW2 = POP AF B JP (IX) GLB2 LD B,255 L CALL LW1 Q LD A,0 V NOP [ LD A,7 ` CALL LOADW e LD A,B j EXX o CPL t LD B,A y EXX ~ EX AF',AF  RET C  LD B,6 LB3 DJNZ LB3  JP LB1 LDBW DEC A  JR NZ,LDBW LDBYT LD HL,#801 LB1 LD B,255  CALL LW1  LD A,0  NOP  LD A,7  CALL LOADW  LD A,B  CPL  EXX  LD C,A  CP B  LD (V1),HL  LD H,0  EXX  LD A,0  RLA  EX AF',AF  LD B,255  LD A,0  LD A,3  CALL LOADW  LD A,0  NOP  LD A,7 # CALL LOADW ( LD A,B - EXX 2 CPL 7 CP B < RL H > CP C A EX AF',AF F LD L,A K AND H P JR NZ,LB4 U LD A,L Z OR H _ RRA } LD HL,(V1)  EXX  RL L  EX AF',AF  RL L  EX AF',AF  DEC H  JP NZ,LB2  AND A  RET LB4 EX AF',AF  LD HL,(V1)  EXX  JR C,LERR1  SCF  EX AF',AF  LD L,0  LD L,0  JR LB2 LERR1 JP (IX) LERROR POP AF LERR2 LD HL,22528  LD DE,22529  LD BC,767  LD (HL),%01111000  LDIR  AND A  RET L10 POP AF  JP L1 V1 DEFW 0 D HL,(V1)  EXX  JR C,LERR1  SCF  EX AF',AF  LD L,0x ORG 60000  ENT 60000 SAMPLE EXX  PUSH HL  DI ( LD HL,23296 2 LD E,16 < LD BC,1 F CALL LOADW P LD B,0 Z CALL LOADW d LD B,0 n NEG x NEG SAM1 LD B,0 CALL LOADW LD (HL),B DEC E JR NZ,SAM1 LD HL,22528 LD DE,22529 LD BC,255 LD (HL),56 LDIR LD HL,#7F7F LD (22799),HL LD DE,23296  LD HL,22528  LD B,8 SAM2 LD A,(DE) " INC DE , EXX 6 LD L,A @ LD H,0 J AND A T RL L ^ RL H h RL L r RL H | RL L  RL H  RL L  RL H  EXX  LD A,(DE)  INC DE  EXX  LD E,A  LD D,0  LD C,-1 SAM3 INC C  SBC HL,DE  JR NC,SAM3  LD A,C  CP 32  JR C,SAM4 & LD A,31 0SAM4 EXX : LD C,A D PUSH HL N LD A,B X LD B,0 b ADD HL,BC l LD (HL),#76 v POP HL  LD C,32  ADD HL,BC  LD B,A  DJNZ SAM2  POP HL  EXX  EI  RET LOADW LD A,C  XOR #47  LD C,A  OUT (254),A  LD D,#40 LW1 IN A,(254)  XOR C  AND D  RET NZ * DJNZ LW1 4 RET HL,BC l x ORG 60000  ENT 60000 SAMPLE EXX  PUSH HL  DI ( LD HL,23296 2 LD E,16 < LD BC,1 F CALL LOADW P LD B,0 Z CALL LOADW d LD B,0 n NEG x NEG SAM1 LD B,0 CALL LOADW LD (HL),B DEC E JR NZ,SAM1 LD HL,22528 LD DE,22529 LD BC,255 LD (HL),56 LDIR LD HL,#7F7F LD (22799),HL LD DE,23296  LD HL,22528  LD B,8 SAM2 LD A,(DE) " INC DE , EXX 6 LD L,A @ LD H,0 J AND A T RL L ^ RL H h RL L r RL H | RL L  RL H  RL L  RL H  EXX  LD A,(DE)  INC DE  EXX  LD E,A  LD D,0  AND A  LD A,31  JR Z,SAM4  LD C,-1 SAM3 INC C  SBC HL,DE  JR NC,SAM3  LD A,C  CP 32  JR C,SAM4 & LD A,31 0SAM4 EXX : LD C,A D PUSH HL N LD A,B X LD B,0 b ADD HL,BC l LD (HL),#76 v POP HL  LD C,32  ADD HL,BC  LD B,A  DJNZ SAM2  POP HL  EXX  EI  RET LOADW LD A,C  XOR #47  LD C,A  OUT (254),A  LD D,#40 LW1 IN A,(254)  XOR C  AND D  RET NZ * DJNZ LW1 4 RET HL,BC l LD (HL),#76 v POP HL  LD C,32  ADD HL,BC  LD B,A  DJNZ SAM2  POP HL  EXX  EI  RET LOADW LD A,C  XOR #47  LD C,A  OUT (254),A  LD D,#40 LW1 IN A,(254)  XOR C  AND D  RET-x; ORG 60000  ENT 60000 SAMPLE EXX  PUSH HL  DI ( LD HL,23296 2 LD E,16 < LD BC,9 F CALL LOADW P LD B,0 Z CALL LOADW d LD B,0 n LD B,0 s LD B,0 x NEG SAM1 LD B,0 CALL LOADW LD (HL),B INC HL DEC E JR NZ,SAM1 LD HL,22528 LD DE,22529 LD BC,255 LD (HL),56 LDIR LD HL,#7F7F LD (22799),HL LD DE,23296  LD HL,22528  LD B,8 SAM2 LD A,(DE) " INC DE , EXX 6 LD L,A @ LD H,0 J AND A T RL L ^ RL H h RL L r RL H | RL L  RL H  RL L  RL H  EXX  LD A,(DE)  INC DE  EXX  LD E,A  LD D,0  AND A  LD A,31  JR Z,SAM4  LD C,-1 SAM3 INC C  SBC HL,DE  JR NC,SAM3  LD A,C  CP 32  JR C,SAM4 & LD A,31 0SAM4 EXX : LD C,A D PUSH HL N LD A,B X LD B,0 b ADD HL,BC l LD (HL),#76 v POP HL  LD C,32  ADD HL,BC  LD B,A  DJNZ SAM2  POP HL  EXX  EI  RET LOADW LD A,C  XOR #47  LD C,A  OUT (254),A  LD D,#40 LW1 IN A,(254)  XOR C  AND D  RET NZ * DJNZ LW1 4 RET HL,BC l LD (HL),#76 v POP HL  LD C,32  ADD HL,BC  LD B,A  DJNZ SAM2  POP HL  EXX  EI  RET LOADW LD A,C  XOR #47  LD C,A  OUT (254),A  LD D,#40 LW1 IN A,(254) xv ORG 65280 INTON LD A,24  LD (65535),A ( LD A,#C3 2 LD (65524),A < LD HL,INTERR F LD (65525),HL H LD A,#3B M LD I,A P IM 2 Z RET dINTOFF IM 1 n RET xINTERR PUSH HL PUSH BC PUSH DE PUSH AF LD A,(23296) AND 1 XOR 1 LD (23296),A LD HL,64512 JR NZ,INT1 LD HL,63744 INT1 LD DE,22528 LD BC,768 LDIR  POP AF  POP DE  POP BC " POP HL , JP #38 ET xINTERR PUSH HL PUSH BC PUSH DE PUSH AF LD A,(23296) x ;CHORD2 : ;HL=PAGES OF DATA ;DE=NO DATA BYTES IN PAGES (;BC=LENGTH 2CHORD PUSH HL < PUSH DE F PUSH BC P LD L,D Z LD C,254 d EXX n POP BC x POP DE POP HL LD H,L LD D,E LD L,D LD B,C LD C,254 XOR A LD IX,C3 JR C8 C4 AND A RET C C3 EXX C8 OUTD  JR NZ,C1  RET NZ  CP L " JP Z,C2 , NOP 6 EXX @ OUTD J RET Z T CP L ^ JR NZ,C4 h LD L,D r JP C3 |C2 LD L,D  EXX  OUTD  RET Z  CP L  JR NZ,C4  LD L,D  JP C3 C1 CP L  JP Z,C5  NOP  EXX  OUTD  INC B  CP L  JP NZ,C6 C7 LD L,D & JP (IX) 0C5 LD L,D : EXX D OUTD N INC B X CP L b JP Z,C7 lC6 JR C3 C2 LD L,D  EXX  OUTD  RET Z  CP L  JR NZ,C4  LD L,D x PLOT PUSH AF  PUSH BC  PUSH HL ( LD A,C 2 AND %11111000 < RRCA F RRCA P RRCA Z LD L,A d LD A,B n AND %111 x LD H,A LD A,B AND %111000 RLCA RLCA OR L LD L,A LD A,H AND %11000000 RRCA RRCA RRCA OR H OR #40  LD H,A  LD A,C  AND %111 " LD B,A , INC B 6 LD A,1 @PL1 RRCA J DJNZ PL1 T XOR (HL) ^ LD (HL),A h POP HL r POP BC | POP AF  RET OR L LD L,A LD A,H AND %11000000 RRCA Rmx ORG 60000  ENT 60000  LD HL,16384 ( LD DE,6912 dSB EQU 10 nLB EQU 30 xSAVE INC DE EXX LD DE,1024 LD IY,SRET S1 LD HL,#08AC LD B,SB-9 CALL S3 DEC DE LD A,D OR E JP NZ,S1 LD HL,#08FF LD B,SB-9 CALL S3  LD HL,#0800  LD B,SB-8  LD IY,S2 " NOP , JR S3 6S2 LD B,SB-9 @ EXX J DEC DE T LD A,D ^ OR E h JR Z,S8 r LD A,(HL) | INC HL  EXX  LD L,A  LD H,8  JP S3 S8 LD HL,#80AA  LD IY,SRET  JP S3 S10 LD B,SB-4 S3 RLC L S4 DJNZ S4  JR NC,S5  XOR A  NOP  OUT (254),A  LD B,LB-2 S6 DJNZ S6 & LD A,0 0 LD A,%1001 : OUT (254),A D DEC H N JR NZ,S10 X JP (IY) bS5 LD B,LB-SB-1 lS9 DJNZ S9 v LD A,0  LD A,0  OUT (254),A  LD B,SB-2 S7 DJNZ S7  LD A,0  LD A,%1001  OUT (254),A  DEC H  JR NZ,S10  JP (IY) SRET RET 0 0 LD A,%1001 : OUT (254),A D DEC H N JR NZ,S10 X JP (IY) bS5 LD B,LB-SB-1 lS9 DJNZ S9 v LD A,0  LD A,0  OUT (254),A x ;SHPLOT-4*4 SHADED PLOT ;BC =POS 0-47,0-63 ;A=SHADE 0-16 (SHPLOT RLCA 2 RLCA < LD E,A F LD D,0 P LD HL,GRPHCS Z ADD HL,DE d EX DE,HL n LD A,C x AND %111110 RRCA LD L,A RR C SBC A,A XOR %11110000 LD C,A LD A,B AND %110000 RRCA OR #40 LD H,A LD A,B AND %1110  RLCA  RLCA  RLCA " RLCA , OR L 6 LD L,A @ RR B J SBC A,A T AND 8 ^ OR H h LD H,A r LD B,4 |SP1 LD A,C  CPL  AND (HL)  LD (HL),A  LD A,(DE)  INC DE  AND C  OR (HL)  LD (HL),A  INC H  DJNZ SP1  RET GRPHCS DEFB 0,0,0,0  DEFB 136,0,0,0  DEFB 136,0,34,0  DEFB 170,0,68,0  DEFB 136,34,136,34 & DEFB 170,17,68,34 0 DEFB 170,17,170,68 : DEFB 170,85,170,17 D DEFB 170,85,170,85 N DEFB 170,119,170,85 X DEFB 85,238,85,187 b DEFB 170,255,170,221 l DEFB 119,221,119,221 v DEFB 170,255,221,255  DEFB 119,255,221,255  DEFB 238,255,255,255  DEFB 255,255,255,255 ,17,170,68 : DEFB 170,85,170,17x ;SHPLOT-4*4 SHADED PLOT ;BC =POS 0-47,0-63 ;A=SHADE 0-16 (SHPLOT RLCA 2 RLCA < LD E,A F LD D,0 P LD HL,GRPHCS Z ADD HL,DE d EX DE,HL n LD A,C x AND %111110 RRCA LD L,A RR C SBC A,A XOR %11110000 LD C,A LD A,B AND %110000 RRCA OR #40 LD H,A LD A,B AND %1110  RLCA  RLCA  RLCA " RLCA , OR L 6 LD L,A @ RR B J SBC A,A T AND 4 ^ OR H h LD H,A r LD B,4 |SP1 LD A,C  CPL  AND (HL)  LD (HL),A  LD A,(DE)  INC DE  AND C  OR (HL)  LD (HL),A  INC H  DJNZ SP1  RET GRPHCS DEFB 0,0,0,0  DEFB 136,0,0,0  DEFB 136,0,34,0  DEFB 170,0,68,0  DEFB 136,34,136,34 & DEFB 170,17,68,34 0 DEFB 170,17,170,68 : DEFB 170,85,170,17 D DEFB 170,85,170,85 N DEFB 170,119,170,85 X DEFB 85,238,85,187 b DEFB 170,255,170,221 l DEFB 119,221,119,221 v DEFB 170,255,221,255  DEFB 119,255,221,255  DEFB 238,255,255,255  DEFB 255,255,255,255 ,17,170,68 : DEFB 170,85,170,17x ORG 59998  DEFW #0305  LD A,#18  LD (#FFFF),A ( LD A,#C3 2 LD (#FFF4),A < LD HL,START F LD (#FFF5),HL P DI Z LD A,#3A d LD I,A n IM 2 x EI RET START DI PUSH HL PUSH DE PUSH BC PUSH AF LD (59996),SP LD SP,59994 LD BC,(59998) S1 DJNZ S1 DEC C JR NZ,S1 LD HL,DATA LD DE,#5800-32 PUSH DE S2 EX DE,HL  POP HL  LD BC,288 " ADD HL,BC , BIT 2,H 6 JR NZ,S4 @ DEC H J PUSH HL T EX DE,HL ^ LD C,64 h DEFW J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J r POP DE | PUSH DE  LD B,55 S3 DJNZ S3  NOP  NOP  NOP  NOP  DEFW J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J  JR S2 S4 LD SP,(59996)  POP AF  POP BC  POP DE  POP HL  JP #38 J EQU #A0ED DATA EQU 50000 X ORG 58000 b DI l LD (59996),SP v LD SP,#5800  LD A,3 SS1 LD C,8  LD HL,GRDATA SS2 LD D,(HL)  INC HL  LD E,(HL)  INC HL  LD B,128 SS3 PUSH DE  DJNZ SS3  DEC C  JR NZ,SS2  DEC A  JR NZ,SS1  LD SP,(59996)  LD HL,#5800  LD DE,#5801 * LD BC,767 4 LD (HL),56 > LDIR H EI R RET \GRDATA DEFB 255,255,252,63,240,15,192,3,0,0,192,3,240,15,252,63 LD B,128 SS3 PUSH DE  DJNZ SS3  DEC C  JR NZ,SS2 x ORG 60000  JP RUN READ LD A,15  OUT (254),A  DI (V3 LD C,0 2 LD D,64 < CALL GETLEN A CALL GETLEN F LD HL,65280 PR1 CALL GETLEN Z LD (HL),B d INC L n JR NZ,R1 x EI RET GETLEN LD B,0 G1 INC B RET Z IN A,(254) XOR C AND D JP Z,G1 LD A,C XOR D LD C,A RET VERLIN LD A,E  SUB D  LD B,A  INC B " LD A,D , AND 7 6 LD H,A @ LD A,D J AND %11000000 T RRCA ^ RRCA h RRCA r OR H | OR #C0  LD H,A  LD A,C  RRCA  RRCA  RRCA  AND %11111  LD L,A  LD A,D  AND %111000  RLCA  RLCA  OR L  LD L,A  LD A,C  AND 7  LD C,1 & INC A 0VL1 RRC C : DEC A D JR NZ,VL1 NVL2 LD A,(HL) X XOR C b LD (HL),A l INC H v LD A,H  AND 7  JR NZ,VL3  LD A,32  ADD A,L  LD L,A  JR C,VL3  LD A,-8  ADD A,H  LD H,A VL3 DJNZ VL2  RET MAKTBL LD DE,65280 MT1 LD A,(DE)  LD B,A  INC E  LD A,(DE)  ADD A,B * LD L,A 4 LD H,#FE > INC (HL) H JR NZ,MT2 R DEC H \ INC (HL) fMT2 LD H,B p LD L,0 z LD C,A  LD B,L  PUSH DE  CALL DIVIDE  POP DE  LD H,#FC  INC (HL)  JR NZ,MT3  DEC H  INC (HL) MT3 INC E  JR NZ,MT1  RET CLRTBL LD HL,#FB00  LD DE,#FB01  LD BC,#3FF  LD (HL),0 $ LDIR . RET 8DIVIDE LD DE,32768 BD2 SLA C L RL B V JR C,D5 ` RR D j RR E t JR NC,D2 ~ LD HL,0  RET D5 RR B  RR C D1 AND A  SBC HL,BC  SBC A,A  CCF  RL E  RL D  JR C,D3  AND A  JR Z,D4  ADD HL,BC D4 SRL B  RR C  JR D1 D3 EX DE,HL  RET (GRAPH LD (V1),A 2 LD L,1 < EX DE,HL F LD HL,0 P EX DE,HL ZGR1 LD C,(HL) d DEC H n LD B,(HL) x INC H  EX DE,HL  AND A  SBC HL,BC  JR NC,GR2  LD HL,0 GR2 ADD HL,BC  EX DE,HL  INC L  JR NZ,GR1  LD BC,%0000001111111111  SCF GR3 RL E  RL D  JR C,GR4  RR B " RR C , JR GR3 6GR4 LD D,H @ LD E,1 JGR5 LD A,(DE) T LD L,A ^ DEC D h LD A,(DE) r LD H,A | INC D  PUSH BC  LD A,B  OR C  JR Z,GR6  ADD HL,BC GR7 RR B  RR C  CCF  JP C,GR6  RR H  RR L  JP GR7 GR6 LD C,E  PUSH DE  LD A,(V1)  LD E,A  SUB L  LD D,A & CALL VERLIN 0 POP DE : POP BC D INC E N JR NZ,GR5 X RET bRUN LD A,1 l LD (V2),A v LD HL,#5000  LD DE,#D800  LD BC,#800  LDIR  CALL CLRTBL  JP LOOP DISCRN LD DE,#C001  LD HL,#C000  LD BC,#FFF  LD (HL),0  LDIR  LD HL,#D800  LD BC,#800  LDIR  CALL MAKTBL  LD H,#FC  LD A,71  CALL GRAPH * LD H,#FE 4 LD A,143 > CALL GRAPH H LD DE,16384 R LD HL,#C000 \ LD BC,6144 f LDIR g LD A,(V3+1) h BIT 6,A i LD IX,23284 j LD (IX+0),120 k LD (IX+6),48 l JR Z,DS3 m LD (IX+0),48 n LD (IX+6),120 pDS3 LD A,(V2) z LD IX,23138  LD (IX+0),48  LD (IX+32),120  AND A  JR NZ,DS1  LD (IX+0),120  LD (IX+32),48 DS1 LD HL,0  LD B,0  LD DE,#FF00  DS2 LD A,(DE)  LD C,A $ ADD HL,BC . INC E 8 JR NZ,DS2 9 LD A,H : OR L ; RET Z B PUSH HL L RST #28 V DEFB #34,#C0,#48,#33,#E4,#A1,#AF,#38 ` POP BC j CALL #2D2B t RST #28 ~ DEFB #05,#27,#38 LD A,2 CALL #1601 LD A,22 RST #10 LD A,20 RST #10 LD A,20 RST #10 CALL #2DE3 RET LOOP LD A,(V2) AND A CALL NZ,CLRTBL CALL READ  CALL DISCRN  LP2 LD A,127 ( IN A,(254) 2 RRA < RET NC = RRA > JR NC,LP2 F LD A,254 P IN A,(254) Z RRA d CALL NC,CLRTBL e LD A,191 f IN A,(254) g RRA h JR C,LP3 i LD A,(V3+1) j XOR 127 k LD (V3+1),A n LP3 LD IX,V2 x LD A,247 IN A,(254) RRA JR C,LP1 LD (IX+0),0 LP1 RRA JR C,LOOP LD (IX+0),1 JR LOOP V1 DEFB 0 V2 DEFB 0 XX ENT XX A,191 f IN A,(254) g RRA h JR C,LP3 i LD A,(V3+ x ORG 64000  JP BASIC SCRNCL LD B,%01100011 ( CALL GETVAR 2 INC HL < INC HL F INC HL P LD A,(HL) Z LD HL,22528 d LD DE,22529 n LD BC,767 x LD (HL),A LDIR RET GETVAR LD HL,(23627) GTVAR1 LD A,(HL) CP 128 JR Z,ERROR CP B RET Z PUSH BC CALL #19B8 POP BC EX DE,HL JR GTVAR1 ERROR RST 8  DEFB 1 ERROR2 RST 8 " DEFB 10 ,BASIC EXX 6 PUSH HL @ LD B,%01111000 J CALL GETVAR T INC HL ^ INC HL h INC HL r LD C,(HL) | PUSH BC  LD B,%01111001  CALL GETVAR  POP BC  INC HL  INC HL  INC HL  LD B,(HL)  PUSH BC  LD B,%01111010  CALL GETVAR  INC HL  INC HL  INC HL  LD C,(HL)  LD A,C  AND A & LD HL,GRDATA 0 JR Z,BAS1 : LD D,0 DBAS2 LD A,(HL) N AND A X JR Z,ERROR2 b ADD A,7 l AND %11111000 v RRCA  RRCA  RRCA  LD B,A  INC HL  LD E,(HL)  INC HL BAS3 ADD HL,DE  DJNZ BAS3  DEC C  JR NZ,BAS2 BAS1 LD A,(HL)  AND A  JR Z,ERROR2  POP BC  CALL DISYML  POP HL  EXX * RET 4DISYML PUSH BC > LD A,C H AND 7 R LD E,A \ LD A,(HL) f INC HL p PUSH HL z LD IX,V0  LD (IX+0),A  ADD A,7  AND %11111000  RRCA  RRCA  RRCA  LD (IX+1),A  LD HL,#FF00  LD B,A  LD A,70 DS1 LD (HL),A  INC HL  LD (HL),#23  INC HL  ADD A,8  DJNZ DS1 $ LD (HL),#E5 . INC HL 8 XOR #40 B LD (HL),A L INC HL V LD (HL),0 ` INC HL j LD A,E t AND A ~ JR Z,DS2  LD C,E DS3 LD B,(IX+1)  INC B  LD A,24 DS4 LD (HL),#CB  INC HL  LD (HL),A  INC HL  INC A  DJNZ DS4  DEC C  JR NZ,DS3 DS2 LD B,E  INC B  XOR A DS5 RRA ( SCF 2 DJNZ DS5 < LD (IX+2),A F LD A,E P ADD A,(IX+0) Z LD E,A d AND 7 n LD B,A x INC B  LD A,255  SCF DS6 RRA  AND A  DJNZ DS6  LD (IX+3),A  LD A,E  ADD A,8  AND %11111000  RRCA  RRCA  RRCA  LD B,A  DEC B  JR NZ,DS7  LD DE,JUSTI " CALL ADCALL , JR DS8 6DS7 LD DE,BYTI @ CALL ADCALL J LD C,121 T DEC B ^ JR Z,DS9 hDS10 LD (HL),C r INC C | INC HL  LD DE,NXTBYT  CALL ADCALL  DJNZ DS10 DS9 LD (HL),C  INC HL  LD DE,LSTBYT  CALL ADCALL DS8 LD (HL),225  INC HL  LD (HL),#C9  POP HL  LD A,(HL)  INC HL  EXX  POP BC  LD E,A & LD A,C 0 AND %11111000 : RRCA D RRCA N RRCA X LD L,A b LD A,B l AND %111000 v RLCA  RLCA  OR L  LD L,A  LD A,B  AND 7  LD H,A  LD A,B  AND %11000000  RRCA  RRCA  RRCA  OR H  OR #40  LD H,A  LD B,E DS11 PUSH HL  EXX * CALL #FF00 4 EXX > POP HL H INC H R LD A,H \ AND 7 f JR NZ,DS12 p LD A,32 z ADD A,L  LD L,A  JR C,DS13  LD A,-8  ADD A,H  LD H,A DS12 DJNZ DS11  RET DS13 LD A,H  AND %11000  XOR %11000  JR NZ,DS12  LD H,#40  JR DS12  JUSTI LD A,B  EXX  LD D,A $ LD A,(IX+2) . OR (IX+3) 8 LD E,A B AND (HL) L LD (HL),A V LD A,E ` CPL j AND D t OR (HL) ~ LD (HL),A EXX RET BYTI LD A,B EXX LD D,A LD A,(IX+2) LD E,A AND (HL) LD (HL),A LD A,E CPL AND D OR (HL) LD (HL),A  INC L  EXX ( RET 2 NXTBYT EXX < LD (HL),A F INC L P EXX Z RET d LSTBYT EXX n LD D,A x LD A,(IX+3) LD E,A AND (HL) LD (HL),A LD A,E CPL AND D OR (HL) LD (HL),A EXX RET ADCALL LD (HL),#CD INC HL LD (HL),E  INC HL  LD (HL),D  INC HL " RET , V0 DEFB 0,0,0,0 6 XX ENT XX @ GRDATA EQU 50000 lx23 ORG 23296  JP SWITCH COMP DEFM ".TXT" (BUF DEFM " " 2V1 DEFW START <SWITCH LD HL,(V1) F LD DE,(23739) P LD (23739),HL Z LD (V1),DE d RET nSTART PUSH HL x PUSH DE PUSH BC LD DE,BUF LD HL,BUF+1 LD BC,9 LDIR LD (DE),A LD HL,BUF+6 LD DE,COMP LD B,4 L1 LD A,(DE) CP (HL) JR NZ,END INC HL  INC DE  DJNZ L1  LD HL,BUF " LD B,6 ,L2 LD A,(HL) 6 INC HL @ PUSH HL J PUSH BC T CALL #9F4 ^ POP BC h POP HL r DJNZ L2 | LD A,32  CALL #9F4  LD A,32  CALL #9F4 END POP BC  POP DE  POP HL  RET XX ENT XX  INC DE  DJNZ L1  LD HL,BUF " LD B,6 ,L2 LD A,(HL) 6 INC HL @ PUSH HL J PUSH BC T CALL #9F4 ^ POP BC h POP HL r DJFx ORG 60000  ENT 60000  LD IX,16384 ( LD DE,6912 2 < FF1 EQU 35 PF2 EQU 45 ZF3 EQU 55 dSAVE DI n PUSH DE x INC IX LD DE,512 LD L,254 LD IY,S1 JR S2 S3 LD A,D OR E NOP NOP JR Z,S4 LD L,(IX+0) INC IX JR S2 S4 LD L,254  LD IY,SAVEND  NOP  JR S2 "S8 LD A,E , AND 254 6 OR D @ CP 1 J SBC A,A T XOR 1 ^ LD L,A h JP S2 rS1 LD A,D | OR E  JP NZ,S8  LD L,(IX-1)  POP DE  LD IY,S3  NOP S2 XOR A  OUT (254),A  LD B,F2-3 S5 DJNZ S5  LD H,8  DEC DE  LD A,0  LD A,15 S6 OUT (254),A  RL L  SBC A,A & AND F3-F1 0 ADD A,F1-2 : CALL WASTE D NOP N NOP X NOP b NOP l LD B,A v XOR A  OUT (254),A S7 DJNZ S7  DEC H  LD A,15  JP NZ,S6  OUT (254),A  JP (IY) SAVEND EI WASTE RET 15 S6 OUT (254),A  RL L  SBC A,A & AND F3-F1 0 ADD A,F1-2 : CALL WASTE D NOP N NOP X NOP b NOP l LD B,A v XOR A  OUT (254),A S7 DJNZ S7  DEC H r x ORG 60000  ENT 60000  LD IX,16384 ( LD DE,6912 2 < FF1 EQU 35 PF2 EQU 45 ZF3 EQU 55 dSAVE DI n PUSH DE x INC IX LD DE,512 LD L,254 LD IY,S1 JR S2 S3 LD A,D OR E NOP NOP JR Z,S4 LD L,(IX+0) INC IX JR S2 S4 LD L,254  LD IY,SAVEND  NOP  JR S2 "S8 LD A,E , AND 254 6 OR D @ CP 1 J SBC A,A T XOR 1 ^ LD L,A h JP S2 rS1 LD A,D | OR E  JP NZ,S8  LD L,(IX-1)  POP DE  LD IY,S3  NOP S2 XOR A  OUT (254),A  LD B,F2-3 S5 DJNZ S5  LD H,8  DEC DE  LD A,0  LD A,15 S6 OUT (254),A  RL L  SBC A,A & AND F3-F1 0 ADD A,F1-2 : CALL WASTE D NOP N NOP X NOP b NOP l LD B,A v XOR A  OUT (254),A S7 DJNZ S7  DEC H  LD A,15  JP NZ,S6  OUT (254),A  JP (IY) SAVEND EI WASTE RET LOAD EXX  PUSH HL  LD B,64  DI L1 LD A,(LJ1)  LD (LJ2),A  LD (LJ3),A  LD (LJ5),A * XOR 8 4 LD (LJ1),A > LD (LJ4),A H LD (LJ6),A RL2 IN A,(254) \ AND B fLJ1 JP NZ,L2 p LD IY,LP1 z LD C,11  CALL LWASTE  CALL LWASTE  NOP  NOP  JR LBYT LP1 DEC L  JR NZ,L1  LD IY,LP2  LD C,8  JP LBYT LP2 LD IY,LP3  DEC L  JR NZ,L1  NOP  JR LBYT LP3 LD A,L $ CP 254 . JR Z,L3 8 DEC A B JR NZ,L1 L JR LBYT VLP4 LD (IX+0),L ` INC IX j NOP t NOP ~ NOP  LD A,C  OUT (254),A  LD A,R  LD D,A L4 IN A,(254)  AND B LJ2 JP Z,L4  LD A,R  SUB D  AND 127  LD H,A  EXX  DEC DE  LD A,D  OR E  EXX ( JR NZ,L5 2 EI < POP HL F EXX P LD IY,#5C3A ZLWASTE RET dL3 LD IY,LP4 n INC C xLBYT LD A,C  OUT (254),A  LD A,R  LD D,A L6 IN A,(254)  AND B LJ3 JP Z,L6  LD A,R  SUB D  AND 127  LD H,A  CALL LWASTE  LD A,0 L5 DEFW 0,0,0  LD L,1  LD A,C  AND 7 " OUT (254),A , LD A,R 6 LD D,A @L7 IN A,(254) J AND B TLJ4 JP Z,L7 ^ LD A,R h SUB D r AND 127 | ADD A,H  LD H,A  DEFW 0,0,0 L8 DEFB 0,0,0,0,0,0,0,0,0,0,0  LD A,C  OUT (254),A  LD A,R  LD D,A L9 IN A,(254)  AND B LJ5 JP Z,L9  LD A,R  SUB D  AND 127  LD E,A  CALL LWASTE  CALL LWASTE & NOP 0 NOP : NOP D LD A,C N XOR 7 X OUT (254),A b LD A,R l LD D,A vL10 IN A,(254)  AND B LJ6 JP Z,L10  LD A,R  SUB D  AND 127  ADD A,E  CP H  CCF  RL L  JR Z,L8  JP (IY) A  CALL LWASTE  CALL LWASTE & NOP 0 NOP : NOP D LD A,C N XOR 7 X OUT (254),A b LD A,R l LD D,A vL10 IN A,(254) E POP BC POP HL RET INTBL PUSH HL PUSH BC PUSH DE LD B,D LD C,E LD HL,TABLE LD A,(V4) AND A JR Z,IT1 IT3 LD E,(HL)  INC HL  LD D,(HL)  INC HL $ EX DE,HL . AND A 8 SBC HL,DE B JR Z,IT2 L JR NC,IT1 V EX DE,HL ` LD E,(HL) j INC HL t LD D,(HL) ~ INC HL  EX DE,HL  AND A  SBC HL,DE  JR NC,IT2  EX DE,HL  DEC A  JR NZ,IT3  SCF IT2 CCF IT1 POP DE  POP BC  POP HL  RET DISTBL DEFB #CF,#C9,#E9,#C2,#C4,#CA,#CC  DEFB #D2,#D4,#DA,#DC,#E2,#E4,#EA,#EC,#F2,#F4  DEFB #FA,#FC,#CD,#C3,#10,#20,#28,#30,#38,#18,#FD,#DD (DECTBL DEFW 10000,1000,100,10,1 2STR1 DEFB 22,0,0 < DEFM "LINES:" FIXTRAS DEFB #34,#35,#36,#46,#4E,#56,#5E,#66,#6E P DEFB #70,#71,#72,#73,#74,#75,#77,#7E,#86,#8E Z DEFB #96,#9E,#A6,#AE,#B6,#BE dV1 DEFW 0 nV2 DEFW 0 xV3 DEFW 0 V4 DEFW 0 V5 DEFW 0 LENS DEFB 32,4,0,4,96,4,64,4  DEFB 104,4,72,4,104,4,72,4  DEFB 0,0,0,0,0,0,0,0  DEFB 0,0,0,0,0,0,0,0  DEFB 0,0,0,0,0,0,0,0  DEFB 0,0,0,0,0,0,0,0  DEFB 10,132,8,164,9,132,9,132  DEFB 8,132,8,132,8,132,8,132 TABLE DEFS 1024 XX ENT XX S DEFB 32,4,0,4,96,4,64,4  DEFB 104,4,72,4,104,4,72,4  DEFB 0,0,0,0,0,0,0,0  DEFB 0,0,0,0,0,0,0,0  DEFB 0,0,0,0,0,0,0,0