Google
 

Trailing-Edge - PDP-10 Archives - BB-5372D-BM - traffic/source/tfrunv.mac
There are 2 other files named tfrunv.mac in the archive. Click here to see a list.
;COPYRIGHT (C) 1980, 1981 BY
;DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASS.
;
;
;THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
;ONLY  IN  ACCORDANCE  WITH  THE  TERMS  OF  SUCH LICENSE AND WITH THE
;INCLUSION OF THE ABOVE COPYRIGHT NOTICE.  THIS SOFTWARE OR ANY  OTHER
;COPIES THEREOF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY
;OTHER PERSON.  NO TITLE TO AND OWNERSHIP OF THE  SOFTWARE  IS  HEREBY
;TRANSFERRED.
;
;THE INFORMATION IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT  NOTICE
;AND  SHOULD  NOT  BE  CONSTRUED  AS A COMMITMENT BY DIGITAL EQUIPMENT
;CORPORATION.
;
;DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY  OF  ITS
;SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPLIED BY DIGITAL.

	UNIVERSAL TFRUNV - UNIVERSAL FOR TFR DATA FILE


;***COPYRIGHT (C) 1976,1977,1978,1980,1981 DIGITAL EQUIPMENT CORP., MAYNARD MASS.***

REMARK	VERSION NUMBER
IF1	<PRINTX TFRUNV-20 VERSION 2A(126)
	 PRINTX TRAFFIC-20 UNIVERSAL SYMBOLS>

COMMENT ^
21	GENERATE NEW SYMBOLS FOR LEFT HALF OF PRM AS TEMPORARY
	BITS WHICH ARE REFRESHED FROM THE RIGHT HALF BITS ON AN
	INIT.

50	PUT IN NEW BIT (18) INTO PRM WHICH INDICATES:
		0= BLANK FILL NUMERIC
		1= ZERO FILL NUMERIC

57	FOR ALPHABETIC FIELDS USE BIT (18) IN PRM FOR
		0= SPACE NOT ALLOWED
		1= SPACE ALLOWED

102	ADD CANADIAN DATE IN THE FORM DD/MM/YY
^

	HDRWRD=604000		;HEADER WORD ADDRESS
	HDRWR2=604001		;HEADER WORD 2 ADDRESS
	  DATA=604002		;DATA BLOCKS ADDRESS
	STRING=635000		;STRING STORAGE ADDRESS

	TFRCOD==550000		;CODE MAPS TO HERE
	TFRTRM==555000		;TERMINAL CODE TO HERE


	FLDLEN=5		;LENGTH OF ONE DATA FIELD

REMARK	PARAMETER BITS (SET IN PRM)

	%ZERBL=1B18		;SET THEN ZERO FILL, ELSE BLANK FILL NUMERIC
	%SPACE=%ZERBL		;SET THEN SPACE LEGAL IN ALPHABETCS, ELSE
				;  ELSE SPACE ILLEGAL IN ALPHABETICS
	%REQD=1B19		;REQUIRED
	%FULL=1B20		;FULL FIELD MUST BE TYPED
	%PROT=1B21		;PROTECTED FROM OPERATOR
%ATRIB=%REQD+%FULL+%PROT	;ATTRIBUTES OF FIELD
	%MSDUP=1B22		;MASTER DUPED
	%PRDUP=1B23		;PREVEOUS VALUE DUPE
%DUPE=%MSDUP+%PRDUP		;DUPE CHARACTERISTICS
	%MONEY=1B24		;MONEY (IMBEDDED DECIMAL POINT)
	%YN=1B25		;(Y / N) REQUIRED
	%SSN=1B26		;SOCIAL SECURITY NUMBER
	%DATE=1B27		;DATE
		%DATDA=0		;DASHES
		%DATDE=1		;DEC FORMAT
		%DATJU=2		;JULIAN
		%DATMI=3		;MILITARY
		%DATSL=4		;SLASHES
		%DATCA=5		;[102]CANADIAN DD/MM/YY
%TYPE=%MONEY+%YN+%SSN+%DATE		;TYPE OF FIELD
	%RANGU=1B28			;UPPER RANGE
	%RANGL=1B29			;LOWER RANGE
