{{htmlmetatags>metatag-description:(ICL George 3 and George 4 source: IPBLISTA867)}}
====== IPBLISTA867 ======
(George Source)
**Macros used:** [[george:macro:ACROSS|ACROSS]], [[george:macro:ALTLEN|ALTLEN]], [[george:macro:AND|AND]], [[george:macro:BS|BS]], [[george:macro:DATECON|DATECON]], [[george:macro:DEMANDX|DEMANDX]], [[george:macro:DO|DO]], [[george:macro:DOWN|DOWN]], [[george:macro:ELSE|ELSE]], [[george:macro:FI|FI]], [[george:macro:FLENME1|FLENME1]], [[george:macro:FREECORE|FREECORE]], [[george:macro:HUNTW|HUNTW]], [[george:macro:IF|IF]], [[george:macro:LFEND|LFEND]], [[george:macro:LONGSET|LONGSET]], [[george:macro:MBC|MBC]], [[george:macro:MHUNT|MHUNT]], [[george:macro:MHUNTW|MHUNTW]], [[george:macro:ON|ON]], [[george:macro:OR|OR]], [[george:macro:OUTPER|OUTPER]], [[george:macro:OUTPERA|OUTPERA]], [[george:macro:REPEAT|REPEAT]], [[george:macro:SEG|SEG]], [[george:macro:SEGENTRY|SEGENTRY]], [[george:macro:SETUPCORE|SETUPCORE]], [[george:macro:SPLCLPROPS|SPLCLPROPS]], [[george:macro:SPLPROPS|SPLPROPS]], [[george:macro:THEN|THEN]], [[george:macro:TIMECON|TIMECON]], [[george:macro:VFREEW|VFREEW]], [[george:macro:WHILE|WHILE]]
22*P ... SEG IPBLISTA,,,,G170,G269
22PD # (C) COPYRIGHT INTERNATIONAL COMPUTERS LTD 1982
22QH ...#OPT G170 = 0
22RL ...#SKI G170&1
22SP ...# WITH UGUG EDIT M170 (VARIABLE REMOTE *LP WIDTHS)
22TS ...#OPT G269 = 0
22WX ...#SKI G269&1
22Y2 ...# WITH UGUG EDIT M269 (REMOTE *LP LISTFILE DEBATCHERS)
22^= #LIS K0IPBLISTA>K0IPB>K0ALLGEO
23DW #
23YG SEGENTRY K1IPBLISTA,SK1IPBLISTA
26BL [
26W= [************************************************************
27*W [
27TG [ PRESET DATA
28*6 [
28SQ [************************************************************
29#B [
29S2 [
2=?L PJMARY +JMARY
2=R= STARSOLF #76347666,#32323232
2?=W NEWLINES #76327632
2#=6 STAREND #32327666
2*P2 PAGESEQ #76007631,#74607635
2*YS PSEQ #76007631,#763500
2BN= TAPE #76327620,#76207620
2C7W THEAD 24HPRODUCED ON AT
2CMG SHEAD 28H#OUTPUT BY LISTFILE IN ':
2D76 ONAT 8H' ON AT
2DLQ SDOC 12HDOCUMENT
2F6B ZUSING 8H USING
2FL2 VFROM 12H FROM JOB
2G5L TPUNCH #40100000
2GK= ONZE #60000002
2H#N SDEV #4000
2HJG TABLE
2J46 #07566161,#56404040 [0
2JHQ #05766740,#40404040 [1
2K3B #07536165,#51404040 [2
2KH2 #07526165,#56404040 [3
2L2L #10465262,#47424040 [4
2LG= #07727161,#66404040 [5
2L^W #07566565,#42404040 [6
2MFG #07606164,#70404040 [7
2M^6 #07526565,#52404040 [8
2NDQ #07516565,#56404040 [9
2NYB #04454040,#40404040 [:
2PD2 #05414640,#40404040 [;
2PXL #06445261,#40404040 [<
2QC= #07464646,#46404040 [=
2QWW #06615244,#40404040 [>
2RBG #07506364,#50404040 [?
2RW6 #10404040,#40404040 [SPACE
2S*Q #05766540,#40404040 [!
2STB #05707040,#40404040 ["
2T*2 #12527667,#52766752 [#
2TSL #07455765,#61404040 [£
2W#= #11416244,#40516040 [%
2WRW #07536562,#45404040 [&
2X?G #04704040,#40404040 ['
2XR6 #05566140,#40404040 [(
2Y=Q #05615640,#40404040 [)
2YQB #06474747,#40404040 [*
2^=2 #10444457,#44444040 [+
2^PL #05414240,#40404040 [,
329= #07444444,#44404040 [-
32NW #04414040,#40404040 [.
338G #11414244,#40506040 [/
33N6 #11506265,#67615640 [@
347Q #10576464,#64574040 [A
34MB #12766765,#65655442 [B
3572 #10566161,#61614040 [C
35LL #11766761,#61615640 [D
366= #10766765,#65614040 [E
36KW #10766764,#64604040 [F
375G #11566161,#63634240 [G
37K6 #12766744,#44447667 [H
384Q #07617667,#61404040 [I
38JB #12426161,#76666060 [J
3942 #10766744,#52614040 [K
39HL #10766741,#41414040 [L
3=3= #12766750,#44507667 [M
3=GW #12766750,#44427667 [N
3?2G #10566565,#65564040 [O
3?G6 #10766764,#64504040 [P
3?^Q #11566161,#65564140 [Q
3#FB #11766764,#64524140 [R
3#^2 #10425165,#65424040 [S
3*DL #11606076,#67606040 [T
3*Y= #12766641,#41417666 [U
3BCW #10704441,#44704040 [V
3BXG #12766742,#44427667 [W
3CC6 #11615244,#44526140 [X
3CWQ #10605047,#50604040 [Y
3DBB #11416365,#61716140 [Z
3DW2 #07766761,#61404040 [[
3F*L #11425176,#67654240 [$
3FT= #07616176,#67404040 []
3G#W #07507667,#50404040 [^
3GSG #10424742,#42424040 [_
3H#6 VNULL #40404040
3HRQ PBINARYMODE #00700000 [BINARY MODE
4#NL [
4*8= [************************************************************
4*MW [
4B7G SETU
4BM6 [
4C6Q [************************************************************
4CLB [
4D62 #
4DKL # GET AMXOR/IOUT BLOCK FOR OUTPUT ; ON ENTRY MESSAGE CHAR CT. IN X4
4F5= #
4FJW SMO FX2
4G4G LDX 4 AWORK3 [NPU SIZE IN CHARS
4GJ6 [
4H3Q [************************************************************
4HHB [
4J32 PCOR
4JGL [
4K2= [************************************************************
4KFW [
4K^G SBX 7 FX1
4LF6 LDX 5 4
4LYQ ADN 5 IDATA-A1*4+3 [ROUND UP
4MDB SRL 5 2 [NO. OF WORDS IN OUTPUT
4MY2 ... SETUPCORE 5,2,AMXOR,IOUT
4NCL STOZ IMOPTY(2) [DON'T WAKE UNLESS LAST BLOCK
4NX= LDN 0 1
4PBW SMO FX2
4PWG ADS 0 AWORK1 [COUNT OF BLOCKS FOR OUTPUT
4QB6 MHUNTW 1,AMXOR,ADCB
4QTQ LDX 5 IDENTNO(1)
4R*B STO 5 IPBIDE(2) [IDENTIFIER NUMBER
4RT2 LDX 1 FX1
4S#L ORX 4 GSIGN
4SS= STO 4 IPBIDE+1(2) [OUTPUT CHARACTER COUNT
4T?W LDN 5 IDATA(2) [START ADDRESS OF OUTPUT
4TRG ADX 7 FX1
4W?6 STOZ IBSW(2) [BLOCK STATUS WORD
4WQQ EXIT 7 0
4X=B [
4XQ2 [************************************************************
4Y9L [
4YP= UFLEN
4^8W [
4^NG [************************************************************
5286 [
52MQ #
537B # STORE USER NAME AND JOB NAME , OMITTING NON-SIGNIFICANT SPACES
53M2 #
546L MHUNTW 1,GOUT,INFO
54L= FLENME1 GUSER,1,3 [X2,X4,X5 NOT CHANGED
555W EXIT 4 0
55KG [
5656 [************************************************************
56JQ [
574B VISIB
57J2 [
583L [************************************************************
58H= [
592W #
59GG # CONVERT TAPE HEADINGS INTO VISIBLE FORM ; CHAR COUNT IN X6 ; CHARS
5=26 # TO BE CONVERTED START AT IWORK1 OF ACTIVITY ; CALL ON X7
5=FQ # ON ENTRY X5 CONTAINS ROOM LEFT IN AMXOR/IOUT IN CHARS
5=^B #
5?F2 SBX 7 FX1
5?YL LDX 2 FX2
5#D= STO 7 ACOMMUNE5(2) [PRESERVE LINK
5#XW SMO FX1
5*CG LDX 0 VNULL [#40404040
5*X6 STO 0 ACOMMUNE4(2)
5BBQ ADN 2 IWORK1
5BWB VLOOP
5CB2 LDCH 3 0(2) [CHAR TO BE CONVERTED
5CTL ADN 3 TABLE(3)
5D*= ADX 3 FX1
5DSW LDX 1 FX2
5F#G LDN 4 ACOMMUNE2(1)
5FS6 MOVE 3 2 [STORE REPRESENTATION FOR LATER MVCH
5G?Q LDX 3 4
5GRB LDX 4 ACOMMUNE1(1) [DCH POINTER IN AMXOR/IOUT
5H?2 LDCH 1 0(3) [NO. OF CHARS IN VISIBLE FORM
5HQL BCHX 3 £
5J== TXL 5 1
5JPW BCC VROOM [ENOUGH ROOM IN THIS BLOCK
5K9G BZE 5 VFULL [NOT EVEN ROOM FOR 1 CHAR
5KP6 SMO 5
5L8Q MVCH 3 0 [FILL UP BLOCK
5LNB VFULL
5M82 SBX 2 FX2
5MML SMO FX2
5N7= STO 2 ACOMMUNE8 [PRESERVE CHAR POINTER
5NLW LDX 2 FX2
5P6G SBX 3 FX2
5PL6 STO 3 ACOMMUNE7(2) [PRESERVE START ADDRESS FOR NEXT MVCH
5Q5Q SBX 1 5
5QKB STO 1 ACOMMUNE6(2) [PRESERVE COUNT FOR NEXT MVCH
5R52 CALL 7 SETU [GET NEW BLOCK
5RJL LDXC 5 4 [CHAR COUNT : THIS WILL SET C
5S4= LDN 4 IDATA-1(2) [START ADDRESS FOR DEPOSITING
5SHW LDX 2 FX2
5T3G LDX 1 ACOMMUNE6(2) [COUNT FOR NEXT MVCH
5TH6 LDX 3 ACOMMUNE7(2)
5W2Q ADX 3 FX2 [START ADDRESS FOR MVCH
5WGB LDX 2 ACOMMUNE8(2)
5X22 ADX 2 FX2 [POINTER TO CHAR BEING CONVERTED
5XFL VROOM
5X^= MVCH 3 0(1)
5YDW SBX 5 1
5YYG SMO FX2
5^D6 STO 4 ACOMMUNE1
5^XQ BCHX 2 £
62CB BCT 6 VLOOP
62X2 LDX 2 FX2 [END OF CONVERSION
63BL LDX 7 ACOMMUNE5(2)
63W= ADX 7 FX1
64*W EXIT 7 0
64TG [
65*6 [************************************************************
65SQ [
66#B YETFL
66S2 [
67?L [************************************************************
67R= [
68=W #
68QG # GET NEW AMXOR/IOUT BLOCK IF NOT ENOUGH ROOM FOR NEXT MOVE OR MVCH
69=6 #
69PQ MHUNTW 2,AMXOR,IOUT
6=9B ADX 2 ALOGLEN(2)
6=P2 ADN 2 A1 [POINT TO WORD AFTER BLOCK
6?8L SBX 2 5 [DCH POINTER IN X5
6?N= SLC 2 2 [GET AMOUNT OF ROOM LEFT
6#7W TXL 7 2 [X7 CONTAINS COUNT OF CHARS TO INSERT
6#MG BCS (6) [ENOUGH ROOM : EXIT
6*76 [
6*LQ [************************************************************
6B6B [
6BL2 UZNEWIO
6C5L [
6CK= [************************************************************
6D4W [
6DJG SBX 6 FX1
6F46 MHUNTW 2,AMXOR,IOUT
6FHQ SBN 5 IDATA(2)
6G3B SLC 5 2
6GH2 DSA 5 IPBIDE+1(2) [OUTPUT CHAR COUNT
6H2L ADN 5 IDATA-A1*4+3
6HG= SRL 5 2
6H^W ALTLEN 2,5 [SHORTEN AMXOR/IOUT FOR IPBOUT
6JFG CALL 7 SETU [GET NEW AMXOR/IOUT
6J^6 ADX 6 FX1
6KDQ LDX 3 2 [AMXOR/IOUT ADDRESS FOR MAIN PATH
6KYB EXIT 6 0
6LD2 [
6LXL [************************************************************
6MC= [
6MWW ZLINE
6NBG [
6NW6 [************************************************************
6P*Q [
6PTB #
6Q*2 # END OF LINE IN HEADINGS : NL + RUNOUT FOR TAPE , NL + NL FOR PRINT
6QSL #
6R#= LDN 4 ACES
6RRW MVCH 4 3 [SPACE FILL REMAINDER OF LAST WORD
6S?G ANDX 5 BITS22LS [#17777777
6SR6 SMO FX2
6T=Q LDX 6 AWORK1 [>0 IF LP ; <0 IF TP
6TQB BNG 6 TLINE
6W=2 LDN 4 NEWLINES(1) [#76327632
6WPL LDN 2 1
6X9= BRN ZMOVE
6XNW TLINE
6Y8G LDN 4 TAPE(1) [#76327620,#76207620
6YN6 LDN 2 2
6^7Q ZMOVE
6^MB MOVE 4 0(2) [INSERT LINE TERMINATOR
7272 ADX 5 2
72LL EXIT 7 0
72MP [
72NS [************************************************************
72PX [
72R2 TESTIPBSTAT
72S5 [
72T8 [************************************************************
72W? [
72XB MHUNTW 3,AMXOR,ADCB
72YF SMO A1+FPTR(3)
72^J LDX 0 FOURTHWD
732M SLL 0 2
733Q BNG 0 (6)
734T EXIT 6 1
736= [
73KW [************************************************************
745G [
74K6 SENGAGE
754Q [
75JB [************************************************************
7642 [
76HL SBX 7 FX1
76NS CALL 6 TESTIPBSTAT
76W2 BRN SCANTDO
773= WHILE TRUE
77GW MHUNT 3,AMXOR,ADCB
782G AND BS,3,ADCBINOP [ DEVICE INOPERABLE
78G6 DO
78^Q IF BS,3,ADCBTUNATT [ UNATTENDED SPOOLING
79FB THEN
79^2 LDN 4 2 [ OUTPUT TO BOTH CONSOLES
7=DL ELSE
7=Y= LDN 4 0 [ TO CLUSTER CONSOLE ONLY
7?CW FI
7?XG LONGSET #36,(GEOERR),IDENTNO(3)
7#C6 OUTPER
7#WQ DEMANDX 4,PJMARY(1),SCANTDO,STERM,,2
7*BB VFREEW GMON,AOUT
7*W2 VFREEW ADATA,ADEMAND
7B*L REPEAT
7BCT ... MHUNTW 3,AMXOR,ADCB [FIND ADEVS
7BG4 ...
7BJ? ... SMO A1+FPTR(3)
7BLG ... LDX 0 FOURTHWD [LOOK IF ON TEST
7BNP ... SLL 0 11
7BQY ... BNG 0 SCANTDO [IF SO, TAKE CANT DO ENGAGE ACTN
7BT= ADX 7 FX1
7C#W LDN 0 0
7CSG EXIT 7 0
7D#6 [
7DRQ SCANTDO [ CANTDO TO PLEASE ENGAGE
7F?B [
7FR2 MHUNTW 3,AMXOR,ADCB
7G=L BS 3,ADCBWAITWR [ WAITING TO BE WRONGED
7GQ= [
7H9W STERM [ TERMINATE TO PLEASE ENGAGE
7HPG [
7J96 ADX 7 FX1
7JNQ LDN 0 1
7K8B EXIT 7 0
7KN2 [
7L7L [************************************************************
7LM= [
7M6W SCHANMODE
7MLG [
7N66 [************************************************************
7NKQ [
7P5B [ CHANGE MODE FOR BINARY OUTPUT
7PK2 [
7Q4L SBX 7 FX1
84#Q LDN 0 1
84SB ADX 7 FX1
85#2 EXIT 7 0
85RL [
86?= [************************************************************
86QW [
87=G SFORM
87Q6 [
889Q [************************************************************
88PB [
8992 [ OUTPUT PAGE SEQUENCE NO. AND FORMAT LOOP DATA TO /IOUT BLOCK
89NL [
8*62 MHUNTW 1,ADATA,FORMLOOP
8*KL LDN 4 FORMDATA(1)
8B5= SMO FORMCHAR(1)
8BJW MVCH 4 0 [ FORMAT LOOP DATAS
8C4G EXIT 7 0
8C5X [
8C6B SPSEQ
8C6T [
8C7# MHUNTW 3,AMXOR,ADCB
8C7R IF BS,3,ADCBTSPOOL
8C8= THEN
8C8P IF BS,3,ADCB7502LP
8C98 THEN
8C9M SMO FX2
8C=6 LDX 0 IWORK11
8C=Q ADN 0 1
8C?B ANDN 0 #37
8C#2 SMO FX2
8C#F STO 0 IWORK11
8C#Y SRC 0 6
8C*C LDN 4 PSEQ(1)
8C*W MVCH 4 4
8CB* SMO 4
8CBS ADX 0 0
8CC? LDN 4 0
8CCQ MVCH 4 3
8CD9 ELSE
8CDN LDN 4 PAGESEQ(1)
8CF7 MVCH 4 8
8CFL FI
8CG5 FI
8CGJ EXIT 7 0
8CJ6 [
8D3Q [************************************************************
8DHB [
8F32 SRUNOUT
8FGL [
8G2= [************************************************************
8GFW [
8G^G [ RUNOUT FOR TAPE PUNCH
8HF6 [
8HYQ [ X6 = NO OF RUNOUT CHARS
8JDB [
8JY2 SBX 3 FX1
8KCL WHILE TRUE
8KX= SMO FX2
8LBW LDX 4 AWORK3 [ NPU SIZE IN CHARS
8LWG SBX 6 4
8MB6 AND EITHER,6,PZ [ MUCH MORE RUNOUT REQUIRED
8MTQ ADX 4 6
8N*B OR 4,PZ [ LITTLE MORE RUNOUT REQUIRED
8NT2 DO
8P#L CALL 7 PCOR [ SETUP AMXOR/IOUT
8PS= LDX 0 TAPE+1(1)
8Q?W STO 0 IDATA(2)
8QRG LDX 1 ALOGLEN(2)
8R?6 SBN 1 IDATA-A1+1
8RQQ LDX 4 5
8S=B ADN 5 1
8SQ2 MOVE 4 0(1) [ MOVE IN NULL CHARS
8T9L REPEAT
8TP= ADX 3 FX1
8W8W EXIT 3 0
8WL^ [
8WM2 [************************************************************
8WM3 [
8WM4 SFAIL
8WM5 [
8WM6 [************************************************************
8WM7 [
8WM8 [ FAIL BETWEEN LISTFILES
8WM9 [
8WM= SMO A1+FPTR(3)
8WM? LDX 0 FOURTHWD
8WM# ... SLL 0 9
8WM* ... BNG 0 XCANTDO
8WMB ... SLL 0 3
8WMC ... BNG 0 SFL2
8WMD ... LDX 0 ISTATUS(3)
8WMF ... SLL 0 4
8WMG ... BNG 0 SFL1
8WMH ... EXIT 6 0
8WMJ ...SFL1
8WMK ... LDCT 0 #030
8WML ... ERS 0 ISTATUS(3)
8WMM ... BRN SFL3
8WMN ...SFL2
8WMP ... LDX 0 SDEV(1)
8WMQ ... SMO A1+FPTR(3)
8WMR ... ERS 0 FOURTHWD
8WMS ...SFL3
8WMT ... ACROSS IPBLISTC,7
8WMW ...
8WNG [
8X86 [
8XMQ [ WW WW W
8Y7B [ WW WW WW
8YM2 [ WW WW WWW
8^6L [ WWWW WW
8^L= [ WWWWW WW
925W [ WW WW WW
92KG [ WW WW WW
9356 [ WW WW WW
93JQ [
944B SK1IPBLISTA
94J2 [
953L MHUNTW 3,AMXOR,ADCB
95H= LDX 0 IMDNPU(3)
962W ANDN 0 #7777
96GG SLL 0 2
9726 STO 0 AWORK3(2) [ NPU SIZE IN CHARS
97FQ SLL 0 12
97^B STO 0 AWORK1(2) [ NPU SIZE IN MS 12 BITS
986J LDN 0 0
98?Q STO 0 IWORK11(2)
98BB CALL 6 SFAIL
98F2 [ COUNT OF AMXOR/IOUT IN LS 9 BITS
98YL MBC 3,ADCBTSPOOL,ADCBTUNATT [ CLEAR SPOOLING SET FROM LAST LISTI
99D= IF BS,3,ADCBPUNATT [ STILL UNATTENDED
99XW THEN
9=CG BS 3,ADCBTUNATT
9=X6 FI
9?BQ IF BS,3,ADCBPSPOOL [ STILL SPOOLING
9?WB THEN
9#B2 BS 3,ADCBTSPOOL
9#J8 IF BS,3,ADCB7502LP
9#L= THEN
9#N# SPLCLPROPS [ PROPERTIES REQUIRED MESSAGE
9#QB LDN 0 1
9#SD ADS 0 AWORK1(2) [ ADD 1 TO IOUT BLOCK COUNT
9#WG ELSE
9#YJ SPLPROPS XCANTDO [ LIST PROPERTIES REQUIRED
9*2L FI
9**= FI
9*SW CALL 7 SENGAGE
9B#G IF EITHER,0,NZ [ CANNOT ENGAGE DEVICE
9BS6 MHUNT 1,GOUT,INFO [ COPY OF GOUT INFO
9C?Q IF BS,1,BLFBINARY [ BINARY
9CRB THEN
9D?2 SMO FX1
9DQL LDX 0 PBINARYMODE
9F== CALL 7 SCHANMODE
9FPW ELSE
9G9G LDN 0 0
9GP6 FI
9H8Q OR 0,NZ [ CANNOT CHANGE MODE TO BINARY
9HNB THEN
9J82 [
9JML XCANTDO [ CANTDO LABEL FOR SPLPROPS MACRO
9K7= [
9K98 MHUNTW 3,ADATA,CREADL
9K?6 FREECORE 3
9K?Q MHUNTW 3,FILE,ENT
9K#B FREECORE 3
9K*4 HUNTW 3,AMXOR,IOUT
9KC2 IF 3,PZ
9KDY THEN
9KGW FREECORE 3
9KJS FI
9KLW LFEND CD [ RETURN TO CENTRAL LISTFILE
9L6G [-------
9LL6 FI
9M5Q MHUNT 1,GOUT,INFO
9MKB IF BC,1,BLFBINARY [ NOT BINARY OUTPUT
9N52 THEN
9NJL LDCH 0 JSOURCE1(2)
9P4= SBN 0 2
9PHW IF 0,ZE [ LINE PRINTER
9Q3G THEN
9Q8N ...#SKI G170&1$1
9Q*W ...(
9QH6 SEGENTRY K50IPBLISTA
9R2Q LDN 4 A7021WIDTH+4 [ WIDTH OF LP + 4 FOR FORM FEED AN
9R4N ...)
9R6L ...#SKI G170&1
9R8J ...(
9R=G ...#ALT K50IPBLISTA = 1022
9R#D ... LDN 4 4
9RBB ... ADX 4 IWIDTH(2)
9RD# ...)
9RGB IF BS,3,ADCB7502LP [ 7502 LP
9S22 HUNTW 1,ADATA,FORMLOOP
9SFL AND 1,PZ [ FORMAT LOOP BLOCK
9S^= THEN
9TDW ADX 4 FORMCHAR(1)
9TYG IF BS,3,ADCBTSPOOL [ SPOOLING
9WD6 THEN
9WLB ADN 4 7
9XCB FI
9XQ# [ THIS CODE SHOULD BE INSERTED IF IT IS DECIDED THAT FORMAT LOOP AND
9Y5= [ THE ASTERISKS LINE SHOULD BE STORED IN ONE BLOCK
9YD8 [
9YR6 [ IF 4,L,AWORK3(2) [ TOTAL DATA LENGTH LESS THAN N
9^64 [ THEN
9^F2 [ CALL 7 PCOR
9^N= [ CALL 7 SPSEQ
9^RY [ CALL 7 SFORM
=26W [ LDX 1 FX1
=2FS [ ELSE
=2KD ...#SKI G170&1$1
=2P4 ...(
=2SQ SEGENTRY K51IPBLISTA
=3#B SBN 4 A7021WIDTH+4
=3B# ...)
=3D= ...#SKI G170&1
=3G8 ...(
=3J6 ...#ALT K51IPBLISTA = 1022
=3L4 ... SBN 4 4
=3N2 ... SBX 4 IWIDTH(2)
=3PY ...)
=3S2 CALL 7 PCOR
=46B CALL 7 SPSEQ
=4?L CALL 7 SFORM
=4DS ...#SKI G170&1$1
=4L2 ...(
=4R= SEGENTRY K52IPBLISTA
=5=W LDN 4 A7021WIDTH+4
=5?9 ...)
=5?J ...#SKI G170&1
=5?X ...(
=5#= ...#ALT K52IPBLISTA = 1022
=5#K ... LDN 4 4
=5#Y ... SMO FX2
=5*? ... ADX 4 IWIDTH
=5*L ...)
=5B2 IF BS,3,ADCBTSPOOL
=5F6 THEN
=5J= ADN 4 7
=5MB FI
=5QG CALL 7 PCOR
=64W CALL 7 SPSEQ
=6=6 [ FI
=6PQ ELSE
=79B IF BS,3,ADCBTSPOOL [ SPOOLING
=7P2 THEN
=?=Q IF BS,3,ADCB7502LP
=??T THEN
=?#Y ADN 4 7
=?B3 ELSE
=?C6 ADN 4 8
=?D9 FI
=?F# FI
=?GC CALL 7 PCOR
=?HG CALL 7 SPSEQ
=?L2 FI
=#5L LDN 4 STARSOLF(1)
=#K= MVCH 4 8 [ FORM FEED ^****
=*4W LDX 4 5
=*JG SBN 4 1
=*PN ...#SKI G170&1$1
=*WW ...(
=B46 SEGENTRY K53IPBLISTA
=BHQ MVCH 4 A7021WIDTH-8 [ ***.....****
=BKF ...)
=BM8 ...#SKI G170&1
=BNX ...(
=BQL ...#ALT K53IPBLISTA = 1022
=BS* ... SMO FX2
=BW4 ... LDX 3 IWIDTH
=BXR ... MVCH 4 -8(3)
=B^G ...)
=C3B LDN 4 STAREND(1)
=CH2 MVCH 4 4 [ **^
=D2L BS 2,IOUTEORESTR [ END OF RESTART SECTION TO NOTICE
=D4T ...#SKI G269&1
=D74 ...(
=D9? ... DOWN IPDBATCH,1
=D?G ... LDX 0 ACOMMUNE1(2)
=D*P ... STO 0 AWORK1(2) [ RESET AMXOR/IOUT BLOCK COUNT
=DCY ...)
=DG= CALL 7 SETU [ SETUP AMXOR/IOUT FOR HEADINGS
=D^W LDX 0 NEWLINES(1)
=FFG STO 0 IDATA(2) [ NEWLINE NEWLINE
=F^6 ADN 5 1
=GDQ ELSE [ TAPE PUNCH
=GYB LDX 0 GSIGN
=HD2 ORS 0 AWORK1(2)
=HXL LDN 6 511
=JC= CALL 3 SRUNOUT
=JWW #
=KBG # OUTPUT VISIBLE TAPE HEADINGS WITH FILENAME AND USERNAME
=KW6 #
=L*Q MHUNTW 1,ADATA,CREADL
=LTB LDEX 6 A1+FRH(1) [NO. OF CHARS IN '#LISTING ETC.'
=M*2 ADN 1 CPDATA+3 [ADDRESS OF FILENAME
=MSL LDX 2 FX2
=N#= ADN 2 IWORK1
=NRW SBN 6 12
=P?G SMO 6
=PR6 MVCH 1 0
=Q=Q LDN 5 0 [INDICATE NO IOUT SET UP YET
=QQB CALL 7 VISIB [CONVERT FILENAME
=R=2 LDX 1 FX1
=RPL ADN 1 VFROM
=S9= ADN 2 IWORK1
=SNW MOVE 1 3
=T8G LDN 6 10
=TN6 CALL 7 VISIB [CONVERT ' FROM JOB '
=W7Q LDN 7 IWORK1(2)
=WMB CALL 4 UFLEN [FLENME USER NAME & JOB NAME
=X72 SBN 7 IWORK1(2)
=XLL SLC 7 2 [NO. OF CHARS IN :USERNAME.JOBNAME
=Y6= LDX 6 7
=YKW CALL 7 VISIB [CONVERT USER NAME AND JOB NAME
=^5G #
=^K6 ANDX 4 BITS22LS [LAST THREE CHARS WERE #40 = NULL
?24Q LDX 5 4 [DCH POINTER IN IOUT
?2JB LDN 7 44 [RUNOUT REQUIRED
?342 CALL 6 YETFL [CHECK ENOUGH ROOM FOR 11 WORDS
?3HL SMO FX1
?43= LDX 6 TAPE+1 [#76207620
?4GW SMO 5
?52G STO 6 0
?5G6 LDX 4 5
?5^Q ADN 5 1
?6FB MOVE 4 10 [RUNOUT
?6^2 LDN 7 100 [MAX LENGTH OF '#LISTING ETC.' LIN
?7DL ADN 5 10
?7Y= CALL 6 YETFL
?8CW FI
?8XG #
?9C6 # IDENTIFY LISTING TO OUTPUT DEVICE WITH FILENAME , DATE AND TIME
?9WQ #
?=BB WHEAD
?=W2 MHUNTW 3,ADATA,CREADL [BLOCK CONTAINING #LISTING ETC.
??*L LDN 4 CPDATA(3) [START ADDRESS OF DATA
??T= LDX 1 A1+FRH(3) [NO. OF CHARS IN BLOCK
?##W MVCH 4 0(1) [#LISTING ETC.
?#SG LDN 4 ACES
?*#6 MVCH 4 4 [SPACE-FILL REMAINDER OF LAST WORD
?*RQ ANDX 5 BITS22LS
?B?B FREECORE 3 [ADATA/CREADL BLOCK
?BR2 #
?C=L LDN 4 THEAD(1)
?CQ= MOVE 4 6 [#PRODUCED ETC.
?D9W MHUNTW 2,AMXOR,IOUT
?DPG SBX 5 2
?F96 MHUNTW 3,FILE,ENT
?FNQ LDX 4 EWRITDAY(3) [DATE AND TIME THIS FILE WAS
?G8B LDX 7 EWRITTIME(3) [LAST WRITTEN TO
?GN2 BZE 6 PRFIL [X6 = 0 IF ENTERED FROM PRINTER CODE
?H7L LDCT 0 #777
?HM= ANDX 0 ETM(3) [ISOLATE FILE TYPE
?J6W ERX 0 TPUNCH(1)
?JLG SMO FX2
?K66 STO 0 IWORK5 [0 IF TAPE PUNCH TYPE :ADD NO NLS
?KKQ PRFIL
?L5B FREECORE 3 [FILE/ENT BLOCK
?LK2 DATECON 4
?M4L LDN 1 ACOMMUNE1(2)
?MJ= ADN 2 ACOMMUNE3
?N3W MOVE 1 2
?NHG TIMECON 7
?P36 MHUNTW 3,AMXOR,IOUT
?PGQ ADN 5 3(3)
?Q2B LDN 4 ACOMMUNE3(2)
?QG2 MOVE 4 2 [INSERT DATE BEFORE 'AT'
?Q^L LDN 4 ACOMMUNE1(2)
?RF= ADX 5 ONZE(1) [ADD 2 WORDS AND 3 CHARACTERS
?RYW MVCH 4 8 [INSERT TIME AFTER 'AT'
?SDG CALL 7 ZLINE [INSERT NEWLINE ETC.
?SY6 #
?TCQ LDN 7 107 [MAX LTH OF #OUTPUT LINE
?TXB [ [DOESNT MATTER IF NPU<107
?WC2 CALL 6 YETFL [MAX. LENGTH OF '#OUTPUT ETC.'
?WWL LDN 4 SHEAD(1)
?XB= MOVE 4 6 [#OUTPUT ETC.
?XTW LDX 7 5
?Y*G ADN 7 6
?YT6 LDX 5 3 [ADDRESS OF AMXOR/IOUT
?^#Q CALL 4 UFLEN [STORE USER NAME & JOB NAME
?^SB SBX 7 5 [IN CASE IOUT MOVES
#2#2 DATECON EDATE
#2RL LDN 1 ACOMMUNE1(2)
#3?= ADN 2 ACOMMUNE3
#3QW MOVE 1 2
#4=G TIMECON CLEANCT
#4Q6 MHUNTW 3,AMXOR,IOUT [RELOCATE AFTER COORDINATION
#59Q LDX 5 7
#5PB ADX 5 3
#692 LDX 2 FX2
#6NL LDN 4 ONAT(1)
#78= MVCH 4 5 [' ON
#7MW LDN 4 ACOMMUNE3(2)
#87G MVCH 4 7 [CURRENT DATE
#8M6 LDN 4 ONAT+1(1)
#96Q MVCH 4 4 [AT
#9LB LDN 4 ACOMMUNE1(2)
#=62 MVCH 4 8 [CURRENT TIME
#=KL [ SEE IF THERES ROOM FOR "USING (DEVICE NAME)"
#?5= [
#?JW LDX 0 AWORK1(2)
##4G BNG 0 UZTAPE [ALWAYS ROOM ON TP
##9N ...#SKI G170&1$1
##BW ...(
##J6 SEGENTRY K54IPBLISTA
#*3Q LDN 0 A7021WIDTH
#*5^ ...)
#*88 ...#SKI G170&1
#*=C ...(
#*#L ...#ALT K54IPBLISTA = 1022
#*BT ... LDX 0 IWIDTH(2)
#*F4 ...)
#*HB SBN 0 90
#B32 BNG 0 UZNO [J IF NOT ENOUGH ROOM ON LINE
#BGL UZTAPE
#C2= LDX 0 AWORK3(2)
#CFW SBN 0 107
#C^G BPZ 0 UZPUT
#DF6 [J TO INSERT "USING" IF ROOM IN NPU
#DYQ LDX 0 CACT
#FDB ERS 0 IPBIDE+1(3) [MARK IOUT "NOT EOM"
#FY2 CALL 6 UZNEWIO [GET NEW IOUT
#GCL UZPUT
#GX= SBX 5 3 [SAVE DISP IN IOUT
#HBW LDN 0 JSOURCE1(2)
#HWG LDN 1 ACOMMUNE1(2)
#JB6 MOVE 0 2
#JTQ [ [SET UP ACOMM WDS FOR OUTPERA
#K*B OUTPERA
#KT2 [ [GET DEVICE NAME
#L#L MHUNTW 3,AMXOR,IOUT
#LS= ADX 5 3 [RESET ADDR FOR MOVING DATA TO
#M?W LDN 4 ZUSING(1)
#MRG MVCH 4 7 [MOVE IN "USING"
#N?6 LDN 4 ACOMMUNE2(2)
#NQQ MVCH 4 8 [MOVE IN DEVICE NAME
#P=B UZNO
#PQ2 CALL 7 ZLINE [INSERT NEWLINE ETC.
#Q9L #
#QP= LDN 7 52 [MAX LENGTH OF 'DOCUMENT ETC.'
#R8W PAD
#RNG CALL 6 YETFL
#S86 LDN 4 SDOC(1)
#SMQ MOVE 4 3 [DOCUMENT
#T7B ADN 5 3
#TM2 MHUNTW 2,GOUT,INFO
#W6L LDN 4 GHEAD(2)
#WL= LDX 2 GSUSE(2)
#X5W MVCH 4 0(2) [COPY ACROSS USER'S HEADER
#XKG CALL 7 ZLINE
#Y56 PRIN
#YJQ SBN 5 IDATA(3) [COUNT OF WORDS IN MESSAGE
#^4B SLC 5 2
#^J2 DSA 5 IPBIDE+1(3) [STORE COUNT OF CHARS IN MESSAGE
*23L ADN 5 IDATA-A1*4+3
*2H= SRL 5 2
*32W ALTLEN 3,5 [CORRECT AMXOR/IOUT
*3GG BPZ 6 OUTHEAD [J IF PRINTER CODE
*426 # NEED 12.8 INS OF RUNOUT AFTER DOCUMENT BLOCK
*4FQ LDN 6 242 [NO. OF INS OF REQUIRED RUNOUT*10-3-4
*4^B CALL 3 SRUNOUT
*5F2 #
*5YL OUTHEAD
*7X6 FI
*8BQ ACROSS IPBLISTD,1
*8WB #END
^^^^ ...440401620008