*$COMEQU
*!*************************************************
*!             R  T  O  S  -  U  H                *
*!             -------------------                *
*!     D A T A - S T R U C T U R E - E Q U s      *
*!     -------------------------------------      *
*!          M 6 8 K  a n d  P o w e r P C         *
*!         ------------------------------         *
*!*************************************************
*!                                                *
*!      (c) 1982 - 2003  by W. Gerth              *
*!                                                *
*! Initial Version 12/95                     (Ge) *
*! PPC-Time-cells added                      (Wo) *1/96
*! RVB(68000) CORRECTED                           *3/96
*! REG-MASKS FOR LOCK/UNLOCK                      *3/96
*! USERL, VMEA16/24 NEW FOR  PPC             (Wo) *4/96
*! MATHE-PACK-LINKS; PPC-PMBSZ now even 4         *5/96
*! WiM-LINK ADDED                            (PR) *07/96
*! JUMTBL(PPC) NEW and extended              (Wo) *9/96
*! DS replaced by EQU (68K)                  (Wo) *11/96
*! A1W for  PPC added                        (Wo) *04/97
*! MODxBY introduced                         (Pr) *05/97
*! RESCLT(PPC) NEW, 20 KHz-counters (PPC) new(Wo) *06/97
*! 20 KHz-counters (M68K) NEU             (Pr+Wo) *07/97
*! CNT20 for  68K behind  FBWCNT inserted    (Wo) *10/97
*! DSPMON for  Disp-Debug-Monitor            (Wo) *10/97
*! BAERLK (BAERR-Link) for PPC added         (Wo) *11/97
*! Acces to  INISR+1-Bit 5 added          (Pr/Wo) *02/98
*! SGRESV added                              (Pr) *03/98     
*! NTMINC for PPC added                      (Wo) *10/98
*! SGCBNT added (no trace in Exc.-Handler)   (Pr) *04/99
*! PPC: r1bit added: System-Stack-Pntr. in r1(Wo) *11/99
*! EVBUF2 for double buffering of events     (Wo) *08/00
*! PPCABW added                              (Wo) *01/01
*! Rewiev for System on a Chip            (Al/Wo) *03/01
*!                                                *
*! SYSOPT added                               (Ge)*03/01
*! SOMNOV / SOBNOV (No Vanish) added in SYSOPT(Ge)*05/01 
*! Clockset-Bits in NESFLG added           (Ge/Wo)*06/01
*! Tracebit in PPCABW modified                (Wo)*07/01
*! Added opcodes and returnvalues for HDWCFG (stm)*03/03
*! Assemble-Flags exported to File COMFLAG    (Ge)*031/03
*! Return-Codes HDWCFG renamed as HC...       (Ge)*032/03
*! Sys-option for Module-ID added             (Ge)*033/03
*!                                                *
*!  Last revision: 28.04.2003                     *
*------------------------------------------------*
*......Assemble-Flags............................*03/01
       .INCLUDE COMFLAG                          *031/03             
*................................................*
*
*      AUTOLINK-DATA SLICE-DESCRIPTION           *
*................................................*
*      SLICE  * 1 *    'TASK-INFORMATION'        *
*                                                *
*      (SLICES ARE ACCUMULATED)                  *
*                                                *
*             TYPE(1)  $01: NORMAL TASK          *
*                      $41: AUTOSTART-TASK       *
*                      $81: RESIDENT TASK        *
*                      $C1: RESID.+AUTOSTART     *
*                                                *
*             CLASS(1) 00: NORMAL                *
*                      01: COMMAND-INTERFACE     *
*                      02: ERROR-TASK            *
*                      80: I/O-TASK              *
*                                                *
*             NAME(6)  6 ASCII OR REL PTR 1ST 4  *
*                                                *
*             PRIO(2)  PRIORITY OF TASK          *
*                                                *
*             WSPL(4)  REQUIRED TASK-WORKSPACE   *
*                                                *
*             RELPC(2) RELATIVE START-PC (OR 0)  *
*                                                *
*             (LDN(2)) ONLY IF I/O OR COMMD IF   *
*                                                *
*             ....     NEXT TASK OR STOP BY $0000*
*................................................*
*      SLICES  * 2 *   TO  * 8 *   IR-BUF INFO   *
*                                                *
*      (THE MAX. IBUF SIZE FOUND IS VALID)       *
*                                                *
*             SIZE(2)  IR-BUFFER SIZE            *
*                      (2:I1BUF ... 8:I7BUF)     *
*................................................*
*      SLICE   * 9 *   MNEMO TO LDN/DRIVE TAB    *
*                                                *
*      (SLICES ARE ACCUMULATED TO ONE TABLE)     *
*                                                *
*             STRING(1..X)   NAME OF DEVICE      *
*                                                *
*             LDN(1)+$80     LOGICAL DEV. NO.    *
*                                                *
*             DRV(1)         DRIVE-NUMBER        *
*                                                *
*             ....           NEXT OR CLOS. $00   *
*................................................*
*      SLICE    * 10 *   DEVICE FACILITY-DEF.    *
*                                                *
*      (THE LAST DEF. IS VALID)                  *
*                                                *
*            SLDN(2)         START-LDN           *
*                                                *
*            DEV.PAR(2)      DEVICE-PARAMETERS   *
*            ....            NEXT OR STOP $0000  *
*................................................*
*      SLICE   * 11 *    USER-SHELL DEFINITION   *
*                                                *
*      (SLICES ARE ACCUMULATED TO ONE TABLE)     *
*                                                *
*             STRING(1...X)  NAME OF COMMAND     *
*                                                *
*             ($00 OR $FF)   MAKE STRINGLEN EVEN *
*                                                *
*             RELPCL(4)      LONG REL. PC TO GO  *
*                                                *
*             ....           NEXT OR $FFFF       *
*................................................*
*      SLICE   * 12 *    RAM-DEFINITION          *
*                                                *
*      (ONLY THE LAST SLICE IS VALID)            *
*                                                *
*             FIRSTWORD(4)   ADR 1 ST WORD       *
*             LASTWORD(4)    ADR LAST AV. WORD   *
*             ......         (OTHER PAIRS)       *
*             FIRSTWORD(4)   ADR 1 ST LAST SECT. *
*             LASTWORD(4)    ADR LAST WORD LAST S*
*                                                *
*             REMARK: ADDRESSES MUST BE ORDERED  *
*                     INCREASING. THE LAST PAIR- *
*                     LASTWORDADR MAY BE FLAGGED *
*                     BY SIGN-BIT, MEANING 'SCAN *
*                     UNTIL BUS ERROR OR RTOS-LO-*
*                     CATION REACHED'            *
*................................................*
*      SLICE   * 13 *  STATIC MODULE DEFINITION  *
*                                                *
*      (ALL MODULES ARE INSERTED)                *
*                                                *
*             REQADR         START-ADR MODULE    *
*             NXADR          ADR NEXT MEM SECT.  *
*             NAME(6)        NAME OF MODULE      *
*             DATADR(4)      DATA-ADR            *
*             BLKLEN(4)      NO OF WORDS         *
*             ... DATA ...                       *
*             DATADR(4)      DATA-ADR            *
*             BLKLEN(4)      NO OF WORDS         *
*             ... DATA ...                       *
*             STOPMARK IS A DATA-ADR $000000     *
*................................................*
*      SLICE   * 14 *  EXCEPTION-LINKS           *
*                                                *
*      (THE LAST DEF. PER ADR IS VALID)          *
*                                                *
*             EXADR(2)       VECTORADR (OR PSEUDO)
*             RELPC(2)       RELATIVE ENTRY ADR  *
*             ....           NEXT PAIR OR $0000  *
*................................................*
*      SLICE   * 15 *   USER INITIALIZATION      *
*                                                *
*      (ALL SLICES ARE EXECUTED)                 *
*                                                *
*             CODE-SEQUENCE TO EXECUTE           *
*             .....                              *
*             RTS            RETURN INTO NUCLEUS *
*................................................*
*      SLICE   * 16 *   HEADER-TEXT              *
*                                                *
*      (ALL SLICES ARE PRINTED)                  *
*                                                *
*             TEXT(X),$FF     HEAD-LINE-TEXT     *
*                                                *
*------------------------------------------------*
*      SLICE  * 17 *    EXTERNAL SYMBOL-LINK     *
*                                                *
*      (ONLY FOR SYSTEM-LOADER)                  *
*                                                *
*             'NAME'         6 BYTES GLOB SYMB.  *
*              REL ADR(2)    =ADR OF LINK        *
*------------------------------------------------*
*      SLICE  * 18 *   PRE-COLD-START CODING     *
*                                                *
*      (ALL CODE-SEQ. ARE EXECUTED)              *
*------------------------------------------------*
TERMSG EQU    1              MESS: EXT. TERMIN.  *
CELIM  EQU    $A00           CE-LIMITER          *
ECESZ  EQU    126            ERROR-CE-SIZE       *
MAXACT EQU    3              MAX NO BUFFERED ACT *
MAXERR EQU    6              ERROR-STACK-SIZE    *
MSTSZ  EQU    24             MMP stack size      *
*
WT     EQU    A4             TASK-WSP-PTR        *
WL     EQU    A5             LOCAL WSP-PTR       *
*................................................*
WRONG  OPD    $2FFF          ILLEGAL INSTRUCTION *
*
       .IF_PROCTYPE M68K
