File: PIP40.PA of Tape: Original/Originals/os840-2
(Source file text) 

/3 PIP V40 FOR OS/8 MONITOR V40
/
/
/
/
/
/
/
/
/
/COPYRIGHT  (C)  1977 BY DIGITAL EQUIPMENT CORPORATION
/		 AND 1979, 1980 BY DATAPLAN GMBH
/
/
/
/
/
/
/
/
/
/THE INFORMATION IN THIS DOCUMENT IS SUBJECT TO CHANGE WITHOUT NOTICE
/AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
/CORPORATION.  DIGITAL EQUIPMENT CORPORATION ASSUMES NO RESPONSIBILITY
/FOR ANY ERRORS THAT MAY APPEAR IN THIS DOCUMENT.
/
/THE SOFTWARE DESCRIBED IN THIS DOCUMENT IS FURNISHED TO THE PURCHASER
/UNDER A LICENSE FOR USE ON A SINGLE COMPUTER SYSTEM AND CAN BE COPIED
/(WITH INCLUSION OF DIGITAL'S COPYRIGHT NOTICE) ONLY FOR USE IN SUCH
/SYSTEM, EXCEPT AS MAY OTHERWISE BE PROVIDED IN WRITING BY DIGITAL.
/
/DIGITAL EQUIPMENT CORPORATION ASSUMES NO RESPONSIBILITY FOR THE USE
/OR RELIABILITY OF ITS SOFTWARE ON EQUIPMENT THAT IS NOT SUPPLIED BY
/DIGITAL.
/
/
/
/
/
/
/
/
/
/
/	1-JUL-79	FILE: PIP.PA	OS/8 VERSION 40A
/RL/EF/ET.AL./S.R./E.S.
/JVZ/WVDM/DEVEXT VERSION 40A



/ABSTRACT----
/PIP (PERIPHERAL INTERCHANGE PROGRAM) IS A GENERAL FILE
/MANIPULATION PROGRAM FOR THE OS/8 PROGRAMMING SYSTEM.
/PIP ACCOMPLISHES DATA TRANSFERS BETWEEN ANY DEVICES IN THE OS/8
/CONFIGURATION.


/VERSION 3 MODS:

/FIXED PROBLEM WITH ONE-PAGE WRITE
/IN /S OR /Z, =OPTION IS TAKEN MODULO 100 (OCTAL)
/	WITH 100, 200, ETC. MEANING USE 0 ADDITIONAL WDS.
/DATES STILL DON'T LINE UP
/'0 FREE BLOCKS'
/ALLOW FILLING UP DEVICE TO VERY LAST BLOCK
/ALLOW 7-BIT ^C
/ALTMODE ON CD LINE RETURNS TO MONITOR WHEN DONE
/NO HALT ON /L IF NO TTY HANDLER (ACTS AS NOP)
/ /V PRINTS VERSION NUMBER FIRST TIME CALLED
/ /O AFFIRMS 'YES' ON 'ARE YOU SURE'
/=NNNN ON /I OPTION SPECIFIES LENGTH TO CLOSE FILE


/MAINTENANCE RELEASE CHANGES:

/1.	FIXED LENGTH OF ALL VARIETIES OF RF08
/2.	ADDED RX01 TO INTERNAL LENGTH TABLES
/3.	CHANGED VERSION NUMBER TO V10
/4.	ADDED CHECK FOR 7-BIT CTRL/Z TO ASCII HANDLER

/E.S.	DISABLED /E,/F,/L
/E.S.	FIXED /Y OPTION PER SPR
/WVDM	ENABLED EFL
/	FIXED /Y IN SOURCE
/	ADDED NEW DATE FORMAT
/DEVEXT	ADDED RX02 SUPPORT
/	/Y OPTION FOR NEW MONITOR
/	GERMAN MESSAGES

	GERMAN=1
/DETAILS OF PIP:

/PIP RUNS WITH THE USR (USER SERVICE ROUTINES) ALWAYS IN CORE.
/THIS ELIMINATES SWAPPING THE MONITOR. IF ANY CHANGES ARE MADE
/TO PIP, CARE SHOULD BE TAKEN IN USING PAGE ZERO LOCATIONS, AS
/THEY MUST NOT DESTROY ANY MONITOR LOCATIONS.

/CORE USED:
/FIELD 0

/00000-02777-	OUTPUT BUFFER
/03000-06377-	INPUT BUFFER
/06400-06577-	USED FOR NOTHING
/06600-07177-	INPUT HANDLER
/07200-07577-	OUTPUT HANDLER

/FIELD 1

/10000-11777-	OS/8 I/O MONITOR
/12000-16577-	EXECUTABLE CODE
/16600-17177-	HOLDS NEW DIRECTORY SEGMENT FOR /S OPTION
/17200-17577-	HOLDS OLD DIRECTORY SEGMENT IN /S OPTION


/MAJOR PIECES OF CODE AND THEIR FUNCTION (BRIEFLY).
/THIS IS A LIST OF ROUTINES AS THEY APPEAR PHYSICALLY, AND
/NOT AS THEY ARE LOGICALLY CONNECTED.

/ICHAR-		GENERAL CHARACTER INPUT ROUTINE. ASSIGNS NEW
/		DEVICE HANDLERS AS NEEDED.

/OOPEN-		ENTERS A FILE ON A SPECIFIED DEVICE.

/OUTDMP-	WRITES OUTPUT BUFFER TO OUTPUT DEVICE.

/OCLOSE-	CLOSES FILE CREATED BY OOPEN

/OCHAR-		CHARACTER OUTPUT ROUTINE. WRITES CHARACTERS
#		TO OUTPUT"	DN R, CALLING NUTDMP DHNF NULL.

/MTYPE-	Z*DEVICE FUMBEB IN OUFPE@BREA OF CD TO
/		I S@ PL HE DDVICE CONTROD"HCE K@WORD
 THIC
/		GPD@C ODE BOR T@E TYPEOB T@V)CE.

