.Z80 .PHASE 200H ;*************************************** ; CENTRONIC- TREIBER ;*************************************** ;VEREINBARUNGEN: CAOS EQU 0F003H MODU EQU 26H ;UP-NR. MODUL CRT EQU 0 ;UP-NR. CRT ;SYSTEMZELLEN CAOS ; MKENN EQU 0EFH ;MODULKENNBYTE PIOA EQU 04H ;PIO KANAL A DAT PIOAC EQU 06H ; STEUERWORT PIOB EQU 05H ;PIO B DATEN PIOBC EQU 07H ; STEUERWORT ; ;*************************************** ;PARAMETERUEBERGABE BEI AUFRUF: ;CENTRON MODULSCHACHT USER-OUT ; 8 u.s.w. 2/3 ;************************************** JR START ;SELBSTSTARTADR. JR SDD ;--------------------------------------- START: LD B,8 LD C,80H ST0: IN A,(C) CP MKENN JR Z,ST1 INC B JR NZ,ST0 ; ST1: LD L,B LD A,2 LD D,1 LD E,D CALL CAOS DEFB 26H LD A,0FFH OUT (PIOAC),A XOR A OUT (PIOAC),A DEC A OUT (PIOBC),A ;BIT0 OUT LD A,4 OUT (PIOBC),A LD A,1 OUT (PIOB),A ;STROBE PASSIV call inbim RET ;*************************************** ; ZEICHENAUSGABE ZEICHEN IN A SDD: ;DIREKTE BYTEAUSGABE SD1: PUSH BC ;AUSGABE DATEN PUSH AF SDA: IN A,(PIOB) BIT 2,A JR Z,SDB ;BUSY? LD A,5 CALL CAOS DEFB 14H ;WARTEN JR SDA ; SDB: POP AF PUSH AF OUT (PIOA),A ;DATEN XOR A OUT (PIOB),A INC A OUT (PIOB),A POP AF POP BC RET ; INBIM: PUSH BC LD BC,150 INBI0: PUSH BC IN A,(PIOA) BIT 6,A JR Z,INBI1 LD A,2 CALL CAOS DEFB 14H POP BC DEC BC LD A,B OR C JR NZ,INBI0 CALL CAOS DEFB 23H DEFB 0AH DEFB 0DH DEFB 'PRINTER NOT READY' DEFB 0AH DEFB 0DH DEFB 0 POP BC RET .DEPHASE END