Trailing-Edge
-
PDP-10 Archives
-
BB-JF18A-BM
-
sources/rms/rmsext.r36
There are 3 other files named rmsext.r36 in the archive. Click here to see a list.
%TITLE'R M S E X T -- external definitions'
! RMSEXT.R36 - RMS external definitions
!<BLF/REQUIRE 'RMSBLF.REQ'>
!
!
! COPYRIGHT (C) DIGITAL EQUIPMENT CORPORATION 1984, 1986.
! ALL RIGHTS RESERVED.
!
! THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND
! COPIED ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH
! THE INCLUSION OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR
! ANY OTHER COPIES THEREOF MAY NOT BE PROVIDED OR OTHERWISE MADE
! AVAILABLE TO ANY OTHER PERSON. NO TITLE TO AND OWNERSHIP OF THE
! SOFTWARE IS HEREBY TRANSFERRED.
!
! THE INFORMATION IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT
! NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL
! EQUIPMENT CORPORATION.
!
! DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF
! ITS SOFTWARE ON EQUIPMENT THAT IS NOT SUPPLIED BY DIGITAL.
!
!++
! FACILITY: RMS
!
! ABSTRACT:
!
! Contains all external definitions used within RMS proper.
! This includes global variables, global routines, and
! messages.
!
! ENVIRONMENT: Library file, to be required by all RMS BLISS modules.
!
! AUTHOR: Ron Lusk , CREATION DATE: 12-May-83
!
! MODIFIED BY:
!
! Ron Lusk, 12-May-83 : VERSION 2
! 406 - Create this file
!
! Andrew Nourse, 14-Jan-85 : Version 3
! 501 - Add some DAP routines,
! make data structure pointers have appropriate FIELD attributes
! 504 - Add UClass, UTGPointer, FindIma, GetImage, PutImage;
! 550 - Add R$NULL to the EXTERNAL ROUTINE list (RL)
!--
!
! TABLE OF CONTENTS
!
! Linkage definitions
! External routine declarations
! External variable declarations
! RMS Message external declarations
!
! INCLUDE FILES:
!
!
%SBTTL'Linkage definitions'
! These linkage declarations are duplicated in RMSSYS
%IF NOT %DECLARED (EXITSUB)
%THEN
LINKAGE
!+
! Linkage for call of MACRO subroutine
!-
macrosub = PUSHJ : LINKAGE_REGS (15, 13, 1)
PRESERVE (6, 7, 8, 9, 10, 11, 12)
NOPRESERVE (0, 2, 3, 4, 5, 14),
!+
! Linkage for call of routine that doesn't return
!-
exitsub = PUSHJ : LINKAGE_REGS (15, 13, 0)
PRESERVE (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 14);
! End of Linkage Declarations duplicated in RMSSYS
%FI
%SBTTL'External routine declarations'
!++
! Routine definitions
!--
EXTERNAL ROUTINE
abortfile : NOVALUE,
adjeof : NOVALUE,
adjiptr,
alcbkt,
ascread,
ascwrite : NOVALUE,
alcnewids : NOVALUE,
alcrfa,
alcroot,
bldcsidr,
bldisidr,
checkrp : NOVALUE,
checkxab,
chkdup,
chkremote,
ckeykk,
ckeyku,
ckeyuu,
cleanup : NOVALUE,
closefile : NOVALUE,
compress,
comprrv : NOVALUE,
crash : exitsub NOVALUE,
crepage : NOVALUE,
cspt2,
datofile : NOVALUE,
dap$close,
dap$deaccess,
dap$connect,
dap$disconnect,
dap$find,
dap$get,
dap$merge,
dap$openfile,
dap$put,
dcntrab,
delidx : NOVALUE,
delsidr,
delsqr : NOVALUE,
deludr,
devchar,
dispfile,
doareablocks : NOVALUE,
dodelidx,
doeof : NOVALUE,
dogetascii : NOVALUE,
dogetidx : NOVALUE,
dogetrel : NOVALUE,
dogetseq : NOVALUE,
dokeyblocks,
doopen : NOVALUE,
dosidr,
doupdidx,
dump : NOVALUE,
dumpheader : NOVALUE,
dumpidb : NOVALUE,
dumpirecord,
dumpkdb : NOVALUE,
dumprd : NOVALUE,
dumprst : NOVALUE,
errorroutine,
fbykey,
fbyrfa,
fbyrrv,
fendofkey,
ferror,
fgpage,
fgmem,
fidxseq,
fileq : NOVALUE,
findasc,
findidx : NOVALUE,
findima,
findrel,
findseq,
flubuf : NOVALUE,
fnddata,
fndrec,
followpath,
fpmem,
fproblem,
frecrfa,
fsetup : NOVALUE,
getascii,
getbkt,
getbuf,
getidb,
getidx,
getimage,
getkdb,
getlsn : NOVALUE,
getrec,
getroot,
getwindow,
gmem,
gpage,
gtbyte,
gtbktptr,
gtnbkt,
i1stsidr,
idxfilprolog,
idxupdate,
insrtirecord,
insrtsidr,
insrtudr,
ioerror : NOVALUE,
killpage : NOVALUE,
lockit,
loffall : NOVALUE,
makeidb : NOVALUE,
makeirecord : NOVALUE,
makeudr : NOVALUE,
makesidr : NOVALUE,
makidx,
makroot,
mapcodes : NOVALUE exitsub,
monerr : exitsub,
movekey : NOVALUE,
moverec,
! movestring,
nextpage,
nospan,
numbertorfa,
oabort : NOVALUE exitsub,
ofile,
okcreate : NOVALUE macrosub,
padbuffer : NOVALUE,
pagexist,
pagin : NOVALUE,
pagout : NOVALUE,
pmem,
posascfil : NOVALUE,
posnext,
posrp,
posrfa,
ppage,
prichk,
putascii : NOVALUE,
putbkt : NOVALUE,
putbuf,
putels : NOVALUE,
putidx : NOVALUE,
putimage: NOVALUE,
putlsn : NOVALUE,
putrec : NOVALUE,
putrel,
putsidr,
putsqr,
r$null, ! Null routine call !A550
readadb,
readbuffer : NOVALUE,
readtty,
removrecord : NOVALUE,
rsetup : NOVALUE,
sdatabkt,
setfst, ! In RMSDSI
setkdb,
setnrp : NOVALUE,
setplog,
setput,
setrst, ! In RMSDSI
shuffleids,
sindexbkt,
sizefile,
skiprecord,
split,
sptindex,
sptsidr,
squeezesidr : NOVALUE,
truncfile : NOVALUE,
tx$out : macrosub,
tgupointer, ! make 2-word gbl to user rec !a504
uaddr, ! Globalize user address !a501
uapointer, ! Globalize & bpize user ptr !a501
uclass, ! Find user file class !a504
undokdbs : NOVALUE,
updidx : NOVALUE,
updrrvs,
updsqr : NOVALUE,
updudr,
usrerr : exitsub,
usrret : exitsub,
writebuffer : NOVALUE;
%IF %SWITCHES(TOPS10)
%THEN
EXTERNAL ROUTINE
$cntdt: NOVALUE,
$cnvdt: NOVALUE,
par10fs,
ttyhack;
%FI
%sbttl'External variable declarations'
!++
! All externals for RMS declared here rather than
! in macro EXTDECLARATIONS. Error messages will
! for the nonce be individually declared.
!--
EXTERNAL
acc$1, ! Storage for ACs over calls
acc$2, ! Ditto
acc$3, ! Ditto
bufacc, ! Count of buffer accesses
! (calls to GETBUF)
bugcod, ! Last bug code stored here
bugflg, ! Debugging verbosity flags
dextr1, ! A dummy external used
! to pass AC values
dvflgs, ! Flags from DVCHR (MONWORD)
erradr, ! Address of user error return
fdbword1, ! First word of FDB (MONWORD)
frecor, ! Number of first free page
numfreepages, ! Free pages left in core(?)
oaflags, ! Indicates OABORT must be
! called before user exit
opnerrtab, ! Open error mapping table
path : BLOCK, ! Path through index to record
pb, ! User parameter block pointer
plogpage, ! Page allocated for FPT
rabutl, ! Location of RMSUTL RAB
rms$$g, ! Location of RMS globals
! in one of three locations:
! Low segment:
! (RMS.REL with COBOL/R)
! 573000:
! (RMSCOB.EXE)
! 643000
! (RMS.EXE) -- This case
! only use RMS's own FSM
rmssts, ! Misc. RMS-20 status bits
tbuffer, ! Temp buffer for key strings
ujsys, ! Location where last JSYS
! is stored
userjfn, ! Temporary storage for JFN
! during $OPEN/$CREATE
usrsts, ! Status
usrstv; ! User status-value field
!
! Data structure pointers
!
EXTERNAL
adb : REF BLOCK, ! Area Descriptor Block
cbd : REF BLOCK, ! Current bucket desc (in RST)
fab : REF BLOCK, ! User Record File Block
fpt : REF BLOCK, ! User File Prologue Table
fst : REF BLOCK, ! File Status Table pointer
kdb : REF BLOCK, ! Key Descriptor Block
rab : REF BLOCK, ! User Record Access Block
rst : REF BLOCK; ! Record Status Table pointer
%( not allowed by compiler
MAP
adb : REF $rms_adb[8], ! Area Descriptor Block
cbd : REF $rms_bucket_descriptor, ! Current bucket desc (in RST)
fab : REF $fab_decl, ! User Record File Block
fpt : REF $rms_fpt, ! User File Prologue Table
fst : REF $rms_fst, ! File Status Table pointer
kdb : REF $rms_kdb, ! Key Descriptor Block
rab : REF $rab_decl, ! User Record Access Block
rst : REF $rms_rst; ! Record Status Table pointer
)%
EXTERNAL
dtptable : BLOCK, ! Key characteristics table
pagtab : BLOCK, ! Page table for free core
!
! Extended addressing data
!
blksec, ! Section number of
! user's arg block
rmssec, ! RMS's section number
usrsec; ! Section number of user's code
%sbttl'Error message declarations'
EXTERNAL
!
! Error messages
!
msgbkt, ! Current bucket is null
msgbna, ! Buffer not allocated
msgbsp, ! ? (FSM)
msgbstatus, ! Bad return by GMEM
msgcantgethere, ! Bad control flow
msgccr, ! Can't create an RRV (no room)
msgcore, ! Can't get core
msgcount, ! Bad counter value
msgdup, ! Duplicate in primary index
msgeop, ! End of page found
msgfailure, ! Routine failed
msgflags, ! Bad flag values
msgfunction, ! Bad function code
msginput, ! Bad input to a routine
msgjsys, ! Bad JSYS code
msgkdb, ! Something wrong with KDB
msgkey, ! Key addressing not detected
msgksz, ! Bad key size value
msglink, ! Link inconsistency
msglevel, ! Bad level number found
msgloop, ! Loop structure is bad
msgmovestring, ! MOVE-STRING failed
msgnocall, ! Routine should not be called
msgnospace, ! No space in index bucket
msgpage, ! Bad page number
! msgpgone, ! File page missing
msgpm2, ! BIGHOL is non-zero (FSM)
msgpm3, ! Bad value found in PMEM
msgpna, ! Page not allocated
msgptr, ! Bad pointer returned
msgrchanged, ! Root changed
msgrfa, ! Bad RFA value
msgrrv, ! RRV found in SIDR bucket
msgsplit; ! Bad split parameters
! msgufpgs, ! Can't update file pages
! msgunlocked; ! Record is unlocked
! END RMSEXT.R36