%RANGE=%RANGU+%RANGL			;RANGES
	%ALPHA=1B30			;ALPHABETICS ONLY
	%NUMER=1B31			;NUMERICS ONLY
%CLASS=%ALPHA+%NUMER			;CLASS OF FIELD
	%DSPLY=1B32			;FIELD IS CURRENTLY ON SCREEN

	%SUB4=1B33		;SUB-TYPE (4 BIT)
	%SUB2=1B34
	%SUB1=1B35
%SUB=%SUB4+%SUB2+%SUB1		;ALL SUB TYPE BITS
	; BITS IN THE LEFT HALF OF PRM.
	REQD%=1B09		;REQUIRED.
	FULL%=1B10		;FULL FIELD MUST BE ENTERED.
	PROT%=1B11		;PROTECTED FIELD.
ATRIB%=REQD%+FULL%+PROT%	;ATTRIBUTES OF THE FIELD.
	MSDUP%=1B12		;MASTER DUPED
	PRDUP%=1B13		;PREVIOUS DUPE VALUE
DUPE%=MSDUP%+PRDUP%		;DUPE CHARACTERISTICS.
	RANGU%=1B14			;UPPER RANGE CHECKING.
	RANGL%=1B15			;LOWER RANGE CHECKING.
RANGE%=RANGU%+RANGL%			;RANGE CHECKING ATTRIBUTES.
	ALPHA%=1B16			;ALPHABETICS ONLY
	NUMER%=1B17			;NUMERICS ONLY
CLASS%=ALPHA%+NUMER%			;CLASS OF FIELD.

	DEFINE	PTR(TAG,LENG,BIT<0>,OFF)
<
TAG:	POINT	LENG,OFF,BIT
	>

REMARK	PTR	.TAG  ,LN,BT,OFFSET	

	DEFINE	PTRGEN
<
	PTR	.FILLR,06,05,0		; FILL CHARACTER
	PTR	.PARAM,30,35,0		; PARAMETERS OF THE FIELD
	PTR	.SECTN,28,27,1		; SECTION NUMBER
	PTR	.NUMRD,08,35,1		; NUMBER CHAR. READ
	PTR	.OFFST,13,12,2		; OFFSET INTO RECORD
	PTR	 .LENG,08,20,2		; LENGTH OF FIELD
	PTR	 .COLM,08,28,2		; COLM # ON SCREEN
	PTR	 .LINE,06,34,2		; LINE # ON SCREEN
	PTR	.FIELD,18,17,3		; FIELD NAME PTR
	PTR	.VALUE,18,35,3		; VALUE OF FIELD PTR
	PTR	.LRANG,18,17,4		; LOWER LIMIT (RANGE)
	PTR	.URANG,18,35,4		; UPPER LIMIT (RANGE)

COMMENT	*
	THE FOLLOWING POINTERS ARE USED FOR
	ACCESSING INTERNAL DATA BYTES - NOT ON
	A FIELD BASIS
	*

	PTR	.ERRNM,06,05,HDRWRD	;ERROR-LINE NUMBER
	PTR	 .TRMS,18,23,HDRWRD	;TERMINALS ALLOWED
	PTR	.NMFLD,12,35,HDRWRD	;# OF FIELDS IN FORM
	PTR	.DATPG,09,08,HDRWR2	;NUMB OF DATA PAGES
	PTR	.STRPG,09,17,HDRWR2	;NUMB OF STRING PAGES
	PTR	 .FORM,18,35,HDRWR2	;POINT TO FORM NAME
	PTR	.SUBTP,03,35,PRM	;SUB-TYPE FIELD
	PTR	  .STR,07,00,STRING	;POINTER TO STRING OF FIELDS

REMARK	FOLLOWING ARE DEFINITIONS OF TERMINAL TYPES

	%%VT50==1B<35-.TTV50>
	%%VT52==1B<35-.TTV52>
	%%VT05==1B<35-.TTV05>
	.TTV100=^D16
	%%VT100==1B<35-.TTV100>

>	;END OF PTRGEN
DEFINE CMSG(MSG)
<PRINTX MSG>	;END CMSG

	END