PMBSZ  EQU    50             PEARL-MON. BUF SIZE *5/96
*
EXCORG EQU    $0             Exception origin    *
BUSELK EQU    $8             Bus-error-link      *
SCANLK EQU    $94            SCANNER-LINK-ADR    *
DPCALL EQU    $50f80800      =ST DPC             *
PCSKIP EQU    2              SKIP ONE INSTR.     *
PCSYA7 EQU    2              PC BY SYS-A7 OFFS.  *
*                                                *
*------------------------------------------------*
*      S T A T I C   R T O S - O B J E C T S     *
*------------------------------------------------*
*..... Abort-exception vector adr ...............*
ABTIRV EQU    $7C            Abort-IR vector     *
*
*..... LINE-A EMULATOR LINKS + COLDSTART-BUFFER..*
LINALK EQU    $400           LINE-A -TRAP-LINKS  *11/96
*             ....                   ''          *
*             $57F           LAST BYTE LINE-A    *
*             ....           NOT USED            *
*................................................*
*..... LOC TO SAVE $300 THRU $3FF ON ABORT: .....*
S300   EQU    $600 LATER SYS-STACK UP TP $800    *
SYSSTK EQU    $7FE           TOP OF SYS-STACK    *
RVB    EQU    $800           Variable origin     *3/96
*      ORG    $7FE           STATIC ORG (OLD VER)*11/96
*                                                *
IID    EQU    $7FE      2    INTERRUPT-IDENTIF.  *11/96
DPC    EQU    $800      2    DISPATCHER-CALL FLAG*11/96
TID    EQU    $802      4    RUNNING TASK ID     *11/96
EDFROO EQU    $806      4    EDIT-FILE-ROOT      *11/96
DATE   EQU    $80A      4    DATE OF DAY         *11/96
PIRTRI EQU    $80E      4    RESERVE             *11/96
SCLLNK EQU    $812      4    SET-CLOCK-LINK (4)  *11/96
DISLNK EQU    $816      4    DISPATCHER-LINK     *11/96
*             $81A      4    IMP DEPENDENT       *11/96
*             $81E      4    IMP DEPENDENT       *11/96
EVMASK EQU    $822      4    EVENT-MASK          *08/00
EVBUF2 EQU    $826      4    2x GEPUFFERTE EVENTS*08/00
TIDQER EQU    $82A      4    TID OF QERROR       *11/96
EBRP   EQU    $82E      2    ERROR-BUFFER READ-PT*11/96
EBWP   EQU    $830      2    ERROR-BUFFER WRIT-PT*11/96
*..... INTERRUPT DATA-FIELD - POINTERS IF APPL.  *
IDP1   EQU    $832      4    IR-DATA-PTR LEV 1   *11/96
IDP2   EQU    $836      4    IR-DATA-PTR LEV 2   *11/96
IDP3   EQU    $83A      4    IR-DATA-PTR LEV 3   *11/96
IDP4   EQU    $83E      4    IR-DATA-PTR LEV 4   *11/96
IDP5   EQU    $842      4    IR-DATA-PTR LEV 5   *11/96
IDP6   EQU    $846      4    IR-DATA-PTR LEV 6   *11/96
IDP7   EQU    $84A      4    IR-DATA-PTR LEV 7   *11/96
*      I/O-TABLE-POINTERS                        *
SIODDT EQU    $84E      4    START I/O DEV TBL   *11/96
SIOLDT EQU    $852      4    START I/O LDN-TID TB*11/96
SIOMNT EQU    $856      4    START I/O-MNEMO TB  *11/96
UILDT  EQU    $85A      4    USER-ID TO LDN      *11/96
UITIDP EQU    $85E      4    USER-ID TO TID OF CI*11/96
EBUCOM EQU    $862      4    ERROR-BUFFER COMMND *11/96
EBU12  EQU    $866      4    12 BYTE BUFFER      *11/96
EBUMSG EQU    $86A      4    ERROR-BUFFER MSG    *11/96
F68300 EQU    $86E      2    NE ZERO IF 68300    *11/96
WHAT68 EQU    $870      2    16 BIT (6)8000 ETC. *11/96
USHELP EQU    $872      4    USER-SHELL-POINTER  *11/96
AVRTP  EQU    $876      4    AVAILABLE RAM-TBLE  *11/96
RTWO   EQU    $87A      4    RES. TASKS WSP ORG  *11/96
LCORG  EQU    $87E      4    L-CHAIN ORIGIN PTR  *11/96
*....  RAM - POINTERS  ..........................*
RAMBGN EQU    $882      4    ADR START OF FREE RM*11/96
RAMEND EQU    $886      4    RAM END-ADR         *11/96
*....  CLOCK MANAGEMENT .........................*
TIME   EQU    $88A      4    TIME-CELL           *11/96
TIMEB  EQU    $88E      4    TIME-CELL B         *11/96
TIMEIN EQU    $892      4    TIME INCREMENT      *11/96
*....  MISCELLANEOUS ............................*
MAXCE  EQU    $896      4    MAX CE PER TASK     *11/96
NIOT   EQU    $89A      2    NUMBER OF I/O-TASKS *11/96
NULL32 EQU    $89C      4    ALWAYS NULL         *11/96
VCPADR EQU    $8A0      4    ADR OF VCP          *11/96
BSHLAD EQU    $8A4      4    BOURNE-SHELL-EX ADR *11/96
IDPEND EQU    $8A8      4    END OF IDP-BUFFERS  *11/96
LOADAD EQU    $8AC      4    LOADER-ADR          *11/96
SCNADR EQU    $8B0      4    SCANNER-ADR         *11/96
SHLTWS EQU    $8B4      4    SHELL-TWS REQUIRED  *11/96
CIADR  EQU    $8B8      4    LINK TO CMMD-TASK   *11/96
CMMDI  EQU    $8BC      4    LINK TO CMMD-SR     *11/96
SFCTXT EQU    $8C0      4    SYSFUN-CONTEXT      *11/96
TICSPD EQU    $8C4      4    TIME TICS PER DAY   *07/97
F68010 EQU    $8C8      2    68000/68010/68020   *11/96
HYPLNK EQU    $8CA      4    HYPERPROC-LINK      *11/96
FPUFLG EQU    $8CE      1    NEG. IF 68881 PRESNT*11/96
 F68020: EQU  $8CF      1    NEG. IF 68020       *11/96
PTHLEN EQU    $8D0      2    LENGTH OF TASK-HEADS*11/96
FMLINK EQU    $8D2      4    LINK TO UH-FM-PACKG *11/96
SPARE  EQU    $8D6      8    2  POINTERS RESERVED*10/97
DSPMON EQU    $8DE      4    DISP-DEBUG-MON.-Adr.*10/97
IOQSTA EQU    $8E2      4    I/O-QUEUE START ADR *11/96
FORIMP EQU    $8E6      8    IMPLEM. DEPENDENT   *11/96
CEOFFS EQU    $8EE      4    COMPUTED FROM MXPATH*11/96
MXPATH EQU    $8F2      2    MAX PATH-LEN        *11/96
*................................................*
*..... The 68k Jump-table .......................*
*      Every slot has a size of 6 bytes, offset 2*
JUMSSZ EQU    6              Slot-size           *
JUMOFS EQU    2              Where to deposit adr*
*
JUMTBL EQU    $8F4  JUMSSZ*8 NO OF JUMP OBJ.     *07/97
   CHFTL:     EQU    JUMTBL  JUMP-LINK CHFTL     *
   CD7TAS:    EQU    CHFTL+6     ''    CD7TAS    *
   CLKIR:     EQU    CD7TAS+6    ''    CLOCK     *
   DISEX:     EQU    CLKIR+6     ''    DISP00    *
*....  MAX. 8 JUMPS PERMITTED in total  .........*07/97
*                                                *
*................................................*
*     Time-Cells for 50us RTOS-UH                *07/97
TI50   EQU    $924      4    Time cell 1, 50 us  *07/97
TI50B  EQU    $928      4    Time base, 50 us    *07/97
TI50IN EQU    $92C      4    Time increment,50us *07/97
*................................................*07/97
NUKORG EQU    $930      4    NUKLEUS-ORIGIN      *07/97
SCTBPT EQU    $934      4    SCAN-TABLE-POINTER  *11/96
DAMNPT EQU    $938      4    POINTER TO DAMNUK   *11/96
GRAMBA EQU    $93C      4    GLOB RAM BASE ADR   *11/96
MMPFLG EQU    $940      2    NEG. IF MULTIPROC.  *11/96
NFMLNK EQU    $942      4    NETWORK-FM-LINK     *11/96
SUSR   EQU    $946      2    SUPERV SR-VALUE     *11/96
FPUMSK EQU    $948      2    68060 FLAG,FPU MASK *11/96
NUCID  EQU    $94A      2    NUCLEUS ID-CODE     *11/96
TIMEC  EQU    $94C      4    TIME-CORRECTOR I/A  *11/96
TWFWS  EQU    $950      2    TASK WAIT FR WSP FL *11/96
  TWFCE: EQU  TWFWS+1         ''  ''   ''  CE FL *
