Marc's Place

DIBIOL/DBL - DBL$ Subroutines

The Run-Time System Subroutine Library (RTSL) contains subroutines which exist only as
part of VAX DIBOL.

DBL$ASTRST

       DBL$ASTRST restores the contents of work areas used by a DIBOL
       subroutine executed as the result of an AST (asynchronous system
       trap).  See DBL$ASTSAV for an example.

          XCALL DBL$ASTRST


DBL$ASTSAV

       DBL$ASTSAV saves the contents of work areas used by a DIBOL
       subroutine executed as the result of an AST (asynchronous system
       trap).  See DBL$ASTRST.

          XCALL DBL$ASTSAV

          external function
                    SYS$BINTIM, %val
                    SYS$SETIMR, %val

          common
                    bintim, i8

          record
                    status, i4
                    cnt,      i1
                    sucess, i1

          Proc
                    status = SYS$BINTIM ('0 ::10', %ref(bintim))  ; Convert 10 sec to Bin.
                    if %SUCCESS(status) begin
                              status = SYS$SETIMR (,%ref(bintim), %xtrnl(TIMSUB),)
                    end

                    if %SUCCESS(status) then
                              for cnt from 1 thru 100
                              begin
                                        display (1, 10, 'Main -- count = ', cnt, 13)
                                        sleep 1
                              end
                    else
                              display (1, 10, 'Error #', %hex(status), 13)

                    ...

          subroutine TIMSUB

          common
                    bintim, i8

          Proc
                    xcall DBL$ASTSAV     ; Save area contents
                    display (1, 10, 'AST -- Time is now ', %time<format: "XX:XX:XX">, 13)
                    xcall SYS$SETIMR (,%ref(bintim),%xtrnl(TIMSUB),)
                    xcall DBL$ASTRST      ; Restore area contents
          xreturn


DBL$BKSTR (zie %BKSTR)

       DBL$BKSTR returns the location of the last occurrence of a substring
       within a string.

          XCALL DBL$BKSTR (strt, strng, substrng, lctn)


DBL$CHOPEN (zie %CHOPEN)

       DBL$CHOPEN returns a flag indicating whether the specified channel is
       open (flag = 1) or closed (flag = 0).

          XCALL DBL$CHOPEN (ch, flag)


DBL$CPUTM (zie %CPUTIME)

       DBL$CPUTM returns the CPU time accumulated by the process.

          XCALL DBL$CPUTM (time)


DBL$CREMBX

       DBL$CREMBX creates a mailbox and opens it on the specified channel.

          XCALL  DBL$CREMBX(ch{,lognam}{,prmflg}{,maxmsg}
               {,bufquo}{,promsk}{,acmode},waitcd)


 DBL$DELMBX

       DBL$DELMBX closes and deletes the mailbox on the specified channel.

          XCALL DBL$DELMBX (ch)


DBL$DEVCLT

       DBL$DEVCLT returns the class and type of a device.

          XCALL DBL$DEVCLT ({ch}{,devspc}{,priclass}{,pritype}{,seclass}
                            {,sectype})


DBL$ERRMOD (zie %ERRMOD)

       DBL$ERRMOD returns the name of the module in which the most recent
       error occurred.

          XCALL DBL$ERRMOD ({afield}{,nfield})


DBL$ERRTXT

       DBL$ERRTXT returns the text of a DIBOL run-time error message.

          XCALL DBL$ERRTXT (errnum, buffer {,{length} {,{txtpos}}})


DBL$EXECUTE_IMAGE_ROUTINE

       EXECUTE_IMAGE_ROUTINE executes a routine contained in a shareable image.
       The shareable image does not have to be linked with the user program.

            XCALL DBL$EXECUTE_IMAGE_ROUTINE (filename, rtnname, arglist)

       arglist: First argument must be a %VAL(nargs).


