apl360 source code

Download APL360 Source Code

If you can't read please download the document

Upload: darwin-osma

Post on 05-Jan-2016

241 views

Category:

Documents


8 download

DESCRIPTION

progrmacion

TRANSCRIPT

./ ADD NAME=APLDEV MACRO 00630000&L APLDEV &ADR,&TYPE=AMBIG,&SAD=SAD1,&EXPRESS=NO 01260000.* 5734-XM6 COPYRIGHT IBM CORP. 1969, 1970 01890000.* 5736-XM6 COPYRIGHT IBM CORP. 1969, 1970 02520000.* REFER TO INSTRUCTIONS ON COPYRIGHT NOTICE FORM NO 120-2083 03150000 GBLA &PADR,&TCNT,&FADR 03780000 GBLB &TERMT 04410000 GBLC &TERMTL,&PUBFIR,&PUBLAST 05040000 LCLA &ADR2,&ADR3,&ADR4,&ADR5 05670000 LCLB &LB1,&LB2,&LB3,&LB4 06300000 LCLC &LC1,&LC2,&LC3 06930000.* &LB1 TRUE FOR 270X DEVICE 07560000.* &LB2 TRUE FOR AUXILIARY 08190000.* &LB3 TRUE FOR HARD-WIRED 270X DEVICE 08820000.* &LB4 TRUE FOR AN EXPRESS PORT 09450000 LCLA &ADR2HI 10080000 AIF (N'&ADR EQ 1 OR N'&ADR EQ 2).ADROK 10710000.ADRNG MNOTE 16,'INVALID FORMAT FOR DEVICE ADDRESS PARAMETER ' &ADR 11340000 MNOTE 16,'MACRO IGNORED.' 11970000 MEXIT BETTER LUCK NEXT TIME 12600000.ADROK ANOP 13230000 AIF (T'&ADR(1) EQ 'O' OR T'&ADR(N'&ADR) EQ 'O').ADRNG 13860000.* 14490000.* THE POSITIONAL PARAMETER &ADR CAN HAVE TWO FORMS: 15120000.* 1) X'##' OR ## TO INDICATE A SINGLE PORT 15750000.* 2) (FIRST,LAST) TO GENERATE ALL PORTS WITH ADDRESSES 16380000.* FROM FIRST TO LAST INCLUSIVE, 17010000.* HAVING IDENTICAL CHARACTERISTICS. 17640000.* 18270000&ADR2 SETA &ADR(1) FIRST OF A GROUP OF CONSECUTIVE PORTS 18900000&ADR2HI SETA &ADR(N'&ADR) LAST OF A GROUP OF CONSECUTIVE PORTS 19530000 AIF (&ADR2 GT &ADR2HI).ADRNG WE DONT WANT TO COUNT BACKWARD 20160000&LB4 SETB ('&EXPRESS' EQ 'YES') 20790000&LB3 SETB ('&TYPE' EQ '1050' OR '&TYPE' EQ '2741' OR X21420000 '&TYPE' EQ 'TS41') 22050000&LB2 SETB ('&TYPE' EQ 'AUX') 22680000&LB1 SETB (&LB3 OR '&TYPE' EQ 'AMBIG') 23310000 AIF (&LB1 OR &LB2 OR '&TYPE' EQ '1052' OR X23940000 '&TYPE' EQ 'END').OKTYP 24570000 MNOTE 16,'INVALID DEVICE TYPE, MACRO IGNORED' 25200000 MEXIT 25830000.OKTYP ANOP 26460000 AIF ('&SAD' EQ 'SAD0').OKSAD 27090000 AIF ('&SAD' EQ 'SAD1').OKSAD 27720000 AIF ('&SAD' EQ 'SAD2').OKSAD 28350000 AIF ('&SAD' EQ 'SAD3').OKSAD 28980000 AIF ('&SAD' EQ 'NOP').OKSAD 29610000 MNOTE 16,'INVALID SAD, MACRO IGNORED' 30240000 MEXIT 30870000.OKSAD ANOP 31500000 AIF ('&EXPRESS' EQ 'YES' OR '&EXPRESS' EQ 'NO').OKEXP 32130000 MNOTE 16,'INVALID EXPRESS DESIGNATION, MACRO IGNORED' 32760000 MEXIT 33390000.OKEXP ANOP 34020000 AIF ('&TYPE' EQ 'AUX').A23 34650000 AIF (&PADR GE &ADR2).A24 SEQUENCE ERROR 35280000 AIF (&PADR+1 NE &ADR2).A2 35910000.A6 AIF (&ADR2 NE 16*(&ADR2/16)).A1 36540000.A2 ANOP 37170000&ADR3 SETA &PADR/16 37800000&ADR4 SETA &ADR2/16 38430000 AIF (&ADR3 NE &ADR4).A3 39060000.* GENERATE DUMMY PUBENT OR PERTERM 39690000&ADR3 SETA &ADR2-&PADR-1 40320000.A20 ANOP 40950000&LC3 SETC 'ATERM&TCNT'(1,8*&TERMT) 41580000&LC3 DC A(0,0,0,0,X'4000') SAME LENGTH AS PUBENT 42210000 DC (&TERMTL-PUBENTL)X'00' 42840000&ADR3 SETA &ADR3-1 43470000&TCNT SETA &TCNT+1*&TERMT 44100000 AIF (&ADR3 GT 0).A20 44730000 AGO .A1 45360000.A3 AIF (&PADR LT 0).A4 45990000CONFIG CSECT 46620000 ORG MPXCUTAB+&ADR3*8 47250000&ADR5 SETA &FADR*256+&PADR 47880000 DC A(&TERMTL*F*F+&ADR5) 48510000 DC AL1(0) PUBN MAY BE NEGATIVE. AL3 FORCES PROPER 49140000 DC AL3(PUB&ADR3) ADDRESS AFTER LINKEDIT RELOCATION 49770000.A4 AIF ('&TYPE' EQ 'END').A12 50400000&FADR SETA &ADR2 51030000&ADR3 SETA &ADR2-&ADR4*16 51660000&TERMT SETB (&LB1) 52290000&LC3 SETC 'PUBENTPERTERM'(6*&TERMT+1,6+&TERMT) 52920000&TERMTL SETC '&LC3.L' 53550000&LC3.G CSECT 54180000 ORG 54810000PUB&ADR4 EQU *-&TERMTL*&ADR3 55440000.A1 AIF (&TERMT NE &LB1).A5 56070000&PADR SETA &ADR2 56700000 AIF (&TCNT EQ 0).A24 57330000.* THIS CALL REPRESENTS A PHYSICAL DEVICE OF SOME SORT 57960000 AIF ('&TYPE' EQ '1052').A10 58590000.* GENERATE DATA ITEMS FOR PERTERM AREA 59220000.A9 ANOP 59850000ATERM&TCNT APLPUB &ADR2,&TYPE,WRITES 60480000 DC A(ATERM&TCNT+X'58') PUCCB 61110000 AIF (&FADR NE &ADR2).A31 61740000.A11 ENTRY ATERM&TCNT 62370000.A31 DC AL1(X'30',X'01',X'40'+X'01'*&LB2,X'80'*&LB3+X'08'*&LB4) 63000000 DC A(EMPT3) PTCORE 63630000 BCR 0,0 MESSCELL 64260000 DC AL2(0) (YYREC) 64890000 DC 2H'0' RESERVED,PTBUFA 65520000 DC 4A(EMPT3) PTFBUF,PTLBUF,PTIBUF,PTRBUF 66150000 DC 6F'0' PTABTM,PTICTME,PTMTIME,PTSOTM,PTMTIM2,PTMTIM3 66780000 DC 2H'0' PTCPULIM,PTCPULM2 67410000 DC AL1(EMPTYM,&SAD,0,0,0) DESBYTE,PTSAD,PTDNT,PDSOP,PTRESP 68040000 DC 7X'00' RESERVED 68670000.* READ AND WRITE CCW CHAIN 69300000 AIF (&LB3).R3 69930000 CCW X'2F',0,CC+SLI,1 DISABLE CCW FOR AMBIG TYPE 70560000 CCW &SAD,ATERM&TCNT+X'50',SLI,1 SAD CCW 71190000 AGO .R4 71820000.* SAD FOLLOWED BY ENABLE FOR NON DIALUP DEVICES. 72450000.R3 CCW &SAD,0,CC+SLI,1 PTCCW1 - SAD. 73080000 CCW X'27',ATERM&TCNT+X'50',SLI,1 PTCCW2 ENABLE 73710000.R4 DC A(EMPT3) PTCCW3 BECOMES TIC 74340000 DC F'0' PTMAN 74970000 DC 4X'00' PTMANI,LAST BYTE RESERVED 75600000 DC 2H'0' PTWSQ,PTWSA 76230000&TCNT SETA &TCNT+1 76860000 AIF (&TERMT OR &LB2).A7 77490000PUBENTG CSECT 78120000.A7 ANOP 78750000&ADR2 SETA &ADR2+1 INCREMENT PORT NUMBER 79380000 AIF (&ADR2 LE &ADR2HI).A6 DO ANOTHER OF CONSECUTIVE PORTS? 80010000 MEXIT 80640000.A12 ANOP 81270000 ORG 81900000TERMCOUN EQU &TCNT 82530000 MEXIT 83160000.* 83790000.* 1052-7 TERMINAL 84420000.* 85050000.A10 DC A(ATERM&TCNT,0,0,0,0) SAME LENGTH AS PUBENT 85680000PERTERMG CSECT 86310000ATERM&TCNT APLPUB &ADR2,1052,READS 86940000 DC A(ATERM&TCNT+X'68') PUCCB 87570000 AGO .A11 88200000.A23 AIF (&TCNT NE 0).A24 88830000* 89460000* AUXILIARY MESSAGE BUFFER FOR OPERATOR 90090000* COPY SOURCE TERMINAL 90720000* 91350000PERTERMG CSECT 91980000 ENTRY AUXTERM 92610000AUXTERM APLPUB X'FF',AUX,IDLE 93240000ATERM&TCNT EQU AUXTERM 93870000 DC A(9) PUCCB (ILLEGAL CAW SETTING) 94500000 AGO .A11 95130000* 95760000.A5 MNOTE 4,'INTERMIXED PUB AND PERTERM BLOCKS' 96390000.* THIS RESTRICTION MIGHT BE REMOVABLE 97020000.A24 MNOTE 16,'APLDEV CALLS OUT OF ORDER, MACRO IGNORED' 97650000 MEXIT 98280000 MEND 98910000./ ADD NAME=APLDS MACRO 00890000&L APLDS &X,&DS,&RPS=NO,&DC=YES 5989 01780000.* 5734-XM6 COPYRIGHT IBM CORP. 1969, 1970, 1971 02670000.* 5736-XM6 COPYRIGHT IBM CORP. 1969, 1970 03560000.* REFER TO INSTRUCTIONS ON COPYRIGHT NOTICE FORM NO 120-2083 04450000 GBLA &I 05340000 GBLA &E 06230000 GBLB &OS 07120000 GBLC &CS 08010000 GBLC &AA 08900000 GBLC &DPARS 09790000 LCLC &D(6) 2541 10680000 LCLA &D1,&D2,&LG 2541 11570000 LCLB &RP DASD 12460000 LCLB &ISSWAP,&DCH 5989 13350000 LCLC &A 14240000 LCLC &DD 15130000&ISSWAP SETB ('&L' EQ 'SWAP') 5989 16020000&DCH SETB ('&DC' EQ 'NO') 5989 16910000 AIF (&DCH OR '&DC' EQ 'YES').DCOK 5989 17800000 MNOTE 0,'DC OPERAND INVALID, YES ASSUMED' 5989 18690000.DCOK AIF (&OS).OS 5989 19580000 AIF ('&SYSECT' EQ 'SOFTPARS').A 20470000SOFTPARS CSECT 21360000.A AIF (T'&L EQ 'O' AND T'&X NE 'O').B 22250000 AIF ('&DPARS' EQ '&L').B 23140000 AIF ('&DPARS' EQ '').C 24030000 ENTRY &DPARS.PZ 24920000&DPARS.PZ EQU *-1 25810000.C AIF (T'&X EQ 'O').Z 26700000 ENTRY &L.PARS 27590000&L.PARS EQU * 28480000&DPARS SETC '&L' 29370000.B AIF (T'&DS EQ 'O').T0 30260000 AIF ('&DS'(1,1) EQ '''' AND '&DS'(K'&DS,1) EQ '''').T1 31150000.T0 MNOTE 16,'FILE NAME INVALID, MACRO REJECTED' 32040000 MEXIT 32930000.T1 AIF (&X LT 0 OR &X GT 244).T2 33820000 AIF ('&DPARS' NE 'SWAP' OR (&X NE 4 AND &X NE 5)).T3 34710000.T2 MNOTE 16,'LOGICAL UNIT INVALID, MACRO REJECTED' 35600000 MEXIT 36490000.T3 AIF (K'&DS LE 44).T4 37380000 MNOTE 0,'FILE NAME TOO LONG, TRUNCATED' 38270000.T4 DC AL1(0,0,1,&X) 39160000 DC 5F'0' 5989 40050000 DC AL1(B'&RP&ISSWAP&DCH.00000',0,0,0) 5989 40940000 DC F'0' 5989 41830000 DC CL44&DS 42720000&I SETA &I+1 43610000.Z MEXIT 44500000.OS ANOP 45390000.* LOGAD WILL CONTAIN THE NUMBER I CORRESPONDING TO THE ITH DCB. 46280000.AY AIF (&I NE 1).AX 47170000&E SETA 0 48060000.AX AIF (T'&L EQ 'O').A3 48950000&CS SETC '&L' 49840000&AA SETC '&CS.PARS' 50730000.A3 AIF (T'&X NE 'O').A4 51620000 AIF (T'&L EQ 'O').A5 52510000&CS SETC '&L' 53400000.A5 ANOP 54290000&CS.PARS CSECT 55180000&CS.PZ EQU *-1 56070000 ENTRY &CS.PZ 56960000 MEXIT 57850000.A4 ANOP 58740000&AA CSECT 59630000&D2 SETA 2 2541 60520000&LG SETA K'&X-1 2541 61410000 AIF ('&X'(1,1) EQ '''' AND '&X'(K'&X,1) EQ '''').A1 2541 62300000&D2 SETA 1 2541 63190000&LG SETA K'&X 2541 64080000.A1 ANOP 64970000&D1 SETA &D1+1 2541 65860000 AIF (&LG-&D2 LT 8).OUT 2541 66750000&D(&D1) SETC '&X'(&D2,8) 2541 67640000&D2 SETA &D2+8 2541 68530000 AGO .A1 2541 69420000.OUT ANOP 2541 70310000&D(&D1) SETC '&X'(&D2,&LG-&D2+1) 2541 71200000&A SETC 'FILE&I' 72090000&A DC Y(0,&I) 72980000 DC 5F'0' 5989 73870000 AIF (T'&DS EQ 'O').DSOK DASD 74760000 MNOTE 0,'&DS MEANINGLESS, IGNORED' DASD 75650000.DSOK ANOP DASD 76540000&RP SETB ('&RPS' EQ 'YES') DASD 77430000 AIF (&RP OR '&RPS' EQ 'NO').DC DASD 78320000.* DASD **D 79210000 MNOTE 0,'RPS OPERAND INVALID, NO ASSUMED' DASD 80100000.DC DC AL1(B'&RP&ISSWAP&DCH.00000',0,0,0) DASD 80990000 DC F'0' 5989 81880000 DC CL44'&D(1).&D(2).&D(3).&D(4).&D(5).&D(6).' 2541 82770000APLSDCBS CSECT 83660000 ORG *+4 84550000 ENTRY APLDCB&I 85440000&DD SETC 'APL&CS&E.' 86330000 AIF ('&CS' NE 'LIB').DCB 87220000 AIF (&E GT 9).DCB 88110000&DD SETC 'APL&CS.0&E.' 89000000.DCB ANOP 89890000APLDCB&I DCB DSORG=DA,DDNAME=&DD,MACRF=(E), X90780000 PCIA=WA,CENDA=WB,XENDA=WC 91670000 ORG APLDCB&I+50 92560000 DC X'D0' TURN OFF X'20' 93450000 ORG 94340000 MNOTE *,'//&DD DD DISP=SHR,DSNAME=&D(1).&D(2).&D(3).&D(4).&D(5X95230000 ).&D(6).' 2541 96120000&I SETA &I+1 97010000&E SETA &E+1 97900000 MEND 98790000./ ADD NAME=APLPUB MACRO 10000000&L APLPUB &ADR,&TYPE,&STATE 20000000.* 5734-XM6 COPYRIGHT IBM CORP. 1969, 1970 30000000.* 5736-XM6 COPYRIGHT IBM CORP. 1969, 1970 40000000.* REFER TO INSTRUCTIONS ON COPYRIGHT NOTICE FORM NO 120-2083 50000000 DS 0F 60000000&L DC AL1(Q&TYPE,&STATE,&ADR,0) PTTYPE,STATE,PTUNAD,PUSENS 70000000 DC 2F'0' SAVCSW 80000000 MEND 90000000./ ADD NAME=APLSCONF MACRO 00520000 APLSCONF &DIRS=5, NUMBER OF USER DIRECTORIES *01040000 &INCORE=3, NUMBER OF WS SLOTS IN CORE *01560000 &WSSIZE=36000, WORKSPACE SIZE IN BYTES *02080000 &HOST=, HOST APL SYSTEM *02600000 &EXPLIM=8, EXPRESS TIME LIMIT *03120000 &DOSEND=X'3000', SEND MACRO PARAMETER FROM DOS SYSGEN*03640000 &MPXCHAN=0, MULTIPLEX CHANNEL ADDRESS 5991*04160000 &IODEBUG=200 SIZE OF I/O DEBUG TRACE TABLE 04680000.* 5734-XM6 COPYRIGHT IBM CORP 1969,1970,1972 05200000.* 5736-XM6 COPYRIGHT IBM CORP 1969,1970,1972 05720000.* REFER TO INSTRUCTIONS ON COPYRIGHT NOTICE FORM NO 120-2083 06240000 GBLA &MDEV,&PADR,&CACNT,&WSLN,&TCNT,&MANHASH 06760000 GBLA &MPXCH 5991 07280000 GBLB &DOS,&OS,&CP67 07800000 GBLC &PN 08320000 LCLC &S 08840000&MPXCH SETA &MPXCHAN 5991 09360000 AIF ((&MPXCH GE 0) AND (&MPXCH LT 32) AND *09880000 (N'&MPXCHAN EQ 1)).CK00 5991 10400000 MNOTE 0,'MPXCHAN OPERAND INVALID, 0 ASSUMED' 5991 10920000.* 5991 **D 11440000&MPXCH SETA 0 5991 11960000.CK00 ANOP 5991 12480000 AIF (&WSSIZE GE 20480).CK0 13000000 MNOTE 16,'WS SIZE TOO SMALL, MACRO IGNORED' 13520000 MEXIT 14040000.CK0 AIF (&WSSIZE EQ 36000).CK1 14560000 MNOTE 0,'WARNING - NON STANDARD WORKSPACE SIZE' 15080000.CK1 AIF (&INCORE GT 1).CK3 15600000 MNOTE 16,'INCORE MAY NOT BE LESS THAN 2, MACRO IGNORED' 16120000 MEXIT 16640000.CK3 AIF (&DIRS GT 1).CK4 17160000 MNOTE 16,'DIRS MAY NOT BE LESS THAN 2, MACRO IGNORED' 17680000 MEXIT 18200000.CK4 AIF (&IODEBUG GT 0).CK5 18720000 MNOTE 16,'IODEBUG MAY NOT BE LESS THAN 1, MACRO IGNORED' 19240000 MEXIT 19760000.CK5 AIF ('&HOST' EQ 'DOS' OR '&HOST' EQ 'APL' OR '&HOST' EQ 'OS'*20280000 OR '&HOST' EQ 'CP67').CK6 20800000 MNOTE 16,'HOST SPECIFICATION INVALID, MACRO IGNORED' 21320000 MEXIT 21840000.CK6 ANOP 22360000&DOS SETB ('&HOST' EQ 'DOS' OR '&HOST' EQ 'OS') 22880000&OS SETB ('&HOST' EQ 'OS') 23400000&CP67 SETB ('&HOST' EQ 'CP67') 23920000&S SETC 'ADC*'(1+&DOS+2*&CP67,1) 24440000 AIF (&OS).OSCM 24960000 MNOTE *,'5736-XM6 COPYRIGHT IBM CORP 1969,1970,1972' 25480000 AGO .DOSC 26000000.OSCM MNOTE *,'5734-XM6 COPYRIGHT IBM CORP 1969,1970,1972' 26520000.DOSC ANOP 27040000 AIF (&OS).NOPC 27560000 PUNCH ' CATALR APLSLINK,1.1 ' C053 28080000 AIF (&DOS).INCL3 28600000 PUNCH ' PHASE APLSLOW,+0,NOAUTO ' 29120000 PUNCH ' INCLUDE APL&S.ASUP,(APLSUP) ' 29640000 AIF (&DOSEND GT X'37D0').BIGSUP 30160000 PUNCH ' PHASE APL360,*+249,NOAUTO ' 30680000 AGO .SMALSUP 31200000.BIGSUP PUNCH ' PHASE APL360,S,NOAUTO ' 31720000.SMALSUP PUNCH ' INCLUDE APLSCONF,(COIBM) ' 32240000 PUNCH ' INCLUDE APL&S.ASUP,(PERDEVXG,HDIR,HTAB) ' 32760000 AGO .INCL4 33280000.INCL3 PUNCH ' INCLUDE APLSCONF,(COIBM) ' 33800000 PUNCH ' INCLUDE APL&S.ASUP,(APLSUP,PERDEVXG,HDIR,HTAB) ' 34320000.INCL4 PUNCH ' INCLUDE APLSCONF,(SOFTPARS,PERTERMG,PUBENTG,CONFIG,APL*34840000 SVC) ' 35360000 PUNCH ' INCLUDE APL&S.TRTA ' 35880000 PUNCH ' INCLUDE APL&S.PCSB ' 36400000 PUNCH ' INCLUDE APLSXREF ' 36920000 PUNCH ' INCLUDE APLSAGOR ' 37440000 PUNCH ' INCLUDE APLSARTH ' 37960000 PUNCH ' INCLUDE APLSATCH ' 38480000 PUNCH ' INCLUDE APLSBLOW ' 39000000 PUNCH ' INCLUDE APLSDIOT ' 39520000 PUNCH ' INCLUDE APLSDPY ' 40040000 PUNCH ' INCLUDE APLSDQRY ' 40560000 PUNCH ' INCLUDE APLSDRHO ' 41080000 PUNCH ' INCLUDE APLSDSER ' 41600000 PUNCH ' INCLUDE APLSDTRA ' 42120000 PUNCH ' INCLUDE APLSDYIB ' 42640000 PUNCH ' INCLUDE APLSEPSI ' 43160000 PUNCH ' INCLUDE APLSERAF ' 43680000 PUNCH ' INCLUDE APLSFFSS ' 44200000 PUNCH ' INCLUDE APLSGOUT ' 44720000 PUNCH ' INCLUDE APLSGRAD ' 45240000 PUNCH ' INCLUDE APLSINDX ' 45760000 PUNCH ' INCLUDE APLSMDIV ' 46280000 PUNCH ' INCLUDE APLSMIBM ' 46800000 PUNCH ' INCLUDE APLSMSOP ' 47320000 PUNCH ' INCLUDE APLSMRIO ' 47840000 PUNCH ' INCLUDE APLSMTRA ' 48360000 PUNCH ' INCLUDE APLSOCTL ' 48880000 PUNCH ' INCLUDE APLSRAVL ' 49400000 PUNCH ' INCLUDE APLSROTR ' 49920000 PUNCH ' INCLUDE APLSSCOP ' 50440000 PUNCH ' INCLUDE APLSSLCT ' 50960000 PUNCH ' INCLUDE APLSSYNT ' 51480000 PUNCH ' INCLUDE APLSTAKE ' 52000000 PUNCH ' INCLUDE APLSTBCD ' 52520000 PUNCH ' INCLUDE APLSTPIN ' 53040000 PUNCH ' INCLUDE APLSVDOP ' 53560000 PUNCH ' INCLUDE APL&S.SINI ' 54080000 PUNCH ' INCLUDE APLSOPEN ' 54600000 PUNCH ' INCLUDE APLSCONF,(CONFINIT)' 55120000 PUNCH '.END ' 55640000 PUNCH ' CATALR APLUTIL,1.1 ' C053 56160000 PUNCH ' PHASE APLUTIL,S+4096,NOAUTO ' 56680000 PUNCH ' INCLUDE APLSCONF,(COIBM,SOFTPARS) ' 57200000 PUNCH ' INCLUDE APLSOPEN ' 57720000 PUNCH ' INCLUDE APLUBILL ' 58240000 PUNCH ' INCLUDE APLUINST ' 58760000 PUNCH ' INCLUDE APLUUREC ' 59280000 PUNCH ' INCLUDE APLUDISK ' 59800000 PUNCH ' INCLUDE APLUTAPE ' 60320000 PUNCH ' INCLUDE APLURSTR ' 60840000 PUNCH ' INCLUDE APLUDUMP ' 61360000 PUNCH ' INCLUDE APLUMAIN ' 61880000 PUNCH ' INCLUDE APLLABEL ' 62400000 PUNCH ' ENTRY MAIN ' 62920000 PUNCH '.END ' 63440000 PUNCH ' CATALR APLSCONF,1.1 ' C053 63960000.NOPC ANOP 64480000 AIF (&OS).OSC 65000000COIBM CSECT 65520000 DC C'5736-XM6 COPYRIGHT IBM CORP 1969,1970,1972' 66040000* **D 66560000 DC C'202157' F.E. SERVICE NUMBER C049 67080000 AGO .OSC1 67600000.OSC ANOP 68120000COIBM CSECT 68640000 DC C'5734-XM6 COPYRIGHT IBM CORP 1969,1970,1972' 69160000* **D 69680000 DC C'201156' F.E. SERVICE NUMBER C049 70200000.OSC1 ANOP 70720000 TITLE 'C O N F I G U R A T I O N P A R A M E T E R S' 71240000PERTERMG CSECT 71760000PUBENTG CSECT 72280000 DC F'0' AVOID CSECT OF LENGTH ZERO. 72800000* 73320000* SOFTWARE PARAMETERS 73840000&CACNT SETA &INCORE NUMBER OF WSS IN CORE SIMULTANEOUSLY 74360000&WSLN SETA &WSSIZE/8*8 WORKSPACE LENGTH (DOUBLEWORD) 74880000&MANHASH SETA &DIRS NUMBER OF DIRECTORIES. 75400000* 75920000&PADR SETA 0-100 76440000&MDEV SETA 4 76960000DC EQU X'80' 77480000CC EQU X'40' 78000000SLI EQU X'20' 78520000EMPT3 EQU X'800000' 79040000EMPTYM EQU X'80' 79560000F EQU 256 80080000SAD0 EQU X'13' 80600000SAD1 EQU X'17' 81120000SAD2 EQU X'1B' 81640000SAD3 EQU X'1F' 82160000NOP EQU X'03' 82680000QTS41 EQU 4 83200000Q2741 EQU 24 83720000QAMBIG EQU 44 84240000Q1050 EQU 64 84760000Q1052 EQU 84 85280000QAUX EQU 104 85800000WRITES EQU 0 86320000IDLE EQU 3 86840000READS EQU 4 87360000EXPLIM EQU &EXPLIM*60*300 87880000WSLENR EQU ((&WSLN+2047)/2048)*2048 88400000PERTERML EQU 120 88920000PUBENTL EQU 20 89440000PERCOREL EQU 8 89960000CONFIG CSECT 90480000 ENTRY MPXCUTAB 91000000* FOR FORMAT OF MPXCUTAB SEE MPXINT IN APLSUP 91520000MPXCUTAB DC 32F'0' UNIT ADDRESS TO PERTERM MAP 92040000 DC 4A(0) 92560000 ENTRY SOOKTXT,SOOKEXTX,IODBUGG,IODBUGZ 93080000SOOKTXT DC H'19' 93600000 DC FL4'-1617389416,1452828056,1637356696,-1885826408' 94120000 DC FL4'-1935696739' 94640000SOOKEXTX DC H'27' 95160000 DC FL4'-1617389416,1452828056,1637356696,-1885826408' 95680000 DC FL4'-1936172435,1701272168,1755290781' 96200000IODBUGG DS (&IODEBUG)XL10'00' I/O DEBUG TRACE TABLE 96720000IODBUGZ EQU * END OF IODBUGG TABLE 97240000 EJECT 97760000 APLDEV 0,TYPE=AUX 98280000 MEND 98800000./ ADD NAME=APLSEND MACRO 00940000 APLSEND &MAP=254,&QEND=,&INIT=,&FMSK= 01880000.* 5734-XM6 COPYRIGHT IBM CORP. 1969, 1970 02820000.* 5736-XM6 COPYRIGHT IBM CORP. 1969, 1970 03760000.* REFER TO INSTRUCTIONS ON COPYRIGHT NOTICE FORM NO 120-2083 04700000 GBLA &MDEV,&PADR,&CACNT,&WSLN,&TCNT,&MANHASH,&MINB 05640000 GBLA &MPXCH 5991 06580000 GBLB &DOS,&OS,&CP67 07520000 GBLC &PN 08460000 LCLA &I 09400000* 10340000 AIF (NOT &OS).NOTOS 11280000 APLDS , DUMMY FINAL APLDS CALL 12220000.NOTOS ANOP 13160000* 14100000 APLDEV X'100',TYPE=END 15040000* 15980000 EXTRN APLSUP,MPXSAVE,EXTIM2,APLSETLO,IM 16920000 ENTRY PERCOREG,PERDISKG,PERDISKZ,FREE3,CONFSWAP 17860000&I SETA 0 18800000PERCOREG DC 0D'0' 19740000.I1 DC H'0' PCQUONT 20680000 DC AL3(IM+&I*WSLENR,EMPT3) 21620000&I SETA &I+1 22560000 AIF (&I LT &CACNT).I1 23500000PERDISKG DC 0D'0' 24440000 DC (&TCNT+5)A(0,EMPT3) PDDA,PDTERM 25380000PERDISKZ EQU *-4 26320000FREE3 DC 0D'0' 27260000IETBRN EQU 6 28200000 DC 3A(EMPT3) INITIAL VALUE OF FREE SP LIST 29140000 DC A(IETBRN*F*F*F+APLSETLO,*+8,1) INTERVAL EVENT LIST HEAD 30080000 DC (&TCNT+5)A(IETBRN*F*F*F+EXTIM2,*+8,1) DUMMY IE 31020000&I SETA 1 31960000.I4 DC A(ATERM&I,*+8,1) MPX INTERVAL EVENT 32900000&I SETA &I+1 33840000 AIF (&I LT &TCNT).I4 34780000 DC A(IETBRN*F*F*F+EXTIM2,EMPT3,1) LAST DUMMY EVENT 35720000CONFSWAP DC 0D'0' 36660000 DC X'01' 37600000 DC A(SWAPPARS) 38540000 DC A(&TCNT+2) WORKSPACES NEEDED 39480000.* NOTE THAT TCNT INCLUDES A DUMMY APLDEV CALL 40420000 DC A(PERDISKG) 41360000 DC F'8' PERDISK INCREMENT 42300000&MINB SETA 20+&TCNT*(5+15*&CP67) 43240000OVERBOOK EQU 3 FAIRSHARE IS COMPUTED FROM THIS * ORIG FREE COUN 44180000CONFINIT APLSUPC 45120000VALCON EQU ALEN+&DOS+2*&OS 46060000SOFTPARS CSECT 47000000 AIF (&OS).NOTDOS 47940000 APLDS , DUMMY FINAL APLDS CALL 48880000.NOTDOS ENTRY CCWAR,DIRTAB,KMANHASH,RD1DA,WSLEN 49820000* * * * * * * *ASSUMES 2311 IS DEVICE WITH SHORTEST TRACK * * * * * * * 50760000CCWAR DS ((&WSLN+3599)/3600*4+2)D 51700000RD1DA EQU *+2 52640000* * * * * * * * RD1DA+2 MUST BE ON A WORD BOUNDARY * * * * * * * * * 53580000 DC ((&WSLN+3599)/3600+1)H'256,0,0,0' 54520000KMANHASH DC A(&MANHASH) 55460000WSLEN DC A(&WSLN) 56400000DIRTAB DS (2*&MANHASH+1)F 1 WORD OF SLOP NEEDED BY OPLIB 57340000 AIF (T'&MAP EQ 'O').NTE1 58280000 AIF (&MAP GT 255).NTE2 59220000APLSVC CSECT 60160000 ENTRY APLMAP 61100000APLMAP EQU APLSVC+&MAP*X'10000' 62040000 ENTRY MPXCH 5991 62980000MPXCH EQU APLSVC+&MPXCH*X'10000' 5991 63920000 DC F'0' AVOID ZERO LENGTH CSECT 64860000 AIF (&OS).OSCODE 65800000 MEXIT 66740000.OSCODE ANOP 67680000.* 68620000 AIF (T'&FMSK NE 'O' OR T'&QEND NE 'O').NTE4 69560000.CONTIN ANOP 70500000 AIF (T'&INIT EQ 'O').NTE1 71440000 AIF (&INIT GT 255).NTE2 72380000 AIF (&INIT EQ &MAP).NTE3 73320000 ENTRY APLINIT 74260000APLINIT EQU APLSVC+&INIT*X'10000' 75200000 SPACE 3 76140000 MNOTE *,'LIST OF APL LOAD MODULE AND ENTRY POINT NAMES' C056 77080000 MNOTE *,' APL360 APLOS ' C056 78020000 MNOTE *,' APLSINIT SUPINI ' C056 78960000 MNOTE *,' APLUTIL MAIN ' C056 79900000 SPACE 3 80840000 MNOTE *,' LINKAGE EDITOR CONTROL CARDS FOR NUCLEUS LINKEDIT' 81780000 MNOTE *,' ' 82720000 MNOTE *,' CHANGE IGCINIT(IGC&INIT),IGCMAP(IGC&MAP)' 83660000 MNOTE *,' INCLUDE RESMODS(APLSMVT1) FOR MVT, OMIT FOR MFT' 84600000 MNOTE *,' INCLUDE RESMODS(APLSMFT1) FOR MFT, OMIT FOR MVT' 85540000 MEXIT 86480000.NTE1 MNOTE 16,'SYMBOLIC PARAMETER(S) UNDEFINED' 87420000 MEXIT 88360000.NTE2 MNOTE 16,'SYMBOLIC PARAMETER(S) OUT OF RANGE' 89300000 MEXIT 90240000.NTE3 MNOTE 16,'SYMBOLIC PARAMETER(S) NOT UNIQUE' 91180000 MEXIT 92120000.NTE4 MNOTE *,' SVCS FMSK AND QEND NOT NEEDED -- IGNORED' 93060000 MNOTE *,'* * * * * * * * * * * * * * * * * * * *' 94000000 MNOTE *,'* * * YOU MUST RELINKEDIT YOUR NUCLEUS * * *' 94940000 MNOTE *,'* * * FOR THIS VERSION OF APL * * *' 95880000 MNOTE *,'* * * * * * * * * * * * * * * * * * * *' 96820000 AGO .CONTIN 97760000 MEND 98700000./ ADD NAME=APLSUPC MACRO 01330000&L APLSUPC 02660000.* 5734-XM6 COPYRIGHT IBM CORP. 1969, 1970 03990000.* 5736-XM6 COPYRIGHT IBM CORP. 1969, 1970 05320000.* REFER TO INSTRUCTIONS ON COPYRIGHT NOTICE FORM NO 120-2083 06650000 GBLA &CACNT,&MANHASH,&WSLN,&MINB 07980000 GBLB &DOS,&OS,&CP67 C058 09310000* APLSUP, SUPINI, CONFIG COMMUNICATION REGION 10640000 AIF ('&L' EQ '').A5 NO LABEL MEANS DSECT IN OTHER ASSMB 11970000 AIF ('&L' EQ 'SUPPARD').A1 13300000 AIF ('&L' EQ 'CONFINIT').A4 14630000 ENTRY &L 15960000&L DC 0F'0' 17290000 AGO .A2 18620000.A5 ANOP 19950000SUPPARD DSECT 21280000APLSUP EQU 0 AVOID UNDEF FLAG 22610000PERCOREL EQU 8 AVOID UNDEF FLAG 23940000 AGO .A6 25270000.A4 ANOP 26600000&L CSECT 27930000 AGO .A3 29260000.A1 ANOP 30590000&L DSECT ,THIS IS SUPINI 31920000.A6 ANOP 33250000EXPLIM EQU 0 AVOID UNDEF FLAG 34580000.A2 ANOP 35910000PERTERMG EQU 1 AVOID UNDEF FLAG 37240000PERCOREG EQU 1 AVOID ERROR MESS 38570000TERMCOUN EQU 1 AVOID ERROR MESS 39900000PERDISKG EQU 1 AVOID ERROR MESS 41230000PERDISKZ EQU 1 AVOID ERROR MESS 42560000OVERBOOK EQU 2 NOMINAL VALUE, CONFIG CONTROLS 43890000.A3 ANOP 45220000LSUPC DC A(VALCON) FOR VERSION VALIDATION 46550000PTBXLE DC A(PERTERML) FOR ITERATION ON PERTERM 47880000 DC A(PERTERMG+PERTERML*(TERMCOUN-1)) LAST PERTERM 49210000 DC A(PERTERMG) FIRST PERTERM 50540000PDBXLE DC F'8' LENGTH OF PERDISK DSECT 51870000MAXARM DC A(PERDISKZ) LIMIT OF DISK SWAP SEARCH 53200000ARM DC A(PERDISKG) CURRENT ARM POSITION 54530000 DC A(PERDISKG) START OF PERDISK 55860000PCBXLE DC A(PERCOREL) LENGTH OF PERCORE 57190000 DC A(PERCOREG+(&CACNT-1)*PERCOREL) LAST PERCORE 58520000 DC A(PERCOREG) FIRST PERCORE 59850000SLOTS DC A(&CACNT) NUMBER OF CORE SLOTS 61180000RRCORE DC A(PERCOREG) VARAIBLE USED AS QZA2 62510000TERMMAX DC A(TERMCOUN) 63840000WLEN DC A(&WSLN) WORKSPACE LENGTH 65170000COPLIM DC Y(3) MAX SIMULTANEOUS )LIB OPERATIONS 66500000SYSPARS DC AL1(B'&DOS.&OS.&CP67.00000',0) SYSTEM PARAMETERS C058 67830000KMHASH DC A(&MANHASH) MANHASH FOR COMPUTING DIRECTORY NUM 69160000KOVERBOK DC A(OVERBOOK) ADJUSTED BY SUPINI 70490000REALTIME DC F'0' LOW ORDER BIT = 3.33 MILLISECONDS 71820000SVBASE DC A(MPXSAVE) BASE REG FOR MPX AND SVC CODE 73150000PTBASE DC A(0) PERTERM ADDR OF GUY WE ARE RUNNING 74480000CURRENTM DC A(0) WORKSP ADDR OF GUY WE ARE RUNNING 75810000APLBASE DC A(APLSUP) NON-STANDALONE R14 SETTING 77140000FREEBA DC A(0) HEAD OF FREE BUFFER CHAIN 78470000FREEBC DC F'0' COUNT OF FREE BUFFERS 79800000ACTKEY DC X'40' KEY FOR ACTIVE WS AND INTRP 81130000INACTKEY DC X'30' KEY FOR INACTIVE WS 82460000 DC H'0' UNUSED 83790000ALEN EQU *-PTBXLE LENGTH OF MOVE 85120000 AIF ('&SYSECT' EQ 'APLSUP').AZ 86450000* FOLLOWING VALUES ARE FOR SUPINI & CONFINIT ONLY 87780000AWSLENR DC A(WSLENR) 2048*CEIL WSLENGTH DIV 2048 89110000KMINBUF DC F'&MINB' MINIMUM TYPEWRITER BUFFERS 90440000KEXPLIM DC A(EXPLIM) EXPRESS TIME LIMIT 91770000 AIF ('&L' EQ 'CONFINIT').AZ 93100000WSLENR EQU 0*2048 CONFIG WILL DEFINE 94430000MINBUF EQU 0 CONFIG WILL DEFINE 95760000MPXSAVE EQU 1 SUPINI DOESN'T NEED TO KNOW 97090000.AZ MEND 98420000./ ADD NAME=COIBM MACRO 08330000 COIBM &ID 16660000.* THIS IS A DEVELOPMENT MACRO. THE MACRO IS REPLACED BY A 24990000.* CURRENT COPYRIGHT STATEMENT BY THE SPLIT-UP PROGRAM 33320000 AIF ('&ID' NE '5734').A 41650000* 5734-XM6 IBM CONFIDENTIAL 49980000 AGO .B 58310000.A AIF ('&ID' NE '5736').B 66640000* 5736-XM6 IBM CONFIDENTIAL 74970000.B ANOP 83300000 MEND 91630000./ ADD NAME=APLDEFN TITLE 'A P L D E F N -- G L O B A L D E F I N I T I O N S' 00420000* 5734-XM6 COPYRIGHT IBM CORP. 1969, 1970 00840000* 5736-XM6 COPYRIGHT IBM CORP. 1969, 1970 01260000* REFER TO INSTRUCTIONS ON COPYRIGHT NOTICE FORM NO 120-2083 01680000UVR EQU 0 02100000MFMT EQU 0 02520000MR EQU 11 BASE REGISTER FOR M-ARRAY 02940000PR EQU 12 BASE REGISTER FOR PROGRAM 03360000LR EQU 13 BASE REGISTER FOR LOCAL VARIABLES 03780000TLR EQU 14 TOP OF SPACE NEEDED FOR LOCAL VARBS 04200000LKR EQU 15 LINK REGISTER 04620000STLENGTH EQU 2048 LENGTH OF SYMBOL TABLE 05040000 USING M,MR 05460000MEMORY DSECT 05880000M DS 0X 06300000REGSV DS 16F SUPERVISOR REGISTER SAVE AREA 06720000FRSAVE DS 5D FLOATING REGISTERS AND SVC OLD PSW 07140000VVMM DS F VERSION, MOD. LVL (ONLY IN DIR) C059 07560000NUMDIRS DS F NO. OF DIRECTORIES (ONLY IN DIR)C059 07980000 DS 4F UNUSED C059 08400000LR13STK EQU 1000 LENGTH OF R13 STACK 08820000QR13STK DC A(36000-LR13STK) BOTTOM OF R13 STACK 09240000QSYMBOT DC A(36000-LR13STK-STLENGTH) BOTTOM OF SYMBOL TABLE 09660000MX DC A(0) FIRST FREE STORAGE LOCATION POINTER 10080000SVI DC A(0) 'TOP' OF STACK POINTER 10500000PARREL DC A(0) OFFSET TO TOP ENTRY IN EXEC STACK 10920000ONADRS EQU *-64 11340000ONXOF DC 2A(0) FIXED OVERFLOW ERROR ADDRESS 11760000ONXDZ DC 2A(0) FIXED ZERO-DIVIDE ERROR ADDRESS 12180000 DS 4A DECIMAL OVERFLOW, DIVIDE 12600000ONFP DC 2A(0) FLOATING OVERFLOW ERROR ADDRESS 13020000* FOLLOWING OVERLAP UNUSED FP CHECKS 13440000CARRPOS DC F'0' CURRENT CARRIER POSITION 3587 13860000 DS A UNSED 3587 14280000ONATTN DC 2A(0) CPULIM OR DOUBLE ATTENTION SIGNAL 14700000ONDZ DC 2A(0) ZERO-DIVIDE ERROR ADDRESS 15120000ONRNG DC 2A(0) RANGE ERROR ADDRESS 15540000MQCELL BCR 0,0 SVC YYQZ WHEN QUANTUM END NEEDED 15960000 DS 1H UNUSED 16380000MPTBASE DS A (PERTERM) PERTERM BASE REGISTER 16800000* FILE LABEL FOR SAVED WORKSPACE 17220000WFLLIB DS F LIBRARY NUMBER 17640000WFLNAME DS CL12 WORKSPACE NAME 18060000WFLMAN DS F MAN NUMBER OF SAVER 18480000WFLPASS DC XL8'00' )LOAD )COPY PASSWORD 18900000WFLDATE DS CL8 DATE SAVED 19320000WFLTIME DS F TIME SAVED 19740000LWFLAB EQU *-WFLLIB LENGTH OF WS LABEL 20160000* END OF WORKSPACE LABEL 20580000 DS 2F UNUSED 21000000BAKTOG DS FL1 FLAG -- WE SWALLOWED SOME SYMBOLS IN 21420000* THIS DIAGRAM, AND CAN'T GET OUT 21840000* WITHOUT VIOLATING THE NO-BACKUP RULE 22260000* BIT 0 ( A GLITCH) -- CONTROL IS NOW 22680000* IN TYPEIN, NOT SYNT. (USED BY ERR) 23100000NEXTOG DS FL1 FLAG -- SYNTAX ANALYZER NEEDS NEXT 23520000* SYMBOL FROM CODESTRING 23940000CLASS DC H'0' CLASS OF CURRENT SYMBOL 24360000PATH DS F SAVED ADDRESS OF CURRENT DIAG PATH 24780000MING DC A(FREE-M) ADDRESS OF LOWEST GARBAGE IN M 25200000MINGL DC F'0' NUMBER OF BYTES OF GARBAGE IN M 25620000DIASTPTR DC F'0' POINTER FOR DIAGRAM STACK 26040000 DS 0D 26460000RFUZZ DC X'00000000000003FF' 26880000AFUZZ DC D'1E-13' 27300000IORIGIN DC F'1' INDEX ORIGIN 27720000RNUMBER DC F'16807' RANDOM NUMBER. 28140000UNFUZZ DC D'.9999999999999' 28560000SPTR DS F SYMBOL TABLE POINTER OF CURRENT SYM 28980000SYL DS H CURRENT CODE SYLLABLE (LEFT BYTE 29400000* GARBAGE IF 8-BIT SYLLABLE) 29820000RUNCTL DS FL1 END-OF-STATEMENT CONTROL FLAGS 30240000RCTRABIT EQU X'80' THIS STATEMENT IS A BRANCH 30660000RCQEBIT EQU X'40' FORCE EXIT FROM QUAD-PRIME LOOP 31080000RCOUTBIT EQU X'20' EXIT TO NEAREST IMM-EX LEVEL 31500000RCFNBIT EQU X'10' THIS STATEMENT IS IN A FUNCTION 31920000MFLKBIT EQU X'20' PROTECTED FUNCTION BIT IN M-ENTRY 32340000RCOLBIT EQU X'08' WE'RE GETTING OUT OF LOCKED FNS 32760000 DS FL1 UNUSED 33180000 DS F UNUSED 33600000OSIGDIG DC F'10' SIGNIFICANT DIGITS IN FLOATING OUT 34020000LLLO DS H LENGTH OF LAST LINE OUT 34440000LGCPTR DS H VALUE OF OBUFPTR BEFORE LAST CALL OF 34860000* LOUT (FOR QUAD-PRIME I/O) 35280000DIAST DS 500FL1 THE DIAGRAM STACK 35700000DFDTS EQU DIAST DIR 0 -- TIMESTAMP, LAST FULL DUMP 36120000DIDTS EQU DIAST+12 DIR 0 -- TIMESTAMP, LAST INC DUMP 36540000 DS 0F MAKE OBUF START ON A WORD BDY 36960000OBUFLIM DC H'120' 37380000OBUFPTR DC H'0' 37800000OBUF DS CL130 38220000 DS 0F 38640000FREE EQU * BASE OF FREE STORAGE IN M 39060000* M-LOCATIONS FOR DIRECTORY SEARCH ONLY 39480000* PARAMETERS FOR MONOLITHIC FREE STORAGE ON PACK 39900000MANSTAR EQU SVI 40320000DSNXTF EQU MX 40740000SALVHED DS 60A LIST OF SCATTERED BLOCKS ON LIB PACK. 41160000* FORMAT IS CCHH DASD 41580000FREEDSK DS 20F CFREDSK SETTINGS FOR 20 PACKS 42000000FIRSTENT EQU * 42420000* RELATIVE POSITIONS OF VARIOUS BITS OF FUNCTION-CALL 42840000* INFORMATION IN STACK. VALUE EQUALS OFFSET FROM PARREL. 43260000STFREG EQU 0 POINTER TO PREVIOUS STACK ENTRY 43680000* BYTE 0 = 0 44100000STCODE EQU 4 BASE ADDRESS OF CODESTRING 44520000STTRACE EQU 4 BYTE HOLDING TRACE AND STOP BITS 44940000STNXTOG EQU 9 SAVED COPY OF NEXTOG FOR OUTER FN 45360000STCPTR EQU 10 SYLLABLE POSITION WITHIN CODESTRING 45780000STFLAGS EQU 13 VARIOUS FLAGS RELATING TO THIS STMT 46200000STLINE EQU 14 ACTIVE LINE NUMBER IN THIS FUNCTION 46620000STFNSPTR EQU 16 BST ENTRY POINTER OF FUNCTION NAME 47040000STLINK EQU 20 CURRENTLY UNUSED 47460000STSHADOW EQU 20 POINTER TO BST ENTRY OF NAME SHADOWED47880000 BY PARAMETER 0 (NONEXISTENT) 48300000* BYTE 0 = SHADOW 48720000STPARAM EQU 24 SAVED BST ENTRY OF SHADOWED NAME 49140000STPSBIT EQU X'40' PROGRAMMED STOP BIT IN STCODE WORD 49560000STTRBIT EQU X'20' TRACE BIT IN STCODE WORD 49980000* BITS IN STFLAG BYTE 50400000STIMBIT EQU X'01' IMMEDIATE-EXECUTION BIT 50820000STSTBIT EQU X'02' COMPLETE-STATEMENT-SEEN BIT 51240000STQBIT EQU X'04' CURRENTLY ACQUIRING INPUT FOR QUAD 51660000STQPBIT EQU X'08' CURRENTLY ACQUIRING INPUT FOR QUAD' 52080000STREMBIT EQU X'10' COMMENT LINE (USED ONLY BY TYPEIN) 52500000* RELATIVE POSITIONS OF INFORMATION IN M-ENTRIES 52920000* ADDRESSES ARE PRESUMABLY USED WITH M-POINTER INDEX MODI- 53340000* FICATION. 53760000 ORG M 54180000MLIST DS 0B BYTE CONTAINING LIST BIT 54600000MGARB DS 0B BYTE CONTAINING GARBAGE BIT 55020000MHEAD DS A BACK-POINTER FROM M-ENTRY -- FIRST 55440000* WORD OF M-ENTRY. 55860000MCOUNT DS F FULLWORD BYTE COUNT OF THIS M-ENTRY 56280000* LISTS AND FUNCTIONS 56700000MLSOS DS H OFFSET OF 1ST LIST POINTER (LINE 0) 57120000MLSCT DS H COUNT OF LIST POINTERS IN LIST ENTRY 57540000MFLINES EQU MLSCT NUMBER OF LINES IN FUNCTION (HALFWD) 57960000MFLCLS DS H NO. OF LOCALS IN FUNCTION 58380000MLSORG EQU M+12 FIRST LIST POINTER IN LIST M-ENTRY 58800000MFPARS DS H NO. OF PARAMETERS TO FN (HALFWORD) 59220000MFCODE DS A IN FUNCTION DIRECTORY, ADDRESS OF 59640000* CODESTRING FOR LINE 0. 60060000 ORG MCOUNT+4 60480000* VARIABLES AND OTHER DATA ENTRIES 60900000MTYPE DS FL1 DATA TYPE (= 1,2,3,4) 61320000 DS FL1 UNUSED 61740000MRANK DS H 4 * RANK 62160000MRHO DS F FIRST WORD OF DATA ENTRY RANK VECTOR 62580000 ORG MCOUNT+4 63000000* CODESTRINGS 63420000MCSCNT DS H SYLLABLE BYTE COUNT 63840000MCSORG DS X FIRST CODESTRING SYLLABLE 64260000 ORG MCOUNT+4 64680000* PRINTNAMES 65100000MPNAME DS C FIRST CHARACTER OF LONG PRINT NAME 65520000* FOLLOWING BITS ARE IN MLIST (= MGARB (= MHEAD)) 65940000MLSTBIT EQU X'40' LIST BIT IN M-ENTRY 66360000MGBIT EQU X'80' GARBAGE BIT IN M-ENTRY 66780000* 67200000* CLASSES OF TERMINAL SYMBOLS 67620000SHADOW EQU 1 SHADOWED NONLOCAL IN STACK (NOT 68040000* REALLY A TERMINAL) 68460000CDST EQU 3 CODESTRING (NOT REALLY A TERMINAL) 68880000CONST EQU 4 CONSTANT OR TEMP 69300000VARB EQU 5 VARIABLE 69720000QUAD EQU VARB QUAD 70140000LBR EQU 6 LEFT BRACKET 70560000LPAR EQU 7 LEFT PARENTHESIS 70980000RBR EQU 8 RIGHT BRACKET 71400000RPAR EQU 9 RIGHT PARENTHESIS 71820000SEMIC EQU 10 SEMICOLON 72240000EOS EQU 11 END OF STATEMENT 72660000PER EQU 12 PERIOD OF MATRIX PRODUCT 73080000LARROW EQU 13 LEFT ARROW 73500000RARROW EQU 14 RIGHT ARROW 73920000SLSH EQU 15 SLASH, BACKSLASH 74340000OP EQU 16 OPERATOR 74760000NULL EQU 17 NULL OF MATRIX PRODUCT 75180000DFN EQU 18 DEFINED FUNCTION WITH PARAMETERS 75600000DFN0 EQU 19 DEFINED FUNCTION, NO PARAMETERS 76020000DFNT EQU 20 DEFINED FUNCTION TRACE SYMBOL 76440000GROUP EQU 21 GROUP NAME 76860000TERMSYM EQU 22 INCREASE TERMSYM IF NEW CLASSES ARE 77280000* ENTERED. 77700000* 78120000* TYPE CONVERSION CODES FOR FETCH 78540000CVBTOI EQU 5 78960000CVBTOF EQU 6 79380000CVITOB EQU 7 79800000CVITOF EQU 8 80220000CVFTOB EQU 9 80640000CVFTOI EQU 10 81060000* 81480000* ERROR TYPES 81900000ESYSTEM EQU 0 82320000EMFULL EQU 1 82740000ESYNTAX EQU 2 83160000EINDEX EQU 3 83580000ERANK EQU 4 84000000ELENGTH EQU 5 84420000EVALUE EQU 6 84840000ERANGE EQU 11 85260000EDEPTH EQU 12 85680000EINT EQU 13 86100000ENONCE EQU 16 86520000* 86940000* APL SUPERVISOR CALL CODES 87360000* EQU 0 RESERVED 87780000YYTYO EQU 1 OUTPUT TO TERMINAL 88200000YYTYI EQU 2 INPUT FROM TERMINAL 88620000YYEOS EQU 3 END OF DIRECTORY SEARCH 89040000YYQZ EQU 4 QUANTUM END 89460000YYLEMP EQU 5 LOAD EMPTY WORKSPACE 89880000YYTRAN EQU 6 TRANSMIT MESSAGE TO ANOTHER PORT 90300000* EQU 7 RESERVED 90720000YYSDR EQU 8 REQUEST SPECIAL DISK OPERATION 91140000YYATOFF EQU 9 TURN OFF ATTENTION BIT 91560000YYRAPE EQU 10 REQUEST ANOMALOUS PROTECT EXCEPTION 91980000YYOFF EQU 11 SIGN-OFF DISCONNECT PHONE CONNECTION 92400000YYBROAD EQU 12 BROADCAST PA MESSAGE 92820000YYSOOK EQU 13 SIGN ON OKAY 93240000YYLIBZ EQU 14 END OF )LIB COMMAND 93660000YYHI EQU 15 SETUP )HI MESSAGE 94080000YYREC EQU 16 RECEIVE MESSAGES 94500000* EQU 17 RESERVED 94920000YYDEL EQU 18 DELAY FOR TIME INTERVAL 95340000YYBOUN EQU 19 BOUNCE USER OFF SYSTEM 95760000YYRSET EQU 20 RESET 2702 LINE 96180000YYTIME EQU 21 TIME OF DAY (CP/67 ONLY) 96600000YYOFFH EQU 22 SIGN OFF HOLD PHONE CONNECTION 97020000YYBREL EQU 23 INPUT BUFFER RELEASE 97440000YYEOD EQU 24 INITIATE SHUTDOWN OF APL 97860000YYLOG EQU 25 TRANSMIT MESSAGE TO RECORDING TERM 98280000* 98700000 EXTRN APLMAP BASE OF SVC-DEFINING CSECT 99120000 EXTRN APLSVC ALL SVC'S = APLMAP-APLSVC 99540000./ ADD NAME=APLSUPC MACRO 01330000&L APLSUPC 02660000.* 5734-XM6 COPYRIGHT IBM CORP. 1969, 1970 03990000.* 5736-XM6 COPYRIGHT IBM CORP. 1969, 1970 05320000.* REFER TO INSTRUCTIONS ON COPYRIGHT NOTICE FORM NO 120-2083 06650000 GBLA &CACNT,&MANHASH,&WSLN,&MINB 07980000 GBLB &DOS,&OS,&CP67 C058 09310000* APLSUP, SUPINI, CONFIG COMMUNICATION REGION 10640000 AIF ('&L' EQ '').A5 NO LABEL MEANS DSECT IN OTHER ASSMB 11970000 AIF ('&L' EQ 'SUPPARD').A1 13300000 AIF ('&L' EQ 'CONFINIT').A4 14630000 ENTRY &L 15960000&L DC 0F'0' 17290000 AGO .A2 18620000.A5 ANOP 19950000SUPPARD DSECT 21280000APLSUP EQU 0 AVOID UNDEF FLAG 22610000PERCOREL EQU 8 AVOID UNDEF FLAG 23940000 AGO .A6 25270000.A4 ANOP 26600000&L CSECT 27930000 AGO .A3 29260000.A1 ANOP 30590000&L DSECT ,THIS IS SUPINI 31920000.A6 ANOP 33250000EXPLIM EQU 0 AVOID UNDEF FLAG 34580000.A2 ANOP 35910000PERTERMG EQU 1 AVOID UNDEF FLAG 37240000PERCOREG EQU 1 AVOID ERROR MESS 38570000TERMCOUN EQU 1 AVOID ERROR MESS 39900000PERDISKG EQU 1 AVOID ERROR MESS 41230000PERDISKZ EQU 1 AVOID ERROR MESS 42560000OVERBOOK EQU 2 NOMINAL VALUE, CONFIG CONTROLS 43890000.A3 ANOP 45220000LSUPC DC A(VALCON) FOR VERSION VALIDATION 46550000PTBXLE DC A(PERTERML) FOR ITERATION ON PERTERM 47880000 DC A(PERTERMG+PERTERML*(TERMCOUN-1)) LAST PERTERM 49210000 DC A(PERTERMG) FIRST PERTERM 50540000PDBXLE DC F'8' LENGTH OF PERDISK DSECT 51870000MAXARM DC A(PERDISKZ) LIMIT OF DISK SWAP SEARCH 53200000ARM DC A(PERDISKG) CURRENT ARM POSITION 54530000 DC A(PERDISKG) START OF PERDISK 55860000PCBXLE DC A(PERCOREL) LENGTH OF PERCORE 57190000 DC A(PERCOREG+(&CACNT-1)*PERCOREL) LAST PERCORE 58520000 DC A(PERCOREG) FIRST PERCORE 59850000SLOTS DC A(&CACNT) NUMBER OF CORE SLOTS 61180000RRCORE DC A(PERCOREG) VARAIBLE USED AS QZA2 62510000TERMMAX DC A(TERMCOUN) 63840000WLEN DC A(&WSLN) WORKSPACE LENGTH 65170000COPLIM DC Y(3) MAX SIMULTANEOUS )LIB OPERATIONS 66500000SYSPARS DC AL1(B'&DOS.&OS.&CP67.00000',0) SYSTEM PARAMETERS C058 67830000KMHASH DC A(&MANHASH) MANHASH FOR COMPUTING DIRECTORY NUM 69160000KOVERBOK DC A(OVERBOOK) ADJUSTED BY SUPINI 70490000REALTIME DC F'0' LOW ORDER BIT = 3.33 MILLISECONDS 71820000SVBASE DC A(MPXSAVE) BASE REG FOR MPX AND SVC CODE 73150000PTBASE DC A(0) PERTERM ADDR OF GUY WE ARE RUNNING 74480000CURRENTM DC A(0) WORKSP ADDR OF GUY WE ARE RUNNING 75810000APLBASE DC A(APLSUP) NON-STANDALONE R14 SETTING 77140000FREEBA DC A(0) HEAD OF FREE BUFFER CHAIN 78470000FREEBC DC F'0' COUNT OF FREE BUFFERS 79800000ACTKEY DC X'40' KEY FOR ACTIVE WS AND INTRP 81130000INACTKEY DC X'30' KEY FOR INACTIVE WS 82460000 DC H'0' UNUSED 83790000ALEN EQU *-PTBXLE LENGTH OF MOVE 85120000 AIF ('&SYSECT' EQ 'APLSUP').AZ 86450000* FOLLOWING VALUES ARE FOR SUPINI & CONFINIT ONLY 87780000AWSLENR DC A(WSLENR) 2048*CEIL WSLENGTH DIV 2048 89110000KMINBUF DC F'&MINB' MINIMUM TYPEWRITER BUFFERS 90440000KEXPLIM DC A(EXPLIM) EXPRESS TIME LIMIT 91770000 AIF ('&L' EQ 'CONFINIT').AZ 93100000WSLENR EQU 0*2048 CONFIG WILL DEFINE 94430000MINBUF EQU 0 CONFIG WILL DEFINE 95760000MPXSAVE EQU 1 SUPINI DOESN'T NEED TO KNOW 97090000.AZ MEND 98420000./ ADD NAME=ATT MACRO 02380000&L ATT &ON=,&OFF=,&RESET=YES,&MPTBASE=,&PAON=,&PAOFF= 04760000.* 5734-XM6 COPYRIGHT IBM CORP. 1969, 1970 07140000.* 5736-XM6 COPYRIGHT IBM CORP. 1969, 1970 09520000.* REFER TO INSTRUCTIONS ON COPYRIGHT NOTICE FORM NO 120-2083 11900000.* APL TERMINAL ATTENTION SIGNAL TEST AND RESET MACRO 14280000 LCLC &R,&LBL 16660000&R SETC '&MPTBASE' 19040000&LBL SETC '&L' 21420000 AIF (T'&MPTBASE NE 'O').ATT3 C049 23800000 AIF (T'&ON NE 'O' OR T'&OFF NE 'O').ATT13 C049 26180000 AIF (T'&PAON EQ 'O' AND T'&PAOFF EQ 'O').ATT3 C049 28560000.ATT13 ANOP C049 30940000&L L 1,MPTBASE 33320000&R SETC '(1)' 35700000&LBL SETC ' ' 38080000.ATT3 AIF (T'&PAOFF EQ 'O' AND T'&PAON EQ 'O').ATT7 40460000&LBL TM IOB1-PERTERM(&R),BROADM 42840000&LBL SETC ' ' 45220000 AIF (T'&PAON EQ 'O').ATT6 47600000 BO &PAON 49980000.ATT6 AIF (T'&PAOFF EQ 'O').ATT7 52360000 BZ &PAOFF 54740000 AIF (T'&PAON NE 'O').ATT10 57120000.ATT7 AIF (T'&OFF EQ 'O' AND T'&ON EQ 'O').ATT8 59500000&LBL TM ACTIVE-PERTERM(&R),ATTENM 61880000&LBL SETC ' ' 64260000 AIF (T'&OFF EQ 'O').ATT11 66640000 BZ &OFF 69020000 AGO .ATT8 71400000.ATT11 AIF ('&RESET' EQ 'YES').ATT12 73780000 BO &ON 76160000 MEXIT 78540000.ATT12 BZ ATTX&SYSNDX 80920000.ATT8 AIF ('&RESET' NE 'YES').ATT9 83300000&LBL SVCC YYATOFF 85680000.ATT9 AIF (T'&ON EQ 'O').ATT10 88060000 B &ON 90440000.ATT10 ANOP 92820000ATTX&SYSNDX EQU * 95200000 MEND 97580000./ ADD NAME=CANCEL MACRO 14280000&L CANCEL 28560000.* 5734-XM6 COPYRIGHT IBM CORP. 1969,1970 42840000.* REFER TO INSTRUCTIONS ON COPYRIGHT NOTICE FORM NO 120-2083 57120000&L ABEND 1500,DUMP C060 71400000 MEND 85680000./ ADD NAME=CCB MACRO 01560000&CCBN CCB &SYSXXX,&CCWADD,&OPTIONS,&SENSE 03120000.* 5734-XM6 COPYRIGHT IBM CORP. 1969, 1970 04680000.* REFER TO INSTRUCTIONS ON COPYRIGHT NOTICE FORM NO 120-2083 06240000 LCLA &CLASS,&NUM 07800000 LCLB &SNS 09360000 LCLB &DUMMY C049 10920000 LCLC &UNIT,&CCWAD,&OPTSW,&T 12480000&T SETC 'L''' 14040000.* IBM SYSTEM/360 DISK OPERATING SYSTEM 15600000* 360N-CL-453 CCB CHANGE LEVEL 3-0 17160000 AIF (T'&CCBN NE 'O').NAMOK 18720000 MNOTE 0,'POSSIBLE ERROR - NAME FIELD BLANK' 20280000.NAMOK AIF (K'&SYSXXX NE 6).ERR 21840000 AIF ('&SYSXXX'(1,3) NE 'SYS').ERR 23400000&UNIT SETC '&SYSXXX'(4,3) 24960000 AIF ('&UNIT' LT '000' OR '&UNIT' GT '243').LTRS 26520000 AIF ('&UNIT'(2,1) LT '0' OR '&UNIT'(2,1) GT '9').ERR 28080000 AIF ('&UNIT'(3,1) LT '0' OR '&UNIT'(3,1) GT '9').ERR 29640000&CLASS SETA 1 PROBLEM PROGRAM UNIT CLASS 31200000&NUM SETA &UNIT NUMBER IN CLASS 32760000 AGO .FND GO CHECK CCWADD ENTRY 34320000.LTRS AIF ('&UNIT' EQ 'RDRIPTPCHLSTLOGLNKRESSLBRLB'(3*&NUM+1,3)).FND 35880000&NUM SETA &NUM+1 37440000 AIF (&NUM LE 8).LTRS 39000000.ERR MNOTE 3,'FIRST OPERAND INVALID - ''FFFF'' GENERATED' 40560000&CLASS SETA 255 42120000&NUM SETA 255 SET INVALID VALUE 43680000.FND ANOP 45240000&CCWAD SETC '0' 46800000 AIF (T'&CCWADD EQ 'O').CCDER 48360000&CCWAD SETC '&CCWADD' 49920000&DUMMY SETB (T'&CCWADD EQ 'W' OR T'&CCWADD EQ 'N' OR X51480000 T'&CCWADD EQ 'U') TYPE MAY BE CCW, SELF-DEF OR UNDEFC049 53040000 AIF (&DUMMY).CKOPT C049 54600000.CCDER MNOTE 0,'POSSIBLE ERROR IN SECOND OPERAND' 56160000.CKOPT ANOP 57720000&OPTSW SETC '0' 59280000 AIF (T'&OPTIONS EQ 'O').ASMBL 60840000 AIF (K'&OPTIONS LT 4 OR K'&OPTIONS GT 7).OPTER 62400000 AIF ('&OPTIONS'(1,2) NE 'X''' OR '&OPTIONS'(K'&OPTIONS,1) NE 'X63960000 ''').OPTER 65520000&OPTSW SETC '&OPTIONS'(3,K'&OPTIONS-3) 67080000 AGO .ASMBL 68640000.OPTER MNOTE 3,'THIRD OPERAND INVALID - X''0000'' ASSUMED' 70200000.ASMBL ANOP , ALL OPERAND OK - ASSEMBLE 71760000&SNS SETB (T'&SENSE NE 'O') 73320000 AIF (NOT &SNS).R2 74880000 DS 0D 76440000.R2 ANOP 78000000&CCBN DC XL2'0' RESIDUAL COUNT 79560000 DC XL2'&OPTSW' COMMUNICATIONS BYTES 81120000 DC XL2'0' CSW STATUS BYTES 82680000 DC AL1(&CLASS) LOGICAL UNIT CLASS 84240000 DC AL1(&NUM) LOGICAL UNIT 85800000 DC XL1'0' 87360000 DC AL3(&CCWAD) CCW ADDRESS 88920000 DC B'00&SNS.00000' STATUS BYTE 90480000 DC AL3(0) CSW CCW ADDRESS 92040000 AIF (NOT &SNS).R1 93600000 CCW 4,&SENSE,0,&T&SENSE 95160000.R1 ANOP 96720000 MEND 98280000./ ADD NAME=CDCPARS* 5734-XM6 COPYRIGHT IBM CORP. 1969, 1970, 1971 04000000* 5736-XM6 COPYRIGHT IBM CORP. 1969, 1970 08000000* REFER TO INSTRUCTIONS ON COPYRIGHT NOTICE FORM NO 120-2083 12000000CDCPARS DSECT PARAMETERS FOR CDCOMP, TRCOMP, DSKFMT 16000000PHYSAD DS XL2 UNIT ADDRESS FOR SIO 20000000* = X'170' FOR 2314 MAYBE 24000000LOGAD DS XL2 SYMBOLIC ADDRESS FOR CCB 28000000* = X'104' FOR SYS004 32000000TLENF DS A (TRACK LENGTH) 36000000HMIN DS H ZERO EXCEPT WHEN SPLIT CYL 40000000HMAX DS H NUMBER OF HEADS/CYLINDER, (EXTUP+2)+1=SPLIT CYL DASD 44000000EXTLOW DS F CCHH LOWER EXTENT 48000000EXTUP DS F CCHH UPPER EXTENT 52000000CCADJ DS F (2*16)+HMIN-HMAX