IDCNT  EQU    $952      2    IDENTIF. COUNTER    *11/96
RESWSP EQU    $954      4    RESID. WSP NEEDED   *11/96
SERTOP EQU    $958      4    ONE ABOVE HIST FREE *11/96
NCOMIF EQU    $95C      2    NO OF CMMDs MIN. 1  *11/96
SERBOT EQU    $95E      4    SAME AS RAMBGN      *11/96
USERL  EQU    $962    128    NOT USED BY RTOS!   *11/96
*......DISPATCHER AND I/O-QUEUE START - ADR .....*
DPBUF  EQU    $9E2      8    DISP. BUFFER        *11/96
DUMMY  EQU    $9EA      4    USED FOR DISP + CRC *11/96
DCHORG EQU    $9EE      4    DISP CHAIN-ORG      *11/96
DCHEND EQU    $9F2      4    DISP CHAIN END      *11/96
DCHEP  EQU    $9F6      2    DSP-CH END-PRIO     *11/96
*..... FETCH BACKWARDS WORKSPACE CONTROL ........*
FBWCNT EQU    $9F8      1    WAS 1 BYTE ONLY     *10/97
CNT20  EQU    $9F9      1    Counter for 20/1 kHz*10/97
SERTPQ EQU    $9FA      4    SERTOP-QUICK        *11/96
*..... EVENT-COUNTER+BUFFER......................*
EVCNTR EQU    $9FE      2    EVENT-CONTROL       *11/96
EVBUF  EQU    $A00      4    EVENT BUFFER        *11/96
*..... SCHEDULER-REQUEST-FLAGS...................*
SCHRFL EQU    $A04      2    CLOCK/EVENT SCHED RQ*11/96
  CLSCRQ:     EQU   SCHRFL   CLOCK-SCHEDULE REQU.*
  EVSCRQ:     EQU   SCHRFL+1 EVENT-SCHEDULE REQ. *
*                                                *
ERRCDW EQU    $A06           ERROR-CODE-WORD     *
*..... System option-control and faciilties      *03/01
SYSOPT EQU    $A08           4 Bytes system-opt. *03/01
SYSFC1 EQU    $A0C           4 Bytes sys-facility*03/01
SYSFC2 EQU    $A10           4        ''         *03/01
*....  END OF STATICALLY ALLOCATED RTOS-OBJECTS  *
DAMNUK EQU    $A14       ONLY NUC-INTERNAL LABEL *03/01
*                                                *
*      68040                I   680XX (NOT 68040)*
*      -----                I   ---------------- *
*................................................*
*      $A14   NOT USED      I     DYN. USE       *03/01
*      thru   (total 28 by) I       ''           *03/01
*      $A2F   NOT USED      I       ''           *
*----------------------------------------------- *
*      $A30   MATHE-LINKS   I       ''           *
*      thru      ''         I       ''
*      $A93   MATHE-LINKS   I       ''           *
*--                                              *
*      $A94   FPU-BUFFER    I       ''           *
*      thru      ''  $100   I       ''           *
*      $B93   FPU-BUFFER    I       ''           *
*--                                              *
*      $B94   FRAME-BUF     I       ''           *
*      thru      ''  $6C    I       ''           *
*      $BFF                 I       ''           *
*................................................*
       .FIN                  End M68K-special    *
*
*------------------------------------------------*
*       P o w e r P C - S e c t i o n            *
*------------------------------------------------* 
       .IF_PROCTYPE   MPC601
PMBSZ  EQU    52             PEARL-MON. BUF SIZE *5/96
*                                                *
DPCALL EQU    $4ED6B242      creqv cr5+eq,....   *
PCSKIP EQU    4              SKIP FOR ONE INSTR. * 
PCSYA7 EQU    4              PC ON SYS-A7 OFFS.  *
clbit  EQU    5*4+0          cr5+lt
dpbit  EQU    5*4+2          cr5+eq 
evbit  EQU    5*4+1          cr5+gt
r1bit  EQU    5*4+3          cr5+so:Sys-Stk in r1*11/99
*..... Exception-frame size  ....................*
EXFRSZ EQU    5*4      cr,r31,lr,pc,msr          *
*..... Virtual TRAP and Line-A Emulator links    *
*                                                *
       .IF SOCPPC            <<<<<<<<<<<<<<<<<<<<<03/01
EXCORG EQU    $1FF9800       Exception org       *03/01
       .ELSE SOCPPC          <<<<<<<<<<<<<<<<<<<<<03/01
EXCORG EQU    $4000          Exception org       *
       .FIN SOCPPC           <<<<<<<<<<<<<<<<<<<<<03/01
BUSELK EQU    EXCORG+8       Bus-error-link      *
SCANLK EQU    EXCORG+$94     Scanner link adr    *
ABTIRV EQU    EXCORG+$120    Abort IR vector     *
LINALK EQU    EXCORG+$400    Line A - link       *
*                                                *
*      Usable up to $4FFF                        *
*................................................*
*..... System variables follow ..................*
       .IF SOCPPC            <<<<<<<<<<<<<<<<<<<<<03/01
SYSSTK EQU    EXCORG+$600+1024 1k for Sys stack  *03/01
RVB    EQU    SYSSTK         Variable origin     *03/01
       .ELSE SOCPPC          <<<<<<<<<<<<<<<<<<<<<03/01
SYSSTK EQU    $5000          Top of Sys stack    *
RVB    EQU    $5000          Variable origin     *
       .FIN SOCPPC           <<<<<<<<<<<<<<<<<<<<<03/01
*................................................*
*..... Central process administration data.......*
TID    EQU    RVB+$000   4   4 bytes task-identif.
IID    EQU    RVB+$004   4   Interrupt Identifier
SUMSR  EQU    RVB+$008   4   Supervisor-msr      *
USMSR  EQU    RVB+$00C   4   User-msr            *
*
DCHORG EQU    RVB+$010   4   FORS for dispatcher *
DCHEND EQU    RVB+$014   4   BACKS     ''        *
DCHEP  EQU    RVB+$018   4   PRIO      ''        *
*
SFCTXT EQU    RVB+$01C   4   Sys fun context     *
FPUFLG EQU    RVB+$020   4   System has a FPU?   *
*
*      reserve up to $2F
*................................................*
*..... Event and Time administration ............*
EVBUF  EQU    RVB+$030   8   Event buffer 64 bit *
EVCNTR EQU    RVB+$038   8   Event control       *
EVMASK EQU    RVB+$040   8   Event masking       *
EVBUF2 EQU    RVB+$048   4   2x gepufferte Events*08/00
*
TIME   EQU    RVB+$04C   4   Time cell 1         *
TIMEB  EQU    RVB+$050   4   Time base           *
TIMEIN EQU    RVB+$054   4   Time increment      *
*
DATE   EQU    RVB+$058   4   Actual date         *
PPCNTM EQU    RVB+$05C   4   PPC next time       *1/96
PIRTRI EQU    RVB+$060   4   Adr of TRIGEV       *
*
RESCLR EQU    RVB+$064   4   fuer stwcx. in IR   *06/97
*
TI50   EQU    RVB+$068   4   Time cell 1, 50 us  *06/97
TI50B  EQU    RVB+$06C   4   Time base, 50 us    *06/97
TI50IN EQU    RVB+$070   4   Time increment,50us *06/97
TICSPD EQU    RVB+$074   4   Time-Tics per day   *07/97
CNT20  EQU    RVB+$078   1   Counter for 20/1 kHz*07/97
*                        3   3 Bytes frei        *10/98
NTMINC EQU    RVB+$07C   4   Increment f. PPCNTM *10/98
*      Reserve up to $7F     (Reserve verbraucht)*10/98
*
*................................................*
*..... Memory administration ....................*
NUKORG EQU    RVB+$080   4   Adr of Nukleus      *
DAMNPT EQU    RVB+$084   4   Pointer to DAMNUK   *
IOQSTA EQU    RVB+$088   4   I/O-queuing start   *
IDP1   EQU    RVB+$08C   4   IR data buf 1       *
IDP2   EQU    RVB+$090   4   IR data buf 2       *
IDP3   EQU    RVB+$094   4   IR data buf 3       *
IDP4   EQU    RVB+$098   4   IR data buf 4       *
IDP5   EQU    RVB+$09C   4   IR data buf 5       *
IDP6   EQU    RVB+$0A0   4   IR data buf 6       *
IDP7   EQU    RVB+$0A4   4   IR data buf 7       *
IDPEND EQU    RVB+$0A8   4   IDP end pointer     *
SIODDT EQU    RVB+$0AC   4   Start I/O dev tbl   *
SIOLDT EQU    RVB+$0B0   4   Start I/O LDN TID tbl
SIOMNT EQU    RVB+$0B4   4   Start I/O Mnemo tbl *
UILDT  EQU    RVB+$0B8   4   User-ID to LDN      *
UITIDP EQU    RVB+$0BC   4   User-ID to TID      *
EBUCOM EQU    RVB+$0C0   4   Error damon buf cmd *
EBU12  EQU    RVB+$0C4   4   Pointer to 12 by buf*
EBUMSG EQU    RVB+$0C8   4   Pointer to mes buffer
USHELP EQU    RVB+$0CC   4   User shell table ptr*
AVRTB  EQU    RVB+$0D0   4   Available RAM table *
RTWO   EQU    RVB+$0D4   4   Resid. task wsp orig.
LCORG  EQU    RVB+$0D8   4   L-chain origin      *
RAMBGN EQU    RVB+$0DC   4   Free RAM begin      *
SERBOT EQU    RVB+$0E0   4   Search bottom       *
SERTPQ EQU    RVB+$0E4   4   Search top quick    *
SERTOP EQU    RVB+$0E8   4   Search top          *
RAMEND EQU    RVB+$0EC   4   RAM end pointer     *
*
*      Reserve: up to $100
*
*..... Help cells for memory admin routines .....*
FBWCNT EQU    RVB+$100   1   FBW internal counter*10/97
TWFWS  EQU    RVB+$104   4   Task waiting for wsp*
RESWSP EQU    RVB+$108   4   Amount of res.WSP   *
AVRTP  EQU    RVB+$10C   4   Available RAM tbl   *
SHLTWS EQU    RVB+$110   4   Shell TWS requ.     * 
GRAMBA EQU    RVB+$114   4   Glob RAM base MMP   *
MMPFLG EQU    RVB+$118   4   Multiproc flag      *
IDCNT  EQU    RVB+$11C   4   (2 used) Identif cnt*
*
*      Reserve: up to $13F
*
*................................................*
*..... Error administration .....................*
TIDQER EQU    RVB+$140       TID of ERRDMN       *
       .IF SOCPPC            <<<<<<<<<<<<<<<<<<<<<03/01
