plato:source:plaopl:esmpp
Table of Contents
ESMPP
Table Of Contents
- [00012] ESM - CONTROL EXTENDED SEMI-CONDUCTOR MEMORY
- [00076] MAIN PROGRAM.
- [00748] ICH - INSERT CHANNEL NUMBERS INTO I/O INSTRUCTIONS
Source Code
- ESMPP.txt
- ESMPP
- * /--- FILE TYPE = E
- * /--- BLOCK ESM 00 000 78/08/22 14.20
- ESMPP
- IDENT ESM,ESM CONTROL EXTENDED SEMI-CONTONDUCTOR MEMORY
- PERIPH
- BASE MIXED
- SST WDS
- LIST F
- COMMENT CONTROL EXTENDED SEMI-CONDUCTOR MEMORY.
- COMMENT COPYRIGHT CONTROL DATA CORP. 1978.
- TITLE ESM - CONTROL EXTENDED SEMI-CONDUCTOR MEMORY
- SPACE 5,11
- *** ESM - CONTROL EXTENDED SEMI-CONDUCTOR MEMORY.
- * R. S. EHRLICH. 78/01/20.
- SPACE 5,11
- *** ESM CONTROLS THE FUNCTIONS OF EXTENDED SEMI-CONDUCTOR MEMORY.
- *
- * THIS INVOLVES MANAGING THE RELOCATION MEMORY,
- * THE ERROR LOGS, AND INITIALIZING THE FLAG
- * REGISTERS.
- SPACE 5,11
- *** CALL.
- *
- *
- *T 18/ *ESM*, 6/ CP, 6/AD, 24/ADDRESS
- * AD - ADDRESS TYPE.
- * 0 - PARAMETERS ARE AT *ADDRESS* IN CM.
- * 1 - PARAMETERS ARE AT *ADDRESS* IN ESM.
- * ADDRESS - ADDRESS WHERE FUNCTION CODES ARE
- * STORED.
- *
- * ADDRESS WORD FORMAT -
- *
- * 48/PARAMETERS, 12/FUNCTION CODE
- * BIT 0 SET UPON COMPLETION OF FUNCTION.
- * DATA REQUIRED FOR FUNCTION OR ACQUIRED AS A
- * RESULT OF THE FUNCTION IMMEDIATELY FOLLOWS
- * THE FUNCTION WORD.
- *
- * ADDRESS WORD UPON FUNCTION COMPLETION
- *
- * 36/ , 12/ERROR CODE, 12/COMPLETION BIT
- *
- * ERROR CODE - 0 - COMPLETED SUCCESSFULLY
- * 1 - CHANNEL ERROR
- SPACE 5,11
- *CALL COMPMAC
- *CALL COMPCHI
- *CALL COMSCPS
- *CALL AIDTEXT
- *CALL PLASESM
- SPACE 5,12
- .DCH IF -MAC,DCHAN SHOULD ONLY HAPPEN IF COMSOURCE
- DCHAN MACRO
- RJM DCH
- ENDM
- .DCH ENDIF
- .RCH IF -MAC,RCHAN SHOULD ONLY HAPPEN IF COMSOURCE
- RCHAN MACRO
- RJM RCH
- ENDM
- .RCH ENDIF
- SPACE 5,11
- **** DIRECT LOCATION ASSIGNMENTS.
- CN EQU 20 - 24 CM WORD STORAGE
- RI EQU 25 REQUEST INDEX IN *FTAB*
- ES EQU 26 EST ORDINAL OF SIDE-DOOR PORT
- MS EQU 27 MAINT CHANNEL ON *DE* FLAG
- CM1 EQU 30 - 34 CM WORD STORAGE
- ****
- * /--- BLOCK ESM 00 000 79/10/01 21.04
- TITLE MAIN PROGRAM.
- ORG PPFW
- ESM RJM PRS
- LDN CN READ FUNCTION REQUEST
- STD T1
- LDD IR+3
- STD T2
- LDD IR+4
- STD T3
- LDC 1*10000+5
- RJM RMEM
- * CHECK FUNCTION REQUEST
- LDD CN+4
- SHN -1
- STD T1
- SBN MXNF/2
- MJN ESM1 IF FUNCTION IN RANGE
- LDC =C* ESM - ILLEGAL FUNCTION REQUEST.*
- LJM ERR
- ESM1 LDD T1
- SHN 2
- STD RI
- LDM FTAB,RI GET ENTRY FROM TABLE
- SHN 6
- PJN ESM2 IF FUNCTION CODE
- SHN -6
- LMC 7777
- STM ESMA
- ESM2 LDN 0 SHOW NO ERROR YET
- STD CN+3
- RJM FNC
- ESMA EQU *-1
- * SET COMPLETE BIT / DROP PP
- AOD CN+4
- LDN CN
- STD T1
- LDD IR+3
- STD T2
- LDD IR+4
- STD T3
- LDC 1*10000+5
- RJM WMEM
- MONITOR DPPM
- LJM PPR
- * /--- BLOCK FTAB 00 000 79/10/22 21.28
- FTAB SPACE 5,11
- *** FTAB - FUNCTION CODE TABLE
- *
- *FNC FTAB A,B,C
- *
- * FNC - NAME OF FUNCTION
- *
- * A - FUNCTION CODE OR PROCESSING ROUTINE
- * B - INPUT-OUTPUT FLAG
- * C - NUMBER OF PP BYTES TO TRANSFER
- ** REQUEST TABLE FORMAT
- *
- * WORD 1 - FUNCTION CODE / PROCESSING ROUTINE
- * WORD 2 - INPUT-OUTPUT FLAG
- * WORD 3 - NUMBER OF PP BYTES
- * WORD 4 - NUMBER OF CM WORDS
- MACRO FTAB,N,A,B,C
- .S IFC EQ,$A$$
- N BSS 0
- .2 SET N
- .S ELSE
- ORG .2+N*2
- .E IFC NE,$B$$
- LOC N
- .D IF DEF,A
- CON A
- .D ELSE
- CON -A
- .D ENDIF
- CON B
- CON C
- .1 SET C+4
- .1 SET .1/5
- CON .1
- .E ENDIF
- .S ENDIF
- BSS 0
- ENDM
- IN EQU 0
- OUT EQU 1
- FTAB FTAB
- RRMF FTAB 1004,IN,200 READ RELOCATION MEMORY
- WRMF FTAB 1005,OUT,200 WRITE RELOCATION MEMORY
- RELF FTAB 1010,IN,3+20*2+20*2+20 READ ERROR LOG
- RSEF FTAB 1011,IN,0 RESET ERROR LOG
- SPEF FTAB 1012,OUT,4 SET PROGRAMMABLE ERROR LOG CNTR
- RSBF FTAB 1040,IN,4 READ STATUS BITS
- SMAF FTAB 1204,OUT,1 SET MAXIMUM ADDRESS
- RSPF FTAB REQ,0,0 REQUEST SIDE-DOOR PORT
- REPF FTAB REL,0,0 RELEASE SIDE-DOOR PORT
- SXPF FTAB SXP,0,0 SET RAX/FLX IN EXCHANGE PACKAGE
- MXNF FTAB 0 END OF TABLE
- * /--- BLOCK ERR 00 000 79/10/01 20.38
- ERR SPACE 5,11
- *** ERR - ISSUE ERROR MESSAGES.
- *
- * ENTRY - (A) - MESSAGE ADDRESS
- ERR RJM DFM
- MONITOR ABTM
- LJM PPR DROP/EXIT PP
- * /--- BLOCK FNC 00 000 79/10/22 21.26
- FNC SPACE 5,11
- *** FNC - ISSUE FUNCTION TO ESM.
- *
- * ENTRY -
- *
- * (RI) - INDEX INTO FTAB.
- FNC0 AOD CN+3 SET ERROR
- FNC SUBR
- LDD MS
- NJN FNC1.1 IF CHANNEL DEFINED ON *DE*
- .NOSV2 IFLT OSLEV,562D IF NOS V1
- LDM ESTS CHECK SIDE-DOOR PORT ASSIGNED
- ADD ES
- CRD CM READ EST ENTRY
- LDD CM
- LPN 37
- SHN 7
- LMD CP
- .NOSV2 ELSE IF NOS V2
- * CHECK IF SIDE-DOOR PORT ASSIGNED TO THIS CP
- .NOS22 IFGE OSLEV,594D IF NOS 2.2
- SFA EST,ES GET CM ADDRESS OF SP ENTRY
- ADK EQAE ADD OFFSET FOR EQUIP ASSIGNMENT
- .NOS22 ELSE
- LDK ESTP (A) = CM WORD WITH EAT POINTER
- CRD CM READ EST POINTER ENTRY
- LDD CM+1 (A) = FWA OF EAT
- ADD ES (A) = SIDE-DOOR PORT EAT ENTRY
- .NOS22 ENDIF
- CRD CM READ SIDE-DOOR PORT EAT ENTRY
- LDD CP (A) = CP AREA FWA
- ADK TERW (A) = ADDR OF CP EJT ORDINAL
- CRD CM1 READ CP EJT ORDINAL
- LDD CM+4 (A) = SIDE-DOOR PORT EJT ORD
- LMD CM1 COMPARE WITH THIS CP EST ORD
- .NOSV2 ENDIF
- NJN FNC0 IF NOT ASSIGNED TO THIS CP
- FNC1.1 BSS 0
- CHTE *
- LDN CH
- RCHAN
- LDM FTAB+1,RI CHECK FUNCTION TYPE
- ZJN FNC1
- LJM FNC4
- * PROCESS INPUT TYPE FUNCTIONS
- FNC1 LDM FTAB+2,RI
- STD T1 SAVE PP BYTES TO TRANSFER
- IJM FNC2,CH
- DCN CH
- FNC2 LDM FTAB,RI
- FAN CH ISSUE FUNCTION TO ESM
- ACN CH
- LDD T1 CHECK IF ANY DATA TO TRANSFER
- ZJN FNC3 IF NONE
- IAM BFMS,CH INPUT DATA
- ZJN FNC3 IF TRANSFER COMPLETE
- LJM FNC6
- FNC3 IJM FNC3.1,CH
- DCN CH
- CHTE *
- FNC3.1 LDN CH
- DCHAN
- LDC BFMS WRITE DATA TO USER BUFFER
- STD T1
- LDD IR+4
- ADN 1
- STD T3
- SHN -14
- ADD IR+3
- STD T2
- LDM FTAB+3,RI
- SHN 14
- LMM FTAB+2,RI
- ZJN FNC3.2 IF NO DATA TO TRANSFER
- RJM WMEM
- FNC3.2 LJM FNCX EXIT
- * /--- BLOCK FNC 00 000 79/10/22 21.27
- * PROCESS OUTPUT TYPE FUNCTIONS.
- FNC4 LDC BFMS
- STD T1
- LDD IR+4
- ADN 1
- STD T3
- SHN -14
- ADD IR+3
- STD T2
- LDM FTAB+3,RI
- SHN 14
- LMM FTAB+2,RI
- RJM RMEM
- LDM FTAB+2,RI GET BYTES TO TRANSFER
- STD T1
- IJM FNC5,CH
- DCN CH
- FNC5 LDM FTAB,RI
- FAN CH
- ACN CH
- LDD T1
- OAM BFMS,CH
- FJM *,CH
- NJN FNC6 IF TRANSFER INCOMPLETE
- IJM FNC7,CH
- DCN CH
- CHTE *
- LDN CH
- DCHAN
- LJM FNCX EXIT
- * PROCESS FUNCTION ERRORS
- FNC6 DCN CH+40
- CHTE *
- FNC7 LDN CH
- DCHAN
- LDC =C* ESM - FUNCTION FAILED.*
- RJM DFM
- LJM FNC0
- SPCH CHTB SIDE-DOOR PORT CHANNEL TABLE
- * /--- BLOCK REQ/REL 00 000 79/10/04 10.04
- REL SPACE 5,11
- *** REL - RELEASE ASSIGNMENT OF SIDE-DOOR PORT
- REL SUBR
- LDD MS
- NJN RELX MAINT CHANNEL ON *DE*
- .NOSV2 IFLT OSLEV,562D IF NOS V1
- LDM ESTS VERIFY ASSIGNED TO THIS CP
- ADD ES
- CRD CM READ EST ENTRY
- LDD CM
- LPN 37
- SHN 7
- LMD CP
- .NOSV2 ELSE IF NOS V2
- * CHECK IF SIDE-DOOR PORT ASSIGNED TO THIS CP
- .NOS22 IFGE OSLEV,594D IF NOS 2.2
- SFA EST,ES GET CM ADDRESS OF SP ENTRY
- ADK EQAE ADD OFFSET FOR EQUIP ASSIGNMENT
- .NOS22 ELSE
- LDK ESTP (A) = CM WORD WITH EAT POINTER
- CRD CM READ EST POINTER ENTRY
- LDD CM+1 (A) = FWA OF EAT
- ADD ES (A) = SIDE-DOOR PORT EAT ENTRY
- .NOS22 ENDIF
- CRD CM READ SIDE-DOOR PORT EAT ENTRY
- LDD CP (A) = CP AREA FWA
- ADK TERW (A) = ADDR OF CP EJT ORDINAL
- CRD CM1 READ CP EJT ORDINAL
- LDD CM+4 (A) = SIDE-DOOR PORT EJT ORD
- LMD CM1 COMPARE WITH THIS CP EST ORD
- .NOSV2 ENDIF
- NJN REL2
- LDD ES
- STD CM+1
- MONITOR DEQM
- REL1 LJM RELX
- REL2 AOD CN+3 SET ERROR RETURN
- UJN REL1
- REQ SPACE 5,11
- *** REQ - ASSIGN SIDE-DOOR PORT TO CP.
- REQ SUBR
- .NOS242 IFGE OSLEV,642D
- LDN REQS (A) = REQUEST ACTIVE EQUIPMENT
- .NOS242 ELSE
- LDN 0 (A) = REQUEST ACTIVE EQUIPMENT
- .NOS242 ENDIF
- STD CM+2
- LDD ES
- STD CM+1
- MONITOR REQM
- LDD CM+1 CHECK IF ASSIGNED
- NJN REQX IF ASSIGNED
- AOD CN+3 SET ERROR
- UJN REQX
- * /--- BLOCK SXP 00 000 79/10/08 20.15
- SXP SPACE 5,11
- *** SXP - SET EXCHANGE PACKAGE.
- *
- * THE EXCHANGE PACKAGE IS SET UP TO ALLOW
- * ESM DATA TRANSFER BY THE CPU PROGRAM.
- *
- * FUNCTION WORD
- * 24/ESM RAX, 24/ESM FLX, 12/FUNCTION SXP
- SXP SUBR
- LDD CP CHECK IF PROGRAM IN AUTO-RECALL
- ADN STSW
- CRD CM
- LDD CM
- .NOSV2 IFGE OSLEV,562D NOS V2
- SHN -11B
- SBN 6 AUTO RECALL = 6
- ZJN SXP1 IF IN AUTO RECALL
- .NOSV2 ELSE NOS V1
- SHN 21-11
- MJN SXP1 IF IN AUTO-RECALL
- .NOSV2 ENDIF
- LDC =C* ESM - AUTO-RECALL ERROR.*
- LJM ERR
- SXP1 LDD CN+1 CHECK IF RAX/FLX LOW 6 BITS = 0
- LPN 77
- NJN SXP2
- LDD CN+3
- LPN 77
- ZJN SXP3
- SXP2 LDC =C* ESM - ILLEGAL RAX/FLX.*
- LJM ERR
- SXP3 LDD CP READ RAX/FLX FROM EXCHANGE
- ADN 4
- CRD CM READ RAX
- ADN 1
- CRD CM1 READ FLX
- LDD CN SET RAX
- LPN 77
- SHN 14
- LMD CN+1
- SHN -6
- STD CM+1
- LDD CN
- SHN -6
- STD CM
- LDD CN+2 SET FLX
- LPN 77
- SHN 14
- LMD CN+3
- SHN -6
- STD CM1+1
- LDD CN+2
- SHN -6
- STD CM1
- LDD CP RE-WRITE TO EXCHANGE PACKAGE
- ADN 4
- CWD CM
- ADN 1
- CWD CM1
- LJM SXPX EXIT
- * /--- BLOCK RMEM 00 000 79/10/04 10.13
- RMEM SPACE 5,11
- *** RMEM - READ TABLE FROM CM/ESM.
- *
- * READS DATA FROM CM/ESM INTO PP.
- *
- * ENTRY -
- *
- * (T1) - PP WORD TO READ INTO.
- * (T2-T3) - ADDRESS TO READ FROM.
- * (A) - NUMBER OF WORDS TO READ.
- * 6/CM WORDS, 12/PP WORDS
- *
- * EXIT -
- * DATA READ.
- RMEM SUBR
- LJM RME7 READ DATA FROM CM
- RMEA EQU *-1
- STM RMEB SAVE NUMBER OF WORDS TO READ
- LDD T1
- STM RMEC
- CHTE *
- LDN CH
- RCHAN
- IJM RME1,CH
- DCN CH
- RME1 FNC 5004,CH SELECT EXTENED ADDRESSING MODE
- FNC 5001,CH READ DATA
- ACN CH
- LDN 2 OUTPUT ECS ADDRESS
- OAM T2,CH
- LDC ** NUMBER OF WORDS TO READ
- RMEB EQU *-1
- IAM **,CH
- RMEC EQU *-1
- NJN RME5 IF READ ERROR
- RME2 IJM RME4,CH
- EJM RME2,CH
- DCN CH
- CHTE *
- LDN CH RELEASE DDP
- DCHAN
- RME3 LJM RMEMX RETURN
- RME4 FNC 5010,CH
- RME5 IJM RME6,CH
- DCN CH
- RME6 LDD CM+1 RELEASE CHANNEL
- DCHAN
- LDC =C* ESM - READ ESM ERROR.*
- RJM DFM
- UJN RME3 EXIT
- * READ DATA FROM CM.
- RME7 SHN -14 SAVE NUMBER OF WORDS TO READ
- STD CM
- LDD T1
- STM RMED SAVE TRANSFER ADDRESS
- LDD T2 CHECK IF ADDRESS WITHIN FL
- LPN 37
- SHN 14
- LMD T3
- ADD CM
- SHN -6
- SBD FL
- MJN RME8 IF IN RANGE
- LDC =C* ESM - CM ADDRESS OUTSIDE FL.*
- LJM ERR
- RME8 LDD T2
- LPN 37
- SHN 6
- ADD RA
- SHN 6
- ADD T3
- CRM **,CM
- RMED EQU *-1
- LJM RMEMX EXIT
- * /--- BLOCK WMEM 00 000 79/10/04 10.16
- WMEM SPACE 5,11
- *** WMEM - WRITE DATA TO CM/ESM.
- *
- * ENTRY -
- *
- * (T1) - PP WORD TO WRITE FROM.
- * (T2-T3) - ADDRESS TO WRITE TO.
- * (A) - NUMBER OF WORDS TO WRITE.
- * 6/CM WORDS, 12/PP WORDS
- *
- * EXIT -
- * DATA WRITTEN.
- WMEM SUBR
- LJM WME8
- WMEA EQU *-1
- STM WMEB SAVE NUMBER OF WORDS TO WRITE
- LDD T1
- STM WMEC
- CHTE *
- LDN CH
- RCHAN
- IJM WME1,CH
- DCN CH
- WME1 FNC 5004,CH SELECT EXTENDED ADDRESSING MODE
- FNC 5002,CH WRITE DATA
- ACN CH
- LDN 2 OUTPUT ECS ADDRESS
- OAM T2,CH
- LDC 0 NUMBER OF WORDS TO WRITE
- WMEB EQU *-1
- OAM 0,CH
- WMEC EQU *-1
- FJM *,CH
- NJN WME6 IF WRITE ERROR
- DCN CH GET DDP STATUS
- WME2 FNC 5004,CH
- ACN CH
- IAN CH INPUT STATUS
- DCN CH
- LPN 11 CHECK WRITE/ABORT
- NJN WME5
- IJM WME3,CH
- DCN CH
- CHTE *
- WME3 LDN CH RELEASE CHANNEL
- DCHAN
- WME4 LJM WMEMX RETURN
- WME5 LPN 10
- NJN WME2 IF WRITE IN PROGRESS
- FNC 5010,CH
- WME6 IJM WME7,CH
- DCN CH
- CHTE *
- WME7 LDN CH RELEASE CHANNEL
- DCHAN
- LDC =C* ESM - WRITE ESM ERROR.*
- RJM DFM
- UJN WME4 EXIT
- * WRITE DATA TO CM
- WME8 SHN -14 SAVE NUMBER OF WORDS TO WRITE
- STD CM
- LDD T1 SAVE PP ADDRESS
- STM WMED
- LDD T2 VERIFY ADDRESS WITHIN FL
- LPN 37
- SHN 14
- LMD T3
- ADD CM
- SHN -6
- SBD FL
- MJN WME9 IF IN RANGE
- LDC =C* ESM - ADDRESS OUT OF RANGE.*
- LJM ERR
- WME9 LDD T2
- LPN 37
- SHN 6
- ADD RA
- SHN 6
- ADD T3
- CWM **,CM
- WMED EQU *-1
- LJM WMEMX EXIT
- DPCH CHTB DDP CHANNEL TABLE
- * /--- BLOCK PRS 00 000 87/02/10 11.29
- PRS SPACE 5,11
- *** PRS - PRESET PROGRAM.
- *
- * THE ADDRESSING MODE AND CHANNEL NUMBER OF THE
- * SIDE-DOOR PORT IS INITIALIZED.
- PRS5 LDC =C* ESM - ILLEGAL USER ACCESS.*
- LJM ERR
- PRS SUBR
- RJM CUA GO CHECK USER ACCESS
- NJN PRS5 ILLEGAL USER ACCESS CALL
- * SEARCH FOR SIDE-DOOR PORT
- LDC 2R"SP"
- RJM EQN
- PJN PRS2 IF *SP* FOUND
- LDC 2RDE
- RJM EQN
- PJN PRS1 IF *DE* FOUND
- PRS0 LDC =C* ESM - SIDE-DOOR PORT NOT FOUND.*
- LJM ERR
- PRS1 STD ES SAVE EST ORDINAL
- .NOS252 IFGE OSLEV,678D
- SFA EST
- ADK EQAE
- CRD CM
- .NOS252 ENDIF
- LDD CM+2
- ZJN PRS0 IF NO *MC* DEFINED
- STD CM+1 SAVE CHANNEL
- LDD ES
- PRS2 STD ES
- LDD CM+1 CLEAR OTHER CHANNELS
- LPN 77
- STD CM+1
- LDC SPCH
- RJM ICH INSERT CHANNEL NUMBERS
- *
- * SET FLAG FOR CHECKING IF MAINTENANCE CHANNEL WAS
- * DEFINED ON THE *DE* EST ENTRY. IF IT WAS, ESM
- * SHOULD NOT TRY TO RESERVE THIS EQUIPMENT.
- *
- .NOSV2 IFLT OSLEV,562D IF NOS V1
- LDM ESTS
- ADD ES
- .NOSV2 ELSE IF NOS V2
- .NOS22 IFLT OSLEV,594D IF NOS 2.1
- LDK ESTP (A) = CM WORD WITH EAT POINTER
- CRD CM READ EST POINTER ENTRY
- LDD CM (A) = FWA OF EST
- ADD ES
- .NOS22 ELSE IF NOS 2.2
- SFA EST,ES GET CM ADDRESS OF EST ENTRY
- ADK EQDE ADD OFFSET FOR EQUIP DEFINITION
- .NOS22 ENDIF
- .NOSV2 ENDIF
- CRD CM READ EST ENTRY
- LDD CM
- SHN 7 MASK OFF MASS STORAGE FLAG
- LPN 1
- STD MS
- * SET ADDRESSING MODE FOR TABLES
- LDD IR+2 CHECK ADDRESSING TYPE
- LPN 77
- STD T1
- SBN MXTY
- MJN PRS3 IF VALID TYPE
- LDC =C* ESM - ILLEGAL ADDRESS TYPE.*
- LJM ERR
- * /--- BLOCK PRS 00 000 87/02/10 11.25
- PRS3 LDM ATY,T1
- ZJN PRS4 IF NO PROCESSOR FOR THIS TYPE
- STM PRSA
- RJM **
- PRSA EQU *-1
- PRS4 LJM PRSX EXIT
- ATY BSS 0
- LOC 0
- CON 0 TABLES IN CM
- CON AEC TABLES IN ESM
- MXTY BSS 0
- LOC *O
- AEC SPACE 5,11
- *** AEC - INITIALIZE TO READ/WRITE TABLES FROM ESM
- AEC SUBR
- LDC RMEA+1 SET TO READ/WRITE FROM ESM
- STM RMEA
- LDC WMEA+1
- STM WMEA
- * SEARCH FOR DDP
- LDD T7
- STD CN
- AES1 LDD CN
- CRD CM
- LDD CM+3
- LMC 2R"DP"
- ZJN AES2 IF DDP FOUND
- AOD CN
- LMD CN+1
- NJN AES1 IF MORE TO SEARCH
- LDC =C* ESM - DDP NOT FOUND.*
- LJM ERR
- AES2 LDD CM+1
- LPN 77
- STD CM+1
- LDC DPCH
- RJM ICH INSERT CHANNEL NUMBERS
- LJM AECX
- * /--- BLOCK ICH 00 000 79/10/04 10.32
- ICH SPACE 5,11
- ** ICH - INSERT CHANNEL NUMBERS INTO I/O INSTRUCTIONS
- *
- * COMPCHI MUST BE CALLED TO RE-DEFINE INSTRUCTIONS.
- *
- * ENTRY -
- *
- * (A) - ADDRESS OF CHANNEL TABLE
- * (CM+1) - CHANNEL NUMBER.
- ICH SUBR
- STD T2
- ICH1 LDI T2
- ZJN ICHX IF END OF TABLE
- STD T1
- LDI T1
- SCN 37
- LMD CM+1
- STI T1 SET NEW CHANNEL NUMBER
- AOD T2
- UJN ICH1
- * /--- BLOCK END 00 000 78/08/22 14.20
- * COMMON DECK THAT MAY BE OVERLAYED.
- *CALL COMPCUA
- *CALL PLAPEQN
- ERRNG 7770-* PP OVERFLOW
- END
plato/source/plaopl/esmpp.txt ยท Last modified: 2023/08/05 18:54 by Site Administrator