Show pageBacklinksBack to top This page is read only. You can view the source, but not change it. Ask your administrator if you think this is wrong. {{htmlmetatags>metatag-description:(ICL George 3 and George 4 GIN macro: FINDPEREC)}} ====== FINDPEREC ====== (GIN Macro) **Defined in:** [[george:source:MACS_SPC|MACS SPC]] **Used in:** [[george:source:CDUM866|CDUM866]], [[george:source:CHARGESC867|CHARGESC867]], [[george:source:CLOSEIPB864|CLOSEIPB864]], [[george:source:DEAD867|DEAD867]], [[george:source:DUMMYA867|DUMMYA867]], [[george:source:ENGAGE867|ENGAGE867]], [[george:source:FAILTWIN866|FAILTWIN866]], [[george:source:FINDRUM866|FINDRUM866]], [[george:source:HLSREAD867|HLSREAD867]], [[george:source:IDFASAT867|IDFASAT867]], [[george:source:IDFCANC867|IDFCANC867]], [[george:source:IDFCHK867|IDFCHK867]], [[george:source:IDFONLIN867|IDFONLIN867]], [[george:source:INTWIN866|INTWIN866]], [[george:source:IPCGEO8|IPCGEO8]], [[george:source:LIBLOAD867|LIBLOAD867]], [[george:source:LIBREQ866|LIBREQ866]], [[george:source:LIBREQC867|LIBREQC867]], [[george:source:LISTEXCP865|LISTEXCP865]], [[george:source:LOADERDA867|LOADERDA867]], [[george:source:LOADERDR867|LOADERDR867]], [[george:source:LOADERFS867|LOADERFS867]], [[george:source:LOADERI867|LOADERI867]], [[george:source:LOADERII867|LOADERII867]], [[george:source:LOADERMT867|LOADERMT867]], [[george:source:LOADERPM867|LOADERPM867]], [[george:source:MODEA65|MODEA65]], [[george:source:MOPPM84|MOPPM84]], [[george:source:NEWOWN865|NEWOWN865]], [[george:source:NEWPW867|NEWPW867]], [[george:source:ONLINEA867|ONLINEA867]], [[george:source:ONLINEB867|ONLINEB867]], [[george:source:ONLINEC867|ONLINEC867]], [[george:source:PARSORT867|PARSORT867]], [[george:source:PM|PM]], [[george:source:PMDUMPDA85|PMDUMPDA85]], [[george:source:PMDUMPMT85|PMDUMPMT85]], [[george:source:PMFS85|PMFS85]], [[george:source:PMLP866|PMLP866]], [[george:source:PMWHATA866|PMWHATA866]], [[george:source:PMWINDDN84|PMWINDDN84]], [[george:source:PROPERTY867|PROPERTY867]], [[george:source:RELIEF866|RELIEF866]], [[george:source:RETURNIT867|RETURNIT867]], [[george:source:SETIDF867|SETIDF867]], [[george:source:SETUPB867|SETUPB867]], [[george:source:SWITCH867|SWITCH867]], [[george:source:SYSPROP867|SYSPROP867]], [[george:source:TAPERING867|TAPERING867]], [[george:source:TRANSPOT65|TRANSPOT65]], [[george:source:TWINSET866|TWINSET866]], [[george:source:TWINSETA866|TWINSETA866]], [[george:source:TWINSETB866|TWINSETB866]], [[george:source:TWINSETD866|TWINSETD866]] <code - FINDPEREC.mac.txt> 7XY6 #MAC FINDPEREC 7YCQ [ 7YXB #STR APINT,%B 7^C2 #STR 7^WL ( 82B= LDX 0 %C [INTERNAL NO 82TW TXL 0 BDTL [BDT LENGTH 83*G BCS MFPR1 [JIF NOT OUT OF RANGE 83T6 MFPR3 84#Q NGN %A 4095 [SET %A NEGATIVE IF INT NO TOO BIG 84SB BRN MFPR2 85#2 MFPR1 LDX %A BDTP [BASE OF BDT 85RL SMO %C 86?= LDX %A 0(%A) [PTR TO DEVICE LIST 86QW JENVNOT MFPR2,DME 87=G LGEOG %A,0 87Q6 #STR %G 889Q BZE 0 %G [J IF ANONYMOUS 88PB #STR %G 8992 #STR 89NL BZE 0 MFPR3 8=8= LDX 0 JK52B(%A) 8=MW ANDN 0 2 8?7G #STR %F 8?M6 BNZ 0 %F [J IF SWITCHED OUT 8#6Q #STR %F 8#LB #STR 8*62 BNZ 0 MFPR3 8*KL MFPR2 8B5= ) 8BJW [ 8C4G #STR APGEOG,%B 8CJ6 #STR 8D3Q ( 8DHB LDX 0 %C 8F32 BZE 0 MFPR4 [J IF GEOG = ZERO 8FGL LDX 0 BDTP [BASE OF BDT 8G2= ADX 0 BDTL [PLUS LENGTH EQUALS END ADDR 8GFW MFPR3 SBN 0 1 [STEP BACK 8G^G TXL 0 BDTP 8HF6 BCC MFPR1 [JIF NOT BACK TO THE BASE 8HYQ MFPR4 8JDB NGN %A 4095 [SET %A NEGATIVE IF NO SUCH GEOG NO 8JY2 BRN MFPR2 8KCL MFPR1 SMO 0 8KX= LDX %A 0 [PTR TO DEVICE LIST 8LBW LGEOG %A,%A [GEOG NO 8LWG TXU %A %C 8MB6 BCS MFPR3 [JIF NOT REQUIRED GEOG NO 8MTQ SMO 0 8N*B LDX %A 0 [LOAD DEVICE LIST PTR 8NT2 JENVNOT MFPR2,DME 8P#L LDX 0 JK52B(%A) 8PS= ANDN 0 2 8Q?W #STR %F 8QRG BNZ 0 %F [J IF SWITCHED OUT 8R?6 #STR %F 8RQQ #STR 8S=B BNZ 0 MFPR4 8SQ2 MFPR2 8T9L ) 8TP= [ 8W8W #STR APTSER,%B 8WNG #STR 8X86 ( 8XMQ LDX 0 JPTI+5 [START OF MTS 8Y7B MFPR3 LDX %A JPTI+6 [END OF MTS 8YM2 TXU 0 %A 8^6L BCS MFPR1 [J IF NOT END OF MT.S 8^L= NGN %A 4095 [END OF MTS 925W BRN MFPR2 92KG MFPR1 SMO 0 9356 LDX %A 0 [PTR TO DEVICE LIST 93JQ DFLOAD %A,TSN,%A [TSN IN %A 944B ADN 0 1 [STEP ON 94J2 TXU %A %C 953L BCS MFPR3 [NOT THIS ONE 95H= SBN 0 1 962W SMO 0 96GG LDX %A 0 [TSN FOUND-LOAD D L PTR 9726 MFPR2 97FQ ) 97^B [ 98F2 #STR APJOB,%B 98YL #STR 99D= ( 99XW LDX 0 BDTP [BASE OF BDT 9=CG BRN MFPR1 9=X6 %D 9?BQ MFPR5 LINT %A,%A [REENTRY AND TURN DL PTRBACKTOINT NO 9?WB SMO BDTP 9#B2 LDN 0 0(%A) [PTR TO BDT 9#TL ADN 0 1 [STEP ON 9**= MFPR1 LDX %A BDTP [BASE OF BDT 9*SW ADX %A BDTL [PLUS LENGTH EQUALS END ADDR OF BDT 9B#G TXL 0 %A 9BS6 BCS MFPR2 [JIF NOT AT END 9C?Q NGN %A 4095 [SET %A NEGATIVE IF NO MORE OF JOBNO 9CRB BRN MFPR3 9D?2 MFPR2 SMO 0 9DQL LDX %A 0 [PTR TO DEVICE LIST 9F== JONL %A,MFPR4 [JIF DEVICE ONLINE 9FPW BRN MFPR5 [IF NOT CONTINUE 9G9G MFPR4 LJOBNO %A,0 [JOBNO TO X0 9GP6 TXU 0 %C 9H8Q BCS MFPR5 [J. IF NOT REQUIRED JOBNO 9HNB MFPR3 9J82 ) 9JML [ 9K7= #STR APFOTY,%B 9KLW #STR 9L6G ( 9LL6 SMO %C 9M5Q LDX 0 JPTI [PTR TO BDT FOR FIRST OF TYPE 9MKB BRN MFPR1 9N52 #STR %D 9NJL %D 9P4= #UNS AV7900S 9PHW ( 9Q3G #STR AV7900,%E 9QH6 #STR 9R2Q ( 9RGB [%E = AV7900 (AND %D IS PRESENT) 9S22 [TEST IF THIS IS A RE-ENTRY TO 9SFL [CONTINUE SEARCH OF VIRTUAL 7900 9S^= [DEVICE LISTS, IE %C.B0=1 9TDW LDXC 0 %C 9TYG BCS MFVPR1 [CONTINUE SEARCH OF V7900 DLS 9WD6 ) 9WXQ ) 9XCB MFPR4 9XX2 LINT %A,%A [REENTRY & TURN DL PTR BACK TO INT NO 9YBL SMO BDTP 9YW= LDN 0 0(%A) [PTR TO BDT 9^*W ADN 0 1 [STEP ON 9^TG MFPR1 SMO %C =2*6 LDX %A JPTI+1 [END ADDR OF TYPE =2SQ TXU 0 %A =3#B BCS MFPR2 [JIF NOT END OF TYPE =3S2 NGN %A 4095 [SET %A NEGATIVE IF NO MORE OF TYPE =4?L BRN MFPR3 =4R= MFPR2 SMO 0 =5=W LDX %A 0 [PTR TO DEVICE LIST FOR NEXT OF TYPE =5QG JENVNOT MFPR3,DME =6=6 LGEOG %A,0 =6PQ BZE 0 MFPR5 =79B LDX 0 JK52B(%A) =7P2 ANDN 0 2 =88L #STR %F =8N= BNZ 0 %F =97W #STR %F =9MG #STR ==76 BNZ 0 MFPR4 ==LQ BRN MFPR3 =?6B MFPR5 =?L2 LDN 0 63 =#5L TXU 0 %C =#K= BCC MFPR3 [J IF CONSOLE TYPE =*4W #STR %G =*JG BRN %G =B46 #STR %G =BHQ #STR =C3B BRN MFPR4 =CH2 MFPR3 =D2L ) =DG= [ =D^W #UNS AV7900S =FFG ( =F^6 #STR AV7900,%E =GDQ #STR =GYB ( =HD2 [%E = AV7900 =HXL BPZ %A MFVPR3 [PERIPHERAL FOUND : SKIP V7900 DLS =JC= [SEARCH THE VIRTUAL 7900 DEVICE LISTS =JWW [MOVING BACKWARDS AROUND THE =KBG [MISCELLANEOUS CHAIN =KW6 #STR %D =L*Q ( =LTB [%D IS ALSO PRESENT THEREFORE =M*2 LDCT 0 #400 [SET %C.B0 TO INDICATE FOR RE-ENTRY =MSL ORS 0 %C [THAT V7900 DLS ARE BEING SEARCHED =N#= ) =NRW LDN %A 0 =P?G SMO BMISC =PR6 MFVPR1 [SEARCH FOR NEXT VIRTUAL 7900 DL =Q=Q LDX %A BPTR(%A) =QQB BXE %A BMISC,MFVPR2 [END OF MISCELLANEOUS CHAIN SEARCH =R=2 LDX 0 ATYPE(%A) =RPL SRC 0 12 [IGNORE V7900'S WHICH ARE BEING =S9= [CREATED,IE ATYPE.B12-23 SET NON-ZERO =SNW SBN 0 APERI+AV7900 =T8G BNZ 0 MFVPR1 [NOT A V7900 DL : TRY NEXT BLOCK =TN6 #STR APGEOG,%B =W7Q #STR =WMB LGEOG %A,0 [%B = APGEOG =X72 #STR APFOTY,%B =XLL #STR =Y6= LTYPE %A,0 [%B = APFOTY =YKW #STR %D =^5G ( =^K6 [%D IS PRESENT THEREFORE ?24Q ORX 0 GSIGN [%C.B0 IS SET SO SET X0.B0 FOR TEST ?2JB ) ?342 BXU 0 %C,MFVPR1 [NOT RELEVANT DL : TRY NEXT BLOCK ?3HL BRN MFVPR3 [RELEVANT DEVICE LIST FOUND : EXIT ?43= MFVPR2 [END OF VIRTUAL 7900 DEVICE LISTS ?4GW #STR %D ?52G ( ?5G6 LDCT 0 #400 [%D IS PRESENT : LEAVE %C.B0 CLEAR ?5^Q ERS 0 %C ?6FB ) ?6^2 NGN %A 4095 [SET %A NEGATIVE TO INDICATE NO SUCH ?7DL [PERIPHERAL WAS FOUND ?7Y= MFVPR3 [EXIT ?8CW [ ?8XG ) ?9C6 ) ?9WQ #NOR </code> Last modified: 17/01/2024 11:55by 127.0.0.1 Log In