EBRPL  EQU    RVB+$144   4   SOC: 4Byte read-ptr *03/01
EBWPL  EQU    RVB+$148   4   SOC: 4Byte write ptr*03/01
       .ELSE SOCPPC          <<<<<<<<<<<<<<<<<<<<<03/01
EBRP   EQU    RVB+$144   2   Error buf read-ptr  *
EBWP   EQU    RVB+$148   2   Error buf write ptr *
       .FIN SOCPPC           <<<<<<<<<<<<<<<<<<<<<03/01
ERRCDW EQU    RVB+$14C       Error code word     *
*
*      Reserve up to $15F
*................................................*
*..... Implementation parameters ................*
MAXCE  EQU    RVB+$160   4   Max amount CE-space *
NIOT   EQU    RVB+$164   4   Number of I/O-Tasks *
MXPATH EQU    RVB+$168   4   Max path length     *
CEOFFS EQU    RVB+$16C   4   Computed from MXPATH*
PTHLEN EQU    RVB+$170   4   PTH length          *
NUCID  EQU    RVB+$174   4   Nukleus ID code     *
NCOMIF EQU    RVB+$178   4   Number of command IFs
SCTBPT EQU    RVB+$17C   4   Scanner table pointr*
PPCABW EQU    RVB+$180   4   PPC-Abweichungs-Flgs*01/01
* PPCABW flags out deviations from the MPC604-   *01/01
* standard-processor, which are relevant for the *01/01
* basic system components. If there are such     *01/01
* the flags must be set in the (cold)imp-slice.  *01/01
* Flags used so far:                             *01/01
* $0000.0001: $700-Slot requires ESR       NUK78I*01/01
* $0000.0002: Trace by MSR-Bit 22, not 21  NUK79E*07/01
*                                         +SHL44K*07/01
SYSOPT EQU    RVB+$184   4   System-options      *03/01
SYSFC1 EQU    RVB+$188   4   Sys facilities 1    *03/01
SYSFC2 EQU    RVB+$18C   4   Sys facilities 2    *03/01
*
*      Reserve up to $18F  (4 Bytes only)        *03/01
*................................................*
*..... Additional function addresses             *
LOADAD EQU    RVB+$190   4   System loader adr   *
BSHLAD EQU    RVB+$194   4   Bourne shell adr    *
VCPADR EQU    RVB+$198   4   VCP-address         *
FMLINK EQU    RVB+$19C   4   File manager link   *
NFMLNK EQU    RVB+$1A0   4   Net FM link         *
HYPLNK EQU    RVB+$1A4   4   Hyperproc link      *
CIADR  EQU    RVB+$1A8   4   SSRP-link           *
CMMDI  EQU    RVB+$1AC   4      ''               *
EDFROO EQU    RVB+$1B0   4   EDFM root           *
SCNADR EQU    RVB+$1B4   4   Scanner address     *
DSPMON EQU    RVB+$1B8   4   Disp-Debug-Mon.-Adr.*10/97
BAERLK EQU    RVB+$1BC   4   BAERR-Link          *11/97
*  
*      Reserve up to  $200
*................................................*
*....  The MPC-Jump-table .......................*
*      Every slot is 16 bytes in size            *
JUMTBL EQU    RVB+$200  16   Origin-label        *
JUMOFS EQU    12             Where to deposit adr*
JUMSSZ EQU    16             JUMP-SLOT SIZE      *
   CHFTL:     EQU    JUMTBL  JUMP-LINK CHFTL     *
   CD7TAS:    EQU    CHFTL+16    ''    CD7TAS    *
   CLKIR:     EQU    CD7TAS+16   ''    CLOCK     *9/96
   DISEX:     EQU    CLKIR+16    ''    DISP00    *9/96
   FPECOR:    EQU    DISEX+16 FP-Error-Corr. Slot*9/96
   SOCJUM:    EQU    FPECOR+16 SOC-Hilfs-Slot    *03/01
*....  MAX. 16 JUMPS PERMITTED in total .........*
*
USERL  EQU    RVB+$300       NOT USED BY RTOS!   *4/96
*..... Reserve up to DAMNUK .....................*
*................................................*
DAMNUK EQU    RVB+$400       Init-Label f. DAMNPT*4/96
*      $5400  MATHE-LINKS    $60 Bytes           *5/96
       .FIN
       PAGE
**************************************************
*                                                *
*      Memory administration uses the following  *
*      32-bit Address pointers, ordered by       *
*      increasing (address-) values carried:     *
*................................................*
* -->  DAMNPT:  (DYN ALLOC MEM NUK POINTER)      *
*      POINTING TO DAMNUK OR HIGHER IF 68040     *
*      DAMNPT MAY BE LIFTED  BY 1.ST 18-ER SLICE *
*      WHICH IS THE 68040 MATH.EMULATOR          *
*................................................*
* -->  IOQSTA: I/O-QUEUE START-ADR               *
*................................................*
* -->  IDPx   x=(1...7)                          *
*      INTERRUPT DATA-BUFFERS FOLLOW             *
*................................................*
* -->  SIODDT:                                   *
*      I/O DEVICE-DESCRIPTOR-TAB                 *
*................................................*
* -->  SIOLDT:                                   *
*      I/O TID-TABLE FOLLOWS                     *
*................................................*
* -->  SIOMNT:                                   *
*      I/O MNEMO-TABLE                           *
*................................................*
* -->  UILDT:                                    *
*      USER-ID TO LDN TABLE 1 W/USER             *
*................................................*
* -->  UITIDP:                                   *
*      USER-ID TO TID TABLE 2 W/USER             *
*................................................*
* -->  EBUCOM:                                   *
*      ERROR-TASK CYCLIC COMMAND-BUFFER          *
*      00: WRITE-INDEX                           *
*      02: READ-INDEX                            *
*      04: BUFFER-SPACE                          *
*................................................*
* -->  EBU12:                                    *
*      BUFFER 12 BYTES INSIDE ERROR-TRAPS        *
*................................................*
* -->  EBUMSG:                                   *
*      ERROR-TASK MESSAGE BUFFERS (ONE PER USER) *
*      00: WRITER ADR        USER '00' CONSOLE   *
*      02: MAX ADR R/W + CE PT  ''               *
*      04: READER ADR           ''               *
*      06: MIN ADR R/W          ''               *
*      .....                                     *
*      08: WRITER-ADR        USER '01'           *
*      ..  SEE ABOVE            ''               *
*      ..........................................*
*      THE ERROR-TASK BUFFERS                    *
*................................................*
* -->  USHELP:                                   *
*      THE USER-SHELL TABLE                      *
*      SELFENDING TEXT, JUMP-ADDRESS             *
*          ''              ''                    *
*      $FFFF                 END-MARKER          *
*................................................*
* -->  AVRTP:                                    *
*      THE AVAILABLE RAM - TABLE                 *
*................................................*
* -->  RTWO:                                     *
*      WORKSPACE OF RESIDENT SYSTEMTASKS         *
*      THE SYSTEM-STACK                          *
*................................................*
* -->  LCORG:   'L'-CHAIN ORIGIN                 *
*------------------------------------------------*
       PAGE
