DataMuseum.dk

Presents historical artifacts from the history of:

Rational R1000/400 Tapes

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about Rational R1000/400 Tapes

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download
Index: ┃ M T

⟦598dfac89⟧ TextFile

    Length: 11256 (0x2bf8)
    Types: TextFile
    Names: »MSQTI_DEFINITIONS«

Derivation

└─⟦afbc8121e⟧ Bits:30000532 8mm tape, Rational 1000, MC68020_OS2000 7_2_2
    └─ ⟦77aa8350c⟧ »DATA« 
        └─⟦f794ecd1d⟧ 
            └─⟦24d1ddd49⟧ 
                └─⟦this⟧ 

TextFile

;
;       This assembly file defines the values for invoking
;       Message_Queues and Timer operations.  
;

;
;       Service call names definitions
;
;       These names are used in the low level assembler interface to address
;       the Message Queue Services via the Message_Qeueue_Globals address in
;       register a1.l.
;
;       Example:        jsr     ([Q$Send,a1])
;

Q$Base          set     4
Q$Create        equ     -Q$Base     ;'Create_Queue'.
;*
Q$Base          set     Q$Base+4
Q$Delete        equ     -Q$Base     ;'Delete_Queue'.
;*
Q$Base          set     Q$Base+4
Q$Find          equ     -Q$Base     ;'Find_Queue'.
;*
Q$Base          set     Q$Base+4
Q$Length        equ     -Q$Base     ;'Length_of_Queue'.
;*
Q$Base          set     Q$Base+4
Q$Assign        equ     -Q$Base     ;'Assign_Channel'.
;*
Q$Base          set     Q$Base+4
Q$Deass         equ     -Q$Base     ;'Deassign_Channel'.
;*
Q$Base          set     Q$Base+4
Q$NewQAddr      equ     -Q$Base     ;'New_Queue_address'.
;*
Q$Base          set     Q$Base+4
Q$NewCAddr      equ     -Q$Base     ;'New_Channel_Address'.
;*
Q$Base          set     Q$Base+4
Q$Send          equ     -Q$Base     ;'Send_Message'.
;*
Q$Base          set     Q$Base+4
Q$Reserve       equ     -Q$Base     ;'Reserve_Message_Slot'.
;*
Q$Base          set     Q$Base+4
Q$UnRes         equ     -Q$Base ;'Return_Reserved_Message_Slot'.
;*
Q$Base          set     Q$Base+4
Q$Remove        equ     -Q$Base     ;'Remove_Message'.
;*
Q$Base          set     Q$Base+4
Q$Retriev       equ     -Q$Base     ;'Retrieve_Message'.
;*
Q$Base          set     Q$Base+4
Q$RetChan       equ     -Q$Base     ;'Retrieve_Message_from_Channel'.
;*
Q$Base          set     Q$Base+4
Q$Wait          equ     -Q$Base     ;'Wait_for_Queues'.
;*
Q$Base          set     Q$Base+4
Q$RQuData       equ     -Q$Base     ;'Read_User's_Queue_Data'.
;*
Q$Base          set     Q$Base+4
Q$WQuData       equ     -Q$Base     ;'Write_User's_Queue_Data'.
\f


;*******************************************************************************
;*                                                                             *
;*  Message Queue Services return codes.                                       *
;*                                                                             *
;*  These codes are returned from the Message Queues Services in register      *
;*  d1.w along with a Carry condition code.                                    *
;*                                                                             *
;*******************************************************************************
;*
;*******************************************************************************
;*                                                                             *
;*  Common error codes.                                                        *
;*                                                                             *
;*******************************************************************************
;*

Q$IllQue   equ     11 + 16#1000#;     'Illegal queue address'.
Q$IllPar   equ     12 + 16#1000#;     'Illegal parameter'.
Q$InitErr  equ     13 + 16#1000#;     'Initiation error'.
Q$IllCha   equ     14 + 16#1000#;     'Illegal channel address'.
Q$NoMess   equ     15 + 16#1000#;     'No message for at retrieve or remove'.
Q$NotAcc   equ     16 + 16#1000#;     'The specified queue was not accessible
;*                                     due to a persistent mutual exclusion
;*                                     lock'.
Q$ToMany   equ     17 + 16#1000#;     'The maximum number of the specified
;*                                     resource type is already allocated'.
Q$InFail   equ     18 + 16#1000#;     'Initiation failure'.
;*
;*******************************************************************************
;*                                                                             *
;*  Send_Message specific error codes.                                         *
;*                                                                             *
;*******************************************************************************
;*

Q$Full     equ     20 + 16#1000#;     'The maximum number of messages for 
;*                                     this channel already in the queue or
;*                                     no reserved slot when sending with
;*                                     qualifier Q$UseRes.
Q$NoWait   equ     21 + 16#1000#;     'No waiter ready'.
Q$TooBig   equ     22 + 16#1000#;     'Message too big'.
;*
\f


