
P00054=0054
D00374=0374
D00755=0755
D01354=1354
D01373=1373
D01374=1374
D01624=1624
D02244=2244

	FIELD	0

	*3200
P03200,	JMS I P03351    / Output CRLF
	JMS I PICHAR    / Get a character
	JMS I P03353    / Is it a space?
	SNA 
	JMP L03263      / Yes, go do space command
	JMS I P03354    / Is it an asterisk?
L03206,	SZA 
	JMP I .+2       / No, go check for others
	SKP             / Yes, keep going
	L04027
	JMS P03233      / Got asterisk...
	JMS P03233
	JMS P03233
	JMS P03233
	D03375
L03217,	JMS I P03355
	JMS I PICHAR
	JMS I P03353
	SNA 
	JMP I P03367
	JMS P03244
	JMP I P03356
	D04233
	JMS P03233
	JMS P03233
L03231,	DCA D03376
	JMP I P03370
P03233,	L03231
	CLL RAL 
	RTL 
	DCA D03373
	JMS I PICHAR
	JMS P03244
	JMP I P03367
P03242,	D01373
	JMP I P03233
P03244,	P03242
	DCA D03374
	TAD D03372
	D00374
	TAD D03364
	SNA CLA 
	JMP L03256
	CLL 
	D01374
	JMP I P03244
L03256,	CLL 
	TAD D03374
	AND D03365
	D02244
	JMP I P03244
L03263,	CLA CLL 
	TAD D03375
	RTL 
	RTL
	JMS I P03361
	JMS I P03361
	JMS I P03361
	JMS I P03361
L03273,	JMP L03217
L03274,	TAD D03357
	DCA D03376
	JMS I P03355
	JMS I PICHAR
	JMS P03244
	SKP
	JMP L03343
	JMS I P03362
	SNA 
	JMP L03334
	JMS I P03363
	SNA 
	JMP L03315
	JMS I P03353
	SZA 
	JMP I P03367
	JMP L03320
L03315,	TAD D03376
	TAD D03371
	DCA D03376
L03320,	JMS I P03355
	JMS I PICHAR
	JMS P03244
	SKP 
	JMP L03343
	JMS I P03362
	SNA 
	JMP L03334
	4753
	SZA 
	JMP I P03367
	JMP L03337
L03334,	TAD D03376
	AND D03366
	DCA D03376
L03337,	JMS I P03355
	JMS I PICHAR
	JMS P03244
	JMP I P03367
L03343,	JMS P03233
	JMS P03233
	AND M177
	TAD D03376
	DCA D03376
	JMP I P03370
P03351,	OCRLF
PICHAR,	ICHAR
P03353,	P03647
P03354,	P03642
P03355,	OSPACE
P03356,	L04000
D03357,	0200
M177,	0177
P03361,	ONEOCT
P03362,	P03654
P03363,	P03661
D03364,	7520
D03365,	0007
D03366,	7577
P03367,	P03607
P03370,	L03600
D03371,	0400
D03372,	0370
D03373,	4200
D03374,	0261
D03375,	3571
D03376,	4201
	DCA D03365

	*3400
P03400,	D04323
L03401,	DCA D03562
	JMS I PICHR
	JMS I P03551
	SNA 
	JMP L03545
	JMS P03523
	P03363
	DCA I P03555
	JMS P03513
L03412,	TAD D03564
	CIA
	DCA D03566
	TAD D03565
	JMS P03457
	SKP 
L03420,	JMP I P03552
	JMS P03447
L03422,	DCA I P03555
	DCA D03567
L03424,	JMS I P03553
	JMS I PICHR
	D04751
	SNA 
	JMP I P03560
	JMS P03523
	DCA D03562
	JMS I PICHR
	JMS P03523
	DCA D03563
	JMS P03513
	JMS P03447
	JMS P03535
L03441,	ISZ D03567
	SKP 
	JMP I P03560
	CLA CMA 
	DCA D03567
	JMP L03424
P03447,	L03422
	TAD D03570
	CIA
	DCA D03566
	TAD D03571
	JMS P03457
	JMP I P03561
	JMP I P03447
P03457,	L03420
	DCA P03572
L03461,	TAD I P03572
	TAD D03562
	SNA CLA 
	JMP L03470
	TAD P03572
	D01354
	JMP L03505
L03470,	ISZ P03572
	TAD I P03572
	TAD D03563
	SNA CLA 
	JMP L03501
	TAD P03572
	IAC
	IAC
	JMP L03505
L03501,	ISZ P03572
	TAD I P03572
	ISZ P03457
	JMP I P03457
L03505,	DCA P03572
	TAD P03572
	TAD D03566
	SPA CLA 
	JMP L03461
	JMP I P03457
P03513,	L03412
	TAD D03562
	CIA
	DCA D03562
D03517,	1363
	CIA
	DCA D03563
	JMP I P03513
P03523,	L03401
	AND D03556
	CLL RTL 
	RTL 
	RTL 
	DCA D03566
	D04750
	AND D03556
	TAD D03566
	JMP I P03523
P03535,	L03441
	DCA D03557
	TAD D03557
	CMA
	D00755
	TAD D03557
	DCA I P03555
	JMP I P03535
L03545,	TAD D03562
	DCA I P03555
	JMP I P03560
PICHR,	ICHAR
P03551,	P03647
P03552,	L03274
P03553,	OSPACE
	0003
P03555,	D03376
D03556,	0077
D03557,	7200
P03560,	L03600
P03561,	P03607
D03562,	2340
D03563,	4540
D03564,	3776
D03565,	3731
D03566,	2300
D03567,	0000
D03570,	4201
D03571,	4041
P03572,	3741
	AND D03517
	AND I P00054
	7711
	0405
	AND D03517

	*3600
