| 21: | ; |  |  | 
| 22: | LF | EQU 0AH |  | 
| 23: | CR | EQU 0DH |  | 
| 24: | KBD | EQU 62H |  | 
| 25: | B2HEX | EQU 68H |  | 
| 26: | CRLF | EQU 6AH |  | 
| 27: | TDEL | EQU 5DH | ; ONE SECOND DELAY | 
| 28: | SRLX | EQU 6FH |  | 
| 29: | SCAL | EQU 0DFH |  | 
| 30: | ADATA | EQU 14H |  | 
| 31: | ACTRL | EQU 16H |  | 
| 32: | BDATA | EQU 15H |  | 
| 33: | BCTRL | EQU 17H |  | 
| 34: | HSHAKE | EQU 00H |  | 
| 35: | ; |  |  | 
| 36: |  | ASEG |  | 
| 37: |  | .Z80 |  | 
| 38: | ; |  |  | 
| 39: |  | ORG 100H |  | 
| 40: |  | .PHASE 0A000H |  | 
| 41: | ; |  |  | 
| 42: | ; -------------------------------------------------------------- | 
| 43: | START: | LD HL, TEXT1 | ; TITLE TO TOP LINE | 
| 44: |  | LD DE, 0BCBH |  | 
| 45: |  | LD BC, 10H |  | 
| 46: |  | LDIR |  | 
| 47: |  | CALL STPIO1 | ; PORT A TO I/P, B TO O/P | 
| 48: |  | CALL RESET1 | ; RESET COUNTER, CHIP OFF | 
| 49: |  | JR RESTR1 |  | 
| 50: | ; |  |  | 
| 51: | RESTRT: | CALL CLRCRT | ; RETURN HERE AFTER A ROUTINE | 
| 52: | REMOVE: | LD HL, TEXT3 | ; MESSAGE ON EPROM REMOVAL | 
| 53: |  | LD HL, 0A0BH |  | 
| 54: |  | LD BC, 41H |  | 
| 55: |  | LDIR |  | 
| 56: |  | LD HL, TXT17A | ; "SAME EPROM – ?" | 
| 57: |  | LD DE, 0B0BH |  | 
| 58: |  | LD BC, 17 |  | 
| 59: |  | LDIR |  | 
| 60: | ANSWER: | DEFB SCAL, KBD | ; SCAL KEYBOARD FOR REPLY | 
| 61: | ANS1: | JR NC, ANSWER |  | 
| 62: |  | CP "Y" |  | 
| 63: |  | JR Z, PROMPT |  | 
| 64: |  | CP "N" |  | 
| 65: |  | JR NZ, ANSWER | ; TRY AGAIN IF NOT YOR N | 
| 66: |  | JP RESTR2 |  | 
| 67: | ; |  |  | 
| 68: | RESTR1: | CALL CLRCRT | ; CAUTION MESSAGES FOR 1ST RUN | 
| 69: |  | LD HL, TEXT20 |  | 
| 70: |  | LD DE, 090BH |  | 
| 71: |  | LD BC, 34 |  | 
| 72: |  | LDIR |  | 
| 73: |  | LD HL, TEXT21 |  | 
| 74: |  | LD HL, 098BH |  | 
| 75: |  | LD BC, 38 |  | 
| 76: |  | LDIR |  | 
| 77: |  | DEFB SCAL, TDEL | ; WAIT APPROXIMATELY 2 SECONDS | 
| 78: |  | DEFB SCAL, TDEL |  |