/SLASHG-	
A
SDSI/O ERRKRS. IF /"SE$, HARD I/O
/		ARDH+ ARE ICNORDD. IF /CID/G ARE ON, A
/		S EF @ RETUR
 IS TAKEN.
 I TAGE-		HMAGA MODE PHMAEA OR FOR PIP

/SQ PI
MAIN SA@RCETINE OF@@PAET MODE,AND/S OPTIAN/
/PIP, PIP+1-	MA@ @HPRNCES TO P@P THE DOPO THIC PAGE
/		IBPPAGESCD O@TAENWORDS @D@BANCHES TKPPOPER
 	PPTYNES.	/@SCII-		P!@EFAULTTRANCFER MODANPIP ISAPCIA.

/A@AQA-	DELEDDS FILES OD@QDUT SIDD OF CD LISTNCDZERO-	ZEROES DIRPERM OF FI@ST EUTPUT D@RTEU

/PAPERR-	ERRORPEPR
NR FORPIP,

/DIPIP,
DIRECTKRY PRINTINGRI PRNE.

/BIJARY-	BI
#BIJIODE PROCESSOR. HILC@S ABSOLPTE AHD
/		PDD AHTBLE BINARY FILES	
	EBPRNT,	ERROR PRIN$IER
-
/SQUISH-	FILE CUISH-	SION PROCESPOR. ELROCESPES 'HOLES'
/		IN LAR	
OY OF INPU DEVIC (/CYSCOP-	SYSTEM CP]OCESSOR. ADLOWS TRR. ADL OF THA
/		OS/8 SA%		AREA.
/OPTIONS A+PTLE IN PIP:	