DBL$EXITERROR

       DBL$EXITERROR generates the specified DIBOL error and causes an exit
       from an external subroutine.

          XCALL DBL$EXITERROR (errnum)


DBL$GETDFN

       DBL$GETDFN returns the current default file specification in use by
       the DIBOL run-time library.

          XCALL DBL$GETDFN (filespec{,option})


DBL$GETFNM

       DBL$GETFNM returns the specification of a file.

          XCALL DBL$GETFNM (ch, name {,size})


DBL$PARSE

       DBL$PARSE extracts the component elements of a file specification.

          XCALL DBL$PARSE (filespec,{flag}{,node{,{dev}{,{dir}{,{name}
                          {,{ext}{,{ver}{,{expname}}}}}}}})


DBL$SETCTL

       DBL$SETCTL modifies the operation of control characters that are
       input from the terminal.

          XCALL DBL$SETCTL (char,action{,char,action}...)

          char          action

            'C'                0 = Ignore ^C
                                1 = Generate trappable error
                                2 = Generate fatal error

            'T'                0 = Disable ^T
                                1 = Enable ^T

            'Y'                0 = Disable DCL break, Ignore ^Y
                                1 = Disable DCL break, Generate trappable error
                                2 = Disable DCL break, Generate fatal error
                                3 = Enable DCL break, Ignore ^Y
                                4 = Enable DCL break, Generate trappable error
                                5 = Enable DCL break, Generate fatal error
                                6 = Use current DCL break setting, ignore error
                                7 = Use current DCL break setting, Generate trappable error
                                8 = Use current DCL break setting, Generate fatal error

DBL$SETDFN

       DBL$SETDFN sets the default file specification of the DIBOL Run-Time
       Library (RTL).

          XCALL DBL$SETDFN (filespec {,option})


DBL$SETKRF

       DBL$SETKRF sets the key of reference to be used for subsequent
       indexed sequential READS from the same channel.

          XCALL DBL$SETKRF (ch , keynum)


DBL$SNDOP

       DBL$SNDOP sends a message to the system operator.

          XCALL DBL$SNDOP (message)


DBL$TIMOUT

       DBL$TIMOUT sets the number of seconds a READS or ACCEPT waits for
       input from a terminal on the specified channel.

          XCALL DBL$TIMOUT (ch, seconds)


DBL$TTBRDCST

       DBL$TTBRDCST allows a program to "trap" messages broadcast to a
       terminal and optionally allows a routine to be executed as an AST
       when a message is trapped.

          XCALL DBL$TTBRDCST (ch, option {,%XTRNL(AST)})

         Valid option values are:

            0    Allow messages to display on the terminal.
            1    Do not allow messages to display on the terminal.
            2    Do not allow messages to display on the terminal AND execute
                  the AST if a message is broadcast.


DBL$TTCHAR

       DBL$TTCHAR returns the type, lines (per page), width (characters),
       and other attributes (48 pos) of the specified terminal. Include TTCHAR from
       library SYS$LIBRARY:DBLTEXT.TLB

          XCALL DBL$TTCHAR (ch {,{type}{,{lines}{,{width}{,{attribute}}}}})


DBL$TTNAME (zie %TTNAME)

       DBL$TTNAME returns the name of the terminal at which the program is
       running.

          XCALL DBL$TTNAME (name)


DBL$TT_NAME_TO_NUMBER (zie %TNMBR)

       DBL$TT_NAME_TO_NUMBER converts a VMS terminal name to its equivalent
       DIBOL terminal number.

          XCALL DBL$TT_NAME_TO_NUMBER (ttname, ttnmbr)


DBL$TT_NUMBER_TO_NAME (zie %TTNAME)

       DBL$TT_NUMBER_TO_NAME converts a DIBOL terminal number to its
       equivalent VMS terminal name.

          XCALL DBL$TT_NUMBER_TO_NAME (ttnmbr, ttname)


