
FORTRAN II - TAPE 4 FORMAT ETC.

/PUNCH JUMPS AROUND NON-EXECUTABLE STATEMENTS

FIODEC

XSTAT,	LAC #XVAR
	SNA
	JMP XSTATN
	LAC XVAR
	PUNADG
	DZM XVAR
XSTATN,	XCT XSTATW
	SKP
	JMP XSTATQ
	XCT SWITCH
	SKP
	JMP XSTATO
	LAW XSTATM-1
	PUNSTR
	CLL!CLC
	660000		/SIGN TO LINK IF EAE
	LAW NARMES-1
	SZL
	LAW EARMES-1
	PUNSTR
	LAW XSTATP-1
	XCT WSIZE
	SKP
	PUNSTR
XSTATO,	LAC (SKP
	DAC XSTATW
	JMP XSTATQ

NXSTAT,	LAC XVAR
	SZA
	JMP XSTATQ
	GENSYM
	DAC XVAR
	PUNJMP

XSTATQ,	LAC STATNI
	SMA!CMA
	EXIT
	DAC STATNI
	PUNPER
	LAC STNUM
	DECPUN
	JMP PUNCOM

XSTATF,	XSTAT
	JMP SETFIX

XSTATM,	TEXT .	CALST
.
XSTATP,	TEXT .	SET2W
.
NARMES,	TEXT .	EXTERNAL NARITH
	JMS NARITH
.
EARMES,	TEXT .	EXTERNAL EARITH
	JMS EARITH
.

/CODING FOR FORMAT STATEMENT

FORMAT,	NXSTAT
	CHKLPR
	DZM FORMPC
FORMLP,	CLC
	TAD FORMPC
	DAC FOR#MPC
	LAC (200000
	DAC FOR#ML	/LEFT TERMINATOR COUNTER

FORM1,	DZM FOR#MD
	GETDEC
	CLA
	DAC F#ORMR
	UNPACK
	JMP FORNUL

FORM2,	SAD (CHAR RH	JMP FORMH
	SAD (CHAR RI	JMP FORMI
	SAD (CHAR RF	JMP FORMF
	SAD (CHAR RE	JMP FORME
	SAD (CHAR RX	JMP FORMX
	SAD (CHAR RA	JMP FORMA
	JMP FORNUL

FORMI,	IDXCHR
	GETDEC
	LAC (10
	DAC FO#RMW
	LAW 1
	JMP FORMF2 1

FORME,	LAW 3
	SKP
FORMF,	LAW 2
	DAC FORMF2
	IDXCHR

FORMF1,	GETDEC
	LAC (20
	DAC FORMW
	LAW CHAR R.
	CHKNXT
	JMP FORMF2
	GETDEC
	LAC (12
	DAC FORMD

FORMF2,	XX
	GATHER
	JMP GATHR2

FORMA,	IDXCHR
	GETDEC
	LAC (1
	DAC FORMW
	LAW 6
	JMP FORMF2 1

/FORMAT - PAGE 2


FORMH,	LAC (SKP
	DAC SPACES
	LAC FORMR
	CMA
	DAC TEM#C

	LAW 5
	GATHR1

	LAW FORMHM-1
	PUNSTR
	DZM SC#ASE
	JMP FORMH3

FORMH1,	UNPACK
	JMP FORMH4
	DAC TEM
	LAC UCASE
	SAD SCASE
	JMP FORMH2
	DAC SCASE
	SNA
	LAC (7200
	RAR6
	PUNCHW
FORMH2,	LAC TEM
	PUNCHW
FORMH3,	IDXCHR
	ISZ TEMC
	JMP FORMH1

FORMH4,	LAC SCASE
	SNA
	JMP . 3
	LAC (72
	PUNCHW
	PUNCRR
	LAC (NOP
	DAC SPACES
	LAC UPAKCH	/FLUSH SPACES
	CAL UPAK2
	UNPACK
	JMP GATHR2
	CHRTYP
	JMP FORMCM
	JMP FORMCM
	JMP GATHR2

FORMHM,	TEXT .	TEXT 
.

/FORMAT - PAGE 3

FORMSL,	LAC (400000
	JMP FORM1-1

FORMCM,	DZM FORML
	JMP FORM1

FORMRP,	ISZ FORMPC
	JMP FORMCM
	PUNTAB
	LAC (600000
	DAC COMMON
	JMP PUNDCC

/COMBINE THE FORMAT SPECS INTO ONE WORD AND OUTPUT

GATHER,	DAC TEM
	LAC FORMR
	CLL
	AND (17
	RAL4
	LAC FORMD
	AND (17
	ADD PAC
	RAL5
	LAC FORMW
	AND (37
	ADD PAC
	DAC FORMR
	LAC TEM

GATHR1,	RAR6
	AND (160000
	ADD FORML
	ADD FORMR
	DAC TEM
	PUNTAB
	LAC TEM
	JMP PUNDCC

FORNUL,	CLA
	GATHR1
	JMP GATHR2
FORMX,	LAW 4
	GATHR1
	IDXCHR
GATHR2,	UNPACK
	CLA
	IDXCHR
	SAD (CHAR R,	JMP FORMCM
	SAD (CHAR R/	JMP FORMSL
	SAD (CHAR R)	JMP FORMRP
	SAD (CHAR R(	JMP FORMLP
	HELP 1302
	JMP FORMRP 2

START
