; DA8085 Version 1.3C3 ; Disassembly of asmedit.bin ; File is 1792D[00700H] bytes ; Disassembled on Sun Dec 15 15:00:52 2024 ; Out of Range Label Definitions RESET EQU 00000H ; IOBYT EQU 00003H ; A0004 EQU 00004H ; A0011 EQU 00011H ; A0100 EQU 00100H ; A01FF EQU 001FFH ; A03FF EQU 003FFH ; A04FF EQU 004FFH ; BPTR EQU 01F80H ; A1F82 EQU 01F82H ; A1F83 EQU 01F83H ; A1F84 EQU 01F84H ; A322A EQU 0322AH ; J_RI EQU 03806H ; J_CO EQU 03809H ; J_PO EQU 0380CH ; J_START EQU 0381EH ; J_COMP EQU 03821H ; J_NULL EQU 03824H ; J_TRAN EQU 03827H ; J_LER EQU 0382AH ; J_BLK EQU 0382DH ; J_CRLF EQU 03830H ; J_EXPR EQU 03833H ; J_HILO EQU 03836H ; J_LADR EQU 03839H ; J_LBYTE EQU 0383CH ; J_NIBBLE EQU 0383FH ; J_PBYTE EQU 03842H ; J_PEOL EQU 03845H ; J_TI EQU 03848H ; ACDC3 EQU 0CDC3H ; ; Port Definitions TTYIO EQU 00000H ; TTYSC EQU 00001H ; P0002 EQU 00002H ; P0003 EQU 00003H ; CRTIO EQU 00004H ; CRTSC EQU 00005H ; P0006 EQU 00006H ; P00D6 EQU 000D6H ; P00DE EQU 000DEH ; P00FF EQU 000FFH ; ASEG ; ASCII character equates BS EQU 008H HT EQU 009H LF EQU 00AH CR EQU 00DH ; 160 symbols defined ; Origin set to 3000H, Binary file delta set to 0000 ORG 03000H RE3000: JMP RESET JMP RESET JMP J35FA JMP J3639 JMP RESET JMP J365A JMP RESET JMP RESET JMP RESET RE301B: JMP J3399 RE301E: JMP J346E RE3021: JMP J34B9 RE3024: JMP J351E RE3027: JMP J35B9 JMP J356A RE302D: JMP J3036 RE3030: JMP J3675 JMP RESET J3036: MVI C,003H CALL J_EXPR POP H MOV A,L CPI 003H JNC J_LER STA A1F84 POP H SHLD A1F82 POP H SHLD BPTR JMP J30DA GNBYTE: LHLD BPTR MOV A,M INX H SHLD BPTR RET C3059: INR A ANI 007H CPI 006H JC J3063 ADI 003H J3063: CPI 005H JC J306A ADI 002H J306A: ADI 'A' MOV C,A JMP OIO C3070: MVI B,004H J3072: MOV C,M CALL OIO INX H DCR B JNZ J3072 MVI C,' ' JMP OIO OBYTE: PUSH PSW RRC RRC RRC RRC ANI 00FH CALL CONV POP PSW ANI 00FH CONV: ADI 090H DAA ACI '@' DAA MOV C,A OIO: LDA A1F84 ANA A JZ J_CO DCR A JZ J_PO CALL J_PO JMP J_CO HIREG: MOV A,D ANI '8' RRC RRC RRC RET C30AC: CALL HIREG ADD A MOV C,A LXI H,A3389 DAD B MOV C,M CALL OIO INX H MOV C,M CALL OIO MVI C,' ' CALL OIO JMP OIO C30C6: CALL HIREG ANI 006H CPI 006H JNZ C3059 MVI C,'S' CALL OIO MVI C,'P' JMP OIO J30DA: MVI C,CR CALL OIO MVI C,LF CALL OIO LHLD A1F82 XCHG LHLD BPTR DCX H CALL J_HILO JC J_START MVI C,'.' CALL OIO MOV A,H CALL OBYTE MOV A,L CALL OBYTE MVI C,' ' CALL OIO CALL OIO CALL GNBYTE MOV D,A LXI H,A328C LXI B,A0011 J3111: CMP M JZ J327E INX H DCR C JNZ J3111 MVI C,LF J311C: CMP M JZ J3260 INX H DCR C JNZ J311C MVI C,006H J3127: CMP M JZ J3243 INX H DCR C JNZ J3127 ANI 0C0H CPI '@' JZ J3229 CPI 080H JZ J321A MOV A,D ANI 0C7H SUI 004H JZ J320B DCR A JZ J3205 DCR A JZ J31F1 MOV A,D ANI 0C0H JZ J31BD MOV A,D ANI 0C7H SUI 0C0H JZ J31B2 SUI 002H JZ J31A7 SUI 002H JZ J3194 SUI 003H JZ J3185 MOV A,D ANI 007H MOV C,A LXI H,A3380 DAD B CALL C3070 CALL HIREG CPI 006H JNZ J3214 LXI H,A337D CALL C3070 JMP J30DA J3185: LXI H,A3379 CALL C3070 CALL HIREG CALL OBYTE JMP J30DA J3194: MVI C,'C' CALL OIO CALL C30AC J319C: MVI C,'.' CALL OIO CALL C3251 JMP J30DA J31A7: MVI C,'J' CALL OIO CALL C30AC JMP J319C J31B2: MVI C,'R' CALL OIO CALL C30AC JMP J30DA J31BD: LXI H,A3361 MOV A,D ANI 00FH DCR A JZ J31DB CPI 004H JC J31CE SUI 005H J31CE: ADD A ADD A MOV C,A DAD B CALL C3070 CALL C30C6 JMP J30DA J31DB: CALL C3070 CALL C30C6 MVI C,',' CALL OIO MVI C,'0' CALL OIO CALL C3251 JMP J3276 J31F1: LXI H,A335D CALL C3070 CALL HIREG CALL C3059 MVI C,',' CALL OIO JMP J326B J3205: LXI H,A3359 JMP J320E J320B: LXI H,A3355 J320E: CALL C3070 CALL HIREG J3214: CALL C3059 JMP J30DA J321A: MOV A,D ANI '8' RRC MOV C,A LXI H,A3335 DAD B CALL C3070 JMP J323A J3229: LXI H,A3331 CALL C3070 CALL HIREG CALL C3059 MVI C,',' CALL OIO J323A: MOV A,D ANI 007H CALL C3059 JMP J30DA J3243: MOV A,C ADD A ADD A MOV C,A LXI H,A3315 DAD B CALL C3070 JMP J319C C3251: CALL GNBYTE MOV D,A CALL GNBYTE CALL OBYTE MOV A,D CALL OBYTE RET J3260: MOV A,C ADD A ADD A MOV C,A LXI H,A32ED DAD B CALL C3070 J326B: MVI C,'0' CALL OIO CALL GNBYTE CALL OBYTE J3276: MVI C,'H' CALL OIO JMP J30DA J327E: MOV A,C ADD A ADD A MOV C,A LXI H,A32A9 DAD B CALL C3070 JMP J30DA A328C: DB 000H, 007H, 00FH, 017H, 01FH, 027H, 02FH, 037H ;328C-000H 007H 00FH 017H 01FH ''' '/' '7' DB 03FH, 076H, 0C9H, 0E3H, 0E9H, 0EBH, 0F3H, 0F9H ;3294-'?' 'v' 0C9H 0E3H 0E9H 0EBH 0F3H 0F9H DB 0FBH, 0C6H, 0CEH, 0D3H, 0D6H, 0DBH, 0DEH, 0E6H ;329C-0FBH 0C6H 0CEH 0D3H 0D6H 0DBH 0DEH 0E6H DB 0EEH, 0F6H, 0FEH, 022H, 02AH ;32A4-0EEH 0F6H 0FEH '"' '*' A32A9: DB 032H, 03AH, 0C3H, 0CDH ;32A9-'2' ':' 0C3H 0CDH DB 'EI SPHLDI XCHGPCHLXTHLRET HLT CMC STC CMA DAA RAR RAL ' ;32AD- DB 'RRC RLC ' ;32E5- A32ED: DB 'NOP CPI ORI XRI ANI SBI IN SUI OUT ACI ' ;32ED- A3315: DB 'ADI CALLJMP LDA STA LHLDSHLD' ;3315- A3331: DB 'MOV ' ;3331- A3335: DB 'ADD ADC SUB SBB ANA XRA ORA CMP ' ;3335- A3355: DB 'INR ' ;3355- A3359: DB 'DCR ' ;3359- A335D: DB 'MVI ' ;335D- A3361: DB 'LXI STAXINX DAD LDAXDCX ' ;3361- A3379: DB 'RST ' ;3379- A337D: DB 'PSW' ;337D- A3380: DB ' POP PUSH' ;3380- A3389: DB 'NZZ NCC POPEP M ' ;3389- J3399: CALL J_TI PUSH PSW CALL J_TI CPI ',' JNZ J_LER POP PSW CPI '2' MVI C,002H JZ J_NULL CPI '4' JZ J33B7 CPI '8' JNZ J_LER J33B7: MVI C,003H CALL J_EXPR CALL J_CRLF MVI A,'0' OUT TTYSC MVI A,0 STA A0004 OUT P00FF POP B POP D POP H PUSH H PUSH D PUSH B J33D0: CALL C345C XRA M ANA M JNZ J33E7 INX B CALL J_HILO JNC J33D0 JMP J33F4 J33E2: CALL C345C XRA M ANA M J33E7: CNZ C3503 INX B CALL J_HILO JNC J33E2 JMP J_LER J33F4: LDA A0004 CPI 'd' JNZ J340E LXI B,A04FF J33FF: CALL C3453 DCX B MOV A,B ANA A JNZ J33FF POP B POP D POP H JMP J34EE J340E: LXI H,A0004 INR M MOV A,M OUT P00FF POP B POP D POP H PUSH H PUSH D PUSH B J341B: MOV A,M CMA OUT P0003 MOV A,C CMA OUT P0002 MOV A,B CMA RLC RLC RLC RLC ANI '0' ORI '@' OUT TTYSC NOP NOP ORI 080H OUT TTYSC CALL C3453 ANI 'p' OUT TTYSC INX B CALL J_HILO JNC J341B MVI A,0 OUT TTYSC MVI H,'Z' J3449: CALL C3453 DCR H JNZ J3449 JMP J33F4 C3453: PUSH D MVI E,'N' J3456: DCR E JNZ J3456 POP D RET C345C: MOV A,B CMA RLC RLC RLC RLC ANI '0' OUT TTYSC MOV A,C CMA OUT P0002 IN P0002 CMA RET J346E: CALL J_TI PUSH PSW CALL J_TI CPI ',' JNZ J_LER POP PSW CPI '2' JZ J_TRAN CPI '4' JNZ J348B LXI D,A01FF JMP J3493 J348B: CPI '8' JNZ J_LER LXI D,A03FF J3493: PUSH D MVI C,001H CALL J_EXPR CALL J_CRLF POP D POP H LXI B,RESET DAD D XCHG MVI A,01EH OUT TTYSC J34A7: CALL C345C MOV M,A CMP M JNZ J_LER INX B CALL J_HILO JNC J34A7 JMP J_START J34B9: CALL J_TI PUSH PSW CALL J_TI CPI ',' JNZ J_LER POP PSW CPI '2' JZ J_COMP CPI '4' JNZ J34D6 LXI D,A01FF JMP J34DE J34D6: CPI '8' JNZ J_LER LXI D,A03FF J34DE: PUSH D MVI C,001H CALL J_EXPR CALL J_CRLF POP D POP H DAD D XCHG LXI B,RESET J34EE: MVI A,'0' OUT TTYSC J34F2: CALL C345C CMP M CNZ C3506 INX B CALL J_HILO JNC J34F2 JMP J_START C3503: CALL C345C C3506: PUSH B PUSH PSW CALL J_CRLF CALL J_LADR CALL J_BLK MOV A,M CALL J_LBYTE CALL J_BLK POP PSW CALL J_LBYTE POP B RET J351E: CALL J_TI PUSH PSW DCR C CALL J_EXPR POP H POP PSW CPI ',' JZ J353A CPI ' ' JNZ J_LER J3532: CALL J_RI CPI 0FFH JNZ J3532 J353A: CALL J_RI CPI '*' JZ J_START CALL C3562 JZ J353A CALL J_NIBBLE JC J_LER RLC RLC RLC RLC MOV C,A CALL J_RI CALL J_NIBBLE JC J_LER ADD C MOV M,A INX H JMP J353A C3562: ANA A RZ CPI CR RZ CPI LF RET J356A: MVI B,LF J356C: CALL J_RI CPI 'G' JNZ J356A DCR B JNZ J356C J3578: CALL J_RI CPI 'E' RZ CPI 'B' JNZ J3578 MVI M,001H J3585: CALL J_RI CPI 'L' JZ J35A7 CPI 'N' JZ J35A7 CPI 'X' JZ J35A7 CPI 'H' JZ J35A6 CPI 'P' JZ J35A6 CPI '.' JNZ J_LER J35A6: STC J35A7: MOV A,M RAL MOV M,A JNC J3585 CALL J_RI CPI 'F' JNZ J_LER INX H JMP J3578 J35B9: CALL J_EXPR CALL C35EE MVI C,0FFH CALL J_PO CALL C35EE POP D POP H PUSH H PUSH D J35CB: MVI B,' ' J35CD: MOV A,M PUSH D CALL J_PBYTE POP D CALL J_HILO JC J35E3 DCR B JNZ J35CD CALL J_PEOL JMP J35CB J35E3: MVI C,'*' CALL J_PO CALL C35EE JMP J_START C35EE: MVI B,014H MVI C,0 J35F2: CALL J_PO DCR B JNZ J35F2 RET J35FA: PUSH D MVI A,0FEH OUT CRTSC NOP MVI A,0FFH OUT CRTSC MVI D,0FFH J3606: CALL C362C JNZ J3606 MVI D,004H CALL J3624 IN CRTIO MOV E,A MVI D,0FFH J3616: CALL C362C JZ J3616 MVI D,0FFH CALL J3624 MOV A,E POP D RET J3624: DCR D MVI A,0 CMP D RZ JMP J3624 C362C: IN CRTSC ANI 001H PUSH PSW DCR D XRA A CMP D JZ J_LER POP PSW RET J3639: IN CRTSC ANI '@' JNZ J3639 MVI A,0FBH OUT CRTSC J3644: IN CRTSC ANI '@' JZ J3644 MVI A,0FFH OUT CRTSC J364F: IN CRTSC ANI 080H JNZ J364F IN P0006 CMA RET J365A: IN CRTSC ANI ' ' JNZ J365A MOV A,C CMA OUT P0006 MVI A,0F7H OUT CRTSC J3669: IN CRTSC ANI ' ' JZ J3669 MVI A,0FFH OUT CRTSC RET J3675: MVI C,001H CALL J_EXPR POP B MOV A,C ANA A JZ J_LER CPI BS JNC J_LER STA A1F84 RLC RLC MOV H,A MVI L,0FFH SHLD A1F82 MVI L,0F8H MOV D,H MOV E,L J3694: MVI M,0FFH INR L JNZ J3694 LXI H,A0100 J369D: CALL C36DD STAX D INR E LDA A1F83 SUI 004H CMP H JNC J369D ADI 005H MOV B,A LXI H,A0100 CALL C36E1 CMA STAX D CALL J_CRLF LHLD A1F82 MVI L,0F8H MVI D,0 J36C0: MOV A,D ADD M MOV D,A CALL J_LBYTE MVI C,',' CALL J_CO INR L MOV A,L CMP E JC J36C0 LXI H,A0100 CALL C36E1 CALL J_LBYTE JMP J_START C36DD: MOV A,H ADI 004H MOV B,A C36E1: MVI C,0 J36E3: MOV A,C ADD M MOV C,A INX H MOV A,H CMP B JC J36E3 MOV A,C RET NOP NOP NOP NOP NOP NOP NOP NOP NOP NOP NOP NOP NOP NOP NOP NOP NOP NOP END