*------------------------------------------------*
*      M E M O R Y  -  S E C T I O N S           *
*------------------------------------------------*
FORL   EQU    0              FORWARD PTR SECT.   *
BACKL  EQU    4              BACKW PTR SECTION   *
TYPE   EQU    8              TYPE OF SECTION     *
*
*      TYPE - CLASSES ARE AS FOLLOWS:            *
TYPPTH EQU    $0001          TYP PERM. TASK HEAD *
TYPAUT EQU    $0041            TASK:AUTOSTART    *
TYPVTH EQU    $0002          TYP VOLATILE TSK HD *
TYPCE  EQU    $0004          TYP COMM. ELEM.     *
TYPPWS EQU    $0008          TYP PROC WORKSPC    *
TYPMDL EQU    $0010          TYP MODULE-HEAD     *
TYPPSH EQU    $0050          PEARL-SHELL         *02/96
TYPEDF EQU    $0020          TYP EDITOR-FILE     *
TYPRES EQU    $0080          RESIDENT-FLAG       *
TYPOS  EQU    $0040          TEMPORARY IN USE    *
TYPLST EQU    $FFFF8000      LAST CHAIN ELEM.    *
*
*....  Bit numbering inside type-word ...........*
TYPBTK EQU    0              TASK-SECTION        *
TYPBMD EQU    4              TYPE-MODULE-BIT     *
TYPBPW EQU    3              BIT-POS. OF TYPPWS  *
TYPBOS EQU    6              Bit pos of OS       *
*                                                *
*      INTERNAL STRUC OF MEM-SEC ON NEXT PAGE    *
*                                                *
       .IF_PROCTYPE  M68K                        *
       PAGE
*................................................*
*    I      I      I        I
*PTH I VTH  I CE   I PWSP   I  Displacement      *
*....I......I......I........I....................*
NAME                         EQU  10   NAME TS/M *
       FORT:                 EQU  10   FWD TERMI *
*             FORT:          EQU  10   FWD TERMI *
*                    FORT:   EQU  10   FWD TERMI *
       BACKT:                EQU  14   BCKW TERMI*
*             BACKT:         EQU  14   BCKW TERMI*
*                    BACKT:  EQU  14   BCKW TERMI*
DFPRIO                       EQU  16   DEFAULT P *
WSPLEN                       EQU  18   WSP-LENGTH*
       TIDO:                 EQU  18   TID OWNER *
*             TIDO:          EQU  18   TID OWNER *
*                    TIDO:   EQU  18   TID OWNER *
FORS                         EQU  22   FW LNK-S  *
       A7UW:                 EQU  22   USER-A7   *
       FSTREG:               EQU  A7UW 1st reg   *12/95
*             FORS           EQU  22   FW-LNK-S  *
                     WLOLD:  EQU  22   OLD WL REG*
BACKS                        EQU  26   BW-LNK S  *
       A7SW:                 EQU  26   SYS-A7    *
*             BACKS:         EQU  26   BW-LNK S  *
                     PRTNAD: EQU  26   PROC RTNAD*
PRIO                         EQU  30   PRIO OF TH*
       D0W:                  EQU  30   REG-AREA  *
*             PRIO:          EQU  30   PRIO OF TH*
                     BWIO:   EQU  30   BUF F WIO *
SPC                          EQU  32   START PC  *
              BUADR:         EQU  32   BUFF ADR  *
                     FLVA:   EQU  34   FST LV ADR*
BLOCK                        EQU  36   BLOCK-BYTE*
              RECLEN:        EQU  36   RECRD LEN *
SCHED                        EQU  37   SCHED-BYTE*
WTO                          EQU  38   WT-ORG    *
              STATIO:        EQU  38   STATUS IO *
              LDNIO:         EQU  39   LDN I/O   *
              MODE:          EQU  40   I/O-MODE  *
CACT                         EQU  42   CNTR ACTIV*
              DRIVE:         EQU  42   DRIVE-NUMB*
CCE                          EQU  44   CNTRFR CE *
              FNAME:         EQU  44   FILE/PATH *
TIC                          EQU  46   TI/EV CONT*
TIA                          EQU  50   TI/EV ACT *
TINV                         EQU  54   TI INTRVL *
*             IOBUF:         EQU  ??   I/O-BUFFER*
TIL                          EQU  58   TI LST ACT*
BRKADR                       EQU  62   BREAK-ADR *
       A0W:                  EQU  62   A0-BUF    *
SCHDPR                       EQU  66   SCHED-PRIO*
       A1W:                  EQU  66   A1-BUF    *
NESFLG                       EQU  68   NEWSTARTFLG
FPUSFL                       EQU  69   FPU USING?*
       A2W:                  EQU  70   A2-BUF    *
INISR                        EQU  70   SEE BELOW!*
*      ......                          REG AREA  *
MSGLNK                       EQU  72   MESS.LINK *
SIGLNK                       EQU  76   SIGN.LINK *
MSGQU                        EQU  80   I/O-QU.HEAD
       SSBOT:                EQU  90   SS-BOTTOM *
ACTBUF                       EQU  92   ACT BUFFR *
LENPTH                       EQU  2*MAXACT+ACTBUF
*      ....                  ....      12 BYTES  *
       OPNAME:               EQU  102  OPRND NAME*
       OPFATI:               EQU  108  OP 1STACT.*
       OPINTV:               EQU  112  INTERVAL  *
       OPLTI:                EQU  116  LAST ACT  *
       PMBUF:                EQU  120  PEAMON-BUF*
       LINENO:               EQU  162   HLL-LINENO
*......ADD. FPU-TASK-WSP (BE AWARE OF BWIO IN HYP)
       FPURGS:               EQU  PMBUF+PMBSZ-4  *
       MIFRM:                EQU  FPURGS+9*12    *
       FPUFRM:               EQU  MIFRM+20       *
       VTHOFF:               EQU  FPUFRM+184+32  *
       .FIN                  End M68K section    *
       .IF_PROCTYPE   MPC601
       PAGE
*................................................*
*    I      I      I        I
*PTH I VTH  I CE   I PWSP   I  Displacement      *
*....I......I......I........I....................*
NAME                         EQU  $A   name of M *
*                                                *
*      2 n/a  2 n/a  2 n/a   only used in PTH    *
*      ..........................................*
       FORT:                 EQU  $C   FWD T-link*
*             FORT:          EQU  ''   FWD T-link*
*                    FORT:   EQU  ''   FWD T-link*
*................................................*
DFPRIO                       EQU $10   DEFAULT P *
       BACKT:                EQU $10   BCKW T-lnk*
*             BACKT:         EQU  ''   BCKW T-lnk*
*                    BACKT:  EQU  ''   BCKW T-lnk*
SCHDPR                       EQU $12   SCHED-PRIO*
*................................................*
WSPLEN                       EQU $14   WSP-LENGTH*
       TIDO:                 EQU $14   TID OWNER *
*             TIDO:          EQU  ''   TID OWNER *
*                    TIDO:   EQU  ''   TID OWNER *
*................................................*
FORS                         EQU $18   FW LNK-S  *
       D0W:                  EQU $18   Rg-sv area*
       FSTREG:               EQU D0W   1st register
*             FORS           EQU  ''   FW-LNK-S  *
                     WLOLD:  EQU $18   OLD WL REG*
*................................................*
BACKS                        EQU $1C   BW-LNK S  *
*      reg1                  EQU $1C   REG-AREA  *
*             BACKS:         EQU  ''   BW-LNK S  *
                     PRTNAD: EQU $1C   PROC RTNAD*
*................................................*
PRIO                         EQU $20   PRIO OF TS*
*      reg2                  EQU $20   REG-AREA  *
*             PRIO:          EQU  ''   PRIO OF CE*
                     BWIO:   EQU $20   BUF F WIO *
BLOCK                        EQU $22   BLOCK-BYTE*
SCHED                        EQU $23   SCHED-BYTE*
*             2 n/a          unused in CE        *
*................................................*
SPC                          EQU $24   START PC  *
*      reg3                       ''             *
              BUADR:         EQU $24   BUFF ADR  *
                     FLVA:   EQU $24   FST LV ADR*
*................................................*
WTO                          EQU $28   WT-ORG    *
*      reg4                       ''             *
              RECLEN:        EQU $28   RECRD LEN *
              STATIO:        EQU $2A   STATUS IO *
              LDNIO:         EQU $2B   LDN I/O   *
*................................................*
TIC                          EQU $2C   TI/EV CONT*
*      reg5                       ''             *
              MODE:          EQU $2C   I/O-MODE  *
              DRIVE:         EQU $2E   DRIVE-NUMB*
