Z80 DISASSEMBLER   + "P ? ";BASE% BASE BASEBASE "WELCOM" "INICI"  -0( "======================================="!- "S ? ";PC:"";2 PC PCPC*F KE$"" BASE BASEBASEPC d ^nA$AD$": "HD$( (HD$))IN$( (IN$))OP$(@(OP$))";"ZN$";"xA$ KE$: KE$"": d KE$"S": ($ "W ( S = )"; KE$: KE$""  "": ();: "" KE$"S": d , (PPPC: "HEX16":AD$HH$HD$"":ZN$"":HL$"HL" "READINST" TY  TY L]&TY(RL) X, , X, , x, , @, X, X, , X, , x, , @, X]0TY@(RL) \, , 4, X, H, , ` , , \, X, 4, X, H, X, ` , X I MIb RIXX(I) l q IN$X1$(I)"OP$X2$(I): "KODPAR":O1$OP$"OP$X3$(I): "KODPAR":O2$OP$ O2$"" O1$""O1$O1$","OP$O1$O2$ :'B "!:'IF RI=$ED THEN SOUND 30,200$ RI RI & RI ( RI  7*PPRI: "HEX8": "I ";H$;" !": ":'P =$ RI HL$"IX" : HL$"IY""READINST":D(PCBASE)PPD:"HEX8":D$H$ RI6 "CTIBYT"aRG$(@)"("HL$"+"D$")":RG$()"H"(HL$,):RG$( )"L"(HL$,)/D1$()HL$:D2$()HL$:FX  V ((OP$,)"(I" (OP$,)"+"D$")") RI6 RI "CTIBYT"lFX:RG$(@)"(HL)":D1$()"HL":D2$()"HL":HL$"HL":RG$()"H":RG$( )"L"::'U IN$"LD"OP$RG$(R2)","RG$(R1)* OP$"(HL),(HL)" IN$"HALT":OP$""LIN$AI$(R2)VOP$RG$(R1)`IN$"LD": "CTIWORD"OP$D1$(R3)","HH$IN$"INC":OP$D1$(R3):xIN$"INC"OP$RG$(R2):IN$"DEC": @IN$"LD": "CTIBYT"JOP$RG$(R2)","H$T$IN$"ADD":OP$HL$","D1$(R3):IN$"DEC":OP$D1$(R3):4IN$"JP": fHIN$"CALL": f\IN$"RET":OP$CO$(R2):f"CTIWORD"pOP$CO$(R2)","HH$z:IN$"POP": IN$"PUSH"OP$D2$(R3)IN$"RST":OP$RS$(R2):` IN$AI$(R2)j "CTIBYT":OP$"A,"H$t % :' # FX "CTIBYT":R3R1:R1@ "READINST" FX R3R1:R1@P TY IN$BT$(TY):OP$(R2)","RG$(R1) : IN$RO$(R2):OP$RG$(R1)+ R3@ FX OP$OP$","RG$(R3) RI6  :' ED& "READINST"+ TY : ^0 TY RL , , H , , : , : , : , : , , , , t, : , : , : , : : I `D FD(I)RI b N X "DEFB"b IN$Z1$(I):OP$Z2$(I)l IN$"IN" R2@ OP$"F,(C)": OP$RG$(R2)",(C)"  IN$"OUT" R2@ "DEFB" OP$"(C),"RG$(R2) H IN$"SBC"R OP$"HL,"D1$(R3)\  IN$"ADC": R IN$"LD") "CTIWORD":OP$"("HH$"),"D1$(R3)$ tIN$"LD")~ "CTIWORD":OP$D1$(R3)",("HH$")" B,C,D,E,H,L,(HL),A$ ADD,ADC,SUB,SBC,AND,XOR,OR,CP NZ,Z,NC,C,PO,PE,P,M 00,08,10,18,20,28,30,38 BC,DE,HL,SP BC,DE,HL,AF$RLC,RRC,RL,RR,SLA,SRA,SLIA,SRL "",BIT,RES,SET$44,NEG,""$45,RETN,""$4D,RETI,"""$67,RRD,"",$6F,RLD,""6$46,IM,0@$56,IM,1J$5E,IM,2T$47,LD,"I,A"^$57,LD,"A,I"h$4F,LD,"R,A"r$5F,LD,"A,R"|$A0,LDI ,""$A1,CPI,""$A2,INI,""$A3,OUTI,""$B0,LDIR,""$B1,CPIR,""$B2,INIR,""$B3,OTIR,""$A8,LDD ,""$A9,CPD,""$AA,IND,""$AB,OUTD,""$B8,LDDR,""$B9,CPDR,""$BA,INDR,""$BB,OTDR,"")0 FD(`),Z1$(`),Z2$(`): I `D FD(I),Z1$(I),Z2$(I)NXMI%b XX(MI),X1$(MI),X2$(MI),X3$(MI)l I MI"v XX(I),X1$(I),X2$(I),X3$(I) "INICI"f RG$(`),AI$(`),CO$(`),RS$(`),D1$(@),D2$(@),RO$(`),BT$(@)I`:RG$(I):I`:AI$(I):I`:CO$(I):I`:RS$(I):I@:D1$(I):I@:D2$(I):I`:RO$(I):I@:BT$(I):  0$00,NOP,"",""$02,LD,(BC),A $12,LD,(DE),A$0A,LD,A,(BC) $1A,LD,A,(DE)*$07,RLCA,"",""4$17,RLA ,"","">$0F,RRCA,"",""H$1F,RRA ,"",""R$27,DAA,"",""\$37,SCF,"",""f$2F,CPL,"",""p$3F,CCF,"",""z$10,DJNZ,/R,""$20,JR,NZ,/R$30,JR,NC,/R$18,JR,/R,""$28,JR,Z,/R$38,JR,C,/R$22,LD,/W(,/H$32,LD,/W(,A$2A,LD,/H,/W($3A,LD,A,/W($C3,JP,/W,""$D3,OUT,/B(,A$E3,EX,(SP),/H$F3,DI,"",""$C9,RET,"",""$D9,EXX,"",""$E9,JP,/HJ,""$$F9,LD,SP,/H.$DB,IN,A,/B(8$EB,EX,DE,/HB$FB,EI,"",""L$08,EX,AF,"AF'"V$CD,CALL,/W,"":'V 8 HEXA  "HEX8"H$(PP)  (H$) H$"0"H$:'V 16  "HEX16"HH$(PP)) (HH$) HH$"0"HH$:  :'R  "RELADR"( "CTIBYT"2 PP~ PPPP <PPPCPPF "HEX16"P:'C Z "READINST"d "CTIBYT":RIPPnR1RI `xR2(RIR1) `R3(RI) @TY(RI) @RLRI pRH(RI) p:'C , PC "CTIBYT" PP(PCBASE):PCPC  "HEX8"HD$HD$H$0 PP ZN$ZN$"." : ZN$ZN$(PP) :'C PC "CTIWORD" "CTIBYT":P5PP "CTIBYT":PPPPP5 "HEX16"p "KODPAR"z (OP$,)"/" 8P1$(OP$,,):P2$(OP$,@,)P1$"B""CTIBYT":OP$H$P1$"R""RELADR":OP$HH$ P1$"W""CTIWORD":OP$HH$;P1$"H" OP$D1$(): P2$"J" OP$"("HL$")"  P2$"(" OP$"("OP$")"X "WELCOM"b"***************************************** ** Z80 DISASSEMBLER (M.V. .8707) ** *****************************************"l @ "DEFB"E:' JOP$"":IN$"DEFB""T I (HD$) "^ OP$OP$(HD$,I,)","hrOP$(OP$,(OP$))| x.[],<,"L",, YP ( Q$,T$"2 TI < 4