TITLE LOGICGEN.MAC 08-29-84 18:25:00 .Z80 ASEG ORG 100H ; PROMPT: CALL PRINT DB 'RUN or SET or DUMP ',0 CALL INBUF CP 'S' JP Z,SETMEM CP 'R' ; RUN JP Z,RUN CP 'D' CALL Z,DUMPI JR PROMPT ; SETMEM: ; PRINT ADDRESS AND WAIT ; FOR INPUT. ; EXIT ON TIME = 00 ; GET DATA IN HEX ; GET TIME IN DEC ; TIME IN 5uS INCREMENTS ; MIN = 15uS CALL NLDHL ; SEE IF ADDRESS PRESSENT JR NC,ADDS ; NO USE START LD HL,MEMST ADDS: LD (INPTR),HL LOOP: CALL PRINT DB 'ENTER DATA, TIME IN 5uS INCREMENTS ',0 LD HL,(INPTR) CALL PRRP ; PRINT ADDRESS WITH SP CALL INBUF CALL HEX_M ; GET DATA JR C,PROMPT ; BACK TO PROMPT WAY OUT LD HL,(INPTR) LD (HL),A INC HL PUSH HL CALL FFDEC ; GET TIME POP HL JR C,LOOP ; ERROR LD (HL),A ; STORE 00 END FLAG OR A JP Z,PROMPT ; END ; CP 3 ; MUST BE MORE THAN 3 JP C,LOOP SUB 2 LD (HL),A INC HL LD (INPTR),HL JP LOOP ; RUN: ; SEND FIRST BYTE TO ; 8FH PRINTER PORT ; COUNT 2ND BYTE LD C,8FH LD HL,MEMST JR START ; ADEC: NOP ; 4 DEC A ; 4 JR NZ,ADEC ; 12 ; start: OUTI ; 16 LD A,(HL) ; 7 INC HL ; 6 OR A ; 4 TEST FOR END JR NZ,ADEC JP PROMPT ; INPTR: DW MEMST ; EXTERNAL DUMPI EXTERNAL FFDEC EXTERNAL HEX_M EXTERNAL INBUF EXTERNAL NLDHL EXTERNAL PRINT EXTERNAL PRRP ; MEMST EQU 0800H ; ; END