{{htmlmetatags>metatag-description:(ICL George 3 and George 4 source: SETPARAM867)}}
====== SETPARAM867 ======
(George Source)
**Macros used:** [[george:macro:ACROSS|ACROSS]], [[george:macro:BXU|BXU]], [[george:macro:CHNUMCOD|CHNUMCOD]], [[george:macro:COMBRKIN|COMBRKIN]], [[george:macro:COMERRX|COMERRX]], [[george:macro:DOWN|DOWN]], [[george:macro:ENDCOM|ENDCOM]], [[george:macro:FINDCORE|FINDCORE]], [[george:macro:FREECORE|FREECORE]], [[george:macro:GETCORE|GETCORE]], [[george:macro:HUNT|HUNT]], [[george:macro:HUNTW|HUNTW]], [[george:macro:MENDAREA|MENDAREA]], [[george:macro:MFREE|MFREE]], [[george:macro:MHUNT|MHUNT]], [[george:macro:MHUNTW|MHUNTW]], [[george:macro:NAME|NAME]], [[george:macro:ON|ON]], [[george:macro:PARAFREE|PARAFREE]], [[george:macro:PARANEXT|PARANEXT]], [[george:macro:PARANOT|PARANOT]], [[george:macro:PARANOTX|PARANOTX]], [[george:macro:PARANXTX|PARANXTX]], [[george:macro:PARAPASS|PARAPASS]], [[george:macro:PHOTO|PHOTO]], [[george:macro:PTYPE|PTYPE]], [[george:macro:SEG|SEG]], [[george:macro:SEGENTRY|SEGENTRY]], [[george:macro:SETNCORE|SETNCORE]], [[george:macro:SPARANXT|SPARANXT]], [[george:macro:TESTMOVE|TESTMOVE]], [[george:macro:TESTREP|TESTREP]], [[george:macro:TRACE|TRACE]], [[george:macro:UNIFREE|UNIFREE]], [[george:macro:UP|UP]], [[george:macro:UPPLUS|UPPLUS]]
224B ... SEG SETPARAM,,CENT(COMMAND PROCESSOR),,G250,G281,G233,G400
226Q ...[
2296 ...[ (C) COPYRIGHT INTERNATIONAL COMPUTERS LTD 1982
22?G ...[ THIS EXCLUDES CODE UNDER #SKI G233
22*W ...[ AND UNDER #SKI G250
22D= ...[ AND UNDER #SKI G262
22GL ...[ AND UNDER #SKI G263
22K2 ...[ AND UNDER #SKI G281
22MB ...[
22PQ ...#LIS K0SETPARAM [ FOR BENEFIT OF 'MENDIT'
22QH ...#UNS G400
22R# ...# THIS CHAPTER IS MODIFIED FOR G3PLUS-IH MK2
22S6 ...#OPT G233 = 0
22WG ...#SKI G233&1
22YW ...# WITH UGUG EDIT M233 (COMPACT LISTDIR HIGH)
233= ...#OPT G250 = 0
235L ...#SKI G250&1
2382 ...# WITH UGUG EDIT M250 (ADDITIONAL NUMBER FORMATS)
23=B ...#OPT G262 = 0
23#Q ...#SKI G262&1
23C6 ...# WITH UGUG EDIT M262 (WHATGENS COMMAND)
23FG ...#OPT G263 = 0
23HW ...#SKI G263&1
23L= ...# WITH UGUG EDIT M263 (HOWBIG COMMAND)
23NL ...#OPT G281 = 0
23R2 ...#SKI G281&1
23TB ...# WITH UGUG EDIT M281 (SETPARAM NEXT LINE OF JOB SOURCE)
23YG SEGENTRY K1SETPARAM,SENTRY1
24D6 SEGENTRY K2SETPARAM,SENTRY2
24MY ... SEGENTRY K3SETPARAM,SENTRY3 [ RETURN FROM OCT OR HEX IN %;..;
24QH ... SEGENTRY K4SETPARAM,SENTRY4 [INSTALLATION HOOKS RETURN FROM
24T6 ... [SETPC, SETPE, SETPF, SETPN, SETPR
24XQ #
25CB # THIS SEGMENT IS THE FIRST OF TWO SEGMENTS IMPLEMENTING
25X2 # SETPARAM . IT PROCESSES THE SECOND PARAMETER OF THE
265= # COMMAND AND GOES ACROSS TO SEGMENT SETPB .
26?G # OVERFLOW SEGMENTS FOR SETPARAM:-
26FQ # SETPRAMA,
26N2 # SETPRAMB
26W= #
273D ...#UNS G400
2763 ...(
278L ...XJDR 4HJDR0
27=B ...XPROG 4HPROG
27#6 ...)
27*W SPACE #20
28SQ # LIST OF 2ND PARAMETER FUNCTIONS
29#B PARAM2 4HMES0
29S2 4HDIS0
2=?L 4HVAL0
2=#K ...#SKI G250&1
2=*J ...(
2=BH ...PARAMHEX 4HHEX0
2=CG ... 4HOCT0
2=DF ...)
2=FD ...#SKI G233&1
2=GC ... 4HLDH0
2=HB ...#SKI G262&1
2=J* ... 4HHIG0
2=K# ...#SKI G262&1
2=L? ... 4HLOG0
2=M= ...#SKI G263&1
2=N9 ... 4HFSI0
2=P8 ...#SKI G281&1
2=Q7 ... 4HNEX0
2=R= 4HREP0
2?=W 4HTEX0
2?QG 4HINS0
2#=6 4HDAT0
2#PQ 4HTIM0
2*9B 4HUSE0
2*P2 4HJOB0
2B8L 4HENV0
2BN= 4HCOR0
2C7W 4HSIZ0
2C=F 4HCUR0
2CG= 4HDIR0
2CH6 #UNS ADUALDME
2CJ2 4HPRO0
2CJW 4HLEN0
2CMG TABLE BRN XMESS [JUMP TABLE
2D76 BRN XDISP
2DLQ BRN VALUE
2DMP ...#SKI G250&1
2DNN ...(
2DPM ... BRN VALUE
2DQL ... BRN VALUE
2DRK ...)
2DSJ ...#SKI G233&1
2DTH ... BRN XLDH
2DWG ...#SKI G262&1
2DXF ... BRN XHIG
2DYD ...#SKI G262&1
2D^C ... BRN XLOG
2F2B ...#SKI G263&1
2F3* ... BRN XFSI
2F4# ...#SKI G281&1
2F5? ... BRN XNEXT
2F6B BRN REPLY
2FL2 BRN TEXT
2G5L BRN XINST
2GK= BRN XDATE
2H4W BRN XTIME
2HJG BRN USER
2J46 BRN XJOB
2JHQ BRN XENVIR
2K3B BRN XCORE
2KH2 BRN XCORE
2KKK BRN XCUR
2KTB BRN XDIRENT
2KTM #UNS ADUALDME
2KTY BRN XPRO
2KW= [
2KX6 [ SWITCH FOR SETPARAM LENGTH
2KY2 [
2KYW SEGENTRY K90SETPARAM
2K^Q BRN XLEN
2L2L #DEF XLENGTH=TABLE-PARAM2
2T*2 X48 +48
2TSL X24 +23
2Y=Q #
2Y?B # SUBROUTINES TO PASS PARAMETERS OF VARIOUS DESCRIPTIONS
2Y#2 # THIS HAS BEEN DONE IN AN ATTEMPT TO SAVE SPACE
2Y#L PARANOT
2Y*= SBX 5 FX1 [RELATIVE LINK IN CASE OF COORDINATION
2Y*W PARANOTX 1 [PASS PARAMETER WHOSE NUMBER IS SPECIFIED
2YBG BRN SLINK [ BY THE CONTENTS OF X1
2YC6 #
2YCQ PARAPASS
2YDB SBX 4 FX1 [RELATIVE LINK IN CASE OF COORDINATION
2YF2 PARAPASS [PASS NEXT PARAMETER
2YFL BRN X4EXIT
2YG= #
2YGW PARANEXT
2YHG SBX 3 FX1 [RELATIVE LINK IN CASE OF COORDINATION
2YJ6 PARANXTX 1,,4 [PASS PARAMETER TERMINATED BY CONTENTS OF
2YJQ BRN X3EXIT [ X1 WHOSE NUMBER IS SPECIFIED BY X4
2YKB #
2YL2 SPARANXT
2YLL SBX 3 FX1 [RELATIVE LINK IN CASE OF COORDINATION
2YM= SPARANXT ,,4 [PASS PARAMETER RETAINING INTERNAL SPACES
2YMW X3EXIT
2YN8 TESTREP UNPAIR,XERR9,TOOMANY,XERR14
2YNG ADX 3 FX1 [ABSOLUTE LINK
2YP6 EXIT 3 0
2YPQ #
2YQB # THIS SUBROUTINE IS USED TO ANALYSE A PARAMETER
2^=2 # OF TYPE MESSAGE(N1,N2) OR DISPLAY(N1,N2) . IT STORES
2^PL # N1 AND N2 IN X7 AND X6 RESPECTIVELY; IF NEITHER PRESENT
329= # X7 IS SET TO 0,IFONLY N1 BOTH X7 AND X6 ARE SET TO N1
32NW #
338G MESSAGENOS
33N6 SBX 5 FX1
347Q CALL 4 PARAPASS
34MB HUNT 3,CPB,CUNI
3572 LDX 4 ANUM(3)
35FB LDEX 6 ATYPE(3)
35LL FREECORE 3
366= BNG 4 XALLM
36KW BZE 4 XALLM [NO N1,N2;ALL MESSAGE REQUIRED
36^K LDN 1 #34 [TERMINATOR = ","
37*# LDX 4 6
37P3 CALL 3 PARANEXT
384Q HUNT 3,CPB,CUNI
38JB LDX 4 ANUM(3)
3942 BZE 4 XERR
39HL BNG 4 XERR
3=3= CALL 4 XCH [CHNUMCOD
3=GW LDX 7 6
3?2G CALL 4 PARAPASS [GET N2 IN UNIBLOCK
3?G6 HUNT 3,CPB,CUNI
3?^Q LDX 4 ANUM(3)
3#FB BZE 4 XERR [ERROR IF SECOND NUMBER NULL
3#^2 BPZ 4 NON2 [BRN IF N2 PRESENT
3*DL LDX 6 7 [N2 ABSENT,PUT N1 IN 7
3*Y= FREECORE 3
3BCW SLINK ADX 5 FX1
3BXG EXIT 5 0
3CC6 NON2 CALL 4 XCH [CHNUMCOD
3CWQ BRN SLINK
3DBB XALLM LDN 7 0 [SET 7=0 IF ALL MESSAGE REQUIRED
3DW2 BRN SLINK
3F*L XCH SBX 4 FX1
3FT= CHNUMCOD 1,3,XBREAK
3G#W TESTREP CHNUMERR,XERR10
3GSG LDX 6 ACOMMUNE1(2)
3H#6 BNG 6 XERR
3HRQ BZE 6 XERR
3J3J X4EXIT
3J?B ADX 4 FX1
3JR2 EXIT 4 0
3K=L # ENTRY POINT FOR SETPARAM MACRO.SETS UP A CPB/CMULTI BLOCK TO
3KQ= # INTERFACE WITH REST OF SEGMENT
3L9W #
3LPG SENTRY2
3M96 NGN 4 1
3MNQ STO 4 AWORK4(2) [SET ENTRY POINT MARKER
3N8B LDCT 0 #40
3NN2 LDX 4 JOBEVENTS(2)
3P7L STO 0 JOBEVENTS(2)
3PM= STO 4 AWORK3(2)
3Q6W LDN 4 APARAFIR [SET UP CPB/CMULTI
3QLG SLL 4 12 [RED TAPE
3R66 ADN 4 1
3RKQ MHUNTW 3,CPB,CMULTI
3S5B STO 4 APTBEPAR(3)
3SK2 STO 4 ADNOPARAL(3)
3T4L LDN 4 1
3TJ= STO 4 APARANUM(3)
3W3W STO 4 ANALEV(3)
3WHG STO 4 CPBPROGLEV(3)
3X36 # REMOVE TRAILING SPACES
3XGQ LDX 4 APARAFIR(3)
3Y2B LDN 2 APARAFIR+1(3)
3YG2 SLL 2 2
3Y^L ADX 2 4
3^F= SRC 2 2
3^YW XLP SLC 2 2
42DG SBN 2 1
42Y6 SRC 2 2
43CQ LDCH 0 0(2)
43XB TXU 0 SPACE(1)
44C2 BCS XENDL
44WL SBN 4 1
45B= BNZ 4 XLP
45TW XENDL STO 4 APARAFIR(3)
46*G SLC 2 2
46T6 ADN 2 4
47#Q SRL 2 2
47SB NGN 5 1
48#2 STO 5 0(2) [STORE NEGATIVE WORD
48RL BZE 4 NTY
49?= PTYPE CPB,CMULTI,3,APARAFIR+1,APARAFIR(3)
49QW NTY
4==G MHUNTW 3,CPB,CMULTI
4=Q6 LDN 4 1
4?9Q LDX 5 APARAFIR(3)
4?PB SRL 5 12
4#92 SBN 5 2
4#NL BNZ 5 START
4*8= BRN START1
4*MW #
4B7G # ENTRY POINT FOR SETPARAM COMMAND
4BM6 #
4C6Q SENTRY1
4CLB STOZ AWORK4(2) [SET ENTRY POINT MARKER
4D62 LDX 4 CPLEV(2)
4DKL BZE 4 XERR6 [ERROR IF C.P. LEVEL 0
4F5= LDX 5 EXT+10(2)
4FJW ANDN 5 #7777 [TOP BREAKIN LEVEL
4G4G TXU 5 4
4GJ6 BCC XERR6 [ERROR IF ISSUED AT TOP BREAKIN LEVEL
4GWH LDN 1 2
4H8Y CALL 5 PARANOT [TAKE SECOND SETPARAM PARAMETER
4HHB HUNT 2,CPB,CUNI
4J32 LDX 4 ANUM(2)
4JGL BPZ 4 OK1 [BRN IF 2ND PARAMETER PRESENT
4JT3 LDN 1 1
4K7D CALL 5 PARANOT [GET 1ST SETPARAM PARAMETER
4KFW HUNT 2,CPB,CUNI
4K^G LDX 4 ANUM(2)
4LF6 BNG 4 XERR5 [1ST PARAMETER MISSING
4LYQ BRN XERR1 [2ND PARAMETER MISSING
4MDB OK1 BZE 4 XERR1 [ERROR IF NULL PARAMETER
4MY2 SRL 4 12 [GET PARAMETER TYPE
4NCL SBN 4 2
4NX= BNZ 4 TESTM [BRN IF NOT COMPOSITE PARAMETER
4PBW LDN 4 2
4PWG START1
4QB6 CALL 3 SPARANXT
4R*B HUNT 3,CPB,CUNI
4RT2 NAME 3,COMDAT,CSETP ['NEW' PARAMETER IN COMDAT,CSETP
4S#L BRN XCROSS
4SS= #
4T?W # SPLIT OFF FUNCTION FROM REMAINDER OF 2ND PARAMETER AND LOOK FOR
4TRG # IT IN PARAMETER TABLE
4W?6 #
4WQQ TESTM LDN 4 2
4X=B START
4XQ2 CALL 5 XHNT [PARANEXT AND HUNT CPB/CUNI
4Y9L TST2 SRL 4 12
4YBS ...#UNS G400
4YJ2 ...#SKI
4YP= BNZ 4 XNOTS [NOT SIMPLE
4YQ^ ...#UNS G400
4YSN ...(
4YWC ... BZE 4 TST2A
4YY6 ... SBN 4 2
4Y^T ... BNZ 4 PN2
4^3J ... ACROSS SETPE,2
4^5? ...TST2A
4^72 ...)
4^8W LDX 4 APARA(3)
4^=S ...#UNS G400
4^#Q ...(
4^BN ... TXU 4 XPROG(1) [IF PROG GO STRAIGHT
4^DL ... BCS XDSK1 [TO SETPC TO AVOID PROCESSORS
4^F= ... SRL 4 6
4^FW ... SLL 4 6
4^GJ ... ACROSS SETPC,1 [CODE
4^JG ...XDSK1
4^LD ...)
4^NG SRL 4 6
5286 SLL 4 6
52MQ FREECORE 3
537B LDN 5 XLENGTH
53M2 XLOOP SMO 5
546L TXU 4 PARAM2-1(1)
54L= BCC TST3
555W BCT 5 XLOOP
5577 ...#UNS G400
558D ...(
559P ... BXU 4 XJDR(1),XDSK9
55?2 ... SMO FX2
55#? ... LDX 0 AWORK4
55*J ... BNG 0 XERR2
55BT ...XDSK9
55D6 ... ACROSS SETPC,1
55FC ...)
55GN ...#UNS G400
55H^ ...#SKI
55KG BRN XERR2
5656 TST3 SMO 5
56JQ BRN TABLE-1
574B # MESSAGE FUNCTION
57J2 XMESS
583L #SKI K6SETPARAM>99-99
58H= TRACE 5,MESSAGE
592W CALL 5 MESSAGENOS
59GG HUNT 3,APED,ANEVENT [FIND AN APED ANEVENT OR ADELETE BLK.
5=26 BPZ 3 XASK
5=FQ HUNT 3,APED,ADELETE
5=^B BNG 3 XERR3
5?F2 ADN 3 8 [ALLOW FOR ACCUMULATORS
5?YL LDN 1 1 [LABEL AS ADELETE
5#D= BRN XGETM
5#XW XASK LDN 1 0 [LABEL AS ANEVENT
5*CG BRN XGETM
5*X6 #
5BBQ # SECTION TO PROCESS VALUE PARAMETER
5BWB #
5CB2 VALUE
5CDK ...#SKI G250&1
5CH8 ...(
5CKR ... LDX 7 5
5CNB ... SBN 7 PARAMHEX-PARAM2+1 [ -1 - VALUE, 0 - HEX, 1 - OCT
5CQ^ ...)
5CTL ACROSS SETPRAMB,1
64*W # REPLY FUNCTION
64TG REPLY
65*6 #SKI K6SETPARAM>99-99
65SQ TRACE 5,REPLY
66#B CALL 5 MESSAGENOS
66S2 HUNTW 3,ADATA,BREPLY
67?L BNG 3 XERR7 [NO REPLY BLOCK
67R= LDN 1 3
68=W LDX 4 A1(3)
68QG SBN 4 2
69=6 SLL 4 2 [NUMBER OF CHARACTERS
69PQ SBN 3 1
6=9B BRN XGETR
6=P2 #
6?8L # TEXT FUNCTION
6?N= TEXT
6#7W ACROSS SETPRAMB,2
7GQ= #
7H9W # INSTPARA FUNCTION
7HPG #
7J96 XINST
7JNQ ACROSS SETPRAMB,3
7K8B [
7KN2 [ SECTION TO PROCESS LENGTH FUNCTION
7L7L [
7LM= SEGENTRY K92SETPARAM
7M6W XLEN
7MLG ACROSS SETPRAMB,4
7N66 [
8XMQ XBREAK
8Y7B COMBRKIN
8YH5 ...#UNS G400
8YWS ...#SKI
8^=H ...(
8^L= #
925W # PARAMETER FUNCTION (OF THE TYPE (%>)(2,4))
92KG #
9356 XNOTS SBN 4 2
93JQ BNZ 4 PN2 [PARAMETER FORMAT ERROR
944B #SKI K6SETPARAM>99-99
94J2 TRACE 5,PARAM
953L CALL 5 MESSAGENOS
95H= LDN 4 1
962W LDX 5 AWORK4(2)
96GG BZE 5 XNSE [J IF NOT SETPARAM EXPRESSION
9726 LDN 4 2
97FQ XNSE
97^B LDN 5 1
98F2 SPARANXT ,4,5
98NS TESTREP UNPAIR,XERR9,TOOMANY,XERR14
98YL HUNT 3,CPB,CUNI
99D= LDX 4 ANUM(3)
99XW BNG 4 PN2
9=CG ANDN 4 #7777
9=X6 SBN 3 1
9?BQ LDN 1 4
9?WB BRN XGETR
9?Y# ...)
9#2? PN2
9#68 FREECORE 3
9#=5 BRN XERR2
9#B2 #
9#TL # DATE FUNCTION
9**= #
9*SW XDATE
9B#G ACROSS SETPRAMA,5
9G9G #
9GP6 # TIME FUNCTION
9H8Q #
9HNB XTIME
9J82 ACROSS SETPRAMA,7
9K7= #
9KLW # USER FUNCTION
9L6G #
9LL6 USER ACROSS SETPRAMA,2
9XX2 #
9YBL # JOB FUNCTION
9YW= #
9^*W XJOB ACROSS SETPRAMA,3
=3S2 #
=4?L # ENVIRONMENT FUNCTION
=4R= #
=5=W XENVIR
=5QG CALL 5 MESSAGENOS
=6=6 BZE 7 XERR2
=6PQ TXL 6 X48(1)
=79B BCC XERR
=7P2 TXL 6 7
=88L BCS XERR
=8N= LDX 5 6
=97W SBX 5 7
=9MG TXL 5 X24(1) [MUST BE LESS THAN 24 BITS
==76 BCC XERR
==BY SEGENTRY K80SETPARAM
==LQ LDN 3 GEORGE [SET UP THE TWO WORDS
==SW NGN 0 #10
=?32 ANDX 0 CPEXECINFO
=?96 ORX 3 0
=?C? LDEX 4 GVERSION [GEORGE ISSUE NUMBER
=?N8 SLL 4 6
=?^5 ORX 4 CPEXECINFO+1
=#=2 LDX 0 GVERSION
=#GX SRL 0 12
=#RS DCH 0 4
=*4W SMO 7
=*JG SLL 34 0
=B46 ADN 7 47
=BHQ SBX 7 6
=C3B SMO 7
=CH2 SRL 34 0 [GET BITS IN X4
=CN8 ...#SKI G262^G263&1
=CTB ...XDEC2 [ AS IN EARLIER MARKS
=D2L SETNCORE 4,3,COMDAT,CSETP
=D?9 ACROSS SETPRAMB,5 [GO TO CONVERT TO DECIMAL
=D?B ...#SKI G281&1
=D?H ...(
=D?N ...#
=D?T ...# 'NEXT' FUNCTION - READ FROM JOB SOURCE
=D#2 ...#
=D#7 ...XNEXT
=D## ... ACROSS SETPRAMA,8
=D#F ...)
=D#M #
=DB5 # PROCESSORS FUNCTION
=DCH #
=DD^ XPRO
=DGC ACROSS SETPRAMB,7
=DHT #
=DJB #
=DJX # DIRENT FUNCTION
=DKD #
=DK^ XDIRENT
=DLG #SKI K6SETPARAM>99-99
=DM3 TRACE 5,DIRENT
=DMJ LDN 4 2
=DN5 CALL 5 XHNTS
=DNL DOWN DIRENT,1
=DP7 BRN XERR
=DPN BRN XDIEND
=DQ9 BRN XBREAK
=DQQ MFREE CPB,CMULTI
=DR? CALL 4 PARAPASS
=DRS MFREE CPB,CUNI
=DS4 ...XLDHE
=DS* CALL 5 MESSAGENOS
=DSW MHUNTW 3,GMON,AOUT
=DTC LDX 4 A1(3)
=DTY SBN 3 1
=DWF LDN 1 5
=DX2 BRN XGETR
=DXH XDIEND
=DXN LDX 0 AWORK4(2)
=DXT BNZ 0 XOR [J IF MACRO ENTRY
=DY4 ENDCOM
=DY5 ...#SKI G233&1
=DY6 ...(
=DY7 ...#
=DY8 ...# LISTDIR HIGH-LEVEL ENTRY FUNCTION (LDHIGH)
=DY9 ...#
=DY= ...XLDH LDN 4 2
=DY? ... CALL 5 XHNTS
=DY# ... DOWN LISTDIRF,2
=DY* ... BRN XERR
=DYB ... BRN XBREAK
=DYC ... CALL 4 PARAPASS
=DYD ... UNIFREE
=DYF ... BRN XLDHE
=DYG ...# RETURN TO SAME MESSAGENOS PROCESSING AS DIRENT
=DYH ...)
=DYJ ...#SKI G262&1
=DYK ...(
=DYL ...#
=DYM ...# LOGEN & HIGEN FUNCTIONS (WHATGENS)
=DYN ...XLOG NGNC 0 1
=DYP ...XHIG LDN 7 ACOMMUNE1
=DYQ ... LDN 4 2
=DYR ... CALL 5 XHNTS
=DYS ... DOWN WHATGENS,2
=DYT ... BRN XERR
=DYW ... BRN XBREAK
=DYX ... ADX 2 7
=DYY ... LDX 4 0(2) [ HIG = ACOM5 OR LOG = ACOM6
=DY^ ...)
=D^2 ...#SKI G262^G263&1
=D^3 ...(
=D^4 ...XFSSZ MFREE CPB,CMULTI
=D^5 ... BRN XDEC2
=D^6 ...)
=D^7 ...#SKI G263&1
=D^8 ...(
=D^9 ...#
=D^= ...# FILE SIZE FUNCTION (FSIZE)
=D^? ...#
=D^# ...XFSI LDN 4 2
=D^* ... CALL 5 XHNTS
=D^B ... DOWN HOWBIG,2
=D^C ... BRN XERR
=D^D ... BRN XBREAK
=D^F ... LDX 4 ACOMMUNE1(2)
=D^G ... BRN XFSSZ
=D^H ...)
=D^W #
=FFG # DISPLAY FUNCTION
=F^6 #
=GDQ XDISP
=GYB #SKIP K6SETPARAM>99-99
=HD2 TRACE 5,SETDISP
=HXL OK2 CALL 5 MESSAGENOS
=JC= HUNT 3,APED,ADISPLAY
=JWW BNG 3 XERR4 [ERROR IF NO DISPLAY BLOCK
=KBG SBN 3 2
=KW6 LDN 1 2 [LABEL AS ADISPLAY
=L*Q XGETM LDX 4 A1+2(3) [NO OF CHARS IN MESSAGE
=LTB XGETR
=M*2 BZE 7 ZALLM [BRN IF ALL MESSAGE REQUIRED
=MSL TXL 4 7
=N#= BCC XNALL
=NRW LDN 4 0
=P?G BRN ZALLM
=PR6 XNALL
=Q=Q TXL 6 7
=QQB BCS XERR
=R=2 TXL 4 7
=RPL BCC XGETA
=S9= LDN 6 0
=SNW BRN XLOAD1
=T8G XGETA
=TN6 TXL 4 6
=W7Q BCC XGET
=WMB LDX 6 4 [N2>NO OF CHARS.NOT AN ERROR NOW
=X72 XGET
=XLL SBS 7 6 [6=N1-N2
=Y6= ADN 6 1 [COUNT OF CHARS IN 'NEW' PARAMETER
=YKW SBN 7 1
=^5G SRC 7 2 [ADDRESS OF 1ST CHAR IN 7
=^K6 BRN XKILL
?24Q ZALLM LDX 6 4 [CHARACTER COUNT IN 6
?2JB BZE 6 XLOAD1 [BRN IF NULL PARAMETER
?342 #
?3HL # ELIMINATE LEADING AND TRAILING SPACES FROM 'NEW' PARAMETER
?43= #
?4GW XKILL
?52G STO 3 AWORK2(2)
?5G6 ADX 3 7
?5^Q ADN 3 A1+3 [X3 IS NOW ABSOLUTE POINTER TO 1ST CH
?6FB LDN 0 0
?6^2 STO 1 AWORK1(2)
?7DL LDX 1 FX1
?7Y= TSP
?8CW LDCH 4 0(3) [GET A CHARACTER FROM PARAMETER
?8XG TXU 4 SPACE(1)
?9C6 BCS ONGO [BRN IF NO MORE LEADING SPACES
?9WQ BCHX 3 £
?=BB BCT 6 TSP [BRN IF CHARACTER COUNT NOT EXHAUSTED
?=W2 BRN XLOAD2 [NULL PARAMETER
??*L ONGO LDX 5 6 [ADJUSTED CHARACTER COUNT
??T= SBN 5 1
?##W STO 3 7
?#SG SBX 7 AWORK2(2)
?*#6 BZE 5 XLOAD2 [J IF SINGLE CHARACTER
?*RQ TNC BCHX 3 £ [POINTER TO NEXT CHARACTER
?B?B LDCH 4 0(3) [GET NEXT CHARACTER
?BR2 TXU 4 SPACE(1)
?C=L BCS NTAA [NO TROUBLE AT ALL IF NOT SPACE
?CQ= ADN 0 1 [SPACE COUNT
?D9W BCT 5 TNC [BRN IF CHARACTER COUNT NOT EXHAUSTED
?DPG SBX 6 0 [REDUCE CHARACTER COUNT BY 1 PER SPAC
?F96 BRN XLOAD2
?FNQ NTAA LDN 0 0 [ZEROISE SPACE COUNT FOR NON SPACE CH
?G8B BCT 5 TNC [BRN IF CHARACTER COUNT NOT EXHAUSTED
?GN2 XLOAD2
?H7L LDX 3 AWORK2(2)
?HM= XLOAD1
?HR7 LDN 4 512
?HX4 TXL 6 4
?J2^ BCC XERR13
?J6W LDX 5 6 [CHARACTER COUNT IN X5
?JLG ADN 5 11 [8 FOR RED TAPE,3 TO ROUND DIVISION
?K66 SRL 5 2 [NO OF WORDS NEEDED
?KKQ PHOTO 4
?L5B GETCORE 5,1
?LK2 FINDCORE 2
?M4L NAME 2,COMDAT,CSETP [CREATE COMDAT,CSETP
?MJ= BNZ 6 ON [BRN IF NOT NULL PARAMETER
?N3W STOZ ANUM(2) [SET NULL PARAMETER
?NHG BRN XCROSS
?P36 ON TESTMOVE 4,MLOAD [BRN TO MLOAD IF NO BLOCKS MOVED
?PGQ SMO FX2
?Q2B LDX 4 AWORK1
?QG2 SMO 4
?Q^L BRN ORDER [BLOCKS MOVED, NEED TO HUNT
?RF= ORDER BRN XANEV [APED,ANEVENT
?RYW BRN XADEL [APED,ADELETE
?SDG BRN XADIS [APED,ADISPLAY
?SY6 BRN XAREPLY [APED,BREPLY
?TCQ BRN XAPAR [CPB,CUNI
?TJX BRN XAOUT
?TLL XAOUT
?TN* MHUNTW 3,GMON,AOUT
?TQ4 SBN 3 1
?TRR BRN MLOAD
?TXB XAREPLY
?WC2 MHUNTW 3,ADATA,BREPLY
?WWL SBN 3 1
?XB= BRN MLOAD
?XTW XAPAR MHUNT 3,CPB,CUNI
?Y*G SBN 3 1
?YT6 BRN MLOAD
?^#Q XANEV MHUNTW 3,APED,ANEVENT
?^SB BRN MLOAD
#2#2 XADEL MHUNTW 3,APED,ADELETE
#2RL ADN 3 8 [ADJUST FOR ACCUMULATOR DUMP
#3?= BRN MLOAD
#3QW XADIS MHUNTW 3,APED,ADISPLAY
#4=G SBN 3 2
#4Q6 MLOAD
#59Q LDX 4 3 [IELATIVISED DATUM
#5PB ADX 4 7 [ADDRESS OF 1ST CHAR REQUIRED
#692 LDN 5 A1+2(2) [START ADDRESS IN COMDAT,CSETP
#6NL SMO 6 [CHARACTER COUNT
#78= MVCH 4 0 ['NEW' PARAMETER IN COMDAT,CSETP
#7MW STO 6 A1+1(2) [CHARACTER COUNT IN
#87G #
#8M6 # ROUTINE TO DETERMINE PARAMETER TYPE
#96Q #
#9LB LDX 3 2
#=62 PTYPE
#=KL PTYPE COMDAT,CSETP,3,APARA,ANUM(3)
#?5= XCROSS
#?JW SMO FX2
##4G LDX 4 AWORK4
##J6 BZE 4 XC1
##KT ...#SKI G250&1
##MJ ...SENTRY3 [ RETURN FROM SETPB (OCT & HEX)
##P? ...#SKI G250&1
##R2 ...#SKI
##SP ...(
##TJ ... BRN XC2
##WD ...SENTRY3
##Y7 ... BRN (GEOERR)
##^2 ...XC2
##^W ...)
#*3Q CALL 7 UNIF
#*HB UPPLUS 1
#B32 XC1
#BGL ACROSS SETPB,1
#C2= #
#CFW UNIF SBX 7 FX1
#C^G PARAFREE
#DF6 UNIFREE
#DYQ LDX 2 FX2
#FDB LDX 0 AWORK3(2)
#FY2 STO 0 JOBEVENTS(2)
#GCL ADX 7 FX1
#GX= EXIT 7 0
#H37 XHNTS SBX 5 FX1
#H74 CALL 3 SPARANXT
#H=^ BRN XHNT1
#HBW XHNT SBX 5 FX1
#HLN NGN 1 1
#HWG CALL 3 PARANEXT
#J6# XHNT1
#JTQ ADX 5 FX1
#K*B HUNT 3,CPB,CUNI
#KT2 LDX 4 ANUM(3)
#L#L BNG 4 PN2
#LS= BZE 4 PN2
#M?W EXIT 5 0
#MRG PJSETP1 +JSETP1
#N?6 PJPARMIS +JPARMIS
#NQQ PJSETP3 +JSETP3
#P=B PAPFERR +APFERR
#PQ2 PJSETP6 +JSETP6
#Q9L PJSETP5 +JSETP5
#QP= PJSETP8 +JSETP8
#R8W PJSETP2 +JSETP2
#RNG PJSETP7 +JSETP7
#SMQ PERUNPAIR +ERUNPAIR
#T7B PCHNUMERR +CHNUMERR
#TC8 PJSPBIG +JSPBIG
#TH5 PJMAXPAR +JMAXPAR
#TM2 #
#W6L #
#WL= XERR SMO FX1
#X5W LDX 7 PJSETP1 [EXPREESSION INVALID
#XKG BRN NGN
#Y56 XERR1 LDX 7 PJPARMIS(1) [2ND PARAMETER MISSING
#YJQ LDX 6 PJSETP3(1)
#^4B BRN XOR
#^#8 SEGENTRY K91SETPARAM
#^J2 XERR2 LDX 7 PAPFERR(1) [PARAMETER FORMAT ERROR
*23L BRN NGN
*2H= XERR3 LDX 7 PJSETP6(1) [NO MESSAGE
*32W BRN NGN
*3GG XERR4 LDX 7 PJSETP5(1) [NO DISPLAY
*426 BRN NGN
*4FQ XERR5 LDX 7 PJPARMIS(1) [1ST PARAMETER MISSING
*4^B LDX 6 PJSETP8(1)
*5F2 BRN XOR
*5YL XERR6 LDX 7 PJSETP2(1) [NOT ALLOWED AT C.P.LEVEL 0
*6D= BRN NGN
*7X6 XERR9 LDX 7 PERUNPAIR(1)
*8BQ BRN NGN
*8WB XERR12
*9B2 NAME 3,CPB,CUNI
*9TL XERR10
*=*= LDX 7 PCHNUMERR(1)
*=SW BRN NGN
*=YR XERR13
*?4N LDX 7 PJSPBIG(1)
*?8K BRN NGN
*?9J XERR14
*?=H LDX 7 PJMAXPAR(1)
*??G BRN NGN
*?#G XERR7 LDX 7 PJSETP7(1) [NO REPLY
*?S6 NGN NGN 6 1
*#?Q XOR
*#RB SMO FX2
**?2 LDX 4 AWORK4
**QL BZE 4 XOR1
*B== CALL 7 UNIF
*BPW UP
*C9G XOR1
*CP6 COMERRX 7,6
*D8Q XCORE ACROSS SETPRAMA,1
*DNB #
*DRG #
*DWL # CURRENT DIRECTORY FUNCTION
*D^Q #
*F4W XCUR ACROSS SETPRAMA,4
*F55 ...#UNS G400
*F5# ...#SKI
*F5H ...(
*F5Q ...SENTRY4
*F5^ ... BRN (GEOERR)
*F68 ...)
*F6C ...#UNS G400
*F6L ...(
*F6T ...SENTRY4
*F74 ... MHUNT 3,COMDAT,CSETP
*F7? ... BRN PTYPE
*F7G ...)
*F82 MENDAREA 30,GAPSETPARAM
*FML #END
^^^^ ...67054607000600000000