;**************************************** ;* * ;* 2732 ROM PROGRAMMER PROGRAM * ;* J.B.FERGUSON 820611 * ;* * ;**************************************** ; 1K BYTES OF SOURCE ARE TO BE PARKED AT 9000H PRIOR TO ; EXECUTING PROG.HEX . FILES CAN BE LOADED UNDER ZSID, ; AND EXECUTED WITH THE "C8000" COMMAND. .Z80 SYS1 EQU 0C8H PROG EQU 0C0H CTCB3 EQU 08BH LD HL,9000H ;SOURCE LD DE,5000H ;DESTINATION LD BC,1000H ;BYTECOUNT LD A,0 OUT (SYS1),A ;SET D-S = 0 LD A,(HL) ;GET BYTE TO PROGRAM LD (DE),A ;LATCH IT FOR THE ROM LD A,8 OUT (PROG),A ;ENABLE OUTPUT BUFFER AND SET /OE = 1 LD A,9 OUT (PROG),A ;TURN OFF /CS LD A,0CH OUT (PROG),A ;TURN ON VPP LOOP: LD A,1 OUT (PROG),A ;SET /CS = 0 PUSH BC LD B,50 ;# OF MILLISECONDS DECB: IN A,(CTCB3) ;LOOK AT COUNTER LD C,A ;SAVE FOR TEST WAIT1: IN A,(CTCB3) CP C ;TEST FOR CHANGE JR Z,WAIT1 ;JUMP IF SAME DJNZ DECB POP BC LD A,9 OUT (PROG),A ;SET /CS = 1 LDI JP PE,LOOP ;PARITY FLAG = ODD IF BC = 0 LD A,4 OUT (PROG),A ;TURN OFF VPP LD A,1 OUT (PROG),A ;ENABLE /CS DECODER LD A,0 OUT (PROG),A ;DISABLE OUTPUT BUFFER AND SET /OE = 0 LD A,8 OUT (SYS1),A ;TURN OFF STATIC MEMORY RET END