|
|
DataMuseum.dkPresents historical artifacts from the history of: IBM System/3 |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about IBM System/3 Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 2286 (0x8ee)
Types: s3xseg
Names: »S$BCPL«
└─⟦34f897e8c⟧ Bits:30009186 5702-sc1.V16.scp
└─⟦e1bdf435f⟧
└─⟦this⟧ »S$BCPL«
MACRO 00010000
&LABEL $BCPL &PARM- 00020000
TEXT 00190000
* CHANGE A POLL/ADDR LIST RELEASE-7 A 00200000
AIF (T'&LABEL EQ '').A 00210000
&LABEL EQU * 00220000
.A AIF (T'&PARM EQ '').A1 00230000
LA &PARM,$BPRM1 LOAD PARM ADDR IN XR1. 00240000
.A1 ST $R2&SYSNDX,$BPRS2 SAVE XR2. 00250000
ST $R1&SYSNDX,$BPRM1 SAVE XR1. 00260000
L $BPDTF(,$BPRM1),$DTF LOAD ADDR OF DTF IN XR2. 00270000
L $BDLST(,$DTF),$BLST2 LOAD ADDR OF LIST IN XR2. 00280000
$LP&SYSNDX EQU * 00290000
LA 1(,$BLST2),$BLST2 BUMP XR2 TO LGTH IN POLL LIST. 00300000
MVC $NE&SYSNDX+2(1),0(,$BLST2) SAVE LGTH OF POLL CHARS. 00310000
LA $BPNUM(,$BPRM1),$BPRM1 BUMP XR1 TO LGTH OF PARM CHARS. 00320000
MVI $CP&SYSNDX+1,$BFOX * INIT LGTH IN COMPARE INSTR 00330000
ALC $CP&SYSNDX+1,0(1,$BPRM1) * LGTH - 1. 00340000
MVC $CP&SYSNDX+2,0(1,$BPRM1) INIT XR1 DISP IN COMPARE INSTR. 00350000
MVC $CP&SYSNDX+3,0(1,$BPRM1) INIT XR2 DISP IN COMPARE INSTR. 00360000
$CP&SYSNDX EQU * 00370000
CLC *-*(*-*,$BLIST),*-*(,$BPRM1) ARE CHARS EQUAL? 00380000
MVI $JP&SYSNDX+2,$SK&SYSNDX INIT TO JMP ARND ENBL/OR DISABLE. 00390000
LA *-*,$BPRM1 RESTORE PARM LIST ADDR IN XR1. 00400000
$R1&SYSNDX EQU *-1 00410000
JNE $NE&SYSNDX NO-SKIP FOLLOWING. 00420000
CLC 3(1,$BPRM1),0(,$BLST2) *ARE LGTHS UNEQUAL 00430000
TBF $BPATR(,$BPRM1),$BPEXT *AND EXACTLY MATCH ON? 00440000
JC $NE&SYSNDX,$TRU+$EQ YES-THEN SKIP ENABLE/OR DISABLE. 00450000
MVI $JP&SYSNDX+2,$BPNOP SET TO NO-OP JUMP INSTR. 00460000
$NE&SYSNDX EQU * 00470000
LA *-*(,$BLST2),$BLST2 BUMP XR2 TO END OF POLL CHARS. 00480000
$JP&SYSNDX EQU * 00490000
J *-* 00500000
$ST&SYSNDX EQU * 00510000
SBF 1(,$BLST2),$BPENA SET ACTIVE. 00520000
TBF $BPATR(,$BPRM1),$BPACT ACTIVATE SPECIFIED? 00530000
JT $ED&SYSNDX YES-SKIP FOLLOWING INSTR. 00540000
SBN 1(,$BLST2),$BPENA SET INACTIVE. 00550000
$ED&SYSNDX EQU * 00560000
LA 2(,$BLST2),$BLST2 BUMP TO NEXT POLL ENTRY. 00570000
CLI 0(,$BLST2),$BPEND Q IS THIS THE END OF THE LIST. 00580000
BL $LP&SYSNDX CHECK NEXT ENTRY IN LIST. 00590000
LA *-*,$BPRS2 RESTORE XR2. 00600000
$R2&SYSNDX EQU *-1 00610000
$SK&SYSNDX EQU $ED&SYSNDX-$ST&SYSNDX 00620000
MEND 00630000
630000