;************************* ; ; Eprommer 2716-27256 ; ;************************* ; ORG 01900 ; db "1 2716 * 2 2732 " db "* 3 2764 * 4 271" db "28 * 5 -256 * 6 -512" ; db 0,9,18,27,36,45 ; L1931 ld A,08F OUT (P0A),A L1939 ld si,01900 call PRINT db 00C,00E db "0101* Epromm" db "er 2716-27512 V." db "1.4 * [c]87/89 E." db "Ludwig/J.Beisler *" db 00E db "0308MENš: [Korr." db "" db "DEL" db "" db ", Zurck Anf." db "" db "Z" db "" db ", Abbruch " db "" db "Q" db "" db "]" db 00E db "061" db "2+080 CALL L1CC5 call PRINT db "*" db " +080 CALL L1CD7 call PRINT db 00E db "080" db "8+080 CALL L1CE1 ld (si-001),A SUB 031 CALL Z,L1CC5 jmp Z,L19DA DEC A jmp NZ,L1939 CALL L1CD7 L19DA call PRINT db 00E db "1004" db 002+080 ld HL,01900 ld B,034 L19E6 ld A,(HL) INC HL call 10H DJNZ L19E6 call PRINT db 00E db "1208" db 002+080 CALL L1CE1 jmp Z,L1939 SUB 030 ld (si-002),A ld HL,01934 ld B,6 L1A02 DEC A jmp Z,L1A0A INC HL DJNZ L1A02 jmp L19DA ; L1A0A ld L,(HL) ld B,007 L1A0D ld A,(HL) INC HL call 10H DJNZ L1A0D call PRINT db 00E db "1508EPROM-Adress" db "en [Ohne Eingabe" db " gesamtes Eprom]" db " +080 CALL L1CE1 jmp Z,L19DA L1A4A call PRINT db 00E db "1712Anfang :" db 002+080 CALL INLINE ld HL,(D181A) EX DE,HL CALL INHEX ld A,(si-002) EX DE,HL ld HL,00400 L1A6A ADD HL,HL DEC A jmp NZ,L1A6A EX DE,HL ld A,(si-2) cmp 6 jmp Z,X1 ; PUSH HL XOR A SBC HL,DE POP HL jmp NC,L1A4A ; X1 call PRINT db 00E db "1908A" db ".+080 CALL L0589 ld (D18F6),HL CALL L1CE1 jmp Z,L1A4A L1A89 call PRINT db 00E db "2112Endadr.:" db 002+080 CALL INLINE ld HL,(D181A) ld A,(HL) cmp 020 EX DE,HL jmp Z,L1ABF PUSH HL CALL INHEX POP DE ; ld A,(si-2) cmp 6 jmp Z,X2 ; PUSH HL XOR A SBC HL,DE POP HL jmp NC,L1A89 X2 PUSH DE PUSH HL ld DE,(D18F6) XOR A SBC HL,DE POP HL POP DE jmp C,L1A89 jmp L1AC2 ; L1ABF ld D,H ld E,L DEC HL L1AC2 ld (D18F8),HL call PRINT db 00E db "2308E" db ".+080 CALL L0589 CALL L1CE1 jmp Z,L1A89 L1AD5 call PRINT db 00E db "2512Speicheradre" db "sse :" db 002+080 CALL INLINE ld HL,(D181A) EX DE,HL CALL INHEX ld (ARGU1),HL call PRINT db 00E db "2708R" db ".+080 CALL L0589 ld A,(si-001) cmp 031 jmp NZ,L1B49 L1B0C call PRINT db 00E db "2708Programm.NOR" db "MAL/SCHNELL [N/S" db "]: " db 002+080 CALL L1CE1 jmp Z,L1AD5 ld HL,00DD3 cmp 04E jmp Z,L1B45 cmp 053 jmp NZ,L1B0C ld HL,00047 L1B45 ld (D18F4),HL call 10H L1B49 call PRINT db 00E db "2908START :" db 002," +080 CALL L1CE1 jmp Z,L1AD5 ld A,(si-002) ; cmp 6 jmp NZ,X3 IN A,(P05) jmp X4 ; X3 cmp 005 CCF jmp C,L1B68 cmp 003 L1B68 IN A,(P05) SET 6,A jmp NC,L1B70 X4 RES 6,A L1B70 SET 4,A RES 5,A OUT (P05),A ld HL,(ARGU1) ld DE,(D18F6) L1B7D ld C,P09 OUT (C),D IN A,(P05) ; ld B,(si-2) DEC B DEC B DEC B DEC B DEC B DEC B jmp NZ,X5 SET 6,A ; X5 RES 4,A OUT (P05),A SET 4,A OUT (P05),A ; DEC B INC B jmp NZ,X6 RES 6,A OUT (P05),A ; X6 OUT (C),E IN A,(P08) BIT 0,(si-001) jmp NZ,L1B98 ld (HL),A jmp L1B99 ; L1B98 AND (HL) L1B99 cmp (HL) jmp NZ,L1CA0 CALL L1CBA jmp NC,L1B7D ld HL,(D18F8) ld DE,(D18F6) XOR A SBC HL,DE ld (D18FC),HL PUSH DE ld DE,(ARGU1) ADD HL,DE ld (ARGU2),HL EX DE,HL POP DE BIT 0,(si-001) jmp Z,L1C31 L1BC0 ld B,00A L1BC2 PUSH BC ld B,(si-002) IN A,(P05) RES 4,A SET 5,A OUT (C),D DEC B jmp Z,L1BD3 SET 6,A L1BD3 OUT (P05),A OUT (C),E ld A,(HL) PUSH HL OUT (P08),A INC A jmp Z,L1BF2 IN A,(P05) XOR 040 OUT (P05),A ld HL,(D18F4) L1BE7 DEC HL ld A,H OR L jmp NZ,L1BE7 IN A,(P05) XOR 040 OUT (P05),A L1BF2 call PRINT db 00E db "291" db "6+080 ld HL,(D18FC) CALL OUTHL SET 4,A ; ld B,(si-2) DEC B DEC B DEC B DEC B DEC B DEC B jmp Z,X7 ; ld B,(si-002) DEC B DEC B jmp NZ,L1C09 X7 AND 09F L1C09 OUT (P05),A DEC HL ld (D18FC),HL POP HL IN A,(P08) cmp (HL) POP BC jmp Z,L1C23 L1C16 PUSH HL ld HL,(D18FC) INC HL ld (D18FC),HL POP HL DJNZ L1BC2 jmp L1C58 ; L1C23 ld A,B INC B INC B cmp 00A jmp NZ,L1C16 CALL L1CBA jmp NC,L1BC0 call PRINT db 007+080 L1C31 call PRINT db 00E db "290" db "7+080 CALL L0404 call PRINT db " [Wdhlg." db "" db "CR" db "" db "]" db " +080 L1C4C IN A,(P05) AND 09F OUT (P05),A CALL L1CE1 jmp L1B49 ; L1C58 call PRINT db 007+080 CALL L0268 L1C5D call PRINT db "EPROM " db "!+080 L1C65 EX DE,HL call PRINT db " BREAK" db 00E db "3108Adr." db " +080 CALL OUTHL call PRINT db " Eprombyte" db " +080 CALL OUTHX call PRINT db " ,Rambyte" db " +080 ld A,(DE) CALL OUTHX call PRINT db " " db " +080 jmp L1C4C ; L1CA0 BIT 0,(si-001) jmp NZ,L1CB1 CALL L0268 call PRINT db "RA" db "M+080 ld D,H ld E,L jmp L1C65 ; L1CB1 call PRINT db "Clear" db " +080 jmp L1C5D ; L1CBA INC HL INC DE ld A,E OR D SCF RET Z PUSH HL ld HL,(D18F8) XOR A SBC HL,DE POP HL RET ; L1CC5 call PRINT db "1 Programmieren" db " +080 RET ; L1CD7 call PRINT db "2 Lesen" db " +080 RET ; L1CE1 call 08H cmp 05F RET Z cmp 07F RET Z cmp 05A jmp Z,L1CF9 cmp 051 RET NZ POP HL RET ; L1CF9 POP HL jmp L1939 ;********************* D1CFD db 000 db 009 db 02A D1D00 db 00D ; ld A,0CF OUT (P07),A OUT (P0B),A ld A,084 OUT (P07),A ld A,7 OUT (P07),A ld A,0DA OUT (P05),A XOR A OUT (P0B),A ; L1D01 ld HL,01900 ;Test ob Programm ok ld DE,ENDE XOR A L1D08 XOR (HL) INC HL SBC HL,DE ADD HL,DE jmp NZ,L1D08 XOR (HL) jmp L1931 ;******************* L0268 call PRINT db " Error" db 0A0 RET ;******************** L0589 CALL OUTHL call PRINT db 32,32,32,0A0 RET ;******************* ; ENDE db 000 ;Pršfbyte ; L0404 EQU 00404 OUTHX EQU 007EE OUTHL EQU 007F1 INLINE EQU 007F4 INHEX EQU 007F7 D181A EQU 0181A ARGU1 EQU 0185B ARGU2 EQU 0185D D18F4 EQU 018F4 D18F6 EQU 018F6 D18F8 EQU 018F8 D18FC EQU 018FC ; P05 EQU 005 P08 EQU 008 P09 EQU 009 ; P07 EQU 007 P0A EQU 00A P0B EQU 00B ; PRINT EQU 18H