;*******************************************************************************
;*                                                                             *
;*  Retrieve_Message specific error codes.                                     *
;*                                                                             *
;*******************************************************************************
;*
Q$TooSmal  equ     31 + 16#1000#;     'Retriever buffer not big enough to
;*                                     hold the maximum size message'.
;*
;*******************************************************************************
;*                                                                             *
;*  Wait_for_Queues specific error codes.                                      *
;*                                                                             *
;*******************************************************************************
;*
Q$MulWait  equ     41 + 16#1000#;     'Concurrent wait on the queue'.
Q$EmpWs    equ     42 + 16#1000#;     'Empty wait set'.
Q$QuesEmp  equ     43 + 16#1000#;     'All queues empty' when qualifier 
;*                                     Q$NonBlk was set.
Q$QueDel   equ     44 + 16#1000#;     'A queue was deleted while currently
;*                                     waiting for it'.
;*        
;*******************************************************************************
;                                                                              *
;*  Create_Queue specific error codes.                                         *
;*                                                                             *
;*******************************************************************************
;*
Q$DubDef   equ     51 + 16#1000#;     'Multiply defined queue'.
Q$QueSiz   equ     52 + 16#1000#;     'Not enough resources (ram, too many
;*                                     queues created etc.) for queue'.
;*
;********************************************************************************
;*                                                                             *
;*  Delete_Queue specific error codes.                                         *
;*                                                                             *
;*******************************************************************************
;*
Q$NotEmp   equ     61 + 16#1000#;     'Queue not empty'.
\f


;*******************************************************************************
;*                                                                             *
;*  Assign_Channel specific error codes.                                       *
;*                                                                             *
;*******************************************************************************
;*
Q$ChaSiz   equ     71 + 16#1000#;     'Not enough resources (ram etc. ) for 
;*                                     the channel'.
;*******************************************************************************
;*                                                                             *
;*  Reserve/ Unreserve_Slot specific error codes.                              *
;*                                                                             *
;*******************************************************************************
;
Q$TooFew   equ     81 + 16#1000#;     'The common or reserve slot list for
;                                     the specified channel is empty'.

;
;       Message Queue Services qualifiers
;
;       These codes are set in register d1.w (one or many) at the calls 
;       of those services which take qualifiers.
;

;
;       Common qualifier codes.                                                    *
;
Q$NoQual        equ     0               ; No qualifiers.
Q$UseCha        equ     16#8000#        ; Use the channel specification for
Q$UseChaB       equ     15              ; this service.   
;
;       Create_Queue service specific qualifiers
;
Q$NodWid        equ     16#4000#        ; Create this queue for node wide
Q$NodWidB       equ     14              ; accessibility.
;
;       Delete_Queue service specific qualifiers
;
Q$VerEmp        equ     16#8000#        ; Verify that queue is empty before
Q$VerEmpB       equ     15              ; deletion and return Q$NotEmp if not.
;
;       Send_Message service specific qualifiers
;
Q$UsePri        equ     16#4000#        ; Invoke the senders process priority
Q$UsePriB       equ     14              ; on any waiter on this queue if the
                                        ; waiter has lower priority.

Q$RetRdy        equ     16#2000#        ; Deliver message only if a waiter is
Q$RetRdyB       equ     13              ; currently waiting for the queue.

Q$UseRes        equ     16#1000#        ; Use a reserved slot for this message.
Q$UseResB       equ     12
;
;       Wait_for_Queues service specific qualifiers
;
Q$NonBlk        equ     16#8000#        ; Return with status Q$QuesEmp if all
Q$NonBlkB       equ     15              ; awaited queues are empty.
;
;       Wait_Set flag field specific qualifiers
;
Q$SkpQue        equ     16#8000#        ; Skip this queue when forming the
Q$SkpQueB       equ     15              ; set of awaited queues for this
                                        ; wait service call

Q$UserF1        equ     16#0001#        ; User flag 1.
Q$UserF1B       equ     0

Q$UserF2        equ     16#0002#        ; User flag 2.
Q$UserF2B       equ     1

Q$UserF3        equ     16#0003#        ; User flag 3.
Q$UserF3B       equ     2

Q$UserF4        equ     16#0004#        ; User flag 4.
Q$UserF4B       equ     3

Q$UserF5        equ     16#0005#        ; User flag 5.
Q$UserF5B       equ     4

Q$UserF6        equ     16#0006#        ; User flag 6.
Q$UserF6B       equ     5

Q$UserF7        equ     16#0007#        ; User flag 7.
Q$UserF7B       equ     6

Q$UserF8        equ     16#0008#        ; User flag 8.
Q$UserF8B       equ     7
;
;       Timer calls
;
        Ti$Start        equ     16#0001#;
        Ti$Stop         equ     16#0002#;
;
;       Modifiers to Timer calls
;
        Ti$OneSh        equ     16#20000000#    ; Start a one-shot timer
        Ti$Cycl         equ     16#40000000#    ; Start a cyclic timer
        Ti$Driv         equ     16#FFFFFFFF#    ; Start a timer used by a driver
;
;       Timer error codes
;
        Ti$NoFrTe       equ     16#0000200A#
        Ti$IllTT        equ     16#0000200C#
        Ti$DelTL        equ     16#0000200B#
        Ti$NoFrQS       equ     16#0000200D#
        Ti$BTmrID       equ     16#00002014#

;