Micro­power

  

Volume 2 · Number 1 · February 1982

Page 25 of 37
252:INC HL; POINT TO NEXT BYTE
253:INC DE; INCREMENT BYTE COUNT
254:JR PROGR2; BACK, SEE IF 1K DONE
255:PROGR3:POP BC; 1K DONE, GET CYCLES
256:LD A, B; PRINT CYCLES LEFT
257:DEC A; ADJUST COUNT
258:DEFB SCAL, B2HEX; PUT ON SCREEN
259:DJNZ PROG1; IF NOT 104, GO TO PROGR1
260:PROGR4:CALL STPIO2; PORT A TO I/P
261:CALL RESET1; 12V OFF, 5V ENABLED, CHIPS OFF
262:DEFB SCAL, TDEL; TWO SECONDS DELAY
263:DEFB SCAL, TDEL
264:CALL MESS19
265:JP RESTRT; BACK TO START
266:;
267:; * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
268:; *             ROUTINE FOR 2516/2716 EPROMS             *
269:; * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
270:;
271:PR2716:LD DE, 0; BYTE COUNTER
272:JR PRINTD
273:PR27A:LD A, (ROMFLG); FLAG EQUALS 8 FOR 2K ROM
274:CP D; 800H BYTES DONE?
275:JR Z, PROGR4; IF SO, EXIT VIA PROGR4
276:LD A, 3; TURN ON 26V AND OE
277:OUT (BDATA), A
278:LD B, 10H; SHORT DELAY
279:WAIT:DJNZ WAIT
280:LD A, (HL); DATA
281:OUT (ADATA), A
282:LD B, 10H
283:WAIT1:DJNZ WAIT1; SHORT DELAY
284:LD A, 13H
285:OUT (ADATA), A; TURN ON 26V, OE, PGM
286:LD BC, 1D00H; COUNT FOR 50 mSEC.
287:PR27C:DEC BC
288:LD A, B
289:OR C
290:JR NZ, PR27C
291:LD A, 3; PGM PULSE OFF
292:OUT (BDATA) ,A
293:LD B, 10HWAIT2
294:WAIT2:DJNZ WAIT2; SHORT DELAY
295:LD A, 1
296:OUT (BDATA), 1; TURN OE OFF
297:LD B, 10H
298:WAIT3:DJNZ WAIT3; SHORT DELAY
299:LD A, 5
300:OUT (BDATA), A; 26V, INCREMENT COUNTER
301:LD B, 10H
302:WAIT4:DJNZ WAIT4; SHORT DELAY
303:LD A, 1
304:OUT (BDATA), A; INCREMENT PULSE OFF
305:INC HL
306:INC DE
307:LD A, E
308:CP 0
Page 25 of 37