1
0
mirror of https://github.com/PDP-10/its.git synced 2026-01-11 23:53:12 +00:00
PDP-10.its/bin/mbprog/pmap.fbin

147 lines
6.4 KiB
Plaintext

'<PCODE "PMAP">
<RPACKAGE "PMAP">
<ENTRY PMCHAN POPEN PREAD PWRITE PRESET PCLOSE PBUFFERS PWIRE PUNWIRE PMMPLEX
PMCHANLIST PMMAX PMAP-RESTORE CORE-BLOCK PAGE-FIND PAGE-GIVE SHARERS>
<SETG PMTIME 0>
<SETG PMCHANLIST ()>
<SETG PMMAX 4>
<GDECL (PRVCT) <UVECTOR [REST <VECTOR [3 ANY]>]> (PMTIME PMMAX) FIX (PMCHANLIST)
<LIST [REST PMCHAN]>>
<NEWTYPE PMCHAN VECTOR '<VECTOR CHANNEL STRING FIX LIST FIX APPLICABLE FIX FIX>>
<SETG CORE-BLOCK %<RSUBR!- '[ %<PCODE!- "PMAP" 0> CORE-BLOCK #DECL ("VALUE" <OR
FIX FALSE> <PRIMTYPE WORD> FIX FIX FIX FIX) T OC (FIX) OLD #FALSE () (<OR FALSE
PMCHAN>) %<RGLOC PMMAX T> %<RGLOC PMCHANLIST T> %<TYPE-W PMCHAN VECTOR> "LOCKED"
() "DONE" %<RGLOC BUF-LRU T> "READ" "PRINT" "PRINTB" "PRINTO" #FALSE (
"MODE NOT READ, PRINT, OR LOCKED") "DSK" FILE-LENGTH-FAILED!-ERRORS POPEN
"PAGE OF LOCKED FILE IS SHARED" CHAN (PMCHAN) EOF RESET-FAILED!-ERRORS PWRITE #
FALSE ("ATTEMPT-TO-PRINT-ON-NON-PRINT-CHANNEL") IN-OUT REQ (<LIST [REST VECTOR]>
) PAST-EOF %<RGLOC PMTIME T> PRESET DPAGE #FALSE ("BUFFER NOT CURRENTLY MAPPED")
PAGE-MAP %<RGLOC PRVCT T> READ-OR-WRITE-ADDRESS-NEGATIVE?!-ERRORS PIOT
BAD-CALL!-ERRORS CORE-BLOCK CANT-GET-CORE-ERRET-NON-FALSE-TO-RETRY!-ERRORS
CORE-EXHAUSTED-YOU-LOSE!-ERRORS MUDDLE-CORE-EXHAUSTED-YOU-LOSE!-ERRORS]>>
<AND <ASSIGNED? GLUE> .GLUE <PUT ,CORE-BLOCK PGLUE ![0 0 0 0!]>>
<SETG PAGE-FIND %<RSUBR-ENTRY '[CORE-BLOCK PAGE-FIND #DECL ("VALUE" <OR FIX
FALSE> "OPTIONAL" FIX)] 26>>
<SETG PAGE-GIVE %<RSUBR-ENTRY '[CORE-BLOCK PAGE-GIVE #DECL ("VALUE" FIX FIX
"OPTIONAL" FIX)] 50>>
<SETG APPEND-IOT %<RSUBR-ENTRY '[CORE-BLOCK APPEND-IOT #DECL ("VALUE" <PRIMTYPE
WORD> FIX <PRIMTYPE WORD> CHANNEL)] 80>>
<SETG *FILE-LENGTH %<RSUBR-ENTRY '[CORE-BLOCK *FILE-LENGTH #DECL ("VALUE" <OR
FIX FALSE> CHANNEL)] 112>>
<SETG DISK-UPDATE %<RSUBR-ENTRY '[CORE-BLOCK DISK-UPDATE #DECL ("VALUE" <OR 'T
FALSE> CHANNEL)] 138>>
<SETG COPY-REQ %<RSUBR-ENTRY '[CORE-BLOCK COPY-REQ #DECL ("VALUE" UVECTOR <
VECTOR UVECTOR FIX FIX> <UVECTOR [4 FIX]> FIX)] 158>>
<SETG SHARERS %<RSUBR-ENTRY '[CORE-BLOCK SHARERS #DECL ("VALUE" <OR FIX FALSE> <
PRIMTYPE WORD> "OPTIONAL" <PRIMTYPE WORD>)] 188>>
<SETG PMMPLEX %<RSUBR-ENTRY '[CORE-BLOCK PMMPLEX #DECL ("VALUE" <OR ATOM CHANNEL
FALSE> "OPTIONAL" PMCHAN)] 224>>
<SETG PMAP-RESTORE %<RSUBR-ENTRY '[CORE-BLOCK PMAP-RESTORE #DECL ("VALUE" STRING
)] 353>>
<SETG POPEN %<RSUBR-ENTRY '[CORE-BLOCK POPEN #DECL ("VALUE" <OR FALSE PMCHAN>
STRING STRING "OPTIONAL" FIX APPLICABLE)] 428>>
<SETG PREAD %<RSUBR-ENTRY '[CORE-BLOCK PREAD #DECL ("VALUE" <OR FALSE UVECTOR>
PMCHAN UVECTOR FIX)] 754>>
<SETG PWRITE %<RSUBR-ENTRY '[CORE-BLOCK PWRITE #DECL ("VALUE" <OR UVECTOR <FALSE
STRING [REST STRING]>> PMCHAN UVECTOR FIX)] 787>>
<SETG PIOT %<RSUBR-ENTRY '[CORE-BLOCK PIOT #DECL ("VALUE" <LIST [REST <OR <
VECTOR <UVECTOR ANY> FIX FIX> <VECTOR ATOM FIX FIX>>]> PMCHAN UVECTOR FIX FIX)]
1024>>
<SETG PMCOUNT %<RSUBR-ENTRY '[CORE-BLOCK PMCOUNT #DECL ("VALUE" FIX)] 1264>>
<SETG PCLOSE %<RSUBR-ENTRY '[CORE-BLOCK PCLOSE #DECL ("VALUE" PMCHAN PMCHAN)]
1281>>
<SETG PRESET %<RSUBR-ENTRY '[CORE-BLOCK PRESET #DECL ("VALUE" PMCHAN PMCHAN
"OPTIONAL" STRING)] 1427>>
<SETG PBUFFERS %<RSUBR-ENTRY '[CORE-BLOCK PBUFFERS #DECL ("VALUE" <OR FALSE FIX>
PMCHAN FIX)] 1514>>
<SETG PWIRE %<RSUBR-ENTRY '[CORE-BLOCK PWIRE #DECL ("VALUE" <UVECTOR FIX FIX FIX
FIX> PMCHAN FIX)] 1650>>
<SETG PUNWIRE %<RSUBR-ENTRY '[CORE-BLOCK PUNWIRE #DECL ("VALUE" <OR ATOM <FALSE
STRING [REST STRING]>> PMCHAN FIX)] 1711>>
<SETG GET-BUF %<RSUBR-ENTRY '[CORE-BLOCK GET-BUF #DECL ("VALUE" <UVECTOR FIX FIX
FIX FIX> <VECTOR UVECTOR FIX FIX> PMCHAN)] 1760>>
<SETG PAGE-MAP %<RSUBR-ENTRY '[CORE-BLOCK PAGE-MAP #DECL ("VALUE" <UVECTOR FIX
FIX FIX FIX> PMCHAN <UVECTOR [4 FIX]> FIX)] 1881>>
<SETG PRVCT <IUVECTOR 4 '<VECTOR 0 0 0>>>
<SETG APPEND %<RSUBR-ENTRY '[CORE-BLOCK APPEND #DECL ("VALUE" LIST LIST ANY ANY
ANY)] 1947>>
<SETG REQUESTS %<RSUBR-ENTRY '[CORE-BLOCK REQUESTS #DECL ("VALUE" LIST UVECTOR
FIX FIX)] 2029>>
<SETG NXTBLK %<RSUBR-ENTRY '[CORE-BLOCK NXTBLK #DECL ("VALUE" FIX FIX FIX)] 2152
>>
<SETG BUF-LRU %<RSUBR-ENTRY '[CORE-BLOCK BUF-LRU #DECL ("VALUE" <UVECTOR [4 FIX]
> <LIST [REST <UVECTOR [4 FIX]>]>)] 2176>>
<SETG IOT-REQ %<RSUBR-ENTRY '[CORE-BLOCK IOT-REQ #DECL ("VALUE" FIX <VECTOR <OR
UVECTOR ATOM> FIX FIX> PMCHAN)] 2217>>
<SETG GET-CORE-BLOCK %<RSUBR-ENTRY '[CORE-BLOCK GET-CORE-BLOCK #DECL ("VALUE" <
PRIMTYPE WORD> <PRIMTYPE WORD> <PRIMTYPE WORD> <PRIMTYPE WORD> <PRIMTYPE WORD> <
PRIMTYPE WORD>)] 2311>>
<SETG PAGE-BUY %<RSUBR-ENTRY '[CORE-BLOCK PAGE-BUY #DECL ("VALUE" FIX PMCHAN)]
2388>>
<SETG REMOVE-FROM %<RSUBR-ENTRY '[CORE-BLOCK REMOVE-FROM #DECL ("VALUE" LIST
LIST ANY)] 2468>>
<AND <ASSIGNED? GLUE> .GLUE <PUT ,CORE-BLOCK GLUE ![5389697028 266497
17197696005 1141178368 67190784 4 4299161937 272629824 6392184852 0 16797764
4523012 66820 5441068156 34343159764 17213162836 1275069443 -16038903739
24704254977 4111 -17090476864 -4272619248 1332529 5767168001 17453827520
1162873856 4384952576 -3774869420 16236152768 1094796231 -17175584940 4043325700
34292633360 18249416708 1006633984 -4021010429 4294983680 17466196244 1006653457
4313063252 4392223772 222298112 67383296 21747531776 4413390871 251920387
-15821848575 18383656256 18253612100 289428757 18191806835 -11809849343
-4291017232 17184325632 -16357501681 4299635975 -12884901888 4201532 30318264324
16106139919 1430274048 356779328 7600082948 268451840 20823 -1056960512
18274844944 262928 1374945280 5453643776 67306240 17239811 -17090476992 17891397
269571279 -1069546304 1360789504 33554432081 30064775936 328724 18735957056
1048607 252788996 34292631296 4194564 8192064 17246978049 17052668 4296015889
20980 82240 22565355524 5704253696 4295017792 4378936320 17239808 32833600
-2951479296 17179939008 525336837 4315959556 474021888 20401095696 4294967316 16
4295294976 33286984000 4294983696 4181 4497342465 -17179869181 1124073472
1048576 4294971136 201523327 -16894639088 -4294701052 285212673 67436544
335544384 279552 17179869188 21475885076 1048576 463616 17180983572 286262352
4299161604 1 268435456 17465212672 124 18774753345 4469505 1078200260 272629809
83906560 4195648 17255105552 285475844 4312793156 16777215 1310724 262181 33
524352 262204 786516 262260 262286 786594 524493 262342 239 262381 355 524741
786875 1049017 787194 787227 1049610 1266 263429 263585 525727 525808 525944
526005 526054 788321 1050533 788469 526446 264324 526511 1313043 264536 526762!]
>>
<ENDPACKAGE>