* DISASSEMBLER * * * PRINT MACRO TADR LDX #0 PR1@ LDA TADR,X BEQ PR2@ STX POX JSR PUT LDX POX INX BNE PR1@ PR2@ OUT MEND ORG $1B00 ZAC EPZ 203 ;4 POS EPZ 205 ;6 NAZ EPZ 207 ;8 START PRINT THEAD JSR INPNUM LDA CIS STA ZAC LDA CIS+1 STA ZAC+1 LDA #128+64 STA MOD STA MODI STAR JSR DISASS SKEY JSR GET CMP #'D' BEQ START CMP #32 BNE STAR1 LDA ZAC CLC ADC POCPOS STA ZAC LDA ZAC+1 ADC #0 STA ZAC+1 LDA #1 JSR DISDAS JMP SKEY STAR1 CMP #155 BNE STAR2 LDA POS STA ZAC LDA POS+1 STA ZAC+1 JMP STAR STAR2 CMP #'B' BNE STAR3 LDA MOD EOR #128 STA MOD JMP STAR STAR3 CMP #'A' BNE STAR4 LDA MOD EOR #64 STA MOD JMP STAR STAR4 CMP #'V' BNE STAR5 LDA MODI EOR #128 STA MODI JMP STAR STAR5 STA POM AND #%11101111 CMP #33 BCC STAR6 CMP #40 BCS STAR6 CMP POM BEQ STARD SEC SBC #33 ASL ;*2 TAX LDA TABDEF,X STA ZAC LDA TABDEF+1,X STA ZAC+1 JMP STAR STARD SEC SBC #33 ASL ;*2 TAX LDA ZAC STA TABDEF,X LDA ZAC+1 STA TABDEF+1,X JMP SKEY STAR6 LDA POM CMP #27 BNE STAR7 BRK JMP (10) STAR7 JMP SKEY DISASS LDA ZAC STA POS LDA ZAC+1 STA POS+1 LDA #125 JSR PUT LDA #23 DISDAS STA RIAD LDY #0 LDA (ZAC),Y JSR DISIN INX STX POCPOS DIS0 LDA #0 STA RBP LDX #80 LDA #32 DIS01 STA RBUF,X DEX BPL DIS01 LDA POS STA CIS LDA POS+1 STA CIS+1 BIT MOD BPL DIS1 JSR DPRN JMP DIS2 DIS1 LDA #'$' LDX RBP STA RBUF,X INC RBP JSR HPRN DIS2 LDY #0 LDA (POS),Y JSR DISIN STA IINF INC RBP INC RBP STX POCIN STX COU LDY #0 STY YR DIS3 LDY YR LDA (POS),Y JSR HPRB INC RBP LDA COU BEQ DIS4 DEC COU INC YR JMP DIS3 DIS4 LDA #17 ;POZICIA V RIADKU STA RBP LDX RBP LDY #0 DIS5 LDA (NAZ),Y STA RBUF,X INC RBP INX INY CPY #3 BCC DIS5 INC RBP LDY #1 LDA (POS),Y STA CIS INY LDA (POS),Y STA CIS+1 LDA IINF AND #%00000111 BEQ ZEROP CMP #1 BEQ INDIR CMP #2 BEQ IMMED CMP #3 BEQ RELAT CMP #6 BNE DIS55 JMP ABSOL DIS55 CMP #7 BEQ WWORD JMP CONT WWORD JMP WORD IMMED LDX RBP LDA #'#' STA RBUF,X INC RBP JMP ZEROP INDIR LDX RBP LDA #'(' STA RBUF,X INC RBP LDA IINF CMP #1 BEQ ABSOL ZEROP LDA #0 STA CIS+1 BIT MODI BPL ZEROP1 JSR DPRB JMP CONT ZEROP1 JSR SHPRB JMP CONT RELAT LDA CIS BMI RELATM LDA POS CLC ADC #2 PHP CLC ADC CIS STA CIS LDA POS+1 ADC #0 PLP ADC #0 STA CIS+1 RELAT1 INC RBP BIT MOD BPL RELATH JMP ABSOL2 RELATH JMP ABSOL1 RELATM LDA POS SEC SBC CIS STA CIS LDA POS+1 SBC #0 STA CIS+1 LDA CIS CLC ADC #2 STA CIS LDA CIS+1 ADC #0 STA CIS+1 JMP RELAT1 ABSOL BIT MODI BPL ABSOL1 ABSOL2 JSR DPRN JMP CONT ABSOL1 JSR SHPRN JMP CONT WORD LDA CIS+1 STA COU LDA #0 STA CIS+1 BIT MODI BPL WORD1 JSR DPRB JMP WORD2 WORD1 JSR SHPRB WORD2 INC RBP LDA COU STA CIS JMP ZEROP CIAX LDX RBP LDA #44 STA RBUF,X INX LDA #'X' STA RBUF,X INC RBP INC RBP LDA IINF AND #%00011000 TAY JMP CONT2 CIAY LDX RBP LDA #44 STA RBUF,X INX LDA #'Y' STA RBUF,X INC RBP INC RBP JMP CONT1 CONT LDA IINF AND #%00011000 CMP #8 BEQ CIAX TAY CONT2 LDA IINF AND #%00000111 CMP #1 BNE DIS6 LDX RBP LDA #')' STA RBUF,X INC RBP DIS6 TYA CMP #16 BEQ CIAY CONT1 LDX RBP LDA #155 STA RBUF,X INC RBP INX LDA #0 STA RBUF,X PRINT RBUF DIS7 INC POS BNE DIS8 INC POS+1 DIS8 LDA POCIN BEQ DIS9 DEC POCIN JMP DIS7 DIS9 DEC RIAD BEQ DIS10 JMP DIS0 DIS10 LDA POCPOS RTS SHPRN LDX RBP LDA #'$' STA RBUF,X INC RBP JMP HPRN SHPRB LDX RBP LDA #'$' STA RBUF,X INC RBP LDA CIS JMP HPRB DISIN ASL BCS DISIN1 TAY LDA TINS1,Y TAX INY LDA TINS1,Y JMP DISIN2 DISIN1 TAY LDA TINS1+256,Y TAX INY LDA TINS1+256,Y DISIN2 TAY TXA ASL ASL PHP CLC ADC #TNIN&255 STA NAZ LDA #TNIN/256 ADC #0 STA NAZ+1 LDA NAZ+1 PLP ADC #0 STA NAZ+1 TYA AND #%00000110 CMP #4 BCS DISIN3 LDX #1 JMP DISIN4 DISIN3 SEC SBC #4 TAX DISIN4 TYA CMP #1 BNE DISIN44 LDX #2 DISIN44 TYA BPL DISIN5 BIT MOD BVC DISIN5 LDX #0 LDA #TOOO&255 STA NAZ LDA #TOOO/256 STA NAZ+1 LDA #%00000100 TAY DISIN5 TYA LDY #0 RTS INPNUM LDA #0 STA CIS STA CIS+1 STA RY INPNU1 LDA #0 STA POM JSR GET CMP #'$' BNE INPNNS JMP INPNUS INPNNS CMP #155 BNE INPNNN JMP INPNEN INPNNN CMP #126 BNE INPNNDE JMP INPNDE INPNNDE SEC SBC #'0' BCC INPNU1 CMP #10 BCS INPNU1 STA ACC LDA CIS STA CISO LDA CIS+1 STA CISO+1 LDA ACC CLC ADC #'0' JSR PUT LDA CIS ASL STA CIS LDA CIS+1 ROL STA CIS+1 LDA CIS ASL STA POM LDA CIS+1 ROL STA POM+1 LDA POM ASL STA POM LDA POM+1 ROL STA POM+1 LDA CIS CLC ADC POM STA CIS LDA CIS+1 ADC POM+1 STA CIS+1 LDA ACC CLC ADC CIS STA CIS LDA CIS+1 ADC #0 STA CIS+1 INC RY LDA RY CMP #5 BCS INPNU11 JMP INPNU1 INPNU11 LDA #0 STA POM INPNU2 JSR GET CMP #155 BEQ INPNEN CMP #126 BEQ INPNDE BNE INPNU2 INPNEN LDA #155 JSR PUT RTS INPNDE LDA RY BEQ INPNDD1 JMP INPND1 INPNDD1 LDA POM BEQ INPND0 LDA #126 JSR PUT LDA #0 STA CIS STA CIS+1 INPND0 JMP INPNU1 INPNUS LDA RY BNE INPND0 LDA #'$' JSR PUT INPNS1 LDA #128 STA POM JSR GET CMP #155 BEQ INPNEN CMP #126 BEQ INPNDE STA ACC SEC SBC #'0' BCC INPNS1 CMP #10 BCC INPNS2 LDA ACC SEC SBC #'A' BCC INPNS1 CMP #6 BCS INPNS1 CLC ADC #10 INPNS2 STA POM LDA CIS STA CISO LDA CIS+1 STA CISO+1 LDA CIS+1 ASL ASL ASL ASL STA CIS+1 LDA CIS LSR LSR LSR LSR CLC ADC CIS+1 STA CIS+1 LDA CIS ASL ASL ASL ASL CLC ADC POM STA CIS LDA ACC JSR PUT INC RY LDA RY CMP #4 BCC INPNS1 LDA #128 STA POM JMP INPNU2 INPND1 DEC RY LDA CISO STA CIS LDA CISO+1 STA CIS+1 LDA #126 JSR PUT LDA POM BNE INPND2 JMP INPNU1 INPND2 JMP INPNS1 HPRB STA POM LSR LSR LSR LSR CLC ADC #'0' CMP #58 BCC HPRB1 CLC ADC #7 HPRB1 LDX RBP STA RBUF,X INC RBP LDA POM AND #$0F CLC ADC #'0' CMP #58 BCC HPRB2 CLC ADC #7 HPRB2 LDX RBP STA RBUF,X INC RBP RTS HPRN LDA CIS+1 JSR HPRB LDA CIS JSR HPRB RTS DPRN LDY #0 DPRN1 LDA CIS SEC SBC #16 STA CISO LDA CIS+1 SBC #39 STA CISO+1 BCC DPRN2 LDA CISO STA CIS LDA CISO+1 STA CIS+1 INY JMP DPRN1 DPRN2 JSR CPRN LDY #0 DPRN3 LDA CIS SEC SBC #232 STA CISO LDA CIS+1 SBC #3 STA CISO+1 BCC DPRN4 LDA CISO STA CIS LDA CISO+1 STA CIS+1 INY JMP DPRN3 DPRN4 JSR CPRN DPRB LDY #0 DPRN5 LDA CIS SEC SBC #100 STA CISO LDA CIS+1 SBC #0 STA CISO+1 BCC DPRN6 LDA CISO STA CIS LDA CISO+1 STA CIS+1 INY JMP DPRN5 DPRN6 JSR CPRN LDY #0 DPRN7 LDA CIS SEC SBC #10 STA CISO LDA CIS+1 SBC #0 STA CISO+1 BCC DPRN8 LDA CISO STA CIS LDA CISO+1 STA CIS+1 INY JMP DPRN7 DPRN8 JSR CPRN LDA CIS TAY JSR CPRN RTS CPRN TYA CLC ADC #'0' LDX RBP STA RBUF,X INC RBP RTS PUT EQU $F2B0 GET EQU $F2F8 CIO EQU $E456 CIS DFW 0 CISO DFW 0 RY DFB 0 YR DFB 0 ACC DFB 0 POM DFW 0 POX DFB 0 MOD DFB 0 MODI DFB 0 RBP DFB 0 POCIN DFB 0 COU DFB 0 IINF DFB 0 RIAD DFB 0 POCPOS DFB 0 TABDEF DFW 0,0,0,0,0,0,0,0 RBUF EQU $0580 THEAD ASC ' DISASSEMBLER ver 1.0' DFB 155 ASC 'Copyright (c)Tomi 1992 by Marek Zelem' DFB 155,155 ASC 'START ADRESS:' DFB 0 TINS2 EQU TINS1+256 TINS1 DFB 14,4 DFB 46,9 DFB 17,132 DFB 5,137 DFB 62,128 DFB 46,0 DFB 4,0 DFB 5,128 DFB 48,4 DFB 46,2 DFB 4,5 DFB 5,130 DFB 63,135 DFB 46,6 DFB 4,6 DFB 5,134 DFB 13,3 DFB 46,17 DFB 17,132 DFB 5,145 DFB 62,128 DFB 46,8 DFB 4,8 DFB 5,136 DFB 18,4 DFB 46,22 DFB 44,132 DFB 5,150 DFB 63,135 DFB 46,14 DFB 4,14 DFB 5,142 DFB 35,6 DFB 2,9 DFB 17,132 DFB 51,137 DFB 10,0 DFB 2,0 DFB 52,0 DFB 51,128 DFB 50,4 DFB 2,2 DFB 52,5 DFB 51,130 DFB 10,6 DFB 2,6 DFB 52,6 DFB 51,134 DFB 11,3 DFB 2,17 DFB 17,132 DFB 51,145 DFB 62,128 DFB 2,8 DFB 52,8 DFB 51,136 DFB 59,4 DFB 2,22 DFB 44,132 DFB 51,150 DFB 63,135 DFB 2,14 DFB 52,14 DFB 51,142 DFB 55,4 DFB 29,9 DFB 17,132 DFB 40,137 DFB 62,128 DFB 29,0 DFB 41,0 DFB 40,128 DFB 47,4 DFB 29,2 DFB 41,5 DFB 1,130 DFB 34,6 DFB 29,6 DFB 41,6 DFB 40,134 DFB 15,3 DFB 29,17 DFB 17,132 DFB 40,145 DFB 62,128 DFB 29,8 DFB 41,8 DFB 40,136 DFB 20,4 DFB 29,22 DFB 44,132 DFB 40,150 DFB 63,135 DFB 29,14 DFB 41,14 DFB 40,142 DFB 56,4 DFB 0,9 DFB 17,132 DFB 54,137 DFB 62,128 DFB 0,0 DFB 53,0 DFB 54,128 DFB 49,4 DFB 0,2 DFB 53,5 DFB 3,130 DFB 34,1 DFB 0,6 DFB 53,6 DFB 54,134 DFB 16,3 DFB 0,17 DFB 17,132 DFB 54,145 DFB 62,128 DFB 0,8 DFB 53,8 DFB 54,136 DFB 61,4 DFB 0,22 DFB 44,132 DFB 54,150 DFB 63,135 DFB 0,14 DFB 53,14 DFB 54,142 DFB 62,128 DFB 64,9 DFB 62,128 DFB 6,137 DFB 66,0 DFB 64,0 DFB 65,0 DFB 6,128 DFB 27,4 DFB 74,4 DFB 70,4 DFB 73,130 DFB 66,6 DFB 64,6 DFB 65,6 DFB 6,134 DFB 7,3 DFB 64,17 DFB 17,132 DFB 6,145 DFB 66,8 DFB 64,8 DFB 65,16 DFB 6,144 DFB 72,4 DFB 64,22 DFB 71,4 DFB 73,150 DFB 74,4 DFB 64,14 DFB 43,134 DFB 42,134 DFB 39,2 DFB 37,9 DFB 38,2 DFB 36,137 DFB 39,0 DFB 37,0 DFB 38,0 DFB 36,128 DFB 68,4 DFB 37,2 DFB 67,4 DFB 45,130 DFB 39,6 DFB 37,6 DFB 38,6 DFB 36,134 DFB 8,3 DFB 37,17 DFB 17,132 DFB 36,145 DFB 39,8 DFB 37,8 DFB 38,16 DFB 36,136 DFB 21,4 DFB 37,22 DFB 69,4 DFB 74,4 DFB 39,14 DFB 37,14 DFB 38,22 DFB 36,150 DFB 24,2 DFB 22,9 DFB 62,128 DFB 28,137 DFB 24,0 DFB 22,0 DFB 25,0 DFB 28,128 DFB 33,4 DFB 22,2 DFB 26,4 DFB 57,130 DFB 24,6 DFB 22,6 DFB 25,6 DFB 28,134 DFB 12,3 DFB 22,17 DFB 17,132 DFB 28,145 DFB 62,128 DFB 22,8 DFB 25,8 DFB 28,136 DFB 19,4 DFB 22,22 DFB 44,132 DFB 28,150 DFB 63,135 DFB 22,14 DFB 25,14 DFB 28,142 DFB 23,2 DFB 58,9 DFB 62,128 DFB 31,137 DFB 23,0 DFB 58,0 DFB 30,0 DFB 31,128 DFB 32,4 DFB 58,2 DFB 44,4 DFB 74,4 DFB 23,6 DFB 58,6 DFB 30,6 DFB 31,134 DFB 9,3 DFB 58,17 DFB 17,132 DFB 31,145 DFB 62,128 DFB 58,8 DFB 30,8 DFB 31,136 DFB 60,4 DFB 58,22 DFB 44,132 DFB 31,150 DFB 63,135 DFB 58,14 DFB 30,14 DFB 31,142 TOOO ASC '??? ' TNIN ASC 'ADC ' ASC 'ALR ' ASC 'AND ' ASC 'ARR ' ASC 'ASL ' ASC 'ASO ' ASC 'AXS ' ASC 'BCC ' ASC 'BCS ' ASC 'BEQ ' ASC 'BIT ' ASC 'BMI ' ASC 'BNE ' ASC 'BPL ' ASC 'BRK ' ASC 'BVC ' ASC 'BVS ' ASC 'CIM ' ASC 'CLC ' ASC 'CLD ' ASC 'CLI ' ASC 'CLV ' ASC 'CMP ' ASC 'CPX ' ASC 'CPY ' ASC 'DEC ' ASC 'DEX ' ASC 'DEY ' ASC 'DCM ' ASC 'EOR ' ASC 'INC ' ASC 'INS ' ASC 'INX ' ASC 'INY ' ASC 'JMP ' ASC 'JSR ' ASC 'LAX ' ASC 'LDA ' ASC 'LDX ' ASC 'LDY ' ASC 'LSE ' ASC 'LSR ' ASC 'MKA ' ASC 'MKX ' ASC 'NOP ' ASC 'OAL ' ASC 'ORA ' ASC 'PHA ' ASC 'PHP ' ASC 'PLA ' ASC 'PLP ' ASC 'RLA ' ASC 'ROL ' ASC 'ROR ' ASC 'RRA ' ASC 'RTI ' ASC 'RTS ' ASC 'SAX ' ASC 'SBC ' ASC 'SEC ' ASC 'SED ' ASC 'SEI ' ASC 'SKB ' ASC 'SKW ' ASC 'STA ' ASC 'STX ' ASC 'STY ' ASC 'TAX ' ASC 'TAY ' ASC 'TSX ' ASC 'TXA ' ASC 'TXS ' ASC 'TYA ' ASC 'XAA ' ASC '??? ' ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