|
|
DataMuseum.dkPresents historical artifacts from the history of: CR80 Hard and Floppy Disks |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about CR80 Hard and Floppy Disks Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 71040 (0x11580)
Types: TextFile
Names: »EDOMOD«
└─⟦01dc7a003⟧ Bits:30005073 8" CR80 Floppy CR80FD_0011 ( EDO SYS 1 PJ DEC, 3, 80 )
└─⟦460440515⟧
└─⟦this⟧ »EDOMOD«
LIST
;-----------------------------------------------------------------------
;
; PROJECT: NICS-TARE/CP
;
; MODULE IDENTIFICATION: NIC/292
; DISK IDENTIFICATION: CR/D/1227
;
; CPS NAME: ERROR DETECTION AND CORRECTION (EDC) SUBMODULE
; EDC OUTPUT PROGRAM SECTION (EDO)
; CPS VERSION: 0100
;
; MERGE FILES: SYSNOD,MNNNOD,GDSNOD,LETNOD,PCFNOD,CDTNOD,ECFNOD,EOCNOD
; CSTNOD,GSTNOD,MQXNOD,BINNOD,MSBNOD
; EDCNOD,TSTNOD,XPDNOD
; MODULE FILES: EDOSOD,EDOMOD,EDOHOD,EDOVOD,EDONOD
;
; REFERENCES: NIC/200/PSP/0006
;
; DATE: 791115
; AUTHOR: HM
;
;-----------------------------------------------------------------------
BEGIN MODULE EDOSYS
USE BASE
LOC=0
XDATE:=#0604
;-----------------------------------------------------------------------
;
NOLIST
MESSAGE <:CALL SYSNOD:> ; 00000182 0 0288 LEVEL 1 NAMES:
A= #000C
USE BASE
SYSMPI:= #2C70
ECRLPN:= #01BC
OCILPN:= #015C
ICPLPN:= #0030
SYSERR:= #14F0
IDPLPN:= #00B4
CRILPN:= #012C
SYSSME:= #1F90
TSTLPN:= #0174
SYSTME:= #AB00
SYSCPT:= #7000
CDTLPN:= #01A4
SYSESP:= #F000
SYSMON:= #07F0
SYSRTC:= #1400
SYSSIM:= #8000
EDTLPN:= #0270
SYSESR:= #00C0
LPDLPN:= #0138
LOGLPN:= #01F8
SYSMXI:= #25D0
ODPLPN:= #00C0
MQELPN:= #027C
LPILPN:= #0144
SYSDBA:= #1F90
MPILPN:= #009C
MQILPN:= #01E0
SYSTCT:= #A580
SYSESS:= #0200
SYSLMT:= #0040
SYSCDC:= #0081
ERRLPN:= #003C
TS2LPN:= #018C
HXILPN:= #0234
SYSOLT:= #1A40
SYSEDC:= #5B80
SYSCDE:= #7FFF
SYSSXD:= #90F0
SYSONT:= #69F0
SYSTQM:= #1940
SYSTIT:= #9BB0
ESPLPN:= #0018
MXCLPN:= #0084
MPLLPN:= #0258
SYSMXP:= #6FF0
MONLPN:= #0000
RTCLPN:= #006C
SIMLPN:= #024C
ESRLPN:= #0024
MQOLPN:= #01EC
HXLLPN:= #0228
PWFLPN:= #0060
MXILPN:= #0078
SYSES1:= #F000
SYSSMT:= #0010
SYSTSM:= #8000
SYSES2:= #F200
DBALPN:= #00CC
CSTLPN:= #01C8
LTLLPN:= #0054
TCTLPN:= #0264
SYSOCD:= #8440
SYSDME:= #8D40
SYSSUP:= #8D50
TSELPN:= #0114
SYSEND:= #8D40
SYSMCH:= #0E40
OLTLPN:= #0168
GSTLPN:= #01D4
SYSCMI:= #2FC0
SYSCRD:= #8640
TSILPN:= #0108
ONTLPN:= #0180
ECFLPN:= #01B0
TQMLPN:= #0048
TITLPN:= #0240
SYSICP:= #13C0
SYSIDP:= #3600
EDILPN:= #00D8
SXILPN:= #021C
MXRLPN:= #0090
SYSTST:= #6EF0
SYSCDT:= #7650
SYTTBF:= #8D40
SYSEDT:= #A300
TSMLPN:= #00F0
TMSLPN:= #00FC
SYSESG:= #14A0
SYSLPD:= #8A40
SYSMCP:= #FFE0
SYSLMH:= #07B0
SYSOME:= #7650
EDLLPN:= #00E4
SXLLPN:= #0210
SYSLOG:= #95D0
SYSPME:= #AB00
OCDLPN:= #0150
SUPLPN:= #0204
SYSODP:= #5540
TMXLPN:= #0288
MCHLPN:= #000C
SYSHXD:= #9260
CMILPN:= #00A8
CRDLPN:= #0120
PCFLPN:= #0198
USE #0
MESSAGE <:CALL MNNNOD:> ; 00000203 0 00A7 LEVEL 1 NAMES:
USE BASE
DDLE:= #006B
RI:= #0050
OLTO:= #006F
GNBF:= #0056
INDQCX:= #0077
RTI:= #0054
DECR:= #00A6
BDQCST:= #0088
WA:= #004D
GNIB:= #0057
BEQCST:= #0087
LTUTMO:= #00A4
RWI:= #0052
TFRW:= #0071
INCH:= #0074
WPSLP:= #007D
ACDT:= #008C
WPSTLP:= #007D
ICDQCB:= #0074
PNPCDT:= #0095
SOLT:= #0049
GSST:= #0061
DFTA:= #006D
DCDT:= #008D
LNFIQ:= #0069
XMIBUF:= #009D
SRLT:= #0048
GNBN:= #0056
GNOB:= #0058
QDLE:= #006A
CKPCST:= #0086
RNBF:= #005C
TODQB:= #0076
RSCOC:= #0079
GETCST:= #0084
CHKLTU:= #00A2
WL:= #004C
MNNCNT:= #0067
OCDQCB:= #0075
EDITST:= #00A0
WWSTLP:= #0071
RODCST:= #008B
PRSCDT:= #0097
PGPCST:= #0089
CGICDT:= #009A
GBSM:= #005F
GNSA:= #005E
INDQCB:= #0073
PRGCST:= #0085
PIPCST:= #008A
GPB:= #0042
GNSC:= #0059
RBF:= #0064
LPERR:= #0080
GLET:= #0045
DMLP:= #007F
PBUF:= #0068
RFTA:= #006C
OTCH:= #0075
WSCOC:= #007A
LDRM:= #0083
RNBN:= #005C
TFRC:= #0072
WBSTOC:= #007F
RL0CDT:= #0090
GNIS:= #005A
WSCTOC:= #007A
RL1CDT:= #0091
EDOTST:= #00A1
RFI:= #0055
LPER:= #0080
WDSTOC:= #007F
CEOCDT:= #009B
LNIQ:= #0062
PUTBUF:= #0068
GBS:= #005F
LPB:= #0042
EDCTMI:= #009E
SCH:= #0043
GBST:= #0060
WBF:= #0066
OEICDT:= #0098
IPPQ:= #0044
OGICDT:= #0098
CPP:= #0041
PRGLTU:= #00A3
RBF1:= #0065
OLTF:= #006F
CRP:= #0040
RNSC:= #005D
RLET:= #0046
GNOS:= #005B
RLI:= #0053
WSCLP:= #007C
CLEAR:= #0081
RS0CDT:= #008E
INQ:= #0044
LNOQ:= #0063
TFOP:= #0070
WDSLP:= #007E
RS1CDT:= #008F
RCPU:= #0051
ERR:= #006E
WBSTLP:= #007E
WPSOC:= #007B
WSCTLP:= #007C
COPY:= #0082
PSELTU:= #009C
WDSTLP:= #007E
LDMRAM:= #0083
PAPCDT:= #0094
EDCTMO:= #009F
TODQCB:= #0076
EDCQMS:= #0092
OEOCDT:= #0099
INDQB:= #0073
RBSFOC:= #007D
SLET:= #0047
SELT:= #004A
RSCFOC:= #0079
PEPCDT:= #0096
GNBA:= #005E
WBF1:= #0067
RHXP:= #0078
PGPCDT:= #0093
USE #0
MESSAGE <:CALL GDSNOD:> ; AU000079 0 0004 LEVEL 1 NAMES:
USE BASE
PBORDN:= #0001
PBLEL:= #0007
ICCNT:= #0004
PBFOL:= #0003
PBOPB:= #000B
PBPPB:= #0008
EBAS:= #0008
QCLQE:= #0001
PBFRL:= #0002
QCMQE:= #0003
FORDL:= #0003
DQCIBC:= #0003
DQCISU:= #0008
IDAT:= #0005
PBPRI:= #0009
PRCLPN:= #000A
PBLOL:= #0006
PBEXPR:= #0002
PBLGT:= #000C
IMCNT:= #0003
PBFWL:= #0000
PBLRL:= #0005
PBLPN:= #000A
PBNUSD:= #0003
RCQE:= #0002
LORDL:= #0006
PRCSTA:= #0009
DQCOBC:= #0006
OBAS:= #000B
RFQE:= #0000
FEXPL:= #0004
ODAT:= #0007
PBIDLE:= #FFFF
DQCCQE:= #0002
CQE:= #0002
DQCFQE:= #0000
FQE:= #0000
FWLNK:= #0000
RLQE:= #0001
LEXPL:= #0007
DQCIB:= #0005
PBRVL:= #0001
FROUL:= #0002
DQCLQE:= #0001
PBROUT:= #0000
LQE:= #0001
MQE:= #0003
DQCIBX:= #0004
OCNT:= #0006
DQCOB:= #0007
PBFEL:= #0004
RVLNK:= #0001
LROUL:= #0005
QCCQE:= #0002
PRCBLL:= #000C
QCFQE:= #0000
USE #0
MESSAGE <:CALL LETNOD:> ; 00000125 0 0008 LEVEL 1 NAMES:
USE BASE
MXICMI:= #0001
CMIMXI:= #0001
MXIIDP:= #0002
IDPMXI:= #0001
LTROUT:= #0000
EDCCMI:= #0001
CMIEDC:= #0001
ODPRTC:= #0001
RTCODP:= #0001
EDCIDP:= #0001
IDPEDC:= #0001
MXIODP:= #0002
ODPMXI:= #0002
LTTYP:= #0001
LTMS1:= #0004
EDCODP:= #0001
ODPEDC:= #0001
LTORDN:= #0001
LTMS2:= #0005
LTMS3:= #0006
LTMST0:= #0000
LTMS4:= #0007
LTMST1:= #0001
LTMST2:= #0002
LTMST3:= #0003
MXIRTC:= #0001
RTCMXI:= #0001
CMIIDP:= #0000
IDPCMI:= #0000
EDCRTC:= #0001
RTCEDC:= #0001
MPITSM:= #0002
TSMMPI:= #0002
LTLNK:= #0000
LTSND:= #0003
CMIODP:= #0001
ODPCMI:= #0001
LTEXPR:= #0002
LTLGT:= #0008
CMIMPI:= #0002
MPICMI:= #0002
ODPIDP:= #0002
IDPODP:= #0002
LTRCV:= #0002
EDCTQM:= #0001
TQMEDC:= #0001
CMIRTC:= #0001
RTCCMI:= #0001
USE #0
MESSAGE <:CALL PCFNOD:> ; 00000114 0 0252 LEVEL 1 NAMES:
PCGSRL= #0000
PCGSRN= #0017
PCGSRS= #0001
PCTJTN= #0010
USE BASE
PCNMQE:= #0005
PCFMQO:= #000F
PCNMQI:= #000D
PCSCCT:= #010A
PCNCD1:= #0001
PCNCD2:= #0002
PCNOAT:= #008D
PCNRTA:= #0014
PCMCRS:= #0017
PCSMQE:= #0006
PCRSPA:= #0009
PCMXAP:= #0012
PCEIST:= #0092
PCEMQT:= #0248
PCNGSR:= #0000
PCSMQI:= #000E
PCNMQO:= #0010
PCMSAT:= #0020
PCCTJT:= #0040
PCZERO:= #0019
PCEOST:= #009C
PCEIS0:= #0000
PCEIS1:= #0001
PCMCEF:= #0016
PCNIST:= #0050
PCSMQO:= #0011
PCEOS0:= #0000
PCEOS1:= #0001
PCSCHA:= #00BA
PCNOST:= #0088
PCNIS0:= #0050
PCEIAT:= #00A6
PCPSWM:= #0008
PCGSR1:= #0212
PCEOS8:= #0008
PCLIRA:= #000A
PCEOS9:= #0009
PCFMQE:= #0004
PCMREF:= #0015
PCFMQI:= #000C
PCTOAA:= #0240
PCOFA:= #0007
PCNOS0:= #0000
PCNCCT:= #0112
PCPBCT:= #0003
PCLIC:= #000B
PCEOAT:= #00B0
PCNOS4:= #0003
PCMXAF:= #0013
PCNOS5:= #0004
PCFLGT:= #0252
USE #0
MESSAGE <:CALL CDTNOD:> ; 00000237 0 0010 LEVEL 1 NAMES:
CDPSTC= #001D
CDIMCA= #0013
CDETYP= #0019
CDSTC= #001C
CDBID= #0018
CDMOX= #0003
CDPPEC= #0021
CDPEC= #0020
CDICCA= #0012
USE BASE
CDESIZ:= #001B
CDISNR:= #D110
CDNCT:= #0001
CDOSC:= #0008
CDIRPS:= #0007
CDOSTA:= #0019
CDPSTA:= #0004
CDOCCA:= #0015
CDTELT:= #001B
CDIRPV:= #0009
CDTNCT:= #FF0F
CDIRXO:= #0004
CDOCEB:= #000A
CDOEST:= #0012
CDIBLC:= #000F
CDMOP:= #0000
CDIBNA:= #0000
CDOSNM:= #182C
CDOSCX:= #0003
CDOLTO:= #0002
CDOEBE:= #000F
CDOONT:= #0005
CDIOST:= #0008
CDOIBD:= #0001
CDOSNR:= #182C
CDICBR:= #0005
CDIAIM:= #1010
CDIPSW:= #6000
CDITXO:= #0003
CDPRPT:= #000F
CDETAB:= #000C
CDIRXS:= #000A
CDIAIR:= #9130
CDCSEC:= #0005
CDOBLC:= #0016
CDSCHA:= #001A
CDOBNA:= #0000
CDIBDS:= #000D
CDPPAC:= #0010
CDOPBC:= #0017
CDONEB:= #0018
CDIBML:= #000C
CDRPT:= #0010
CDOOBE:= #000D
CDOSSR:= #183C
CDOAIM:= #18E4
CDIOAM:= #00C0
CDIBUF:= #0008
CDITXS:= #000B
CDOPSW:= #6000
CDISCH:= #0008
CDIOAP:= #7835
CDOAIR:= #1010
CDPCA:= #0003
CDSPAC:= #000E
CDIPER:= #0001
CDOBDS:= #000E
CDLIC:= #0006
CDIRGO:= #0006
CDOBML:= #000C
CDFLNK:= #0003
CDIMSA:= #0007
CDOFD:= #000B
CDMTCF:= #0002
CDOEDS:= #000F
CDOBUF:= #0014
CDTYP:= #0001
CDISCM:= #0007
CDLINK:= #0000
CDPIC:= #000D
CDIOAT:= #02C0
CDISEM:= #9010
CDTIME:= #0002
CDITME:= #000F
CDODIS:= #0004
CDIMCX:= #0009
CDOPEN:= #0003
CDBCT:= #000B
CDIHNT:= #0007
CDISER:= #9110
CDIINT:= #0004
CDLCN:= #0008
CDOMSA:= #0013
CDISC:= #0000
CDISTA:= #0011
CDUSED:= #0005
CDOSCM:= #0700
CDISTC:= #000F
CDOSEM:= #183C
CDIBEB:= #000E
CDIEST:= #0006
CDISNM:= #5010
CDISCX:= #0003
CDIOSM:= #0008
CDOSER:= #000B
CDIOP:= #7835
CDICFE:= #0002
CDOINT:= #0005
CDZDIS:= #0004
CDIOSP:= #7835
CDMOM= #0007-128*BASE-128*(PROG-1)
USE #0
MESSAGE <:CALL ECFNOD:> ; 00000283 0 00E0 LEVEL 1 NAMES:
ECOCSZ= #0013
USE BASE
ECOTQI:= #0034
ECGAKA:= #0010
ECGSIZ:= #0090
ECIRR:= #0008
ECONIX:= #0024
ECGALA:= #0060
ECOSSB:= #0023
ECOSTA:= #00A0
ECISIZ:= #0010
ECOCCB:= #002F
ECOADC:= #0005
ECOEBA:= #00C0
ECCALH:= #000D
ECIALB:= #0018
ECOPA1:= #0004
ECORRP:= #0009
ECOPA2:= #0005
ECOXAT:= #0030
ECIADM:= #0010
ECOEAF:= #0000
ECOSAZ:= #0020
ECOASZ:= #0020
ECIELA:= #0080
ECGARB:= #0007
ECCAQH:= #0007
ECOTXD:= #0002
ECINAF:= #0004
ECGFLG:= #0006
ECGCIM:= #000A
ECIEND:= #0006
ECOISW:= #0038
ECIFLG:= #0010
ECICQE:= #0008
ECOLRX:= #0000
ECOITX:= #0003
ECIPAI:= #0011
ECOSIZ:= #0020
ECCIQH:= #0004
ECGFQH:= #0000
ECRSIZ:= #00E0
ECCLCN:= #0002
ECCFLK:= #0000
ECOCLB:= #0026
ECGDAT:= #0003
ECOADM:= #001F
ECISBC:= #0017
ECISAD:= #0020
ECGACW:= #0000
ECGAKP:= #000F
ECICLK:= #0019
ECINAK:= #0002
ECFLOC:= #003A
ECISEB:= #0007
ECOXLT:= #0031
ECOLTX:= #0001
ECOTQS:= #0000
ECGCOM:= #000B
ECOEBP:= #0006
ECOAFP:= #002A
ECOOSW:= #0039
ECONTX:= #0025
ECGRCL:= #0008
ECGECX:= #0002
ECIALR:= #0006
ECISBI:= #0009
ECOFLG:= #0020
ECOTXO:= #000E
ECCNQH:= #000A
ECIFSI:= #0012
ECCLNK:= #0000
ECOCSC:= #0027
ECINQI:= #0015
ECOALO:= #0002
ECOFSB:= #0022
ECOAKP:= #0003
ECCOFS:= #0000
ECCRLK:= #0001
ECICSL:= #0016
ECOALP:= #0006
ECOTEC:= #0033
ECOTQ0:= #0034
ECONKD:= #0004
ECOTQ1:= #0036
ECOLCP:= #0005
ECGCMX:= #0001
ECOEOM:= #0008
ECGHMT:= #0009
ECIQTB:= #000A
ECISCQ:= #000B
ECIEOS:= #0005
ECOEMP:= #0001
ECOLFP:= #002B
ECIOFS:= #0010
ECOLER:= #002E
ECOOEP:= #0007
ECORAQ:= #0008
ECOPCQ:= #000C
ECOARQ:= #0005
ECGAK0:= #003F
ECGUQH:= #0003
ECGTHR:= #0000
ECGAL0:= #001F
ECCCST:= #0003
ECIOPN:= #0001
ECOS1S:= #0028
ECGRDY:= #000F
ECIEXP:= #0000
ECOS2S:= #0029
ECIITR:= #000C
ECINXI:= #0014
ECOSBM:= #000B
ECOLCT:= #002D
ECISTA:= #0040
ECOATO:= #000A
ECIOK:= #0003
ECIADC:= #0005
ECOPAT:= #0003
ECOPSB:= #0021
ECOESM:= #0006
ECONCT:= #000D
ECIAP1:= #0002
ECOLCW:= #0032
ECIAP2:= #0005
ECOSCQ:= #000D
ECOFUL:= #0001
ECOEOS:= #0007
ECIAR1:= #0001
ECOOFS:= #0020
ECODTP:= #0002
ECONKP:= #0004
ECIEO1:= #0000
ECIAR2:= #0004
ECORCT:= #002C
ECOLIT:= #0007
ECONCX:= #0003
ECIASZ:= #0020
ECIEFA:= #0060
ECIEO2:= #0003
ECISSI:= #0013
ECROFS:= #0000
ECCSIZ:= #0010
ECOQCW:= #0032
USE #0
MESSAGE <:CALL EOCNOD:> ; 00000195 0 0010 LEVEL 1 NAMES:
USE BASE
EEC003:= #0002
EEC021:= #000A
EEC030:= #000C
EEC004:= #0003
EEC022:= #000A
EEC031:= #000C
EEC005:= #0003
EEC014:= #0007
EEC023:= #000A
EEC032:= #000C
EOCS12:= #0012
EEC006:= #0004
EEC015:= #0007
EEC007:= #0004
EEC025:= #000B
EEC106:= #00C5
EOCTSB:= #0007
EEC008:= #0004
EEC107:= #00C6
EEC116:= #00CB
EBBD1X:= #0003
EEC009:= #0005
EEC018:= #0008
EEC108:= #00C7
EEC117:= #00CC
EBBD2X:= #0004
EEC019:= #0009
EEC118:= #00CC
EOCTDT:= #0001
EOCTNK:= #0004
EBCNTX:= #0002
BTNAK:= #0046
EEC10A:= #00C8
EEC10B:= #00C9
BTSETB:= #004B
EEC10C:= #00CA
EOCTRR:= #0006
BTEOM:= #0042
EOCLCB:= #000E
EOCEOB:= #000D
EECECX:= #0008
EBBIDX:= #0003
EOCCRC:= #0064
BTNAK2:= #0047
BTEOS:= #0043
EOCTAC:= #0003
EOCLCL:= #0005
EOCTDC:= #0000
EBUCFM:= #0700
EOCATF:= #000E
BTD:= #0041
EOCNCL:= #0005
EECSRA:= #0001
EOCLOC:= #0008
EECSBR:= #0000
EOARMB:= #0004
EOCBDX:= #0007
EECOUE:= #000E
EOCRCL:= #0005
BTACKL:= #0045
EECURE:= #000F
EBTYPX:= #0003
EOCS1:= #0001
EOCS2:= #0002
BTNAKF:= #0048
EOCS3:= #0003
EOCS4:= #0004
EBTABX:= #0003
EOCS5:= #0005
EOCTAL:= #0005
EOCSCL:= #0005
BTRR:= #004A
EOCTLC:= #0002
EOCLTF:= #000F
BTACK:= #0044
BTLCB:= #0049
EOCHMT:= #05DC
EEC001:= #0002
EEC010:= #0006
EEC002:= #0002
EEC011:= #0006
EEC020:= #0009
EOCRTE:= #000A
USE #0
MESSAGE <:CALL CSTNOD:> ; 00000741 0 0070 LEVEL 1 NAMES:
CSTMAC= #0043
CSTPTS= #005A
CSTHMC= #003D
CSTOSX= #0003
CSTCSI= #003A
CSTCPR= #0036
CSTHMP= #003C
CSTELT= #0070
CSTCSO= #003B
CSTLAX= #0008
CSTBLX= #0004
CSTMSI= #00FF
CSTPAX= #0008
CSTCPX= #0004
CSTBRX= #0004
CSTCAC= #0042
CSTCTS= #0037
CSTSBX= #0002
CSTMSO= #FF00
CSTNSN= #005B
CSTTDX= #0003
CSTMOX= #0004
CSTISX= #0003
CSTEXX= #0003
USE BASE
CSTSTL:= #000A
CSTMCA:= #0021
CSTLAD:= #0008
CSTCS3:= #003B
CSTLTS:= #006B
CSTTD1:= #006C
CSTSNS:= #000B
CSTCS4:= #003C
CSTTLT:= #000D
CSTSVL:= #002B
CSTOSS:= #002C
CSTSUM:= #0D18
CSTCS5:= #003D
CSTIHI:= #000C
CSTBLE:= #004A
CSTCOB:= #0025
CSTMBE:= #000F
CSTCS6:= #003E
CSTFBL:= #004A
CSTELC:= #0060
CSTTPS:= #0013
CSTDEL:= #000C
CSTMP1:= #0035
CSTVF1:= #0035
CSTPAD:= #0000
CSTCS7:= #003F
CSTOSV:= #0000
CSTOEB:= #0009
CSTVF2:= #0036
CSTXE1:= #003B
CSTFLD:= #0004
CSTIAL:= #000F
CSTCBR:= #000E
CSTVF3:= #0037
CSTIT2:= #000A
CSTPCD:= #000B
CSTBRC:= #004C
CSTLIB:= #004F
CSTFOB:= #0051
CSTPSW:= #000D
CSTMCH:= #000E
CSTHDL:= #0005
CSTILC:= #0008
CSTVXL:= #0009
CSTVF4:= #0038
CSTSYN:= #0008
CSTMCI:= #0024
CSTTXO:= #0003
CSTCPF:= #0000
CSTNIB:= #0050
CSTHME:= #001E
CSTECR:= #0030
CSTIND:= #0033
CSTIEM:= #000E
CSTOXV:= #0006
CSTICO:= #0006
CSTCRF:= #000E
CSTPCH:= #0040
CSTBQH:= #004D
CSTCIP:= #0023
CSTIBQ:= #004E
CSTREG:= #0000
CSTBAS:= #0008
CSTIHM:= #000B
CSTIPF:= #000A
CSTOIH:= #0008
CSTEC:= #0011
CSTO0S:= #0002
CSTTST:= #0002
CSTNS1:= #0048
CSTCCT:= #002E
CSTBML:= #000F
CSTNS2:= #0049
CSTCDT:= #002F
CSTO2S:= #0003
CSTVTS:= #000F
CSMSW1:= #005D
CSTDUB:= #0063
CSTTSW:= #0014
CSTSTW:= #0016
CSTSED:= #0002
CSTV2M:= #000A
CSTTCE:= #0001
CSTALP:= #0001
CSTLOB:= #0052
CSMSW2:= #005E
CSTOBL:= #006A
CSTLOC:= #006D
CSTISA:= #0000
CSTNCM:= #0044
CSTSTX:= #0064
CSTMCO:= #0027
CSTSEF:= #0004
CSTSCH:= #0008
CSTEMM:= #0001
CSTNOB:= #0053
CSTSHC:= #00B8
CSTEXA:= #0003
CSTDEV:= #0012
CSTISC:= #0000
CSTCON:= #0005
CSTNOC:= #0041
CSTDUF:= #0062
CSTOEM:= #000E
CSTDIS:= #0001
CSTOCO:= #0007
CSTSEI:= #0039
CSTCOP:= #0026
CSTIES:= #0000
CSTOBQ:= #0051
CSTPPC:= #000B
CSTREL:= #0002
CSTITE:= #0009
CSTODP:= #0034
CSTOHL:= #000F
CSTISF:= #0007
CSTFIS:= #0054
CSTPPD:= #0000
CSTIUE:= #0001
CSTORC:= #0002
CSTCQP:= #005F
CSTEXG:= #0000
CSTIPM:= #000A
CSTIVF:= #0007
CSTLIR:= #0010
CSTPRE:= #001B
CSTNPI:= #006F
CSTRGO:= #0006
CSTLAS:= #006B
CSTPRG:= #000A
CSTMBS:= #0009
CSTCLS:= #0029
CSTBLT:= #000C
CSTOSA:= #000B
CSTVAL:= #00B9
CSTLNK:= #000E
CSTSAP:= #001C
CSTCSN:= #001D
CSTCNS:= #0003
CSTF1D:= #0001
CSTOSC:= #0003
CSTTDM:= #0009
CSTMSF:= #0004
CSTSNE:= #0005
CSTNUC:= #0042
CSTGSL:= #006D
CSTOSE:= #0001
CSTOES:= #000A
CSTNMM:= #0000
CSTPCT:= #0065
CSTF4D:= #0005
CSTXLD:= #000B
CSTRCS:= #000A
CSTOSF:= #0038
CSTBRT:= #0008
CSTLIS:= #0055
CSTFOS:= #0057
CSTESP:= #005A
CSTCRS:= #0061
CSTISM:= #000F
CSTODV:= #0005
CSTTPE:= #0000
CSTNOM:= #0045
CSTTIM:= #000C
CSTIMT:= #0006
CSTPAY:= #0003
CSTNPM:= #0046
CSTNIS:= #0056
CSTINT:= #000C
CSTVHM:= #000D
CSTMOP:= #000C
CSTIPS:= #001F
CSTHMW:= #0000
CSTNRM:= #0047
CSTIXL:= #000C
CSTOFX:= #0008
CSTISQ:= #0054
CSTPRM:= #0004
CSTDRY:= #000C
CSTTTA:= #0020
CSTSTB:= #0006
CSTBST:= #0066
CSTSTC:= #002C
CSTSDS:= #0003
CSTSCT:= #005B
CSTCSU:= #0008
CSTSVC:= #005C
CSTCQ0:= #0003
CSTSUE:= #000D
CSTLOS:= #0058
CSTECC:= #0069
CSTGST:= #0015
CSTCHA:= #0028
CSTDDD:= #0007
CSTOMS:= #000C
CSTOSM:= #000D
CSTLTO:= #000E
CSTEDC:= #0009
CSMSH1:= #00BA
CSTFL4:= #0005
CSTVSF:= #0035
CSTVTE:= #000B
CSTDFC:= #0007
CSTC6M:= #FF84
CSTNOS:= #0059
CSMSH2:= #00BB
CSTCIB:= #0022
CSTPSN:= #002D
CSTIST:= #0006
CSTITS:= #000D
CSTOLV:= #0007
CSTONT:= #0002
CSMSH3:= #00BC
CSTOPS:= #002A
CSTV28:= #0008
CSMSH4:= #00BD
CSTEIB:= #0004
CSTIDC:= #0002
CSTOSQ:= #0057
CSTIP1:= #0031
CSTF4P:= #0008
CSTNWO:= #000D
CSTFIB:= #004E
CSTIP2:= #0032
CSTRPS:= #0007
CSTNZM:= #0043
CSTRSQ:= #0001
CSTPPW:= #0038
CSTLAA:= #000F
CSTRPV:= #0009
CSTEXZ:= #0006
CSTBS1:= #0067
CSTBT1:= #0009
CSTRXO:= #0004
CSTCS1:= #0039
CSTSKS:= #0006
CSTBS2:= #0068
CSTLAC:= #0000
CSTCS2:= #003A
CSTBBL:= #004B
CSTSTM= #00C0-128*BASE-128*(PROG-1)
CSTLAM= #FF00-128*BASE-128*(PROG-1)
CSTBLM= #F000-128*BASE-128*(PROG-1)
CSTPAM= #00FF-128*BASE-128*(PROG-1)
CSTCPM= #000F-128*BASE-128*(PROG-1)
CSTBRM= #0F00-128*BASE-128*(PROG-1)
CSTMOM= #F000-128*BASE-128*(PROG-1)
CSTTMM= #0E00-128*BASE-128*(PROG-1)
USE #0
MESSAGE <:CALL GSTNOD:> ; 00000389 0 04A0 LEVEL 1 NAMES:
USE BASE
GST1SB:= #024B
GSTSE0:= #0028
GSTBBL:= #0001
GSTSE1:= #0029
GSTMCA:= #0043
GSTNAB:= #008F
GSTAMC:= #0008
GSTNAC:= #000A
GSTCMB:= #0010
GSTSE2:= #002A
GSTMST:= #0045
GSTAOB:= #009B
GSTSE3:= #002B
GSTOCA:= #004D
GSTTNS:= #0090
GSTCMC:= #00AB
GSTLTU:= #000C
GSTNAE:= #000B
GSTSE4:= #002C
GSTFBL:= #0000
GSTNCC:= #008D
GSTLCE:= #0011
GSTEBM:= #001B
GSTECL:= #0188
GSTF5:= #024B
GSTODB:= #0011
GSTSE5:= #002D
GSTEMC:= #0055
GSTECM:= #0000
GSTFCL:= #0057
GSTNBE:= #0002
GSTBEN:= #0010
GSTLED:= #00F3
GSTSE6:= #002E
GSTCRA:= #004B
GSTECN:= #0050
GSTFCM:= #0058
GSTMSX:= #00AA
GSTPAE:= #0002
GSTNEC:= #0015
GSTMDE:= #001A
GSTNBF:= #001F
GSTCCP:= #0006
GSTMED:= #00FF
GSTIMA:= #0010
GSTFLE:= #0017
GSTOCE:= #0103
GSTNAI:= #000C
GSTDQC:= #0036
GSTMUX:= #003F
GSTEMF:= #0008
GSTCPE:= #0006
GSTUTQ:= #001C
GSTCHM:= #0021
GSTNEE:= #0014
GSTPCF:= #0016
GSTCPF:= #0014
GSTOAI:= #0024
GSTRP0:= #0002
GSTMID:= #000C
GSTREC:= #000F
GSTILE:= #0001
GSTIPA:= #000F
GSTRP1:= #0003
GSTCRE:= #0104
GSTDQF:= #0033
GSTIPB:= #0053
GSTCRF:= #0016
GSTRP2:= #0004
GSTRP3:= #0005
GSTIOE:= #000A
GSTFPH:= #026C
GSTTL1:= #0046
GSTSST:= #00A7
GSTSBC:= #00AE
GSTIRE:= #0009
GSTF10:= #0256
GSTTL2:= #0047
GSTASE:= #006C
GSTTCC:= #008C
GSTTCD:= #0015
GSTCLM:= #003C
GSTFD:= #000B
GSTLPA:= #004C
GSTSED:= #00B2
GSTMMD:= #0044
GSTNMC:= #0054
GSTLOC:= #00F3
GSTNCM:= #0097
GSTAIS:= #009E
GSTLME:= #0005
GSTF15:= #0261
GSTMPB:= #0012
GST25F:= #001F
GSTCOM:= #0051
GSTNCN:= #0000
GSTMOC:= #0094
GSTTSY:= #00A2
GSTUXS:= #001D
GSTSCH:= #0025
GSTNEL:= #0173
GSTMOD:= #000F
GSTMPC:= #004F
GSTBRL:= #0059
GSTLOE:= #000D
GSTMCP:= #0000
GSTNPC:= #000D
GSTDQL:= #0034
GSTNMF:= #0008
GSTNNE:= #0019
GSTLPE:= #0105
GSTCDY:= #019D
GSTDQM:= #0037
GSTILM:= #003E
GSTMRC:= #0041
GSTCMR:= #00AC
GSTMOF:= #0026
GSTMQE:= #001B
GSTDQN:= #0035
GSTIXA:= #004A
GSTUID:= #001F
GSTOCR:= #004E
GSTPPE:= #0004
GSTHWE:= #00F2
GSTFQO:= #000B
GSTMQI:= #0019
GSTPRE:= #00A6
GSTCC0:= #0021
GSTASL:= #0106
GSTCC1:= #0022
GSTCC2:= #0023
GSTBLT:= #0003
GSTNAS:= #0091
GSTMSB:= #00A8
GSTSBM:= #0008
GSTCC3:= #0024
GSTAOS:= #009C
GSTOC:= #0008
GSTNSC:= #0007
GST25L:= #001E
GSTCC4:= #0025
GSTTMC:= #0039
GSTTNB:= #008E
GSTCC5:= #0026
GSTTDM:= #0038
GSTMLM:= #003A
GSTCOS:= #0052
GSTUCM:= #000E
GSTLTE:= #0018
GSTNSE:= #0008
GSTCC6:= #0027
GSTBQS:= #0003
GSTAXM:= #0095
GSTCR:= #0009
GSTMXB:= #000E
GSTI1C:= #0030
GSTOLM:= #003D
GSTNMM:= #0097
GSTSBR:= #00AF
GSTOSE:= #0013
GSTNSF:= #0020
GSTLGT:= #04A0
GSTFOS:= #0000
GSTMLP:= #0042
GSTTOE:= #0003
GSTSOF:= #0022
GSTPET:= #0048
GSTNOM:= #0098
GSTXCN:= #001E
GSTEXL:= #000E
GSTFPS:= #026F
GSTI2E:= #0032
GSTMRL:= #0041
GSTNPM:= #0099
GSTNON:= #000B
GSTFPT:= #04A0
GSTMRM:= #0001
GSTFQT:= #0003
GSTMQO:= #001A
GSTNRM:= #009A
GSTTRF:= #00A1
GSTXFN:= #0106
GSTHRS:= #00A3
GSTPWF:= #000D
GSTTHR:= #0092
GSTPRM:= #0007
GSTMRR:= #00A9
GSTSBS:= #00AD
GSTMC0:= #0003
GSTTSB:= #0014
GST52:= #001D
GST1CL:= #00AB
GSTMC1:= #0004
GSTDBB:= #0013
GSTCST:= #0017
GSTMC2:= #0005
GSTCBD:= #0059
GSTMC3:= #0006
GST55:= #0020
GSTTLM:= #0040
GSTLP:= #000A
GSTLOS:= #0001
GSTMP:= #008A
GSTNSM:= #0097
GSTNLT:= #0007
GSTNSN:= #0009
GSTAIB:= #009D
GSTMSO:= #00A4
GSTLTO:= #00FE
GSTNOS:= #0002
GSTSWE:= #00B0
GSTECE:= #0014
GSTECF:= #0018
GSTXLM:= #003B
GSTCSZ:= #008B
GSTMPT:= #0093
GSTGBE:= #0012
GSTFEC:= #008C
GSTIDB:= #000F
GSTDIB:= #001C
GSTI1N:= #002F
GSTMSR:= #00A5
GSTI2N:= #0031
GSTNXM:= #0098
GSTMXP:= #0049
GSTGSZ:= #008A
GSTNZM:= #0096
GSTXPN:= #000C
GSTIAI:= #0023
USE #0
MESSAGE <:CALL MQXNOD:> ; 00000244 0 0004 LEVEL 1 NAMES:
MQIECT= #0080
MQIBIX= #0008
MQITYX= #0008
MQELAX= #0008
MQOECT= #0080
MQILAX= #0008
MQOLAX= #0008
MQEECT= #0032
USE BASE
MQOEND:= #0000
MQEDIS:= #0004
MQILOC:= #0004
MQITXS:= #000B
MQOSYN:= #0002
MQOHLD:= #0007
MQISCH:= #0008
MQOFLG:= #0000
MQEPER:= #0001
MQERGO:= #0006
MQIPER:= #0001
MQOBDS:= #000E
MQIRGO:= #0006
MQOBML:= #000C
MQOSP1:= #0003
MQEELT:= #0004
MQOLOC:= #0002
MQIELT:= #0004
MQODIS:= #0004
MQESER:= #000B
MQEINT:= #0004
MQEEXP:= #000E
MQIHNT:= #0007
MQEMXI:= #0001
MQIINT:= #0004
MQERDY:= #0004
MQESTA:= #0001
MQEBAD:= #0002
MQIMXI:= #0001
MQESTC:= #000F
MQIRDY:= #0004
MQISTA:= #0001
MQIBAD:= #0002
MQISTB:= #0003
MQISTC:= #000F
MQOELT:= #0004
MQEEDC:= #0003
MQELTO:= #0002
MQECFE:= #0002
MQEONT:= #0005
MQIEDC:= #0003
MQEESZ:= #0004
MQOSER:= #000B
MQICFE:= #0002
MQERPS:= #0007
MQIBID:= #0000
MQIESZ:= #0004
MQOMXI:= #0001
MQERPV:= #0009
MQIRPS:= #0007
MQORDY:= #0004
MQOSTA:= #0001
MQOBAD:= #0002
MQELAD:= #0008
MQIRPV:= #0009
MQIRXO:= #0004
MQILAD:= #0008
MQIBNA:= #0000
MQOEDC:= #0003
MQOLTO:= #0002
MQOEBE:= #000F
MQEOBE:= #000D
MQEEND:= #0000
MQECBR:= #0005
MQOONT:= #0005
MQESYN:= #0002
MQEHLD:= #0007
MQOIBD:= #0001
MQEFLG:= #0000
MQETXO:= #0003
MQOESZ:= #0004
MQIEND:= #0000
MQICBR:= #0005
MQIBEP:= #000E
MQETYP:= #0000
MQERXS:= #000A
MQISYN:= #0002
MQIHLD:= #0007
MQIFLG:= #0000
MQITXO:= #0003
MQIRXS:= #000A
MQITYP:= #0008
MQEBDS:= #000E
MQOLAD:= #0008
MQOBNA:= #0000
MQEBML:= #000C
MQIBDS:= #000D
MQELOC:= #0002
MQETXS:= #000B
MQIBML:= #000C
MQESCH:= #0008
MQOOBE:= #000D
MQOEFM= #FFFE-128*BASE-128*(PROG-1)
MQOLAM= #FF00-128*BASE-128*(PROG-1)
MQELGT= #00C8+ 50*BASE+ 0*(PROG-1)
MQILGT= #0200-128*BASE+ 0*(PROG-1)
MQOLGT= #0200-128*BASE+ 0*(PROG-1)
MQEEFM= #FFFE-128*BASE-128*(PROG-1)
MQIEFM= #FFFE-128*BASE-128*(PROG-1)
MQIBIM= #00FF-128*BASE-128*(PROG-1)
MQITYM= #FF00-128*BASE-128*(PROG-1)
MQELAM= #FF00-128*BASE-128*(PROG-1)
MQILAM= #FF00-128*BASE-128*(PROG-1)
USE #0
MESSAGE <:CALL BINNOD:> ; 00000086 0 0002 LEVEL 1 NAMES:
BINCXO= #0004
BINTCX= #0003
BINSEX= #0003
BINETX= #0002
BINOSQ= #0013
BINWXO= #0002
BINEFX= #0003
BINLGT= #0014
BINCNX= #0006
USE BASE
BINTER:= #000D
BINURE:= #0007
BINEXO:= #0004
BINSTA:= #0001
BINTCS:= #000B
BINEIB:= #0006
BINCAP:= #0024
BINSTP:= #000B
BINMSX:= #0002
BINECP:= #0020
BINIFM:= #3800
BINSEC:= #0008
BINETC:= #0006
BINLOC:= #0002
BINLNK:= #0000
BINCNT:= #0000
BINHMS:= #000C
BINIO:= #000E
BINIOI= #4000-128*BASE-128*(PROG-1)
BINCNM= #003F-128*BASE-128*(PROG-1)
BINIOM= #C000-128*BASE-128*(PROG-1)
BINIOO= #8000-128*BASE-128*(PROG-1)
BINTCM= #3800-128*BASE-128*(PROG-1)
BINSEM= #0700-128*BASE-128*(PROG-1)
BINETM= #00C0-128*BASE-128*(PROG-1)
USE #0
MESSAGE <:CALL EDCNOD:> ; 00001130 0 00E3 LEVEL 2 NAMES:
USE BASE
ECFPTR:= #0042
CDTPTA:= #004F
COBUF:= #006A
COEBBC:= #006D
COEBCC:= #006E
EDMBAH:= #0020
EDOBAH:= #0020
MQEPTA:= #0050
EDWORK:= #0054
MQIPTA:= #0051
CEEST:= #005E
PCFPTR:= #0044
CITYPE:= #0064
ECRPTR:= #0043
LETPTA:= #0053
CIEST:= #0061
EIBASE:= #0093
CIBID:= #0065
LOOPCT:= #0016
CDTPTR:= #0045
MQOPTA:= #0052
COEBRF:= #006B
NMQEPT:= #005C
EMBASE:= #0073
CSTPTA:= #004B
COEST:= #0069
COSMSK:= #0072
NMQIPT:= #005F
MQEPTR:= #0046
EOBASE:= #00C3
COEBBT:= #006F
GSTPTA:= #004A
MQIPTR:= #0047
COBID:= #006C
CEFLG:= #005D
ECFPTA:= #004C
EDIPRH:= #0380
EDWRK0:= #0054
CSCTYP:= #0017
EDWRK1:= #0055
EDWRK2:= #0056
CIFLG:= #0060
CIBID1:= #0065
EDWRK3:= #0057
CIBID2:= #0066
LETPTR:= #0049
EDWRK4:= #0058
EDWRK5:= #0059
ECIITL:= #0019
EDWRK6:= #005A
EDWRK7:= #005B
NMQOPT:= #0067
CITAB:= #0063
CSCPLA:= #0018
EDMPRH:= #0520
MQOPTR:= #0048
EDOPRH:= #0420
CIBUF:= #0062
COFLG:= #0068
COEBPT:= #0070
CSTPTR:= #0041
PCFPTA:= #004E
ECRPTA:= #004D
EDIBAH:= #0030
COEBPW:= #0071
GSTPTR:= #0015
USE PROG
EI1980:= #0012
EI7290:= #0029
EI1990:= #0013
EMPROG:= #0050
EOPROG:= #08F0
EI19A0:= #0014
EI19B0:= #0015
EI19C0:= #0016
EI19D0:= #0017
EI19E0:= #0018
EI19F0:= #0019
EI19F1:= #001A
EDCSYS:= #5B80
EDISYS:= #6140
EDMSYS:= #5C20
EDOSYS:= #64C0
ED0300:= #002B
ED0500:= #0036
EI1200:= #0000
EI1600:= #0003
EI4300:= #0020
EI3500:= #001E
EI1601:= #0004
EI3410:= #001B
EI1251:= #0001
EI3600:= #001F
EI1602:= #0005
EI1800:= #0009
EI3420:= #001C
EI4410:= #0021
EI7200:= #0028
EI1603:= #0006
EI1900:= #000A
EI3430:= #001D
EI1604:= #0007
EI1910:= #000B
EI5600:= #0023
EI1920:= #000C
EI4530:= #0008
EI6420:= #0025
EI5700:= #0024
EI8400:= #002A
EIPROG:= #0570
EI1930:= #000D
EI6520:= #0027
EI1940:= #000E
EI6440:= #0026
EI1950:= #000F
EI1960:= #0010
EI1475:= #0002
EI1970:= #0011
EI4580:= #0022
USE #0
MESSAGE <:CALL XPDNOD:> ; 00000104 0 0016 LEVEL 2 NAMES:
USE BASE
XGSTPR:= #0015
XHSSIZ:= #FFFA
XMBASE:= #0009
XHEXSZ:= #FFFE
XLICC:= #0011
XGSTP:= #0015
XHWRK0:= #FFF0
XHWRK1:= #FFF1
XBASE:= #0008
XHWRK2:= #FFF2
XHPID:= #FFFF
XHWRK3:= #FFF3
XHWRK4:= #FFF4
XHWRK5:= #FFF5
XHWRK6:= #FFF6
XHWRK7:= #FFF7
XTSWH:= #0014
XPCLNK:= #000E
XHRPRG:= #FFFB
XHTXSZ:= #FFFD
XTIME:= #000C
XHSPCT:= #FFF9
XR0:= #0000
XMASK:= #000D
XHOLTO:= #FFF9
XR1:= #0001
XPRPC:= #000B
XR2:= #0002
XHPBSZ:= #FFFC
XR3:= #0003
XLIRP:= #0010
XR4:= #0004
XPROG:= #000A
XR5:= #0005
XHWORK:= #FFF0
XR6:= #0006
XR7:= #0007
XIDAD:= #0012
XHDATE:= #FFF2
XHTEST:= #FFF8
XLISP:= #000F
XHNAME:= #FFF0
XTMRES:= #0013
USE #0
MESSAGE <:CALL TSTNOD:> ; 00000157 0 0003 LEVEL 1 NAMES:
TPDSIX= #0004
TPDTLX= #0004
TPDSNX= #0008
USE BASE
QUEFIL:= #0002
MXI:= #0003
XPDFIL:= #0001
TS10:= #4D43
INXFIL:= #0003
DBA:= #0008
ML:= #0080
TS11:= #2049
TS20:= #554D
TS12:= #4449
TS21:= #2058
TFPBCT:= #0002
TPDTDD:= #0001
TDS:= #000D
MN:= #0000
TS13:= #2050
TS22:= #5354
TFDFTM:= #C000
TPDLOC:= #0001
CSTFIL:= #0001
TS14:= #444F
TS23:= #2054
TFPBLN:= #0000
TS15:= #2050
TS24:= #4445
TFDFSP:= #0000
TFDFPS:= #000C
EDC:= #000C
TS16:= #4244
TS25:= #2043
TFDRLM:= #0FC0
LI1:= #0010
TS17:= #2041
LI2:= #0020
TS18:= #5354
TFDRNM:= #003F
LI3:= #0030
TS19:= #204D
MNX:= #0000
MSQFIL:= #0003
TFDFPX:= #0002
SL:= #00C0
SN:= #0040
TFDFTS:= #000E
TFDFAD:= #0001
TFDFN1:= #0002
TSM:= #0009
TFDFN2:= #0003
TFDRLS:= #0006
TFDRNS:= #0000
TFDFTX:= #0002
MUX:= #000A
TFDRLX:= #0006
CMI:= #0005
TFDSIZ:= #0004
TFDRNX:= #0006
IDP:= #0006
TFDLTS:= #000C
ABSFIL:= #0000
TST:= #000B
TPDSIS:= #0008
TFDBIN:= #0000
TPDPSP:= #0000
OLE:= #0002
ODP:= #0007
BNQFIL:= #0002
MPDFIL:= #0005
TPDSIZ:= #0002
RELFIL:= #0001
TFDASC:= #0001
MPI:= #0004
PRCFIL:= #0000
TS0:= #4F4D
TPDTLS:= #000C
TS1:= #204E
TPDSNS:= #0000
TS2:= #5452
TS3:= #2043
TFDLOC:= #0001
TS4:= #5245
TS5:= #2052
TS6:= #584D
TS7:= #2049
PDFIL:= #0000
LETFIL:= #0004
TS8:= #504D
TFPBDP:= #0001
TFDFPM:= #3000
TS9:= #2049
RTC:= #0001
USE #0
MESSAGE <:CALL MSBNOD:> ; 00000135 0 0044 LEVEL 1 NAMES:
MSLADM= #FF00
MSCACX= #0008
MSMCCM= #00FF
MSLADS= #0008
MSMCCS= #0000
MSSECM= #0700
MSLADX= #0008
MSMCCX= #0008
MSPREM= #F000
MSSECS= #0008
MSSECX= #0003
MSSEQM= #00FF
MSPRES= #000C
MSCACM= #00FF
MSPREX= #0004
MSSHD1= #0076
MSSHD2= #0077
MSSHD3= #0078
MSSEQS= #0000
MSSHD4= #0079
MSSEQX= #0008
MSCACS= #0000
USE BASE
MSITYP:= #0006
MSBSEC:= #0008
MSCHA:= #0002
MSOCAP:= #0080
MSICSF:= #0003
MSLAD:= #007B
MSIEOM:= #000E
MSI0:= #000F
MSCW1:= #003B
MSMCC:= #007A
MSI1:= #000E
MSIVFF:= #0007
MSCW2:= #003C
MSI2:= #000D
MSCW3:= #003D
MSI3:= #000C
MSCW4:= #003E
MSI4:= #000B
MSCW5:= #003F
MSI5:= #000A
MSI6:= #0009
MSI7:= #0008
MSI8:= #0007
MSIND:= #003F
MSI9:= #0006
MSILCT:= #0008
MSWXO:= #0002
MSISPD:= #0004
MSIEOS:= #0000
MSIHMS:= #000B
MSIOI:= #4000
MSIEXL:= #000C
MSSEC:= #007D
MSI10:= #0005
MSITER:= #0009
MSDLM:= #000B
MSI11:= #0004
MSIURE:= #0001
MSLOC:= #0044
MS1CAP:= #0072
MSI12:= #0003
MS2CAP:= #0076
MSI13:= #0002
MSI14:= #0001
MSI15:= #0000
MSBSEX:= #0003
MSIOM:= #C000
MSIOO:= #8000
MSPRE:= #007D
MSOSEQ:= #0042
MSISOM:= #000F
MSIFL4:= #0005
MSITMP:= #0040
MSLNK:= #0000
MSCNT:= #0000
MSLGT:= #0044
MSMSAX:= #0002
MSCNX:= #0008
MSIO:= #000E
MSSEQ:= #007C
MSCXO:= #0004
MSUMI:= #0040
MSISTP:= #000D
MSSTA:= #0001
MSISPU:= #000A
MSIOCF:= #0002
USE #0
MESSAGE <:CALL DBPNOD:> ; 00000048 0 0000 LEVEL 1 NAMES:
DATE= #0401
USE #0
LIST
;-----------------------------------------------------------------------
;
; RETURN LINKS (RL)
;
;-----------------------------------------------------------------------
LOC=EOBASE
RL6230: LOC=LOC+1
RL6320: LOC=LOC+1
RL6410: LOC=LOC+1
RL6420: LOC=LOC+1
RL6430: LOC=LOC+1
RL6440: LOC=LOC+1
RL6520: LOC=LOC+1
RL6820: LOC=LOC+1
RL7160: LOC=LOC+1
RL7200: LOC=LOC+1
RL7290: LOC=LOC+1
RL7300: LOC=LOC+1
RL7400: LOC=LOC+1
RL8100: LOC=LOC+1
RL8400: LOC=LOC+1
RLMQIS: LOC=LOC+1
RLMQOS: LOC=LOC+1
;
;-----------------------------------------------------------------------
;
; ASSIGNMENTS
;
;-----------------------------------------------------------------------
; BITS:
BIT7:= 7 ;
;-----------------------------------------------------------------------
;FF\f
USE PROG
;-----------------------------------------------------------------------
;
;
; EDC OUTPUT PROGRAM SECTION
;
;
;-----------------------------------------------------------------------
LOC=EOPROG
;-----------------------------------------------------------------------
; PROCEDURE ED6200.
; READBUF(BUFP,OFFS,WORD)
;
; REGISTERS ENTRY EXIT
; R0 OFFS OFFS
; R1 - WORD
; R3 - BMSA
; R4 LINK DESTROYED
; R5 BUFP (ABS) BUFP (ABS)
; R7 - DESTROYED
;
; INPUTS: BUF
; OUTPUTS: -
;
; CALL BY: ED7070,ED8400
; CALL TO: GBSM
;-----------------------------------------------------------------------
ED6200: ; BEGIN READBUF(BUFP,OFFS,WORD)
MOV XBASE R1 ;
MON GBSM ; GET_PAGE(BUFP,BMSA)
SVS R7 ; MASK:=PSW
LDS R3 ; PSW:=BMSA
MODN R1 ;
MOD R0 ;
MOV 0. X5 R1 ; WORD:=OFFS.BUFP
LDS R7 ; PSW:=MASK
JMP 0. X4 ; RETURN
; END
;----------------------------------------------------------------------
; PROCEDURE ED6210.
; PROCEDURE INDEX(IDENT.)
;
; REGISTERS: ENTRY EXIT
; R0 IDENT. UNCH
; R4 LINK UNCH
; R7 - INDEX
;
; CALL BY: ?
;----------------------------------------------------------------------
ED6210: ; BEGIN INDEX.
MOV R0 R7 ;
XTR R7 ECOADC ; X.OSTA:=(INDEX)MOD 32
MOD R7 ;
MOD ECRPTR ;
MOVC ECOSTA R7 ; INDEX:=OSTA+X.OSTA
JMP 0. X4 ; RETURN
; END INDEX.
;----------------------------------------------------------------------
; PROCEDURE ED6220.
; PROCEDURE UPDATE_ONTX.
;
; REGISTERS: ENTRY EXIT
; R0 BID UNCH
; R4 LINK UNCH
; R6 ECRP UNCH
; R7 - DEST
;----------------------------------------------------------------------
ED6220: ; BEGIN UPDATE_ONTX.
MOV ECONTX.X6 R7 ;
SUB R0 R7 ; DIF:=(ONTX-BID)MOD128
XTR R7 EOCBDX ;
ILT R7 ECOSAZ ; IF DIF .LT. OSAZ I.E.
; (BID PREVIOUS TO ONTX) THEN
MOV R0 ECONTX.X6 ; ONTX:=BID
JMP 0. X4 ; RETURN LINK+0
; END UPDATE_ONTX.
;-----------------------------------------------------------------------
; PROCEDURE ED6230.
; RELEASE_IEB
;
; REGISTERS ENTRY EXIT
; R0,R1,R2,R3,R5,R7 - DESTROYED
; R4 LINK DESTROYED
; R6 ECRP (REL) ECRP (REL)
;
; INPUTS: ECCIQH
; OUTPUTS: ECCIQH
;
; CALL BY: ED7040,ED7050,ED7060,ED7070,ED7080
; CALL TO: LNOQ,RNBN
;
; RETURNS:
; LINK - DONE
;-----------------------------------------------------------------------
ED6230: ; BEGIN RELEASE_IEB.
MOV R4 RL6230 ;
MOVC 255 R3 ; N:=255
MOD ECRPTA ;
MOVC ECCIQH R4 ; QCB:=IQH
MON LNOQ ; DEQUEUE(N,QCB,FBUF,LBUF)
NOP ;
MON RNBN ; RELEASE(N,FBUF)
MOV ECRPTR R6 ;
JMPI RL6230 ; RETURN
; END
;-----------------------------------------------------------------------
; PROCEDURE ED6240.
; BOOLEAND OUT_OF_RANGE(BID).
;
; REGISTERS ENTRY EXIT
; R0 BID BID
; R4 LINK LINK
; R6 ECRP (REL) ECRP (REL)
; R7 - DESTROYED
;
; CALL BY: ED7060,ED7070,ED7080.
; CALL TO: -
; RETURNS:
; LINK+0: TRUE
; LINK+1: FALSE
;-----------------------------------------------------------------------
ED6240: ; BEGIN OUT_OF_RANGE.
MOV R0 R7 ;
MODN ECOPSB.X6 ;
ADDC -1 R7 ; N:=(BID-OPSB-1)MOD 128
XTR R7 EOCBDX ;
IHS R7 ECOSAZ ; IF N >= ARRAY_SIZE THEN
JMP 0. X4 ; TRUE
; ELSE
JMP 1. X4 ; FALSE
; END OUT_OF_RANGE.
;-----------------------------------------------------------------------
; PROCEDURE ED6320.
; GENERATE_OEB
;
; REGISTERS ENTRY EXIT
; R0,R1,R2,R3 - DESTROYED
; R4 LINK DESTROYED
; R5 - BUFP (ABS)
; R6,R7 - DESTROYED
;
; INPUTS: COEBCC,COBID,CSTOSC,CSTPTR
; OUTPUTS: COEBBT,EBCNT,EBTAB,BINSTA
;
; CALL BY: ED8610
; CALL TO: GNOB,PUTBUF,ED1960
;
; ENTRIES:
; ED6320: RR
; ED6322: SETB
;
; RETURNS: LINK+0 NO OUTPUT BINS
; LINK+1 COMPLETE
;-----------------------------------------------------------------------
; BEGIN GENERATE_OEB
ED6320: MODC BTRR-BTSETB ;
ED6322: MOVC BTSETB R0 ; EB_TYPE:=FUNC(ENTRY)
MOV R0 COEBBT ;
MOV R4 RL6320 ;
MOVC 1 R3 ; N:=1
MON GNOB ; GET_BUFFER(N,FBUF)
JMP ED6325 ; NO BINS
MOV RL6320 R0 ; SET UP FOR NORMAL RETURN
ADDC 1 R0 ;
MOV R0 RL6320 ;
MOVC EBCNTX R0 ;
MOVC BINCNM R1 ;
MOV COEBCC R2 ; (WRITE EB_COUNT INTO BUFFER)
MON PUTBUF ; PUT_BUFFER(BUFP,OFFS,MASK,WORD)
MOV CSTPTR R7 ;
MOV CSTCS2.X7 R0 ;
MOVC CSTOSF R3 ;
AND R3 R0 ;
IF BINSEC-CSTOSC GT 0 THEN
SLL R0 BINSEC-CSTOSC FI
IF BINSEC-CSTOSC LT 0 THEN
SRL R0 CSTOSC-BINSEC FI
MOV COEBCC R2 ;
ADD R0 R2 ;
MOVC BINSTA R0 ;
MOVC BINSEM+BINCNM R1 ; (WRITE SEC,CNT INTO BUFFER)
MON PUTBUF ; PUT_BUFFER(BUFP,OFFS,MASK,WORD)
MOVC EBTABX R0 ;
MOVC #FFFF R1 ;
MOV COEBBT R2 ;
MOV COBID R3 ;
SWP R3 ;
IOR R3 R2 ; (WRITE TYPE,BID INTO BUFFER)
MON PUTBUF ; PUT_BUFFER(BUFP,OFFS,MASK,WORD)
JMPI RL6320 ; RETURN
ED6325: ; NO BINS
MOV CSTPTR R4 ; SET FLAG TO MP TO INDICATE
MOVC 1<CSTLAC R5 ; THAT WE'RE OUT OF BINS
IOR R5 CSTVF1.X4 ;
JMPI RL6320 ; ABNORMAL EXIT
; END
;-----------------------------------------------------------------------
; PROCEDURE ED6400
; VALID(IEST,IBID)
;
; REGISTERS ENTRY EXIT
; R0 - BID
; R4 LINK DESTROYED
;
; INPUTS: CIEST,CIBID
; OUTPUTS: -
;
; CALL BY: ED7040,ED7050,ED7060,ED7070,ED7080
; CALL TO: -
;
; RETURNS:
; LINK+0 - NON-VALID
; LINK+1 - VALID
;-----------------------------------------------------------------------
ED6400: ; BEGIN VALID(IEST,IBID)
MOV CIEST R0 ;
IBN R0 CDICFE ; IF TEST(IEST,CRC_ERROR)
JMP 0. X4 ; THEN RETURN(0)
MOV CIBID R0 ;
IBN R0 BIT7 ; IF TEST(BID,PARITY_ERROR)
JMP 0. X4 ; THEN RETURN(0)
JMP 1. X4 ; ELSE RETURN(1)
; END
;----------------------------------------------------------------------
;FF\f
;-----------------------------------------------------------------------
; PROCEDURE ED6410/ED6412.
; ACTIVATE(ACKTO-TYPE1/TYPE2)
;
; REGISTERS ENTRY EXIT
; R0,R1,R2,R3 - DESTROYED
; R4 LINK DESTROYED
; R5 - FQE (ABS)
; R6 ECRP (REL) ECRP (REL)
; R7 - DESTROYED
;
; INPUTS: CSTPTR,CSTLAD,GSTPTA,ECRPTR
; OUTPUTS: ECOFLG,ECOAFP
;
; CALL BY: ED7290,ED7410/ED7290.
; CALL TO: ED6420,RFTA
;-----------------------------------------------------------------------
ED6410: ; BEGIN ACTIVATE(ACTO-TYPE1)
MODC 1<ECOPAT1-1<ECOPAT2 ;
ED6412: ; BEGIN ACTIVATE(ACKTO-TYPE2)
MOVC 1<ECOPAT2 R0 ; TYPE:=ACKTO-TYPETO-TYPE2)
MOV R0 EDWRK0 ;
MOV R4 RL6410 ;
JMP S4 ED6420 ; DEACTIVATE(ACKTO)
MOV EDWRK0 R0 ;
IOR R0 ECOFLG.X6 ; SET OFLG(OPAT1/OPAT2)
MOVC EDLLPN R2 ; LPN:=PID_EDL_PROCESS
MOV CSTPTR R4 ;
MOV CSTCS1.X4 R3 ;
SWP R3 ;
XTR R3 CSTLAX ; DATA:=LCN
SETS R3 EOCATF ; DATA:=DATA SET(ACKTO_DESIGNATOR)
MOD GSTPTA ;
MOVC GSTF5 R4 ; FQCB:=FIFO_QCB_ADDR (5SEC)
MON RFTA ; RESERVE_FTMO(LPN,DATA,FQCB,FQE)
NOP ;
MOV ECRPTR R6 ;
MOV R5 ECOAFP.X6 ; AFP.ECRP:=FQE
JMPI RL6410 ; RETURN
; END
;-----------------------------------------------------------------------
; PROCEDURE ED6420
; DEACTIVATE(ACKTO)
;
; REGISTERS ENTRY EXIT
; R0,R1,R3,R5,R7 - DESTROYED
; R2 - LPN
; R4 LINK DESTROYED
; R6 ECRP (REL) ECRP (REL)
;
; INPUTS: ECOFLG,ECOAFP
; OUTPUTS: -
;
; CALL BY: ED7040,ED7060,ED7070,ED7080,ED6410
; ED3301,ED3360,ED7160,ED7290
; CALL TO: DFTA
;-----------------------------------------------------------------------
ED6420: ; BEGIN DEACTIVATE(ACKTO)
MOV R4 RL6420 ;
MOV ECRPTR R6 ;
MOV ECOFLG.X6 R0 ;
IBZP R0 ECOPAT1 ; IF OFLG(OPAT1)
IBZ R0 ECOPAT2 ; .OR. OFLG(OPAT2) THEN
JMP ED6422 ; BEGIN
MOVC EDLLPN R2 ; LPN:=PID_EDL_PROCESS
MOV ECOAFP.X6 R5 ; FQE:=AFP.ECRP
MON DFTA ; DEACTIVATE_FTMO(LPN,FQE)
INC ECOXAT.X6 ; -DEAC, INC OXAT.ECRP
ED6422: ; END
MOVC NT(1<ECOPAT1+% ;
1<ECOPAT2+1<ECOATO) R0 ;
AND R0 ECOFLG.X6 ; CLEAR OFLG(OPAT1,OPAT2,OATO)
JMPI RL6420 ; RETURN
; END
;-----------------------------------------------------------------------
; PROCEDURE ED6430
; ACTIVATE(ACKLTO)
;
; REGISTERS ENTRY EXIT
; R0,R1,R2,R3 - DESTROYED
; R4 LINK DESTROYED
; R5 - FQE (ABS)
; R6 ECRP (REL) ECRP (REL)
; R7 - DESTROYED
;
; INPUTS: CSTPTR,CSTLAD,GSTPTA,ECRPTR
; OUTPUTS: ECOFLG,ECOLFP
;
; CALL BY: ED7120
; CALL TO: ED6440,RFTA
;-----------------------------------------------------------------------
ED6430: ; BEGIN ACTIVATE(ACKLTO)
MOV R4 RL6430 ;
JMP S4 ED6440 ; DEACTIVATE(ACKLTO)
MOVC EDLLPN R2 ; LPN:=PID_EDL_PROCESS
MOV CSTPTR R4 ;
MOV CSTCS1.X4 R3 ;
SWP R3 ;
XTR R3 CSTLAX ; DATA:=LCN
SETS R3 EOCLTF ; DATA:=DATA SET(ACKLTO_DESIGNATOR
MOD GSTPTA ;
MOVC GSTF5 R4 ; FQCB:=FIFO_QCB_ADDR (5SEC)
MON RFTA ; RESERVE_FTMO(LPN,DATA,FQCB,FQE)
NOP ;
MOV ECRPTR R6 ;
MOV R5 ECOLFP.X6 ; LFP.ECRP:=FQE
MOVC 1<ECOPALT R0 ;
IOR R0 ECOFLG.X6 ; SET(OFLG,OPTL)
JMPI RL6430 ; RETURN
; END
;-----------------------------------------------------------------------
; PROCEDURE ED6440
; DEACTIVATE(ACKLTO)
;
; REGISTERS ENTRY EXIT
; R0,R1,R3,R5,R7 - DESTROYED
; R2 - LPN
; R4 LINK DESTROYED
; R6 ECRP (REL) ECRP (REL)
;
; INPUTS: ECOFLG,ECOLFP
; OUTPUTS: -
;
; CALL BY: ED3301,ED3360,ED6430,ED7050
; CALL TO: DFTA
;-----------------------------------------------------------------------
ED6440: ; BEGIN DEACTIVATE(ACKLTO)
MOV R4 RL6440 ;
MOV ECOFLG.X6 R0 ;
IBZ R0 ECOPALT ; IF OFLG(OPALT) THEN
JMP ED6442 ; BEGIN
MOVC EDLLPN R2 ; LPN:=PID_EDL_PROCESS
MOV ECOLFP.X6 R5 ; FQE:=LFP.ECRP
MON DFTA ; DEACTIVATE_FTMO(LPN,FQE)
INC ECOXLT.X6 ; -DEACT. , OXLT:=OXLT+1
ED6442: ; END
MOVC NT% ;
1<ECOPALT+1<ECOALTO R0 ;
AND R0 ECOFLG.X6 ; CLAER OFLG(OPALT,OALT)
JMPI RL6440 ; RETURN
; END
;----------------------------------------------------------------------
;FF\f
;----------------------------------------------------------------------
; PROCEDURE ED6520.
; REMOVE(OSTA,OEBA,X0,X1)
;
; REGISTERS: ENTRY EXIT
; R0 X0 DEST
; R1 X1 DEST
; R0,R3,R5,R7 - DEST
; R4 LINK DEST
; R6 ECRP (REL) UNCH
;
; CALL TO: ED6210,RNBN
; CALL BY: ED1260,ED7040
; RETURNS:
; LINK+0: DONE
;----------------------------------------------------------------------
ED6520: ; BEGIN REMOVE
MOV R4 RL6520 ;
SUB R0 R1 ; N:=(X1-X0)MOD OSAZ
;
; FOR J:=X0 UNTIL X0+N DO
ED6522: ; BEGIN
ADDC 1 R0 ; J:=J+1
JMP S4 ED6210 ; STATUS:=OSTA(J)
MOV X7 R4 ;
MOVC 1<ECOARQ R3 ; OSTA(J):=OSTA(J) AND (OARQ)
AND R3 0. X7 ;
IBZ R4 ECOFUL ; IF STATUS(OFUL) THEN
JMP ED6526 ; BEGIN
IBN R4 ECOITX ; IF STATUS(-OITX) THEN
JMP ED6524 ; BEGIN
MOV R0 EDWRK0 ;
MOV R1 EDWRK1 ;
MOV ECOEBA-ECOSTA.X7 R5 ; BUFP:=OEBA(J)
MOVC -1 R3 ; K:=00
MON RNBN ; RELEASE(BUFP,K)
MOV EDWRK0 R0 ;
MOV EDWRK1 R1 ;
MOV ECRPTR R6 ;
JMP ED6526 ; END
ED6524: ; ELSE
; BEGIN
MOV ECOEBA-ECOSTA.X7 R3 ;
MOVC EOCTDC R2 ; TYPE:=DISCARD
IBN R4 ECOTQS ; OTQI:=FUNC(OTQS)
MODC ECOTQI1-ECOTQI0 ; 0.OTQI:=TYPE
MOVL R23 ECOTQI.X6 ; 1.OTQI:=EBP
; END
ED6526: ; END
XTR R1 ECOADC ;
SOB R1 ED6522 ; END
JMPI RL6520 ; RETURN
; END REMOVE.
;----------------------------------------------------------------------
; PROCEDURE ED6810.
; BOOLEAN TX_OPEN.
;
; REGISTERS: ENTRY EXIT
; R0 - DEST
; R4 LINK UNCH
; R5 OFLG (REL) UNCH
; R6 ECRP (REL) UNCH
; R7 - DEST
;
; RETURNS:
; LINK+0: FALSE
; LINK+1: TRUE
;----------------------------------------------------------------------
ED6810: ; BEGIN TX_OPEN.
MOV CSTPTR R7 ;
MOV CSTCDT.X7 R7 ;
SUB XBASE R7 ;
MOV ECOTEC.X6 R0 ;
ILT R0 2 ; IF OTEC >=2
ION CDONEB.X7 ; .OR. ONEB<>0 THEN
JMP 0. X4 ; FALSE
; ELSE
JMP 1. X4 ; TRUE
; END TX_OPEN.
;----------------------------------------------------------------------
; PROCEDURE ED6820.
; PROCEDURE QUEUE(EBP,QID,EBP/OSTAX)
;
; REGISTERS ENTRY EXIT
; R0 - DEST
; R1 EBP DEST
; R2 QID DEST
; R3 EBP/OSTAX DEST
; R4 LINK DEST
; R5 - DEST
; R6 ECRP UNCH
; R7 - DEST
;----------------------------------------------------------------------
ED6820: ; BEGIN QUEUE.
MOV R4 RL6820 ;
MOV ECOFLG.X6 R5 ; IF OFLG(OTXO) THEN
IBZ R5 ECOTXO ; SIM QUEUED
MON EDOTST ; EDC_OUTPUT_TEST
JMP ED6824 ; X0: SIM_QUEUED,GOTO SIM_MQO.
MOV ECOTEC.X6 R0 ;
IGE R0 2 ; IF OTEC .GE. 2 THEN
JMPI S4 EI1990 ; CP_ERROR.
ION ECOISW.X6 ; ITQI:=FUNC(OISW)
MODC ECOTQI1-ECOTQI0 ; 1.OTQI:=QID
MOVL R23 ECOTQI.X6 ; 2.OTQI:=N/X
INV ECOISW.X6 ; SHIFT OISW
INC ECOTEC.X6 ; OTEC:=OTEC+1
MOV CSTPTR R6 ;
MON RS0CDT ; RESERVE_CDT(CSTP)
JMPI S4 EI19A0 ;
ION CDONEB.X5 ; IF CDONEB <> 0 THEN
JMPI S4 EI1990 ; CP_ERROR
MOV R1 CDONEB.X5 ; CDONEB:=EBP
MOV R5 R7 ;
IOZP CDOCEB.X5 ; IF OCEB = 0 I.E.
ADDC CDOEST R7 ; (LINE IDLE.) THEN
SETS X7 CDOEDS ; SETS CDOEST(EDS)
MOVC 0 R3 ; EST:=0
MOV CSTCS7.X6 R0 ;
IBNP R0 CSTEMM ; IF EDC_MONITORING_MODE THEN
MON EDCTMO ; EDC_MONITORING_OUTPUT
JMPI S4 EI1900 ;
MON RL1CDT ; RELEASE_CDT(CDTP)
NOP ;
MOV ECRPTR R6 ;
JMPI RL6820 ; RETURN
;
ED6824: ; SIM_MQO.
MOV R3 R1 ;
MOD R2 ;
JMPI S4 ED0500 ; MQO_SERVICE(EBP,QID,N/X)
MOV ECRPTR R6 ;
JMPI RL6820 ; RETURN
; END QUEUE.
;-----------------------------------------------------------------------
;FF\f
;----------------------------------------------------------------------
; ED7040/ED7050/ED7060/ED7070/ED7080.
;
; MQI SERVICE PROCEDURES.
;
; REGISTERS: ENTRY EXIT
; R1,R2,R3,R5,R7 - DEST
; R4 LINK DEST
; R6 ECRP (REL) DEST
;
; ENTRY:
; ED7040: ACK_RX.
; ED7050: ACKL_RX.
; ED7060: NAK_RX.
; ED7070: NAK2_RX.
; ED7080: NAKF_RX.
; RETURNS:
; LINK+0: DONE
;
; CALL TO: ED6200,ED6210,ED6220,ED6230,ED6400,ED6420,
; ED6430,ED6520,ED7200.
; CALL BY: MAIN_INT.
;
;----------------------------------------------------------------------
ED7040: ; BEGIN ACK_RX.
;----------------------------------
MOV R4 RLMQIS ;
MOD R6 ;
MOVC ECOFLG R5 ;
IBN X5 ECOATO ; IF OFLG(OATO) THEN
JMP ED7099 ; GOTO RETURN (IGNORE_EB)
JMP S4 ED6400 ; IF NOT VALID(CRC,BID) THEN
JMP ED7088 ; REPORT(CRC_ERROR)
JMP S4 ED6210 ; STATUS:=OSTA(CIBID)
IEQ R0 ECOPSB.X6 ; IF CIBID<>OPSB
JMP ED7044 ; .AND. OFLG(-OTXD) THEN
IBZ X7 ECOTXD ; REPORT(UNEXP_ACK)
JMP ED7086 ; ELSE
IEQ R0 ECOFSB.X6 ; CASE OF CIBID
JMP ED7042 ; BEGIN
INE R0 ECOSSB.X6 ; 0. UNEXPECTED_ACK
JMP ED7086 ; REPORT(UNEXP_ACK)
;
; 1. CIBID:=OSSB
MOV R0 ECOFSB.X6 ; OFSB:=OSSB
MOV ECOS2S.X6 R1 ;
MOV R1 ECOS1S.X6 ; OS1S:=OS2S
CLR ECOS2S.X6 ; OS2S:=0
DEC ECOCSC.X6 ; OCSC:=OCSC-1
;
ED7042: ; 2. CIBID:=OFSB
MOVL ECOS1S.X6 R01 ;
MOV R1 ECOS1S.X6 ; OS1S:=OS2S
CLR ECOS2S.X6 ; OS2S:=0
DEC ECOCSC.X6 ; OCSC:=OCSC-1
MOD CSTPTR ; CSTLAS:=OS1S
MOV R0 CSTLAS ;
MOV ECOPSB.X6 R0 ; X0:=OPSB
MOVL ECOFSB.X6 R12 ; X1:=OFSB
MOVL R12 ECOPSB.X6 ; OPSB:=OFSB
; OFSB:=OSSB
JMP S4 ED6520 ; REMOVE(OSTA,OEBA,X0,X1)
MOVC NT% ;
(1<ECORAQ+1<ECOEAF) R0 ;
AND R0 ECOFLG.X6 ; CLEAR OFLG(ORAQ,OEAF)
MOD R6 ;
MOVC ECOFLG R5 ;
IBN X5 ECOPAT1 ;
JMP S4 ED6420 ; DEACTIVATE(ACKTO)
JMP S4 ED7200 ; INSERT_EB(OEBA)
JMP ED7099 ; GOTO RETURN
; END 1/2.
ED7044: ; 3. CIBID:=OPSB
IBZ X5 ECORAQ ; IF OFLG(-ORAQ) THEN
JMP ED7086 ; REPORT(UNEXP_ACK)
IBZ X5 ECOSBM ; IF OFLG(OSBM) THEN
JMP ED7046 ; BEGIN
RELS X5 ECOALTO ; CLEAR OFLG(OALTO)
MOD CSTPTR ;
MOVC CSTVF4 R7 ;
RELS X7 EECSRA ; CLEAR VF4(EECSRA)
ED7046: ; END
MOVC NT% ;
(1<ECORAQ+1<ECOSBM) R0 ;
AND R0 ECOFLG.X6 ; CLEAR OFLG(ORAQ,OSBM)
MOVC 1<ECOPCQ R0 ;
IOR R0 ECOFLG.X6 ; SETS OFLG(OPCQ)
IBN X5 ECOPAT1 ;
JMP S4 ED6420 ; DEACTIVATE(ACKTO)
JMP ED7099 ; GOTO RETURN
; END 3.
;----------------------------------------------------------------------
;
ED7050: ; BEGIN ACKL_RX.
;----------------------------------
MOV R4 RLMQIS ;
MOV ECOFLG.X6 R0 ;
IBN R0 ECOALTO ; IF OFLG(OALTO) THEN
JMP ED7099 ; GOTO RETURN (IGNORE EB)
MOD R6 ;
MOVC ECOQCW R5 ;
IBZ X5 ECOLTX ; IF OQCW(-OLTX) I.E. UNEXP.
JMP ED7087 ; .OR.
JMP S4 ED6400 ; CRC_ERROR
JMP ED7089 ; .OR.
INE R0 ECOCLB.X6 ; CIBID<>OCLB THEN
JMP ED7087 ; REPORT(ERROR)
; ELSE
; BEGIN
RELS X5 ECOLTX ; CLEAR OQCW(OLTX)
JMP S4 ED6440 ; DEACTIVATE(ACKLTO)
MOV ECOLER.X6 R5 ;
MOVC -1 R3 ;
MON RNBN ; RELEASE LCB
; END
JMP ED7099 ; GOTO RELEASE_IEB
;----------------------------------------------------------------------
;
ED7060: ; BEGIN NAK_RX.
;----------------------------------
MOV R4 RLMQIS ;
MOD R6 ;
MOVC ECOFLG R5 ;
IBZ X5 ECOATO ; IF OFLG(OATO)
IBN X5 ECOSBM ; .OR. OFLG(OSBM) THEN
JMP ED7099 ; GOTO RETURN
JMP S4 ED6400 ; IF NOT VALID(IEST,BID)
JMP ED7090 ; .OR.
JMP S4 ED6240 ; OUT_OF_RANGE(BID) THEN
JMP ED7096 ; GOTO REPORT
JMP S4 ED6220 ; UPDATE_ONTX
JMP S4 ED6210 ; STATUS:=OSTA(CIBID)
IBZ X7 ECOTXD ; IF STATUS(-OTXD)THEN
JMP ED7096 ; REPORT
IBN X7 ECOITX ; IF STATUS(OITX) THEN
JMP ED7099 ; IGNORE BLOCK
MOD ECFPTR ;
MOV ECGRCL R4 ;
SLL R4 ECONCT ;
IHS X7 R4 ; IF NAK COUNT LIMIT EXCEEDED THEN
JMP ED7093 ; GOTO REPORT
SETS X7 ECONKD ; SETS OSTA(CIBID,ONKD)
RELS X5 ECORAQ ; CLEAR OFLG(ORAQ)
IBN X5 ECOPAT1 ;
JMP S4 ED6420 ; DEACTIVATE(ACKTO)
JMPI S4 EI1600 ; SCHEDULE(D_TX)
JMP ED7099 ; GOTO RETURN
;----------------------------------------------------------------------
;
ED7070: ; BEGIN NAK2_RX.
;----------------------------------
MOV R4 RLMQIS ;
MOD R6 ;
MOVC ECOFLG R5 ;
IBZ X5 ECOATO ; IF OFLG(OATO)
IBN X5 ECOSBM ; .OR. OFLG(OSBM) THEN
JMP ED7099 ; GOTO RETURN
MOV CIBUF R5 ; BUFP:=CIBUF
MOVC EBBD2X R0 ; OFFS:=BD2X
JMP S4 ED6200 ; READBUF(BUFP,OFFS,BID)
XTR R1 EOCBDX ;
MOV R1 CIBID2 ; CIBID2:=BID
MOV CIBID2 R0 ;
IBN R0 BIT7 ; IF BID2 PARITY_ERROR
JMP ED7091 ; .OR.
JMP S4 ED6240 ; OUT_OF_RANGE(BID2)
JMP ED7097 ; .OR.
JMP S4 ED6400 ; NOT VALID(IEST,BID1)
JMP ED7091 ; .OR.
JMP S4 ED6240 ; OUT_OF_RANGE(BID1)
JMP ED7097 ; .OR.
MOV CIBID2 R1 ; NBID1,BID2 NOT IN CORRECT
SUB R0 R1 ; ORDER I.E.
XTR R1 EOCBDX ; (BID2-BID1)MOD128<OSAZ )
IHS R1 ECOSAZ ; THEN
JMP ED7097 ; GOTO REPORT
JMP S4 ED6220 ; UPDATE_ONTX
;
ADDC 1 R1 ; FOR N:=BID1 UNTIL BID2 DO
ED7072: ; BEGIN
JMP S4 ED6210 ; STATUS:=OSTA(N)
MOD ECFPTR ;
MOV ECGRCL R4 ;
SLL R4 ECONCT ;
IHS X7 R4 ; IF COUNT_LIMIT_EXCEEDED
JMP ED7094 ; .OR.
IBZ X7 ECOTXD ; EB NOT AVAILABLE THEN
JMP ED7097 ; GOTO REPORT
; ELSE
SETS X7 ECONKD ; SETS STATUS(ONKD)
ADDC 1 R0 ;
SOB R1 ED7072 ; END
MOD R6 ;
MOVC ECOFLG R5 ;
RELS X5 ECORAQ ; CLEAR OFLG(ORAQ)
IBN X5 ECOPAT1 ;
JMP S4 ED6420 ; DEACTIVATE(ACKTO)
JMPI S4 EI1600 ; SCHEDULE(D_TX)
JMP ED7099 ; GOTO RETURN
;----------------------------------------------------------------------
;
ED7080: ; BEGIN NAKF_RX.
;----------------------------------
MOV R4 RLMQIS ;
MOD R6 ;
MOVC ECOFLG R5 ;
IBZ X5 ECOATO ; IF OFLG(OATO)
IBN X5 ECOSBM ; .OR. OFLG(OSBM) THEN
JMP ED7099 ; GOTO RETURN
JMP S4 ED6400 ; IF NOT VALID(IEST,BID) THEN
JMP ED7092 ; GOTO REPORT
JMP S4 ED6240 ; IF NOT OUT_OF_RANGE(BID) THEN
JMP ED7082 ; BEGIN
JMP S4 ED6210 ; STATUS:=OSTA(CIBID)
IBZ X7 ECOTXD ; IF STATUS(-OTXD) THEN
JMP ED7098 ; GOTO REPORT
; ELSE
ADDC 1 R0 ; N:=CIBID+1
JMP ED7083 ; END
ED7082: ; ELSE
; BEGIN
INE R0 ECOPSB.X6 ; IF CIBID <> OPSB THEN
JMP ED7098 ; GOTO REPORT
; ELSE
; BEGIN
ADDC 1 R0 ; N:=CIBID+1
JMP S4 ED6210 ; STATUS:=OSTA(N)
IBZ X7 ECOTXD ; IF STATUS(-OTXD) THEN
JMP ED7098 ; GOTO REPORT
; END
ED7083: ; END
JMP S4 ED6220 ; UPDATE_ONTX
;
; REPEAT
ED7084: ; BEGIN
JMP S4 ED6210 ; STATUS:=OSTA(N)
IBZ X7 ECOITX ;
IBN X7 ECOTXD ;
IBN X7 ECOARQ ;
JMP ED7085 ;
MOD ECFPTR ;
MOV ECGRCL R4 ;
SLL R4 ECONCT ;
IHS X7 R4 ; IF NAK LIMIT EXCEEDED THEN
JMP ED7095 ; GOTO REPORT
SETS X7 ECONKD ; SETS STATUS(ONKD)
ADDC 1 R0 ; N:=N+1
JMP ED7084 ; UNTIL ((-OTXD.AND.-OITX)
; .OR.ORAQ)
ED7085: ;
RELS X5 ECORAQ ; CLEAR OFLG(ORAQ)
IBN X5 ECOPAT1 ;
JMP S4 ED6420 ; DEACTIVATE(ACKTO)
JMPI S4 EI1600 ; SCHEDULE(D_TX)
JMP ED7099 ; GOTO RETURN
;----------------------------------------------------------------------
;
; REPORT.
;----------------------------------
; UNEXPECTED BLOCKS.
ED7086: MODC EEC014-EEC015 ; ACK
ED7087: MODC EEC015-EEC004 ; ACKL
; EB_CRC_ERROR.
ED7088: MODC EEC004-EEC005 ; ACK
ED7089: MODC EEC005-EEC006 ; ACKL
ED7090: MODC EEC006-EEC007 ; NAK
ED7091: MODC EEC007-EEC008 ; NAK2
ED7092: MODC EEC008-EEC106 ; NAKF
; RE_TX COUNT EXCESS.
ED7093: MODC EEC106-EEC107 ; NAK
ED7094: MODC EEC107-EEC108 ; NAK2
ED7095: MODC EEC108-EEC116 ; NAKF
; BLOCK NOT AVAILABLE.
ED7096: MODC EEC116-EEC117 ; NAK
ED7097: MODC EEC117-EEC118 ; NAK2
ED7098: MODC EEC118 ; NAKF
MOVC 0 R0 ;
JMPI S4 EI1800 ; REPORT(ERROR_CODE)
NOP ;
ED7099: ; RETURN.
JMP S4 ED6230 ; RELEASE_IEB
JMPI RLMQIS ; RETURN LINK+0
; END ACK/ACKL/NAK/NAK2/NAKF_RX.
;----------------------------------------------------------------------
;FF\f
;----------------------------------------------------------------------
; ED7110/ED7120/ED7130/ED7140/ED7150/ED7160/ED7170/ED7190.
;
; MQO_SERVICE_PROCEDURES.
;
; REGISTERS: ENTRY EXIT
; R0 TQI DEST
; R1 EBP/OSTAX DEST
; R3 EBR(MQO) DEST
; R4 LINK DEST
; R2,R5,R6,R7 - DEST
; ENTRY:
; ED7110: D_TX_DONE.
; ED7120: LCB_TX_DONE
; ED7130: ACK_TX_DONE.
; ED7140: NAK_TX_DONE.
; ED7150: ACKL_TX_DONE.
; ED7160: RR_TX_DONE.
; ED7170: SETB_TX_DONE.
; ED7190: RELEASE_EB.
;
; RETURNS:
; LINK+0: DONE.
;
; CALL TO: ED6410,ED6430
; CALL BY: MAIN_INT.,ED6820
;----------------------------------------------------------------------
ED7110: ; BEGIN D_TX_DONE.
;----------------------------------
;
RELS X1 ECOITX ; CLEAR OSTA(X)(OITX)
SETS X1 ECOTXD ; SETS OSTA(X)(OTXD)
JMP 0. X4 ; RETURN LINK+0
; END D_TX_DONE.
;----------------------------------------------------------------------
ED7120: ; BEGIN LCB_TX_DONE.
;----------------------------------
MOV R4 RLMQOS ;
MOVC NT(1<ECOLIT) R4 ; CLEAR OQCW(OLIT)
AND R4 ECOQCW.X6 ;
INC ECOLCT.X6 ; OLCT:=OLCT+1
JMP S4 ED6430 ; ACTIVATE(ACKLTO)
JMPI RLMQOS ; RETURN LINK+0
; END LCB_TX_DONE.
;----------------------------------------------------------------------
ED7130: ; BEGIN ACK_TX_DONE.
;----------------------------------
;
ED7140: ; BEGIN NAK_TX_DONE.
;----------------------------------
;
ED7150: ; BEGIN ACKL_TX_DONE.
;----------------------------------
;
JMP ED7190 ; GOTO RELEASE_BUFFER.
;
ED7160: ; BEGIN RR_TX_DONE.
;----------------------------------
MOV R4 RL7160 ;
MOVC NT(1<ECORRP) R0 ;
AND R0 ECOFLG.X6 ; CLEAR OFLG(ORRP)
INC ECORCT.X6 ; ORCT:=ORCT+1
JMP S4 ED7190 ; RELEASE_EB
JMP S4 ED6410 ; ACTIVATE(ACKTO-TYP1)
JMPI RL7160 ; RETURN
;
ED7170: ; BEGIN SETB_TX_DONE.
;----------------------------------
;
ED7190: ; RELEASE_EB:
MOV R4 RLMQOS ;
INE R1 R3 ; IF EBR(MQO)<>EBP THEN
JMPI S4 EI1900 ;E ERROR0(TQI-MISMATCH)
MOVC -1 R3 ;
MOV R1 R5 ; BUFP:=EBP
MON RNBN ; RELEASE BINS
JMPI RLMQOS ; RETURN LINK+0
; END ACK/NAK/ACKL/RR/SETB_TX_DONE.
;----------------------------------------------------------------------
;FF\f
;----------------------------------------------------------------------
; PROCEDURE ED7200.
; INSERT_EB(OEBA,OLER).
;
; REGISTERS: ENTRY EXIT
; R0,R1,R2,R3,R5,R7 - DEST
; R4 LINK DEST
; R6 ECRP (REL) UNCH
;
; CALL TO: ED6210,ED8400
; CALL BY: ED3600,ED7040
; ENTRIES:
; ED7200
; RETURNS:
; LINK+0: DONE
;----------------------------------------------------------------------
ED7200: ;BEGIN INSERT_EB.
MOV R4 RL7200 ;
ED7210: ;
MOV ECOFLG.X6 R0 ;WHILE OFLG(-OEMP) I.E.
IBN R0 ECOEMP ; (OBQ NOT EMPTY) DO
JMP ED7240 ;
IBN R0 ECOEAF ; IF OFLG(-OEAF) THEN
JMP ED7220 ; BEGIN
JMPI S4 EI8400 ; COMPOSE_OEB
MOV ECRPTR R6 ;
MOV COEBBT R0 ;
IEQ R0 BTLCB ; IF LCB COMPOSED THEN
JMP ED7224 ; GOTO INSERT_LCB
IEQ R0 0 ; IF NO EB COMPOSED THEN
JMP ED7230 ; GOTO UPDATE_OFLG
ED7214: ; ELSE
MOV ECONIX.X6 R0 ; BEGIN
JMP S4 ED6210 ; X:=INDEX(ONIX)
IBN X7 ECOFUL ; IF OSTA(X)(OFUL)) THEN
JMPI S4 EI1990 ; CP_ERROR
MOV COSMSK R1 ;
MOV R1 0. X7 ; OSTA(X):=COSMSK
MOV COEBPT R2 ;
MOV R2 ECOEBA-ECOSTA.X7 ; OEBA(X):=EBP
MOVC 1<ECODTP R0 ;
IOR R0 ECOQCW.X6 ; SETS OQCW(ODTP)
INC ECONIX.X6 ; ONIX:=ONIX+1
MOV ECONIX.X6 R0 ;
JMP S4 ED6210 ; X:=INDEX(ONIX)
IBN R1 ECOESM ; IF EOS/EOM_EB THEN
INC ECOCSC.X6 ; OCSC:=OCSC+1
MOV ECOCSC.X6 R0 ;
IGEP R0 2 ; IF OCSC .GE. 2 THEN
; BEGIN
SETS X7 ECOARQ ; SETS OSTA(X)(OARQ)
JMP ED7232 ; GOTO UPDATE_OFLG
; END
JMP ED7210 ; END
; END
ED7220: ; ELSE
MOV ECOQCW.X6 R0 ; BEGIN
IBZ R0 ECOLRX ; IF LCB_NOT_PENDING THEN
JMP ED7240 ; GOTO RETURN
JMPI S4 EI8400 ; COMPOSE_OEB
MOV ECRPTR R6 ;
MOV COEBBT R0 ;
INE R0 BTLCB ; IF EBBT <> BTLCB THEN
JMPI S4 EI1990 ; CP_ERROR
;
ED7224: ; INSERT_LCB:
MOD R6 ;
MOVC ECOQCW R5 ;
IBN X5 ECOLTX ; IF LCB_IN_PROCRESS THEN
JMPI S4 EI1990 ; CP_ERROR(ODP-FAILLURE)
RELS X5 ECOLRX ;
SETS X5 ECOLTX ; PUT OCQW(OLTX,-OLRX,OLCP)
SETS X5 ECOLCP ;
CLR ECOLCT.X6 ; OLCT:=0
MOV COEBPT R0 ;
MOV R0 ECOLER.X6 ; OLER:=EBP
MOV COBID R0 ;
MOV R0 ECOCLB.X6 ; OCLB:=COBOD
JMP ED7210 ; END
;
ED7230: MODC 1<ECOEMP-1<ECOEAF ; UPDATE_OFLG:
ED7232: MODC 1<ECOEAF ;
ED7234: MODC 1<ECOOEP+1<ECOEBP ;
MOVC 1<ECOPCQ R0 ;
IOR R0 ECOFLG.X6 ; UPDATE(OEMP/OEAF/OEBP/OOEP/OPCQ)
JMP ED7210 ;END_DO_WHILE.
ED7240: ;
JMPI RL7200 ; RETURN
;END INSERT_EB.
;----------------------------------------------------------------------
;FF\f
;----------------------------------------------------------------------
; PROCEDURE ED7290.
;
; PROCESS_REQUEST.
;
; REGISTERS: ENTRY EXIT
; R0,R1,R2,R3,R5,R7 - DEST
; R4 LINK DEST
; R6 ECRP (REL) UNCH
;
; CALL BY: MAIN_INT.
; CALL TO: ED6410,ED6412,ED6420,ED7410,ED7420,ED7430
; ED7440,ED7450,ED7460,ED7470,ED7490
; RETURNS:
; LINK+0: DONE
;----------------------------------------------------------------------
;
; CASE_JUMP_TABLES:
;----------------------------------------------------------------------
ED7250:; CASE(SBM,ATO,RRP,RAQ) ; (SBM,ATO,RRP,RAQ)
ED7300,ED7310,ED7380,ED7380 ; 0000,0001,0010,0011
ED7320,ED7330,ED7340,ED7390 ; 0100,0101,0110,0111
ED7380,ED7310,ED7380,ED7380 ; 1000,1001,1010,1011
ED7320,ED7350,ED7340,ED7390 ; 1100,1101,1110,1111
;----------------------------------------------------------------------
ED7260:; CASE0(EBP,PAT2,PAT1) ; (EBP,PAT2,PAT1)
ED6412,ED7390,ED7390,ED7380 ; 000,001,010,011
ED7304,ED7304,ED7302,ED7380 ; 100,101,110,111
;----------------------------------------------------------------------
ED7270:; CASE1(EBP,PAT2,PAT1) ; (EBP,PAT2,PAT1)
ED6410,ED7390,ED7380,ED7380 ; 000,001,010,011
ED6410,ED7314,ED7380,ED7380 ; 100,101,110,111
;----------------------------------------------------------------------
ED7280:; CASE(ALP,LCP,NKP,ACP,DTP) ; (ALP,LCP,NKP,ACP,DTP)
ED7490 ; 00000
ED7410 ; 00001
ED7420,ED7420 ; 0001X
ED7430,ED7430,ED7430,ED7430 ; 001XX
ED7440,ED7440,ED7440,ED7440 ; 01XXX
ED7440,ED7440,ED7440,ED7440 ; 01XXX
ED7450,ED7450,ED7450,ED7450 ; 1XXXX
ED7450,ED7450,ED7450,ED7450 ; 1XXXX
ED7450,ED7450,ED7450,ED7450 ; 1XXXX
ED7450,ED7450,ED7450,ED7450 ; 1XXXX
;----------------------------------------------------------------------
;
ED7290: ; BEGIN PROCESS_REQUEST.
MOV R4 RL7290 ;
ED7292: ; REPEAT
MOD R6 ;
MOVC ECOFLG R5 ;
IBN X5 ECOSCQ ; IF OFLG(OSCQ) THEN
JMP ED7314 ; GOTO INPUT CONTROL BLOCK TX
MOV X5 R0 ;
XTR R0 ECOSBM+1 ;
SRL R0 ECORAQ ;
MOD R0 ;
JMPI S4 ED7250 ; CASE_ACTION(SBM,ATO,RRP,RAQ)
JMP ED7292 ; UNTIL EXIT
; END
;----------------------------------------------------------------------
ED7300: ; 1.(SBM,ATO,RRP,RAQ):=0000
MOV ECOFLG.X6 R0 ; REPEAT
XTR R0 ECOEBP+1 ;
SRL R0 ECOPAT1 ;
MOD R0 ;
JMPI S4 ED7260 ; CASE0(EBP,PAT2,PAT1)
JMP ED7300 ; UNTIL EXIT
;
ED7302: ; DEACTIVATE(ACKTO-TYP2)
MOV R4 RL7300 ;
MOV ECOFLG.X6 R0 ;
IBN R0 ECOOEP ; IF OUTBOUND_EB PENDING THEN
JMP S4 ED6420 ; DEACTIVATE(ACKTO)
JMP ED7306 ; GOTO TX_PENDING EB.
;
ED7304: ; PROCESS(EBP)
MOV R4 RL7300 ;
ED7306: ; REPEAT
MOD R6 ;
MOVC ECOFLG R5 ;
JMP S4 ED6810 ; IF TX_NOT_POSSIBLE THEN
JMP ED7390 ; EXIT
ADDC ECOQCW-ECOFLG R5 ; ELSE
MOV X5 R0 ;
XTR R0 ECOALP+1 ;
SRL R0 ECODTP ;
MOD R0 ;
JMPI S4 ED7280 ; CASE(ALP,LCP,NKP,ACP,DTP)
JMP ED7306 ; X0: GOTO REPEAT
JMPI RL7300 ; X1: IDLE,RETURN
JMP ED7390 ; X2: BUSY,GOTO EXIT
; UNTIL EXIT/IDLE.
; END PROCESS(EBP)
;----------------------------------------------------------------------
ED7310: ; 2.(SBM,ATO,RRP,RAQ):=0001
MOV ECOFLG.X6 R0 ; REPEAT
XTR R0 ECOEBP+1 ;
SRL R0 ECOPAT1 ;
MOD R0 ;
JMPI S4 ED7270 ; CASE1(EBP,PAT2,PAT1)
JMP ED7310 ; UNTIL EXIT
;
ED7314: ; REPEAT
MOD R6 ;
MOVC ECOFLG R5 ;
JMP S4 ED6810 ; IF TX_NOT_POSSIBLE THEN
JMP ED7390 ; EXIT
ADDC ECOQCW-ECOFLG R5 ; ELSE
MOV X5 R0 ;
MOVC NT(1<ECOLCP+1<ECODTP)%;
R1 ;
AND R1 R0 ;
XTR R0 ECOALP+1 ;
SRL R0 ECODTP ;
IEQ R0 0 ; IF NO NAK/ACK/ACKL THEN
JMP ED7390 ; GOTO EXIT
MOD R0 ;
JMPI S4 ED7280 ; CASE(ALP, 0 ,NKP,ACP, 0 )
JMP ED7314 ; WHILE INPUT CONTROL BLOCKS/
; IS PENDING.
;----------------------------------------------------------------------
ED7320: ; 3.(SBM,ATO,RRP,RAQ):=0100/1100
SETS X5 ECORAQ ; SETS OFLG(ORAQ)
CLR ECORCT.X6 ; ORCT:=0
JMP 0. X4 ; RETURN
;----------------------------------------------------------------------
ED7330: ; 4.(SBM,ATO,RRP,RAQ):=0101
MOV ECORCT.X6 R0 ;
MOD ECFPTR ;
MOV ECGRCL R1 ;
IGE R0 R1 ; IF RR RE_TX EXCEEDED THEN
JMP ED7385 ; GOTO REPORT(URE)
RELS X5 ECORAQ ; CLEAR OFLG(ORAQ)
SETS X5 ECORRP ; SETS OFLG(ORRP)
JMP 0. X4 ; RETURN
;----------------------------------------------------------------------
ED7340: ; 5.(SBM,ATO,RRP,RAQ):=0110/1110
MOV R4 RL7300 ;
JMP S4 ED6810 ; IF TX_NOT_POSSIBLE THEN
JMP ED7390 ; GOTO EXIT
SETS X5 ECORAQ ; SETS OFLG(ORAQ)
JMP S4 ED7470 ; RR_TX
JMPI RL7300 ; RETURN
;----------------------------------------------------------------------
ED7350: ; 6.(SBM,ATO,RRP,RAQ):=1101
MOV R4 RL7300 ;
MOV ECORCT.X6 R0 ;
MOD ECFPTR ;
MOV ECGRCL R1 ;
IGE R0 R1 ; IF RR_RE_TX EXCEEDED THEN
JMP ED7386 ; GOTO REPORT(URE)
JMP S4 ED6810 ; IF TX_NOT_POSSIBLE THEN
JMP ED7390 ; GOTO EXIT
SETS X5 ECORRP ;
RELS X5 ECORAQ ; PUT OFLG(ORRP,-ORAQ)
JMP S4 ED7460 ; SETB_TX
JMPI RL7300 ; RETURN
;----------------------------------------------------------------------
ED7380: ; 7.(SBM,ATO,RRP,RAQ):=ELSE
JMPI EI1990 ; CP_ERROR
JMP ED7390 ;
ED7385: ; REPORT.
MODC EEC10A-EEC10B ;
ED7386: MOVC EEC10B R0 ;
JMPI S4 EI1800 ;
NOP ;
ED7390: ; EXIT.
JMPI RL7290 ; RETURN LINK+0
; END PROCESS_REQUEST.
;----------------------------------------------------------------------
;FF\f
;----------------------------------------------------------------------
; PROCEDURE ED7400.
; PROCEDURE TRANSMIT.
;
; REGISTERS: ENTRY EXIT
; R0,R1,R2,R3 - DEST
; R4 LINK DEST
; R5 OQCW.ECR DEST
; R6 ECRP (REL) UNCH
; R7 - DEST
;
; CALL BY: ED7290
; CALL TO: ED6200,ED6210,ED6410,ED6820
; ENTRIES:
; ED7410: DATA_TX
; ED7420: ACK_TX
; ED7430: NAK_TX
; ED7440: LCB_TX
; ED7450: ACKL_TX
; ED7460: SETB_TX
; ED7470: RR_TX
; ED7490: TX_QUEUE'S_EMPTY
; RETURNS:
; LINK+0: DONE
; LINK+1: IDLE
; LINK+2: BUSY/ERROR
;----------------------------------------------------------------------
; DATA_TX_JUMP_TABLE: CASE_OSTA(ARQ,NKD,ITX,TXD,FUL)
;-----------------------------------------------------------------------
ED7400: ;
ED7414,ED7418,ED741E,ED7412,ED741E,ED7412,ED741E,ED7412; 00000-00111
ED741E,ED741E,ED741E,ED741A,ED741E,ED741E,ED741E,ED741C; 01000-01111
ED7416,ED7418,ED741E,ED7416,ED741E,ED7416,ED741E,ED7416; 10000-10111
ED741E,ED741E,ED741E,ED741A,ED741E,ED741E,ED741E,ED741C; 11000-11111
;----------------------------------------------------------------------
ED7410: ; BEGIN DATA_TX.
;----------------------------------
MOV R4 RL7400 ;
ED7411: ; INSPECT_NEXT.
MOV ECONTX.X6 R0 ;
JMP S4 ED6210 ; STATUS:=OSTA(ONTX)
MOV X7 R0 ;
XTR R0 ECOARQ+1 ;
SRL R0 ECOFUL ;
MOD R0 ; CASE_OSTA(ARQ,NKD,ITX,TXD,FUL)
JMPI ED7400 ;
ED7412: ; 1. (00011/00101/00111)
INC ECONTX.X6 ; ONTX:=ONTX+1
JMP ED7411 ; GOTO INSPECT_NEXT.
;
ED7414: ; 2. (00000)
RELS X5 ECODTP ; CLEAR OQCW(ODTP)
JMPI RL7400 ; RETURN LINK+0
;
ED7416: ; 3. (10000/10011/10101/10111)
RELS X5 ECODTP ; CLEAR OQCW(ODTP)
JMP S4 ED6410 ; ACTIVATE(ACKTO-TYPE1)
JMPI RL7400 ; RETURN LINK+0
;
ED7418: ; 4. (00001/10001)
IBZ X7 ECOESM ; IF EOS/EOM-EB THEN
JMP ED7419 ; BEGIN
MOV ECONTX.X6 R0 ;
XTR R0 EOCBDX ; BID:=(ONTX)MOD128
MOV R0 ECOSSB.X6 ; OSSB:=BID
MOV ECOPSB.X6 R1 ; IF OPSB=OFSB I.E.
IEQ R1 ECOFSB.X6 ; (FIRST EOS TO TX) THEN
MOV R0 ECOFSB.X6 ; OFSB:=BID
ED7419: ; END
;
MOV ECOEBA-ECOSTA.X7 R5 ; BUFP:=EBP
MOV R7 R2 ;
MOVC EBCNTX R0 ; OFFS:=EBCNTX
JMP S4 ED6200 ; READBUF(BUFP,OFFS,WORD)
MOVC EDWRK7 R7 ;
MOV R1 X7 ;
SRL R1 1 ;
MODC 2#111<7 ; COUNT:=FUNC(WORD)
PUT R1 X7 ;
MOV X7 R0 ;
XTR R0 10 ;
NEG R0 ;
MOV CSTPTR R7 ;
ADD R0 CSTNOC.X7 ; CSTNOC:=CSTNOC-COUNT
MOV R2 R7 ;
ED741A: ; 5. (01011/11011)
ION ECOISW.X6 ;
MODC 1<ECOTQS ;
MOVC 1<ECOITX R0 ;
MODC 1<ECOTQS+1<ECOITX+% ;
1<ECONKD ; PUT_OSTA(OTQS,OITX,-ONKD)
PUT R0 X7 ;
MOD X7 ;
MOVC 1<ECONCT X7 ; ONCT:=ONCT+1
MOV ECOEBA-ECOSTA.X7 R1 ; EBP:=OEBA(ONTX)
MOVC EOCTDT R2 ; QID:=D
MOV R7 R3 ; X:=INDEX(OSTA(ONTX))
JMP S4 ED6820 ; QUEUE(EBP,QID,X)
INC ECONTX.X6 ; ONTX:=ONTX+1
JMPI RL7400 ; RETURN LINK+0
;
ED741C: ; 6. (01111/1111)
MOV RL7400 R4 ; BUSY_LINE
JMP 2. X4 ; RETURN LINK+2
;
ED741E: ; 7. ( ELSE )
JMPI S4 EI1990 ; CP_ERROR(INVALID OSTA)
MOV RL7400 R4 ;
JMP 2. X4 ; RETURN LINK+2
; END DATA_TX.
;-----------------------------------------------------------------------
ED7420: ; BEGIN ACK_TX.
;----------------------------------
IOZP ECCAQH+QCCQE.X6 ; IF ACK_QUEUE EMPTY THEN
RELS X5 ECOAKP ; CLEAR(OQCW.OACP)
JMP 0. X4 ; RETURN LINK+0
MOV R4 RL7400 ; ELSE
MOD ECRPTA ; BEGIN
MOVC ECCAQH R4 ; Q:=CAQH
MOVC 1 R3 ; N:=1
MON LNOQ ; DEQUEUE(Q,N,FBUF,LBUF)
NOP ;
MOV ECRPTR R6 ;
MOV R5 R3 ;
MOV R5 R1 ; EBP:=FBUF
MOVC EOCTAC R2 ; QID:=ACK
JMP S4 ED6820 ; QUEUE(EBP,QID,EBP)
JMPI RL7400 ; RETURN LINK+0
; END
; END ACK_TX.
;-----------------------------------------------------------------------
ED7430: ; BEGIN NAK_TX.
;----------------------------------
IOZP ECCNQH+QCCQE.X6 ; IF NAK_QUEUE EMPTY THEN
RELS X5 ECONKP ; CLEAR(OQCW.ONKP)
JMP 0. X4 ; RETURN LINK+0
MOV R4 RL7400 ; ELSE
MOD ECRPTA ; BEGIN
MOVC ECCNQH R4 ; Q:=CNQH
MOVC 1 R3 ; N:=1
MON LNOQ ; DEQUEUE(Q,N,FBUF,LBUF)
NOP ;
MOV ECRPTR R6 ;
MOV R5 R3 ;
MOV R5 R1 ; EBP:=FBUF
MOVC EOCTNK R2 ; QID:=NAK
JMP S4 ED6820 ; QUEUE(EBP,QID,EBP)
JMPI RL7400 ; RETURN LINK+0
; END
; END NAK_TX
;-----------------------------------------------------------------------
ED7440: ; BEGIN LCB_TX.
;----------------------------------
IBZ X5 ECOLTX ; IF LCB_NOT_AVAILABLE THEN
JMPI S4 EI1990 ; GOTO CP_ERROR.
MOV R4 RL7400 ; ELSE
; BEGIN
RELS X5 ECOLCP ; CLEAR(OQCW.OLCP)
SETS X5 ECOLIT ; SETS OQCW(OLIT)
MOV ECOLER.X6 R1 ; EBP:=OLER
MOVC EOCTLC R2 ; QID:=LCB
MOVC 0 R3 ;
JMP S4 ED6820 ; QUEUE(EBP,QID,0)
JMPI RL7400 ; RETURN LINK+0
; END
; END LCB_TX.
;-----------------------------------------------------------------------
ED7450: ; BEGIN ACKL_TX.
;----------------------------------
IOZP ECCALQH+QCCQE.X6 ; IF ACKL_QUEUE EMPTY THEN
RELS X5 ECOALP ; CLEAR(OQCW,OALP)
JMP 0. X4 ; RETURN LINK+0
MOV R4 RL7400 ; ELSE
MOD ECRPTA ; BEGIN
MOVC ECCALQH R4 ; Q:=CALQH
MOVC 1 R3 ; N:=1
MON LNOQ ; DEQUEUE(Q,N,FBUF,LBUF)
NOP ;
MOV ECRPTR R6 ;
MOV R5 R3 ;
MOV R5 R1 ; EBP:=FBUF
MOVC EOCTAL R2 ; QID:=ACKL
JMP S4 ED6820 ; QUEUE(EBP,QID,EBP)
JMPI RL7400 ; RETURN LINK+0
; END
; END ACKL_TX.
;----------------------------------------------------------------------
ED7460: ; BEGIN SETB_TX.
;----------------------------------
MOV R4 RL7400 ;
MOVC COEBCC R7 ;
MOVC 4 X7 ; COEBCC:=4
MOV ECOPSB.X6 R0 ;
MOV R0 COBID ; COBID:=OPSB
JMP S4 ED6322 ; GENERATE_SETB(COBID,BUFP)
JMPI RL7400 ; NO BINS - DON'T TRANSMIT
MOV ECRPTR R6 ;
MOV R5 R3 ;
MOV R5 R1 ; EBP:=BUFP
MOVC EOCTSB R2 ; QID:=SETB
JMP S4 ED6820 ; QUEUE(EBP,QID,EBP)
JMPI RL7400 ; RETURN LINK+0
; END SETB_TX
;----------------------------------------------------------------------
ED7470: ; BEGIN RR_TX.
;----------------------------------
MOV R4 RL7400 ;
MOVC COEBCC R7 ;
MOVC 4 X7 ; COEBCC:=4
MOD ECOCSC.X6 ;
MOV ECOPSB.X6 R0 ; COBID:='LAST EOS/EOM-BID'
MOV R0 COBID ;
JMP S4 ED6320 ; GENERATE_RR(0,BUFP)
JMPI RL7400 ; NO BINS - DON'T TRANSMIT
MOV ECRPTR R6 ;
MOV R5 R3 ;
MOV R5 R1 ; EBP:=BUFP
MOVC EOCTRR R2 ; QID:=RR
JMP S4 ED6820 ; QUEUE(EBP,QID,EBP)
JMPI RL7400 ; RETURN LINK+0
; END RR_TX.
;----------------------------------------------------------------------
ED7490: ; BEGIN TX_QUEUE'S_EMPTY.
;----------------------------------
MOVC NT% ;
(1<ECOOEP+1<ECOEBP) R0 ;
AND R0 ECOFLG.X6 ; CLEAR OFLG(OEBP)
JMP 1. X4 ; RETURN LINK+1
; END EMPTY_TX_QUEUES.
;----------------------------------------------------------------------"
;FF\f
;-----------------------------------------------------------------------
; PROCEDURE ED8100
; WRITE_OEB
;
; REGISTERS ENTRY EXIT
; R0 - EB_COUNT
; R1 - EB_TYPE/BID
; R2,R3 - DESTROYED
; R4 LINK DESTROYED
; R5 - EB_ADDR (ABS)
; R6 ECRP (REL) ECRP (REL)
; R7 - DESTROYED
;
; INPUTS: COEBCC,COEBBT,COEBPT,COEBPW
; OUTPUTS: EB (COUNT,TYPE,BID)
;
; CALL BY: ED8400
; CALL TO: ED6200
;-----------------------------------------------------------------------
ED8100: ; BEGIN WRITE_OEB
MOV R4 RL8100 ;
MOVC COEBCC R7 ;
MOV X7 R1 ;
XTR R1 7 ; COUNT:=CHA_COUNT EXTRACT 7
SLL X7 1 ;
MODC #00FF ; CHA_COUNT:=
PUT R1 X7 ; 2*CHA_COUNT AND #00FF+COUNT
MOV COEBPT R5 ; BUFP:=EB_ADDR
MOV COEBBT R2 ; TYPE:=EB_TYPE
INEP R2 BTLCB ; IF TYPE<>LCB_TYPE THEN
MOV ECONIX.X6 R1 ; BID:=ONIX
JMP ED8102 ; ELSE
; BEGIN
MOVC EBBIDX R0 ; OFFS:=EBBIDX
JMP S4 ED6200 ; READBUF(BUFP,OFFS,WORD)
SWP R1 ;
XTR R1 EOCBDX ; BID:=WORD
MOV R1 COBID ; COBID:=BID
; END
ED8102: ;
XTR R1 EOCBDX ; BID:=(BID)MOD128
SWP R1 ;
IOR R2 R1 ;
MOV COEBCC R0 ;
MOV COEBPW R3 ;
SUB XBASE R5 ;
SVS R7 ; MASK:=PSW
LDS R3 ; PSW:=EB_MASK
MOV R0 EBCNTX.X5 ; EB_COUNT:=COUNT
MOV R1 EBTABX.X5 ; EB_TYPE/BID:=TYPE/BID
LDS R7 ; PSW:=MASK
JMPI RL8100 ;
; END
;-----------------------------------------------------------------------
; PROCEDURE ED8400
; COMPOSE_OEB
;
; REGISTERS ENTRY EXIT
; R0,R1,R2,R3 - DESTROYED
; R4 LINK DESTROYED
; R5,R6,R7 - DESTROYED
;
; INPUTS: CSTPTA,CSTPTR,CSTOBQ
; OUTPUTS: COEBBC,COEBCC,COEBBT,COSMSK
;
; CALL BY: ED8500
; CALL TO: ED6200,ED8100,ED1900,GBSM,GNBA
;
; RETURNS:
; LINK - DONE
;-----------------------------------------------------------------------
; JUMP TABLE FOR EB TYPES:
;-----------------------------------------------------------------------
ED8350: ;
ED8410, ED8440, ED8430, ED8450 ;
ED8460, ED8470, ED8470, ED8420 ;
;-----------------------------------------------------------------------
ED8400: ; BEGIN COMPOSE_OEB
MOV R4 RL8400 ;
MOVC 0 R0 ;
MOV R0 COEBBT ; EB_TYPE:=UNDEF
MOV R0 COEBBC ; BUF_COUNT:=0
MOV R0 COEBCC ; CHA_COUNT:=0
MOV R0 COSMSK ; CUR_MASK:= 0
MOV CSTPTR R7 ;
MOV CSTOBQ+QCCQE.X7 R3 ;
IEQ R3 0 ; IF NOB.OBQ=0
JMPI RL8400 ; THEN RETURN
MOV CSTOBQ+QCFQE.X7 R5 ; BUFP:=FQE.OBQ
MOV R5 COEBPT ; EB_POINTER:=BUFP
MOVC BINSTA R0 ; OFFS:=BINSTA
MOVC 2#11<BINETC R1 ; MASK:=BINETC_MASK
MOVC 0 R2 ; WORD:=0
MON PUTBUF ; PUT_BUFFER(BUFP,OFFS,MASK,WORD)
MOV R3 COEBPW ; EB_PSW:=BMSA
MOVC EBCNTX R0 ; OFFS:=EBCNTX
JMP S4 ED6200 ; READBUF(BUFP,OFFS,WORD)
MOV R1 EDWRK1 ;
ED8402: ; REPEAT
MOV R5 EDWRK5 ; CURR-LAST-BUF:=BUFP
MOVC BINSTA R0 ; OFFS:=BINSTA
JMP S4 ED6200 ; READBUF(BUFP,OFFS,WORD)
MOV R1 R2 ;
MOV R1 R0 ; CAUSE:=WORD
XTR R1 BINCNX ;
MOVC COEBCC R4 ;
ADD R1 X4 ; CHA_COUNT:=CHA_COUNT+COUNT
MOVC COEBBC R4 ;
INC 0. X4 ; BUF_COUNT:=BUF_COUNT+1
SRL R0 BINTCS ;
XTR R0 BINTCX ; CAUSE:=BUF_TCS RIGHT_ADJUST
MOD R0 ;
JMPI S4 ED8350 ; CASE CAUSE OF
; NO_EOB:
ED8410: ; BEGIN
MON GNBA ; GET_NEXT(BUFP,MASK)
JMPI RL8400 &; NO_NEXT, RETURN
JMP ED8402 ; GOTO REPEAT
; END
; EOB:
ED8420: ; BEGIN
MOVC BTD R0 ; TYPE:=D_TYPE
MOVC 1<ECOFUL R1 ; TERM:=EOB
JMP ED8480 ; GOTO EXIT_REPEAT
; END
; EOS:
ED8430: ; BEGIN
MOVC BTEOS R0 ; TYPE:=EOS_TYPE
MODC 1<ECOFUL ;
MOVC 1<ECOEOS+1<ECOESM R1 ; TERM:=EOS
JMP ED8480 ; GOTO EXIT_REPEAT
; END
; EOM:
ED8440: ; BEGIN
MOVC BTEOM R0 ; TYPE:=EOM_TYPE
MOVC 1<ECOFUL+% ; TERM:=EOM
1<ECOEOM+1<ECOESM R1 ;
JMP ED8480 ; GOTO EXIT_REPEAT
; END
; EOS+EOM:
ED8450: ; BEGIN
MOVC BTEOM R0 ; TYPE:=EOM_TYPE
MOVC 1<ECOEOS+1<ECOFUL+% ; TERM:=EOS+EOM
1<ECOEOM+1<ECOESM R1 ;
JMP ED8480 ; GOTO EXIT_REPEAT
; END
; LCB:
ED8460: ; BEGIN
MOVC BTLCB R0 ; TYPE:=LCB_TYPE
MOVC 1<EOCLCB R1 ; TERM:=LCB
JMP ED8480 ; GOTO EXIT_REPEAT
; END
; UNDEFINED:
ED8470: ; BEGIN
JMPI S4 EI1990 &;E ERROR9(CPF)
JMP ED8480 ; GOTO EXIT_REPEAT
; END
; END CASE
ED8480: ; EXIT_REPEAT:
MOV ECRPTR R6 ;
MOV R0 COEBBT ; BLOCK_TYPE:=TYPE
MOV R1 COSMSK ; TERM_MASK:=TERM
IBZ R1 ECOESM ; IF EOS/EOM BLOCK THEN
JMP ED8484 ; BEGIN
MOV EDWRK1 R1 ;
MOV R1 R0 ;
XTR R1 MSSEQX ; SEQN:=FRAME_FIELD_SEQ_NO
SWP R0 ;
XTR R0 CSTBLX ;
MOV R0 ECOCCB.X6 ; OCCB.ECRP:=BUF_BLK_SIZE
MOV COEBBC R3 ;
IEQ R3 1 ; IF BUF_COUNT<>1 THEN
JMP ED8482 ; BEGIN
MOV EDWRK5 R5 ; BUFP:=LAST-BUF
MOVC BINOSQ R0 ; OFFS:=BINOSQ
JMP S4 ED6200 ; READBUF(BUFP,OFFS,WORD)
XTR R1 MSSEQX ; SEQN:=WORD EXTR MSSEQX
; END
ED8482: ;
MOD ECOCSC.X6 ;
MOV R1 ECOS1S.X6 ; (OS1S+(OCSC)).ECRP:=SEQN
; END
ED8484: ; TERMINATE_EB:
JMP S4 ED8100 ; WRITE_OEB(COUNT,TYPE,BID)
MOV COEBBC R3 ; N:=BUF_COUNT
MOD CSTPTA ;
MOVC CSTOBQ R4 ; QCB:=OBQ
MON LNOQ ; DEQUEUE(QCB,N,FBUF,LBUF)
JMPI S4 EI1990 &;E ERROR9(CPF)
JMPI RL8400 ; RETURN
; END
;----------------------------------------------------------------------
; EXTERNAL NAMES
;
;-----------------------------------------------------------------------
BEGIN
EXTERNAL ED6420,ED6440,ED6520
EXTERNAL ED7040,ED7050,ED7060,ED7070,ED7080
EXTERNAL ED7110,ED7120,ED7130,ED7140,ED7150,ED7160,ED7170,ED7190
EXTERNAL ED7200,ED7290
EXTERNAL ED8400
NAMES
END
;-----------------------------------------------------------------------
;
; END OF EDC OUTPUT PROGRAM SECTION
;
;-----------------------------------------------------------------------
END
«eof»