*................................................*
TIA                          EQU $30   TI/EV ACT *
*      reg6                       ''             *
              FNAME:         EQU $30   FILE/PATH *
*................................................*
TINV                         EQU $34   TI INTRVL *               
*      reg7                       ''             *
*             IOBUF:         EQU  ??   I/O-BUFFER*
*................................................*
TIL                          EQU $38   TI LST ACT*
*      reg8                       ''             *
*................................................*
BRKADR                       EQU $3C   BREAK-ADR *
*      reg9                       ''             *
       A1W:                  EQU $3C   A1-BUF(r9)*04/97
*................................................*
CCE                          EQU $40   CNTRFR CE *
*      reg10                      ''             *
CACT                         EQU $42   CNTR ACTIV*
*................................................*
NESFLG                       EQU $44   NEWSTARTFLG
*      reg11                      ''             *
FPUSFL                       EQU $45   FPU USING?*
INISR                        EQU $46   SEE BELOW!*
*................................................*
MSGLNK                       EQU $48   MESS.LINK *
*      reg12                      ''             *
*................................................*
SIGLNK                       EQU $4C   SIGN.LINK *
*      reg13                      ''             *
*................................................*
MSGQU                        EQU $50   I/O-QU.HEAD
*      reg14                      ''             *
*................................................*
*4 more                      EQU $54   (BACKS)   *
*      reg15                      ''             *
*................................................*
*4 more                      EQU $58   (PRIO)    *
*      reg16                      ''             *
*................................................*
ACTBUF                       EQU $5C   ACT BUFFR *
*      reg17                      ''             *
*................................................*
*                                                *
*      reg18                 EQU $60             *
*
LENPTH                       EQU 2*MAXACT+ACTBUF *
*      reg19 thru reg31          $64 thru $94    *1/96
*
       CTXCTR:               EQU $98   contxt CTR*1/96
       CTXXER:               EQU $9C   contxt XER*1/96
       CTXMQ:                EQU $A0   contxt MQ *1/96
       CTXMSR:               EQU $A4   contxt MSR*1/96
       CTXPC:                EQU $A8   contxt PC *1/96
       CTXLR:                EQU $AC   contxt LR *1/96
       CTXCR:                EQU $B0   contxt CR *1/96
*................................................*
*.... The following applies only to the VTH sect.*
*
       OPNAME:       EQU $B4           Name of op*1/96
       OPFATI:       EQU OPNAME+8      OP 1STACT.*
       OPINTV:       EQU OPFATI+4      INTERVAL  *
       OPLTI:        EQU OPINTV+4      LAST ACT  *
       PMBUF:        EQU OPLTI+4       HYPERPROC *
       LINENO:       EQU PMBUF+42       HLL-LINENO
*......ADD. FPU-TASK-WSP (BE AWARE OF BWIO IN HYP)
       MATHBF:       EQU PMBUF+PMBSZ-4 $80 size  *5/96
       FPURGS:       EQU MATHBF+$80    context buf5/96
       FPBFSZ:       EQU $80+264       Total size*5/96
       .FIN                  End MPC601-section  *
*------------------------------------------------*
       PAGE
*------------------------------------------------*
*      THE USER-ENVIRONMENT DATA-BLOCK           *
*      (FOLLOWING LENPTH OF PERMANENT TASK-HEAD) *
EBUW   EQU    0           2  ERROR-BUF WRITE INDX*
EBUR   EQU    EBUW+2      2  ERROR-BUF READ INDEX*
EBUMAX EQU    EBUR+2      2  ERROR-BUF MAX INDEX *
EBUMIN EQU    EBUMAX+2    2  ERROR-BUF MIN INDEX *
ECEBL  EQU    EBUMIN+2    2  ERROR-CE-BUF LENGTH *
NXD    EQU    ECEBL+2     2  NO OF EXEC DIRECT.  *
ERRCE  EQU    NXD+2       4  CE OF QERROR        *
STDELP EQU    ERRCE+4     4  PTR STDERR LDN/PATH *
STDILP EQU    STDELP+4    4  PTR STDINP LDN/PATH *
STDOLP EQU    STDILP+4    4  PTR STDOUT LDN/PATH *
WDIRPT EQU    STDOLP+4    4  PTR TO WORKDIRS     *
LIBPPT EQU    WDIRPT+4    4  LIB-PATH-POINTER    *
BSHTID EQU    LIBPPT+4    4  Bourne shell TID    *
ENVADR EQU    BSHTID+4    4  Environment adr     *
*             RESERVE     4  RESERVED            *
UEVEND EQU    LIBPPT+4+12    USER-ENVIRONMENT END*
*------------------------------------------------*
       PAGE
*------------------------------------------------*
*      BIT-ALLOCATION IN TASK-STATUS-WORD 'BLOCK'*
*------------------------------------------------*
BLKBGP EQU    0              BLOCK GENERAL PURP. *
       BLKMGP: EQU   $01                     MASK* 
BLKBSE EQU    1              WAIT FOR SEMA       *
       BLKMSE: EQU   $02                     MASK*
BLKBWS EQU    2              ITING FOR WORKSPACE *
       BLKMWS: EQU   $04                     MASK*
BLKBCE EQU    3              WAITING FOR 'CE'    *
       BLKMCE: EQU   $08                     MASK*
BLKBSU EQU    4              SUSPEND-BIT         *
       BLKMSU: EQU   $10                     MASK*
BLKBAC EQU    5              WAITING FOR ACTIVATN*
       BLKMAC: EQU   $20                     MASK*
BLKBWA EQU    6              WAITING FOR I/O COMP*
       BLKMWA: EQU   $40                     MASK*
BLKBRM EQU    7              IN EXECUTION MMP    *
       BLKMRM: EQU   $80                     MASK*

       PAGE
*------------------------------------------------*
*      INFOS ABOUT THE ERROR/SIGNAL HDLR         *
*------------------------------------------------*
*..... AT ERRCDW THE ERROR-CODE-WORD IS STORED ..*
*..... THIS WORD IS STRUCTURED AS FOLLOWS:       *
EWBFIL EQU    12             FILE-NAME VALID     *
       EWMFIL: EQU   $1000       ''         MASK *
EWBNON EQU    13             NO NAME GIVEN       *
       EWMNON: EQU   $2000       ''         MASK *
EWBPMS EQU    14             PROGRAM-MESSAGE     *
       EWMTER: EQU   $4000       ''         MASK *
EWBSUS EQU    15             SUSPEND-BIT         *
       EWMSUS: EQU   $8000                  MASK *
*................................................*
*..... THE SIGNAL-FRAME: ........................*
SGAEB1 EQU  00  2 BYTES =$AEB5 FOR FRAME-VALID.  *
SGCNTL EQU  02  2 BYTES =  CONTROL-WORD          *
SGRESV EQU  04  4 BYTES RESERVED FOR LATER EXTENS*03/98
SGTGPC EQU  08  4 BYTES = TARGET-PC              *
*....  THE FOLLOWING BYTES ARE FILLED BY THE EXC.*
SGOLPC EQU $0C  4 BYTES = PC AFTER EXCEPTION     *
SGOLSR EQU $10  2 BYTES = SR BEFORE EXCEPTION    *
SGOLD7 EQU $12  4 BYTES = D7 BEFORE EXCEPTION    *
SGEM12 EQU $16 12 BYTES =  THE EBU12-CONTEXT     *
*      I     2 BYTES ERROR-CODE-WORD             *
*      I     4 BYTES TID OR Vxxx OF EXCEPTION    *
*      I     6 BYTES MESSAGE TEXT                *
*      I       ( OR 4 BYTES BIN VALUE PLUS $0001)*
*      I       ( OR 4 BYTES TEXT-PTR  PLUS $0000)*
SIGTOT EQU $22               TOTAL FRAME-SIZE    *
*
*..... For internal use in SSRP-exception hndlr: *
*  SPECIAL VARS FOR EXEPTION HANDLER EXEX        *03/98
SGERPT EQU    SIGTOT       4 STD-ERROR-POINTER   *03/98
SGEXPC EQU    SGERPT+$04   4 EXTERN PC IF EXT HDL*03/98
SGEXEL EQU    SGERPT+$08   4 ERROR-WORD-LIST     *03/98
SGSTAC EQU    SGERPT+$0C   4 ONE LONGWORD-STACK  *03/98
SGSREG EQU    SGERPT+$10 $20 REGISTER-SAVE-PLACE *03/98
SGESSR EQU    SIGTOT+$30     SHORT FRAME SIZE    *03/98
       .IF_PROCTYPE M68K     ONLY IN 68xxx       *03/98
SGEFFS EQU    SGESSR         FULL FRAME SIZ 68xxx*03/98
       .FIN       M68K                           *03/98
       .IF_TATYPE MPC601     ONLY IN POWER PC    *03/98