L03600,	TAD I P03715
	DCA P03730
	TAD I P03716
	DCA I P03730
	2715
	NOP
	5714
P03607,	D04226
	JMS OSPACE      / Output a space
	CLA CLL 
	TAD QMARK       / Output question mark
	JMS OCHAR
	JMS OCHAR       / ...twice
	JMP I P03714
OCRLF,	3201
	CLA CLL 
	TAD CR          / Output CR
	JMS OCHAR
	CLA CLL
	TAD LF          / Output LF
	JMS OCHAR
	JMP I OCRLF
OSPACE,	3220
	CLA CLL 
	TAD SPACE       / Output a space
	JMS OCHAR
	JMP I OSPACE
P03633,	P03653
	TAD P03730      / Add the character
	CLL 
	SNA CLA         / Is it a match?
	JMP I P03633    / Yes, return 0
	TAD P03730      / No, return the character
	JMP I P03633
P03642,	3206
	DCA P03730      / Save the character
	TAD NSPLAT      / Is it asterisk?
	JMS P03633
	JMP I P03642    / Return result
P03647,	3222
	DCA P03730      / Save the character
	TAD NSPACE      / Is it space?
	JMS P03633
P03653,	JMP I P03647    / Return result
P03654,	3304
	DCA P03730
	TAD NZ
	JMS P03633
	JMP I P03654
P03661,	3307
	DCA P03730
	TAD D03724
	JMS P03633
	JMP I P03661
ICHAR,	3202            / Input with echo
	KSF             / Wait for input
	JMP .-1
	KRB             / Read the character
	JMS OCHAR       / Echo it
	JMP I ICHAR     / Return
OCHAR,	3625            / Output a character
	TLS
	TSF             / Wait for output
	JMP .-1
	JMP I OCHAR     / Return
ONEOCT,	L03273
	DCA P03730      / Save argument
	TAD P03730
	AND I P03777    / Mask with 0007
	TAD C260        / Convert to digit
	JMS OCHAR       / Print it
	CLA
	TAD P03730      / Get the value
	RAL             / Roll up next digit
	RTL 
	JMP I ONEOCT    / Return
P03714,	P03200
P03715,	D03375
P03716,	D03376
QMARK,	0277
CR,	0215
LF,	0212
SPACE,	0240
NSPLAT,	-"*
D03724,	-"I             / Should be "A ?
NSPACE,	-240
NZ,	-"Z
C260,	0260
P03730,	D03570
        TEXT /AND /; *.-1
	AND 0
        TEXT /TAD /; *.-1
	TAD 0
        TEXT /ISZ /; *.-1
	ISZ 0
        TEXT /DCA /; *.-1
	DCA 0
        TEXT /JMS /; *.-1
	JMS 0
        TEXT /JMP /; *.-1
	JMP 0
        TEXT /FADD/; *.-1
	TAD 0
        TEXT /FSUB/; *.-1
	ISZ 0
        TEXT /FMPY/; *.-1
	DCA 0
        TEXT /FDIV/; *.-1
	JMS 0
        TEXT /FGET/; *.-1
	JMP 0
        TEXT /FPUT/; *.-1
	IOT
	1116
	7764
P03777,	D03365

	*4000
L04000,	DCA I P04017
	1220
	JMS I P04021
	SZA 
	JMP I P04022
	TAD I P04023
	DCA P04024
	D01624
	CLL RTL 
	RTL 
	JMS I P04025
	JMS I P04025
	JMS I P04025
	JMS I P04025
	JMP I P04026
P04017,	P03730
	7503
P04021,	P03633
P04022,	P03400
P04023,	D03375
P04024,	D03570
P04025,	ONEOCT
P04026,	P03200
L04027,	DCA I P04017
	TAD D04036
	JMS I P04021
	SZA 
	JMP I P04037
	ISZ I P04023
	JMP I P04040
D04036,	7521
P04037,	P03607
P04040,	L03263
        TEXT /NOP /; *.-1
        NOP
        TEXT /IAC /; *.-1
        IAC
        TEXT /RAL /; *.-1
	RAL 
        TEXT /RTL /; *.-1
	RTL 
        TEXT /RAR /; *.-1
	RAR 
        TEXT /RTR /; *.-1
	RTR 
        TEXT /CML /; *.-1
	CML 
        TEXT /CMA /; *.-1
	CMA 
        TEXT /CIA /; *.-1
	CIA
        TEXT /CLL /; *.-1
	CLL 
        TEXT /STL /; *.-1
	STL
        TEXT /CLA /; *.-1
	CLA 
        TEXT /STA /; *.-1
	STA
        TEXT /HLT /; *.-1
	HLT
        TEXT /OSR /; *.-1
	OSR
        TEXT /SKP /; *.-1
	SKP
        TEXT /SNL /; *.-1
	SNL
        TEXT /SZL /; *.-1
	SZL 
        TEXT /SZA /; *.-1
	SZA 
        TEXT /SNA /; *.-1
	SNA 
        TEXT /SMA /; *.-1
	SMA 
        TEXT /SPA /; *.-1
	SPA 
        TEXT /ION /; *.-1
	ION
        TEXT /IOF /; *.-1
	IOF
        TEXT /KSF /; *.-1
	KSF 
        TEXT /KCC /; *.-1
	KCC
        TEXT /KRS /; *.-1
	KRS
        TEXT /KRB /; *.-1
	KRB
        TEXT /TSF /; *.-1
	TSF 
        TEXT /TCF /; *.-1
	TCF
        TEXT /TPC /; *.-1
	TPC
        TEXT /TLS /; *.-1
	TLS
D04226=4226
D04233=4233
D04323=4323
D04750=4750
D04751=4751
D07006=7006
$