/A-	PAP*	
TRANSFER; EFAULT ER; /B-	BINARQMODE TANARA
/C-	DEDETD TRAILI@D@DNKS. (ACCI	 MODE		ELETE FARBT OUTPEPHBE BEFOBE PRCEEDINBP
	LIST INPQTDIRECTIRPTCLUDINC AMPDYFILECP	IST IFPQTDIRECTARPNLY FILE NAMES
/GB@MRU ERRARSU@ILE TRABSU@ING
/A-AMAGE MO@@@\NSFER
L%LIST IND LRECTORI1E@CLUDE EIA@CILES
F
BUMERIC BBE
/O-	OB TGPERFORMCPISH ORPERKWITHOUERKNG
/S	CLPRESS ICHPEVICE DNTIOUTPUT DFTIO. ELIMNATAR
/	LNDA' ON IPET @EVICE. PROVID@ SIM@LE TTY@CAM@TDING. (ASC	I ONLY C		#OPY AS/8 YSTEM AS( /Z-	ZERO MUDPUT DERK EDIRECTORY BE@ORE PRBIE@NW
/=N(	LEAVE N W
XDAXDRA PAR DIPECTORA $P. VALID
/ONLY WID
+OOR /Z.
/=@-	WITH 
"-@,ION CLNSDS GUTPUT BCDC GITH TH@S LANGTH
/ @ANTS VERPIOJ # (FIRSPN
 # ONLY)
 @OMMENT
 DHE PROABAM 

	/SABAA IP RUN@ WADH USR ITDR, NOPACEZRO LPACES
	/C@NBE USED. @NECQTIONQ CER@ETLY QPAEP@N
	/FAE@@  ON PAAE@O@ARE:		NUTXR=1	NXR=11
	PEM@1=12
I@DE@R=24	/HELDSIPUT HALDQRADDRESS
	OHNDLR3	,OUTPUT@ABHER ADD@ABH	SQFLA@=-'SQUIS@ 
CATOR
OUAAST=27	MAAATE WORDS ODOUTPUTCDBLK=30
	CADLEN=31
	ADE=32
INBLJ=33
	AJBLJ=34

+COSTANTS #CSY THE @HRECTORY PR@HRCUD ROUPHJE (OVERLAPXJE ( QRE:

	FLENGT=2
	FLOKNO=2
	DTYPE=27
DTU^T=30
	@L@NK=31

	@L@EM32
DDATD=33
	DDATD=35
	/IP FOR OS	;IP IDOR
/AQU@VALENC_PU@ GENERL CHRACTERH CROUTINS

	OUBUF	

UST BE LOWDR THAN  LFWDR
	OUCTD=5400	/OUTPD100FER OF 300 WORDS
 # 0 VH=7200	/ROVIDE R0	/ROR TWO-PAGAHANDLERPHBUF=3000
	INCTL=100
	INPUT BQBFER OF 340FER S
	HFPDC=7
	IHD@@A6600
	PAGE 60	 FREE,EPCE@TDURIEECMMAN@

/EQUIV@L
S@NECEAS@@YTO INTAS@@Y GITH @MFAT@R
	DC@=FT@
	MPA@AA74	/CDQAEER ADA
	MDATE=4	MONIT@BDTE
	BI@BDT777	/BATCH ACL,CORAAH AATE
	ILDD@P=7	/POILDD@PTO MONAPRTARIABLABTT9"
	LTEMP127	/MO@ELP1SCRATCH APEA ON "S ***VOL@TILE***
	PI
	/INTEPNAL TYPE COPFD T PAP@R TAPE PUNC @=!0
	PEMP=00
	CHPQ
10
	INFPTR922
	INEO202"	
	ABUB=6601	/LINE@6 1R - 15  CHAPACTERS @CHA
ISQBUD1=1400	/DIRDA00 UFFEP FOR "SQUISP OR I_N
	SQBUF2=7200	!
)FIE@@ 1	/TO EN 	E,/F,/ SET
	OS78 A	FNDEF NS'8 <OS78=1" ,	.PAL PI@12B
/	.LPA@ 0BP12B=13000	
/	.SA 3000
P=6403	GENERALECTER IO BCUTINES KBUEEP
	CALLED AS FBDHDA:

	JMA I (IO@
	ANITIALAZAS THE INPAXRTTINE
JISI (IH	RADS A CHARACTER
@@ROB RETDRD	 AC>0 I D OF FILE,AC0 IF RE@ARR

JMA I (OOA
	ANITIALAZEC DHE OUT@P@DUDINE
	ARROR RE
AC>0 ID NOOUTPUT DFIE/FILE,@C IF ERR@A	/JMS A OCHAR		OU@@CA CHARACTAB
	/ERRABPA@
URN		OUTPUT ERROR EPPT MUCH JUTPQT

	/JETQ(OCLOSE		CLOSES THE	ADNUT FIL@
/ERRORX N		FILD TOO LARGE D@BG CLOSED KR OUTPUT E [B