*     OFFSETS FOR FULL-POWER-PC-FRAME            *03/98
SGRES2 EQU    SGERPT+$30  10 RESERVED FOR LATER  *03/98
SGPCR  EQU    SGERPT+$3A   4 CONDITION-REGISTER  *03/98
SGPXER EQU    SGERPT+$3E   4 XER-REGISTER        *03/98
SGPLR  EQU    SGERPT+$42   4 LINK-REGISTER       *03/98
SGPRG  EQU    SGERPT+$46  28 R25...R31           *03/98 
SGEPFS EQU    SIGTOT+$32+12*4 FULL-POWER-PC-FRAME*03/98
SGEFFS EQU    SGEPFS         FULL FRAME SIZE PPC *03/98
       .FIN       MPC601     ONLY IN POWER PC    *03/98
*
*................................................*03/98
*   BITS IN SGCNTL                               *03/98
SGCBED EQU    7        ALSO PRINT BY ERROR-DAEMON*03/98
SGCMED EQU       $80    "                        *03/98
SGCBPF EQU    6        FULL POWER-PC-FRAME       *03/98
SGCMPF EQU       $40    "                        *03/98
SGCBBR EQU    5        BREAKPOINT VIA EXCEPT-HDLR*03/98
SGCMBR EQU       $20    "                        *03/98
SGCBFM EQU    4        FORCE MESSAGE+SUB-HDLR    *03/98
SGCMFM EQU       $10    "                        *03/98
SGCBNT EQU    3        NO TRACE IN EXCEPTION-HDLR*04/99
SGCMNT EQU       $08    "                        *04/99
* BIT 0 IS INTERNAL USED!!!                      *03/98
       PAGE
*------------------------------------------------*
*      INFOS ABOUT INISR                         *
*------------------------------------------------*
*      RIGHT PART (WHICH IS THE CCR) IS USED FOR *
*      DIFFERENT SPECIAL TASK-FORMS              *
*    
*      BIT(0) OF INISR+1: TASK IS A SHELL PROCESS*
*      BIT(1) OF INISR+1: TASK IS A GEMDOS-PROCESS
*                         AFFECTS ONLY GX-TRAPS  *
*      BIT(2) OF INISR+1: TASK RUNS UNDER DEBUG  *
*                         AFFECTS THE LINE-TRACER*
*                                                *
*      BIT(3) OF INISR+1: PEARL-Shell if set     *
*                         Affects line-no decoder*
*                         and line tracer        *
*      BIT(4) OF INISR+1: SHELL-SKRIPT if set    *11/96
*                         Affects line-no decoder*11/96
*                         and line tracer        *11/96
*      BIT(5) OF INISR+1: 1: Suppress ERROR-MSG  *02/98
*                         of Schedulers          *02/98
*------------------------------------------------*
*      INFOS ABOUT NESFLG                        *
*------------------------------------------------*
NEBNES   EQU    7         New-Start-Bit          *06/01
 NEMNES: EQU       $80         ''  -Mask         *06/01
NEBCRE   EQU    6         1: TIC is relative     *06/01
 NEMCRE: EQU       $40         ''                *06/01
NEBARE   EQU    5         1: TIA is rel. (after) *06/01
 NEMARE: EQU       $20         ''                *06/01
NEBLRE   EQU    4         1: TIL is rel. (during)*06/01
 NEMLRE: EQU       $10         ''                *06/01
NEBWAI   EQU    0         MMP: Task waits in TRAP*06/01
TABWAI   EQU    0              ''  (old name)    *06/01
 NEMWAI: EQU       $01         ''                *06/01
*------------------------------------------------*
*      INFOS ABOUT THE I/O-SYSTEM                *
*------------------------------------------------*
*      I/O-COMMAND - OP-CODES  (MODE+1)          *
IOCBEF EQU    7    output    END OF FILE BIT     *
IOCBNE EQU    6    input     No Error Bit        * 
IOCBEX EQU    5    input     Exclusive Bit       *
*
IOCRW  EQU    0              'READ/WRITE'        *
IOCER  EQU    1              'ERASE' FILE        *
IOCRPE EQU    2              REPORT-ERROR        *02/96
IOCRTN EQU    4              'RETURN' FILE TO SYS*
IOCCLO EQU    6              'CLOSE'-OPERATION   *
IOCRWI EQU    7              'R/W IMPLICIT'      *
IOCREW EQU    8              'REWIND OLD'        *03/98
IOCAP  EQU    9              APPEND FILE         *
IOCFL  EQU    12             'LIST FILES'-COMMAND*
IOCFRE EQU    13             LIST FREE (CPM)     *
IOCDI  EQU    14             DIRECTORY-CMD       *
IOCSYN EQU    16             SYNC DEVICE         *2/96
IOCTOU EQU    17             TOUCH-COMMAND       *
IOCLNK EQU    18             LINK A FILE         *2/96
IOCSEE EQU    19             SEEK-COMMAND        *12/95
IOCSAV EQU    20             SAVEP-COMMAND       *12/95
IOCRWS EQU    21             SPECIAL REWIND      *
IOCRWN EQU    22             REWIND NEW          *12/95
IOCFOS EQU    23             SINGLE DENS FORM    *
IOCFOD EQU    24             DOUBLE DENS FORM    *
IOCCF  EQU    25             CHANGE FILES        *
IOCMDI EQU    26             MAKE DIRECTORY      *2/96
IOCRDI EQU    27             REMOVE DIRECTORY    *2/96
IOCREN EQU    28             RENAME FILE         *2/96
IOCRRW EQU    31             RAW READ/WRITE      *2/96
*..... The 3 high order bits have special func:  *
IOCMEX EQU    $20            Mask for 'exclusive'*
IOCMNE EQU    $40            Mask for 'no errors'*
IOCMEF EQU    $80            Mask for 'end of file' 
*      I/O-FACILITIES                            *
IOFBRE EQU    7              REWINDABLE          *
       IOFMRE: EQU   $80      '' MASK            *
IOFBOC EQU    6              OPEN/CLOSABLE       *
       IOFMOC: EQU   $40      '' MASK            *
IOFBLF EQU    5              ADD LINE-FEED       *
       IOFMLF: EQU   $20      '' MASK            *
IOFBDI EQU    4              DIALOGUE POSSIBLE   *
       IOFMDI: EQU   $10      '' MASK            *
IOFBNE EQU    3              NO ECHO I/A         *
       IOFMNE: EQU   $08      '' MASK            *
IOFBER EQU    2              ERASABLE FILES      *
       IOFMER: EQU   $04      '' MASK            *
IOFBOU EQU    1              OUTPUT POSS.        *
       IOFMOU: EQU   $02      '' MASK            *
IOFBIN EQU    0              INPUT POSSIBLE      *
       IOFMIN: EQU   $01      '' MASK            *
       IOFMIO: EQU   $03     IN+OUT-MASK         *
*................................................*
*      BYTE 2 OF I/O-FACILITIES                  *
IOFBFL EQU    7              FILE-LIST FACILITY  *
       IOFMFL: EQU   $80       '' MASK           *
IOFBFO EQU    6              FORMATABLE FACILITY *12/95
       IOFMFO:   EQU $40     FORMATABLE          *
IOFBCF EQU    5              CHANGEABLE FACILITY *12/95
       IOFMCF:   EQU $20     CHANGEABLE          *
IOFBMK EQU    4              MKDIR FACILITY      *12/95
       IOFMMK:   EQU $10     MKDIR POSSIBLE      *12/95
IOFBSE EQU    3              SEEK FACILITY       *12/95
       IOFMSE:   EQU $08     '' mask             *
IOFBRP EQU    2              Report error fac.   *
       IOFMRP:   EQU $04     '' mask             *
*                                                *
       IOFMNW:   EQU $02     FOR EDITOR: NO WRAP *
       IOFMVT:   EQU $01         ''      VTxy    *
*................................................*
*      I/O MODUS-BYTE BIT-POS. ARE AS FOLLOWS:   *
*        BITS IN MODE+1 : See IOCBxy             *
MODBBY EQU    0              BINARY MODE         *05/97
       MODMBY: EQU   1           ''         MASK *05/97
MODBNE EQU    1              NO-ECHO-MODE        *12/95
       MODMNE: EQU   2             ''       MASK *12/95
MODBSC EQU    2              SUPPRESS COMMAND-IF *
       MODMSC: EQU   4           ''         MASK *12/95
MODBEO EQU    3              END ON EOT          *
       MODMEO: EQU   8           ''        MMASK *
MODBLF EQU    4              END ON LINE-FEED    *
       MODMLF: EQU   $10         ''         MASK *
MODBCR EQU    5              END ON CARR.RETURN  *
       MODMCR: EQU   $20         ''         MASK *
MODBOU EQU    6              OUTPUT-MODE         *
       MODMOU: EQU   $40         ''         MASK *
MODBWA EQU    7              WAIT-BIT            *
       MODMWA: EQU   $80         ''         MASK *
*
*................................................*
* OLD  I/O MODUS-BYTE BIT-POS.                   *05/97
*     NOT FOR NEW DEVELOPMENTS                   *05/97
MODBPT EQU    0              I/O WITH PARITY     *
       MODMPT: EQU   1           ''         MASK *