DBL$WKDAY (zie %WKDAY)

       DBL$WKDAY returns a decimal value that identifies the day of the
       week.

          XCALL DBL$WKDAY (nfield)


DBL$XARGS (zie %NUMARGS en %PASSED)

       DBL$XARGS returns the number of arguments with which the calling
       DIBOL subroutine was called and an array of flags indicating whether
       the corresponding subroutine arguments was passed (flag = 1) or
       omitted (flag = 0).

          XCALL DBL$XARGS ({numargs},{argflags})


DBL$XSTAT

       DBL$XSTAT returns the return status value from the most recent XCALL.

          XCALL DBL$XSTAT ({full}{,{bit0}{,{sev}{,{msg}{,{fac} {,{ctl}}}}}})



Obsolete DBL$ Routines and the new syntax

DBL$CVTIIV

       DBL$CVTIIV moves an integer binary value to a specified field, with
       no data type conversion.

          V3 Syntax:

             EXTERNAL LITERAL
                DVI$_DEVNAM, I
             RECORD
                DEVNAM,  I2
             PROC
                DEVNAM = DVI$_DEVNAM

             or

             RECORD
                DEVNAM, I2, %XTRNL(DVI$_DEVNAM)


DBL$CVTIZ

       DBL$CVTIZ converts an integer binary value to a zoned numeric value
       (D-field).

          V3 Syntax:

             RECORD
                D_FIELD,    D5
                INT_FIELD,  I2
             PROC
                D_FIELD = INT_FIELD


DBL$CVTIZV

       DBL$CVTIZV converts an integer binary value, which is passed by
       value, to a zoned numeric value (D-field).

          V3 Syntax:

             EXTERNAL LITERAL
                FAB$M_SUP,  I
             RECORD
                SUPERSEDE,  D10
             PROC
                SUPERSEDE = FAB$M_SUP


DBL$CVTZI

       DBL$CVTZI converts a zoned numeric value (D-field) to an integer
       binary value.

          V3 Syntax:

             RECORD
                INT_FIELD, I4
             PROC
                INT_FIELD = numbers


DBL$EXITSUB

       DBL$EXITSUB causes an exit from the external subroutine currently
       being executed, and returns control to the calling program.  A status
       can also be returned to the calling program.

          V3 Syntax:

             XRETURN {value}


DBL$EXITSUB_VAL

       DBL$EXITSUB_VAL causes an exit from the external subroutine currently
       being executed, and returns control to the calling program.  A status
       can also be returned to the calling program.  The exit status is
       passed by value.

          V3 Syntax:

             EXTERNAL LITERAL
                $$$_NORMAL,    I
             PROC
                XRETURN ($$$_NORMAL)

             or

             RECORD
                STATUS,  I, %XTRNL(SS$_NORMAL)
             PROC
                XRETURN (STATUS)


DBL$IXREAD

       DBL$IXREAD retrieves a specific record from an indexed file.

          V3 Syntax:

             READ (ch, record, keyfld, KEYNUM:num)


DBL$POSRFA

       DBL$POSRFA positions a file to a record which is specified in an RFA
       (Record File Address).

       This routine is typically used to process files produced by one of
       the SORT utilities; DBLSORT with TAGS:RFA or VAX-11 SORT/MERGE with
       the /PROCESS=ADDRESS qualifier.  The keynum argument may be used to
       set the key of reference for a subsequent indexed sequential READS.

          V3 Syntax:

          FIND (ch, RFA:rfaddr)
© 1997- Marc Vos (and others)   -   Privacy Statement   -    Contact Me

On this website, Google Analytics is used to track visitor statistics. These are anonymised data about the number of visitors, which pages they visit on this site, from which regions they visit, which web browsers they use, etc.. You will also see non-personalised ads via Google AdSense. Cookies from Paddle or Paypal are placed when you click on a 'Buy now!' or 'Donate!' button, and possible cookies from Disqus when you use that system to comment on one or more blogposts.
Privacy Statement