;********************************************************************* ;* ;* I/O PATCH FOR PIP.COM ;* THIS PATCH IS TO BE USED FOR IMPLEMENTING DUPLEX ;* HANDSHAKING IN COMPUTER-TO-COMPUTER COMMUNICATIONS. ;* DONATED TO PUBLIC DOMAIN FOR NON-COMMERCIAL USE ;* STEVEN FISHER CDP 2/5/82 ;* ;* SOURCE SYNTAX IS: PIP OUT:=DRIVE:FILENAME.TYP,EOF: ;* ;* DESTINATION SYNTAX IS: PIP INP:=DRIVE:FILENAME.TYP ;* ;********************************************************************* ; 0103 ORG 103H ;LOCATE THIS IN PIP'S PATCH AREA ; 0003 = RDRF EQU 03H ;READER FUNCTION RETURNS CHARACTER IN A 0004 = PUNF EQU 04H ;PUNCH FUNCTION SENDS CHARACTER FROM E 0005 = BDOS EQU 0005H ;SYSTEM FUNCTION ENTRY POINT 0103 C30A01 RCVJP: JMP RCV ;PIP INP: ENTRY POINT 0106 C31901 XMTJP: JMP XMT ;PIP OUT: ENTRY POINT ; 0109 00 RCVDTA: DB 0 ;RECEIVED DATA ; 010A 0E03 RCV: MVI C,RDRF 010C CD0500 CALL BDOS ;READ INTO A 010F 320901 STA RCVDTA ;SAVE IT 0112 5F MOV E,A 0113 0E04 MVI C,PUNF 0115 CD0500 CALL BDOS ;PUNCH FROM E 0118 C9 RET 0119 59 XMT: MOV E,C ;CHARACTER TO SEND GOES FROM E 011A 0E04 MVI C,PUNF 011C CD0500 CALL BDOS ;PUNCH FROM E 011F 0E03 MVI C,RDRF 0121 CD0500 CALL BDOS ;READ INTO A 0124 C9 RET 0125 END ;END OF PIPIO SOURCE