MODBBI EQU    1              BINARY-MODE         *
       MODMBI: EQU   2             ''       MASK *12/95
*................................................*
*      I/O STATUS-BYTE BIT-POS. ARE AS FOLLOWS:  *
STABRE EQU    1              RELEASE CE          *
       STAMRE: EQU   2             ''       MASK *12/95
STABRT EQU    2              RETURN  CE          *    
       STAMRT: EQU   4             ''       MASK *12/95
STABOQ EQU    3              CE IN 'OWN QUEUE'   *    
       STAMOQ: EQU   8             ''       MASK *12/95
       PAGE
*------------------------------------------------*
*      INFOS ABOUT THE CLOCK/EVENT SCHEDULING    *
*------------------------------------------------*
*      BITS IN SCHED-BYTE ARE AS FOLLOWS         *
SCHBAC EQU    7              PLANNED FOR ACT     *
       SCHMAC: EQU   $80          ''   MASK      *
SCHBTA EQU    5              TIMED-ACTIVATE      *
       SCHMTA: EQU   $20          ''   MASK      *
SCHBCA EQU    4              CYCLIC-ACTIVATE     *
       SCHMCA: EQU   $10          ''   MASK      *
SCHBWA EQU    3              WHEN ACTIVATE       *
       SCHMWA: EQU   $08          ''   MASK      *
SCHBTC EQU    2              TIMED CONTINUE      *
       SCHMTC: EQU   $04          ''   MASK      *
SCHBWC EQU    1              WHEN CONTINUE       *
       SCHMWC: EQU   $02          ''   MASK      *
SCHBID EQU    0              IDLE-TASK-BIT       *
       SCHMID: EQU   $01          ''   MASK      *
       PAGE                                      *
* ---------------------------------------------- *03/03
*      INFOS ABOUT THE HDWCFG TRAP               *03/03
*      ......................................... *03/03
*                                                *03/03
*      DEFINES THE USED OPCODES AND RETURN       *03/03
*      CODES.                                    *03/03
*                                                *03/03
* .............................................. *03/03
*                                                *03/03
*  Register layout for the HDWCFG trap           *03/03
*                                                *03/03
*  REG  IN              IN/OUT          OUT      *03/03
*  D1:  opCode          -               rCode    *03/03
*  D2:  1. parameter    -               1. result*03/03
*  A2:  2. parameter    ->paraStruct    2. result*03/03
*  D7:  -               -               destroyed*03/03
*  CR:  -               -               EQ/NE    *03/03
*                                                *03/03
*  On succes CR is set to EQ. On error CR is set *03/03
*  to NE. Not all input/output registers are used*03/03
*  for a certain subfunction. Unused regs retain *03/03
*  their value. See trap description for info    *03/03
*  about used registers and their meaning.       *03/03
*                                                *03/03
* ---------------------------------------------- *03/03
*      DEFINITION OF OPCODES (input for D1)      *03/03
HCTEST EQU    -1             TEST IF INSTALLED   *03/03
HCRSRV EQU    0              RESERVED            *03/03
HCPRDB EQU    1              Pci config ReaD Byte*03/03
HCPRDW EQU    2              Pci config ReaD Word*03/03
HCPRDL EQU    3              Pci config ReaD Long*03/03
HCPWRB EQU    4              Pci cfg WRite Byte  *03/03
HCPWRW EQU    5              Pci cfg WRite Word  *03/03
HCPWRL EQU    6              Pci cfg WRite Long  *03/03
HCPIOR EQU    7              Pci I/O Relocate adr*03/03
HCPM3R EQU    8              Pci Mem32 Reloc. adr*03/03
HCPL3R EQU    9              Pci Local32 Relocate*03/03
HCPSCN EQU    10             Pci (re-)SCaN bus   *03/03
HCPFND EQU    11             Pci FiND device     *03/03
HCSIRE EQU    12             System IRq Enable   *03/03
HCSIRD EQU    13             System IRq Disable  *03/03
HCSADT EQU    14             System ADjust Timer *03/03
* ---------------------------------------------- *03/03
*      DEFINITION OF RETURN (ERROR) CODES IN D1  *03/03
HCEOK    EQU  0              ALL FINE            *032/03
HCEGNRL  EQU  -1             NOT INSTALLED?      *032/03
HCENODEV EQU  -2             NO SUCH DEVICE      *032/03
HCECNCL  EQU  -3             OPERATION CANCELED  *032/03
HCENOSYS EQU  -4             NO SUCH FUNCTION    *032/03
HCENOM32 EQU  -5             NOT A 32 BIT RANGE  *032/03
HCENOBUS EQU  -6             BUS NOT PRESENT     *032/03
HCERANGE EQU  -7             ADDR NOT IN RANGE   *032/03
HCENINIT EQU  -8             NOT YET INITIALISED *032/03
* ---------------------------------------------- *03/03
       PAGE                                      *
*------------------------------------------------*03/01
*  I N F O S   A B O U T   S Y S - O P T I O N S *03/01
*------------------------------------------------*03/01
*....  SYSOPT:
*
SOMDCD EQU    $80000000      DCDERR long output  *03/01
  SOBDCD: EQU 7              SYSOPT+0, Bit 7     *03/01
SOMNOV EQU    $40000000      NO Vanish option    *05/01
  SOBNOV: EQU 6              SYSOPT+0, Bit 6     *05/01
SOMMOI EQU    $20000000      MOduleId output     *033/03
  SOBMOI: EQU 5              SYSOPT+0, Bit 5     *033/03  
*------------------------------------------------*
*  I N F O S   A B O U T   S Y S - F A C I L .   *03/01
*------------------------------------------------*
*....  SYSFC1:
*
S1M68K EQU    $80000000      Is 68K-Family       *03/01
  S1B68K: EQU 7              SYSFC1+0, BIT 7     *03/01
S1MPPC EQU    $40000000      Is PowerPC-Family   *03/01
  S1BPPC: EQU 6              SYSFC1+0, BIT 6     *03/01
*
*....  SYSFC2:
*
*------------------------------------------------*
*      I N F O S   A B O U T   B O L T S         *
*------------------------------------------------*
* >>  $0000  = TOTALLY FREE                      *
*     $0xxx  = NOT PERMITTED, ERRONEOUS STATE    *
*     $1xxx  = NOT PERMITTED, ERRONEOUS STATE    *
*     $2000  = NOT PERMITTED, ERRONEOUS STATE    *
* >>  $2xxx  = ENTERED, COUNT IS xxx, NOBODY WAIT*
* >>  $3xxx  = SAME AS ABOVE, HIGHER COUNT       *
*     $4xxx  = NOT PERMITTED, ERRONEOUS STATE    *
*     $5xxx  = NOT PERMITTED, ERRONEOUS STATE    *
*     $6xxx  = NOT PERMITTED, ERRONEOUS STATE    *
* >>  $7xxx  = ONLY PERM. FOR xxx=FFF, ELSE WRONG*
* >>  $7FFF  = E-COUNT ELAPSED, SOMEBODY WAITING *
* >>  $8000  = RESERVED, NOBODY WAITING          *
*     $9xxx  = NOT PERMITTED, ERRONEOUS STATE    *
*     $Axxx  = NOT PERMITTED, ERRONEOUS STATE    *
*     $Bxxx  = NOT PERMITTED, ERRONEOUS STATE    *
* >>  $C000  = RESERVED, SOMEBODY WAITING        *
*     $Cxxx  = NOT PERMITTED, ERRONEOUS STATE    *
*     $Dxxx  = NOT PERMITTED, ERRONEOUS STATE    *
* >>  $Exxx  = ENTERED, RESERVER WAITING         *
*     $Fxxx  = HIGHLY ENTERED, RESERVER WAITING  *
* >>  $FFFF  = E-COUNT ELAPSED, SOMEBODY WAITING *
*
*------------------------------------------------*
*   VME-A16/A24 BASE-POINTER / WiM LINK          *
*------------------------------------------------*
VMEA24 EQU    USERL+$9A0-$962 VME A24 BASE ADR   *4/96
VMEA16 EQU    USERL+$9A4-$962 VME A16 BASE ADR   *4/96
VMEA32 EQU    USERL+$9A8-$962 VME A32 BASE ADR   *
GPILNK EQU    USERL+$9CC-$962 LINK FOR WiM       *07/96
*
*------------------------------------------------*
*      MASKEN FUER LOCK/UNLOCK-KOMMANDOS:        *
*------------------------------------------------*
       .IF_TATYPE MPC601
RG25   EQU    $8000          REGISTER 25         *3/96
RG26   EQU    $4000          REGISTER 26         *3/96
RG27   EQU    $2000          REGISTER 27         *3/96
RG28   EQU    $1000          REGISTER 28         *3/96
RG29   EQU    $0800          REGISTER 29         *3/96
RG30   EQU    $0400          REGISTER 30         *3/96
RG31   EQU    $0200          REGISTER 31         *3/96
RGLR   EQU    $0100          LINK-REGISTER       *3/96
       .FIN
*                                                *
*------------------------------------------------*
*
