{{htmlmetatags>metatag-description:(ICL George 3 and George 4 source: SETPRAMB867)}}
====== SETPRAMB867 ======
(George Source)
**Macros used:** [[george:macro:ACROSS|ACROSS]], [[george:macro:ALTLEN|ALTLEN]], [[george:macro:ALTLEND|ALTLEND]], [[george:macro:BXE|BXE]], [[george:macro:CHNUMCO1|CHNUMCO1]], [[george:macro:CHNUMCON|CHNUMCON]], [[george:macro:CLOSE|CLOSE]], [[george:macro:COMBRKIN|COMBRKIN]], [[george:macro:COMERRX|COMERRX]], [[george:macro:DOWN|DOWN]], [[george:macro:FREECORE|FREECORE]], [[george:macro:FSHCODE|FSHCODE]], [[george:macro:FSHIPCON|FSHIPCON]], [[george:macro:FSHSKIP|FSHSKIP]], [[george:macro:GEOERR|GEOERR]], [[george:macro:HUNT|HUNT]], [[george:macro:HUNTW|HUNTW]], [[george:macro:IPCONT|IPCONT]], [[george:macro:IPUSEX|IPUSEX]], [[george:macro:MENDAREA|MENDAREA]], [[george:macro:MFREE|MFREE]], [[george:macro:MFREEW|MFREEW]], [[george:macro:MHUNT|MHUNT]], [[george:macro:MHUNTW|MHUNTW]], [[george:macro:NAME|NAME]], [[george:macro:OPENSYS|OPENSYS]], [[george:macro:PARAFREE|PARAFREE]], [[george:macro:PARANXTX|PARANXTX]], [[george:macro:PARAPASS|PARAPASS]], [[george:macro:PHOTO|PHOTO]], [[george:macro:PTYPE|PTYPE]], [[george:macro:READ|READ]], [[george:macro:SEG|SEG]], [[george:macro:SEGENTRY|SEGENTRY]], [[george:macro:SETNCORE|SETNCORE]], [[george:macro:SYNTHMON|SYNTHMON]], [[george:macro:TESTMOVE|TESTMOVE]], [[george:macro:TESTREP|TESTREP]], [[george:macro:TESTREPNOT|TESTREPNOT]], [[george:macro:TRACE|TRACE]], [[george:macro:UNIFREE|UNIFREE]], [[george:macro:UP|UP]], [[george:macro:UPPLUS|UPPLUS]]
22#C ... SEG SETPRAMB,,CENT(COMMAND PROCESSOR),,G250
22LS ...[
22^9 ...[ (C) COPYRIGHT INTERNATIONAL COMPUTERS LTD 1982
23?L ...[ THIS EXCLUDES CODE UNDER #SKI G250
23L3 ...[
23YD ...#OPT G250 = 0
24=T ...#SKI G250&1
24K= ...# WITH UGUG EDIT M250 (ADDITIONAL NUMBER FORMATS)
24XQ SEGENTRY K1SETPRAMB,XENT1
25CB SEGENTRY K2SETPRAMB,XENT2
25X2 SEGENTRY K3SETPRAMB,XENT3
26BL SEGENTRY K4SETPRAMB,XENT4
26W= SEGENTRY K5SETPRAMB,XENT5
2764 SEGENTRY K7SETPRAMB,XENT7
27*W #
27TG # OVERFLOW SEGMENT FOR SETPARAM
28*6 # IMPLEMENTS VALUE,TEXT,INSTPARA AND LENGTH FUNCTIONS
28SQ #
29#B #UNS IPEXTENSION+1*IPEXTENSION
29S2 #DEF XIPEXT=1
2=?L #UNS IPEXTENSION+1*IPEXTENSION
2=R= #SKI
2?=W #DEF XIPEXT=0
2?QG #
2?XN ...#SKI G250&1
2#4W ...TEN +10
2#=6 MINUS #35
2#PQ MAGIC +7036875
2*9B SPACE #20
2*P2 SPEC 8H-8388608
2B8L FSHCODE AORB
2BN= (
2C7W ZINA 4HINA
2CMG ZINB 4HINB
2D76 )
2DLQ TRACE +IMOPTRACE-INSTPARAM
2F6B +IMINTRACE-INSTPARAM
2FL2 +JOBTRACE-INSTPARAM
2G5L +ICONTEXT-INSTPARAM
2GK= #SKI JNL
2H4W +IOPTRACE-INSTPARAM
2MFG #
2M^6 # SECTION TO PROCESS VALUE PARAMETER
2NDQ #
2NYB XENT1
2PD2 #SKI K6SETPRAMB>99-99
2PXL TRACE 5,VALUE
2QC= LDN 4 2
2QWW CALL 5 XHNT [PARANEXT AND HUNT CPB/CUNI
2RBG CHNUMCO1 1 ,XBREAK
2RW6 TESTREP CHNUMERR,XERR10
2S*Q LDX 4 ACOMMUNE1(2) [BINARY NO. TO BE CONVERTED
2SB8 ...#SKI G250&1
2SBL ...(
2SC4 ... BNG 7 XDECIM
2SCG ...#
2SCY ...# SETPARAM OCT & HEX - VALUE IN X4
2SDB ...#
2SDS ... MHUNT 3,CPB,CUNI
2SF= ... NAME 3,COMDAT,CSETP
2SFN ... LDX 6 7 [ 0 - HEX, 1 - OCTAL
2SG6 ... ALTLEND 3,4,COMDAT,CSETP
2SGJ ... SMO 7
2SH2 ... ADN 7 6 [ 6 - HEX, 8 - OCTAL
2SHD ... MHUNT 3,COMDAT,CSETP
2SHW ... STO 7 ANUM(3) [ CHARACTER COUNT
2SJ# ... LDX 5 4 [ VALUE
2SJQ ... LDN 2 1
2SK8 ... ERX 2 6 [ 1 - HEX, 0 - OCT
2SKL ...NXD LDN 4 0
2SL4 ... SLL 45 3(2)
2SLG ... TXL 4 TEN(1)
2SLY ... BCS OKDIG
2SMB ... ADN 4 #41-10 [ 10-15 -> A-F FOR HEX
2SMS ...OKDIG DCH 4 A1+2(3)
2SN= ... BCHX 3 £
2SNN ... BCT 7 NXD
2SP6 ... LDX 2 FX2
2SPJ ... LDX 4 AWORK4(2)
2SQ2 ... BZE 4 SPCOM [ IF SETPARAM COMMAND
2SQD ... ACROSS SETPARAM,3 [ IF %;..;
2SQW ...SPCOM
2SR# ... ACROSS SETPB,1
2SRQ ...#
2SS8 ...)
2STB XDECIM [BRANCH TO HERE FROM INSTPARA
2T*2 HUNT 3,CPB,CUNI
2TSL NAME 3,COMDAT,CSETP
2W4D BRN XDEC2
2W#= XENT5
2WD7 # THIS ROUTINE CONVERTS BINARY NUMBER IN X4 TO DECIMAL
2WJ4 # PLACING IT IN APARA OF COMDAT,CSETP
2WM^ MHUNTW 3,COMDAT,CSETP
2WRW XDEC2
2X?G LDX 2 FX2
2XR6 LDN 2 ACOMMUNE1(2)
2Y=Q LDN 7 1 [COUNT OF CHARACTERS STORED
2YQB BPZ 4 POZ
2^=2 ADN 7 1 [NOW AT LEAST 2 CHARACTERS
2^PL NGX 4 4 [FOR -VE NO.,NEGATE
329= BNG 4 SPECIAL [SPECIAL NUMBER
32NW LDX 6 MINUS(1)
338G DCH 6 0(2) [AND STICK A - SIGN IN FRONT
33N6 BCHX 2 £
347Q POZ MPY 4 MAGIC(1) [CONVERT TO D/L BINARY FRACTION
34MB LDN 0 7 [MAY. NO OF CONVERSIONS NECESSARY
3572 MODE 0
35LL XCDR CBD 4 0(2)
366= LDCH 6 0(2)
36KW BNZ 6 YOKO
375G BCT 0 XCDR
37K6 BRN WEND
384Q ONO BCHX 2 £
38JB CBD 4 0(2)
3942 ADN 7 1
39HL YOKO BCT 0 ONO
3=3= WEND STO 7 ANUM(3) [SET PARAMETER TYPE WORD
3=GW ADN 7 3 [SET X7 = NO OF WORDS REQ.
3?2G SRL 7 2 [TO HOLD DECIMAL VALUE
3?G6 LDX 5 ALOGLEN(3)
3?^Q SBN 5 2
3#FB SBX 5 7
3#^2 BPZ 5 WOK
3*DL LDN 5 2
3*Y= ADX 5 7 [X5 = REQUIRED LOGICAL LENGTH
3BCW ALTLEN 3,5,COMDAT,CSETP
3BXG MHUNT 3,COMDAT,CSETP
3CC6 WOK LDX 2 FX2
3CWQ LDN 1 ACOMMUNE1(2)
3DBB LDN 2 APARA(3)
3DW2 LDX 3 7
3F*L MOVE 1 0(3) [MOVE VALUE INTO COMDAT?CSETP
3FT= XACROSS
3G#W BRN XCROSS
3GSG SPECIAL
3H#6 LDN 1 SPEC(1)
3HRQ MOVE 1 2 [TREAT #40000000 AS SPECIAL CASE
3J?B LDN 7 8
3JR2 BRN WEND
3K=L PN2 FREECORE 3
3KQ= BRN XERR2 [PARAMETER FORMAT ERROR
3L9W #
3LPG # SECTION TO PROCESS TEXT FUNCTION
3M96 #
3MNQ XENT2
3N8B #SKI K6SETPRAMB>99-99
3NN2 TRACE 5,TEXT
3P7L LDN 4 2
3PM= CALL 5 XHNT [PARANEXT AND HUNT CPB/CUNI
3Q6W CHNUMCON 1,XBREAK
3QLG TESTREP CHNUMERR,XERR10
3R66 HUNT 2,CPB,CUNI
3RKQ FREECORE 2
3S5B HUNTW 3,CPAR,GNUMCON
3SK2 LDX 7 A1(3) [GET NUMBER OF EXPRESSIONS
3T4L LDX 2 3
3TJ= LDN 4 0 [INITIALISE CHARACTER COUNT
3W3W LDN 1 1
3WHG STO 3 6 [PRESERVE X3
3X36 # THE OBJECT OF THIS NEXT EXERCISE IS TO IGNORE LEADING SPACES IN
3XGQ # THE FINAL CHARACTER STRING AND ALSO TO IGNORE NONSIGNIFICANT ZEROS
3Y2B # AT THE START OF EACH NUMBER.TO THIS END A THREE WAY SWITCH IS SET
3YG2 # IN X1, WHEN ZERO SPACES ARE SIGNIFICANT. WHEN SET NEGATIVE ZEROS
3Y^L # ARE SIGNIFICANT (AND THE FIRST ZERO CONVERTS X1 TO ZERO).IF SET TO
3^F= # ONE THEN SPACES ARE BEING IGNORED BUT NONE HAS SO FAR BEEN IGNORED
3^YW # IN THIS NUMBER
42DG XOLP LDN 5 4 [4 CHARS IN EACH EXPRESSION
42Y6 XILP LDCH 0 A1+1(3)
43CQ BCHX 3 £ [IGNORE PRECEDING ZEROES
43XB BNZ 0 XTSP [NON ZERO CHARACTER
44C2 BNG 1 XDCH
44WL BCT 5 XILP
45B= XDCH DCH 0 A1+1(2) [STORE NON ZERO CHARACTERS OR ONE
45TW LDN 1 0
46*G ADN 4 1 [ZERO FOR AN ALL ZERO EXPRESSION
46T6 BCHX 2 £
47#Q BZE 5 XBCT
47SB BCT 5 XLOAD
48#2 XBCT BCT 7 XOLP
48RL BRN XOUT
49?= XTSP BZE 1 XDCH [SPACES SIGNIFICANT
49QW SMO FX1
4==G TXU 0 SPACE
4=Q6 BCS XDCH
4?9Q LDX 1 GSIGN
4?PB BCT 5 XILP
4#92 LDN 1 1
4#NL BRN XBCT
4*8= XLOAD LDCH 0 A1+1(3)
4*MW BCHX 3 £
4B7G BRN XDCH
4BM6 # REMOVE TRAILING SPACES
4C6Q XOUT BZE 4 XOUT1
4CLB SLC 2 2
4D62 SBN 2 1
4DKL SRC 2 2
4F5= LDCH 0 A1+1(2)
4FJW SMO FX1
4G4G TXU 0 SPACE
4GJ6 BCS XOUT1
4H3Q SBN 4 1
4HHB BRN XOUT
4J32 XOUT1
4JGL LDX 3 6
4K2= STO 4 A1(3) [STORE CHARACTER COUNT
4KFW ADN 4 11
4K^G SRL 4 2 [NO OF WORDS IN BLOCK
4LF6 PHOTO 5
4LYQ ALTLEN 3,4,CPAR,GNUMCON
4MDB TESTMOVE 5,XNOMOV
4MY2 HUNTW 3,CPAR,GNUMCON
4NCL XNOMOV
4NX= ADN 4 A1-1(3)
4PBW LDX 6 ALOGLEN(3)
4PWG SBN 6 1 [NUMBER TO BE MOVED
4QB6 LDX 5 4
4QTQ XT1 SBN 4 1
4R*B MOVE 4 1 [MOVE NUMBERS DOWN ONE WORD
4RT2 SBN 5 1
4S#L BCT 6 XT1
4SS= NAME 3,COMDAT,CSETP
4T?W LDX 4 A1(3)
4TRG STO 4 A1+1(3)
4W?6 BRN PTYPE
4WQQ #
4X=B # SECTION TO PROCESS INSTPARA FUNCTION
4XQ2 #
4Y9L XENT3
4YP= #SKI K6SETPRAMB>99-99
4^8W TRACE 5,INSTPARA
4^NG LDN 4 2
5286 FSHCODE AORB
52MQ CALL 5 XHNTC [PARANEXT AND HUNT CPB/CUNI
537B FSHSKIP
53M2 CALL 5 XHNT [PARANEXT AND HUNT CPB/CUNI
546L SRL 4 12
54L= BNZ 4 PN2
555W #SKI G3
55KG OPENSYS XBROKE,PARAMINDEX,READ,QUERY
5656 #SKI G4
56JQ OPENSYS XBROKE,PARAMINDEXG4,READ,QUERY
58H= TESTREPNOT OK,XNOTOK
59GG #SKI XIPEXT
5=26 DOWN SETUPARA,2 [SETUP FILE/FRB BLOCK
5=FQ #SKI XIPEXT<1$1
5=^B READ
5?F2 CLOSE
5?YL HUNT 2,FILE,FRB
5#D= HUNT 3,CPB,CUNI
5#XW STO 2 4
5*CG STLOOP
5*X6 LDN 1 0 [SEARCH PARAMINDEX FOR CORRECT
5BBQ LDX 5 ANUM(3) [INSTALLATION PARAMETER
5BWB ANDN 5 #7777
5CB2 TSTAGN
5CTL SMO 3
5D*= LDCH 6 APARA(1)
5DSW SMO 2
5F#G LDCH 7 IPNAME(1)
5FS6 TXU 6 7
5G?Q BCC XCARON
5GRB ADN 2 IPLINE
5H?2 LDX 6 2
5HQL SBX 6 4
5J== ADN 6 IPNAME-A1
5JPW SMO 4
5K9G TXL 6 ALOGLEN
5KP6 BCC PN2
5L8Q BRN STLOOP
5LNB XCARON
5M82 BCHX 1 £
5MML BCT 5 TSTAGN
5N7= # CHECK IF THE INSTALLATION PARAMETER IS A TRACE AND IF SO CONVERT
5NLW # TO A CHARACTER STRING IN FORMAT OF ACTION ON MONITORING FILE
5P6G LDX 1 4
5PL6 LDX 2 IPNUM(2)
5Q5Q FSHCODE AORB
5QKB (
5R52 STO 2 5 [SAVE IPNUM IN X5
5RJL PARAPASS [PASS NEXT PARAMETER IF PRESENT
5S4= MHUNT 2,CPB,CUNI [PTR TO PARAMETER BLOCK IN X3
5SHW LDX 4 ANUM(2) [LOAD REPLY WORD
5T3G LDX 3 APARA(2) [LOAD PARAMETER
5TH6 FREECORE 2 [FREE CPB/CUNI BLOCK
5W2Q BNG 4 NOCONV [J IF NO PARAMETER - GOT REQD IPNUM
5WGB BZE 4 XINERR [J IF 'IN' - ERROR
5X22 XIN
5XFL FSHCODE A,XFSHAIN
5X^= (
5YDW BXE 3 ZINA(1),NOCONV [J IF 'INA' - GOT REQD IPNUM
5YYG BXE 3 ZINB(1),XCONV [J IF 'INB' - CONVERT FOR REQD IPNUM
5^D6 XFSHAIN
5^XQ )
62CB FSHCODE B,XFSHBIN
62X2 (
63BL BXE 3 ZINA(1),XCONV [J IF 'INA' - CONVERT FOR REQD IPNUM
63W= BXE 3 ZINB(1),NOCONV [J IF 'INB' - GOT REQD IPNUM
64*W XFSHBIN
64TG )
65*6 XINERR
65SQ MHUNT 3,CPB,CUNI [PTR TO CPB/CUNI BLOCK FOR ERROR
66#B BRN PN2
66S2 XCONV
67?L FSHIPCON 5 [CONVERT IPNUM IN X5
67R= NOCONV
68=W LDX 2 5 [LOAD IPNUM INTO X2
68QG )
69=6 #SKI XIPEXT
69PQ IPUSEX LDX 4,2 [LOAD VALUE OF IP FROM FIXED CORE
6=9B #SKI XIPEXT<1$1
6=P2 LDX 4 INSTPARAM(2)
6?8L LDX 5 2
6?N= FSHCODE AORB
6#7W MFREE FILE,FRB [FREE FILE/FRB BLOCK
6#MG FSHSKIP
6*76 FREECORE 1
6*LQ LDX 2 5
6B6B TXU 2 TRACE(1)
6BL2 BCC TST4
6C5L TXU 2 TRACE+1(1)
6CK= BCC TST4
6D4W TXU 2 TRACE+2(1)
6DJG BCC TST4
6F46 TXU 2 TRACE+3(1)
6FHQ BCC TST5
6G3B TXU 2 TRACE+4(1)
6GH2 BCC TST4
6H2L BRN XDECIM
6HG= TST4
6H^W SYNTHMON 4,1
6JFG LDX 4 EXEC3(2)
6J^6 LDX 5 4
6KDQ TST6 MHUNT 3,CPB,CUNI
6KYB ADN 5 11
6LD2 SRL 5 2
6LXL TXU 5 ALOGLEN(3)
6MC= BCC XN
6MWW PHOTO 6
6NBG ALTLEN 3,5
6NW6 TESTMOVE 6,XN
6P*Q MHUNT 3,CPB,CUNI
6PTB XN NAME 3,COMDAT,CSETP
6Q*2 STO 4 ANUM(3)
6QSL LDN 5 APARA(3)
6R#= LDN 4 ACOMMUNE1(2)
6RRW SMO ANUM(3)
6S?G MVCH 4 0
6SR6 BRN PTYPE
6T=Q TST5
6TQB IPCONT 4,5
6W=2 BPZ 5 XLD4
6WPL STOZ ACOMMUNE1(2)
6X9= LDN 5 1
6XNW XLD4
6Y8G LDX 4 5
6YN6 BRN TST6
6^7Q #
6^MB # SECTION TO PROCESS LENGTH FUNCTION
7272 #
72LL XENT4
736= #SKI K6SETPRAMB>99-99
737H TRACE 5,LENPARA
738S LDN 4 2
73=5 SPARANXTX ,,4 [REMOVE BRACKETS,RETAINING
73?B TESTREP UNPAIR,XERR9 [INTERNAL SPACES
73#M TESTREP TOOMANY,XERR14
73*Y MHUNT 3,CPB,CUNI
73C9 LDX 4 ANUM(3)
73DG BNG 4 PN2 [NULL PARAMETER
73FR ANDN 4 #7777
73H4 NAME 3,COMDAT,CSETP
73J* BRN XDEC2
73JF #
73JK # SECTION TO PROCESS PROCESSORS FUNCTION
73JP #
73JT XENT7
73J^ #SKI K6SETPRAMB>99-99
73K5 TRACE 5,PROPARA
73K9 LDCH 4 APROCNO
73K* SETNCORE 3,3,COMDAT,CSETP
73KF BRN XDEC2
73KW #
745G # ROUTINE TO DETERMINE PARAMETER TYPE
74K6 #
754Q PTYPE
75JB PTYPE COMDAT,CSETP,3,APARA,ANUM(3)
7642 XCROSS
76HL SMO FX2
773= LDX 4 AWORK4
77GW BZE 4 XC1
782G CALL 7 UNIF
78G6 UPPLUS 1
78^Q XC1
79FB ACROSS SETPB,1
79^2 #
7=DL UNIF SBX 7 FX1
7=Y= PARAFREE
7?CW UNIFREE
7?XG LDX 2 FX2
7#C6 LDX 0 AWORK3(2)
7#WQ STO 0 JOBEVENTS(2)
7*BB ADX 7 FX1
7*W2 EXIT 7 0
7B*L FSHCODE AORB
7BT= (
7C#W XHNTC SBX 5 FX1
7CSG LDN 1 #34
7D#6 BRN XPASS
7DRQ )
7F?B XHNT SBX 5 FX1
7FR2 NGN 1 1
7G=L XPASS
7GQ= PARANXTX 1,,4
7H9W TESTREP UNPAIR,XERR9
7HPG TESTREP TOOMANY,XERR14
7J96 ADX 5 FX1
7JNQ HUNT 3,CPB,CUNI
7K8B LDX 4 ANUM(3)
7KN2 BNG 4 PN2
7L7L BZE 4 PN2
7LM= EXIT 5 0
7M6W PJMAXPAR +JMAXPAR
7MLG PAPFERR +APFERR
7N66 PERUNPAIR +ERUNPAIR
7NKQ PCHNUMERR +CHNUMERR
7P5B XERR2 LDX 7 PAPFERR(1) [PARAMETER FORMAT ERROR
7PK2 BRN NGN
7Q4L XERR9 LDX 7 PERUNPAIR(1)
7QJ= BRN NGN
7R3W XERR10
7RHG LDX 7 PCHNUMERR(1)
7S36 BRN NGN
7SGQ XERR14
7T2B LDX 7 PJMAXPAR(1)
7TG2 NGN NGN 6 1
7T^L XOR
7WF= SMO FX2
7WYW LDX 4 AWORK4
7XDG BZE 4 XOR1
7XY6 CALL 7 UNIF
7YCQ UP
7YXB XOR1
7^C2 COMERRX 7,6
7^WL XBROKE
82B= MFREEW FILE,FABSNB
82TW XBREAK
83*G COMBRKIN
83T6 XNOTOK
84#Q GEOERR 1,WRONGREP
84SB MENDAREA 30,GAPSETPRAMB
85#2 #END
^^^^ ...245364530001