home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD2.iso / Programming / Misc / TRSICAT.LZX / CATS_CD2_TRSI / Inc&AD2.1 / includes / exec / execbase.i < prev    next >
Encoding:
Text File  |  1992-09-11  |  6.7 KB  |  209 lines

  1.     IFND    EXEC_EXECBASE_I
  2. EXEC_EXECBASE_I SET    1
  3. **
  4. **    $VER: execbase.i 36.16 (10.10.91)
  5. **    Includes Release 38.56
  6. **
  7. **    Definition of the exec.library base structure.
  8. **
  9. **    (C) Copyright 1985-1992 Commodore-Amiga, Inc.
  10. **        All Rights Reserved
  11. **
  12.  
  13.     IFND EXEC_TYPES_I
  14.     INCLUDE "exec/types.i"
  15.     ENDC    ; EXEC_TYPES_I
  16.  
  17.     IFND EXEC_LISTS_I
  18.     INCLUDE "exec/lists.i"
  19.     ENDC    ; EXEC_LISTS_I
  20.  
  21.     IFND EXEC_INTERRUPTS_I
  22.     INCLUDE "exec/interrupts.i"
  23.     ENDC    ; EXEC_INTERRUPTS_I
  24.  
  25.     IFND EXEC_LIBRARIES_I
  26.     INCLUDE "exec/libraries.i"
  27.     ENDC    ; EXEC_LIBRARIES_I
  28.  
  29.  
  30.  
  31. ** Definition of the Exec library base structure (pointed to by location 4).
  32. ** Most fields are not to be viewed or modified by user programs.  Use
  33. ** extreme caution.
  34. **
  35.  STRUCTURE  ExecBase,LIB_SIZE        ; Standard library node
  36.  
  37. ******* Static System Variables *********************************************
  38.  
  39.         UWORD    SoftVer    ; kickstart release number (obs.)
  40.         WORD    LowMemChkSum    ; checksum of 68000 trap vectors
  41.         ULONG    ChkBase    ; system base pointer complement
  42.         APTR    ColdCapture    ; coldstart soft capture vector
  43.         APTR    CoolCapture    ; coolstart soft capture vector
  44.         APTR    WarmCapture    ; warmstart soft capture vector
  45.         APTR    SysStkUpper    ; system stack base   (upper bound)
  46.         APTR    SysStkLower    ; top of system stack (lower bound)
  47.         ULONG    MaxLocMem    ; top of chip memory
  48.         APTR    DebugEntry    ; global debugger entry point
  49.         APTR    DebugData    ; global debugger data segment
  50.         APTR    AlertData    ; alert data segment
  51.         APTR    MaxExtMem    ; top of extended mem, or null if none
  52.  
  53.         WORD    ChkSum        ; for all of the above (minus 2)
  54.  
  55.  
  56. ******* Interrupt Related ********************************************
  57.  
  58.         LABEL    IntVects
  59.         STRUCT    IVTBE,IV_SIZE
  60.         STRUCT    IVDSKBLK,IV_SIZE
  61.         STRUCT    IVSOFTINT,IV_SIZE
  62.         STRUCT    IVPORTS,IV_SIZE
  63.         STRUCT    IVCOPER,IV_SIZE
  64.         STRUCT    IVVERTB,IV_SIZE
  65.         STRUCT    IVBLIT,IV_SIZE
  66.         STRUCT    IVAUD0,IV_SIZE
  67.         STRUCT    IVAUD1,IV_SIZE
  68.         STRUCT    IVAUD2,IV_SIZE
  69.         STRUCT    IVAUD3,IV_SIZE
  70.         STRUCT    IVRBF,IV_SIZE
  71.         STRUCT    IVDSKSYNC,IV_SIZE
  72.         STRUCT    IVEXTER,IV_SIZE
  73.         STRUCT    IVINTEN,IV_SIZE
  74.         STRUCT    IVNMI,IV_SIZE
  75.  
  76.  
  77. ******* Dynamic System Variables *************************************
  78.  
  79.         APTR    ThisTask    ; pointer to current task (readable)
  80.  
  81.         ULONG    IdleCount    ; idle counter
  82.         ULONG    DispCount    ; dispatch counter
  83.         UWORD    Quantum    ; time slice quantum
  84.         UWORD    Elapsed    ; current quantum ticks
  85.         UWORD    SysFlags    ; misc internal system flags
  86.         BYTE    IDNestCnt    ; interrupt disable nesting count
  87.         BYTE    TDNestCnt    ; task disable nesting count
  88.  
  89.         UWORD    AttnFlags    ; special attention flags (readable)
  90.  
  91.         UWORD    AttnResched    ; rescheduling attention
  92.         APTR    ResModules    ; pointer to resident module array
  93.         APTR    TaskTrapCode    ; default task trap routine
  94.         APTR    TaskExceptCode    ; default task exception code
  95.         APTR    TaskExitCode    ; default task exit code
  96.         ULONG    TaskSigAlloc    ; preallocated signal mask
  97.         UWORD    TaskTrapAlloc    ; preallocated trap mask
  98.  
  99.  
  100. ******* System List Headers (private!) ********************************
  101.  
  102.         STRUCT    MemList,LH_SIZE
  103.         STRUCT    ResourceList,LH_SIZE
  104.         STRUCT    DeviceList,LH_SIZE
  105.         STRUCT    IntrList,LH_SIZE
  106.         STRUCT    LibList,LH_SIZE
  107.         STRUCT    PortList,LH_SIZE
  108.         STRUCT    TaskReady,LH_SIZE
  109.         STRUCT    TaskWait,LH_SIZE
  110.  
  111.         STRUCT    SoftInts,SH_SIZE*5
  112.  
  113.  
  114. ******* Other Globals ******************************************************
  115.  
  116.         STRUCT    LastAlert,4*4
  117.  
  118.         ;------ these next two variables are provided to allow
  119.         ;------ system developers to have a rough idea of the
  120.         ;------ period of two externally controlled signals --
  121.         ;------ the time between vertical blank interrupts and the
  122.         ;------ external line rate (which is counted by CIA A's
  123.         ;------ "time of day" clock).  In general these values
  124.         ;------ will be 50 or 60, and may or may not track each
  125.         ;------ other.  These values replace the obsolete AFB_PAL
  126.         ;------ and AFB_50HZ flags.
  127.         UBYTE    VBlankFrequency     ;(readable)
  128.         UBYTE    PowerSupplyFrequency    ;(readable)
  129.  
  130.         STRUCT    SemaphoreList,LH_SIZE
  131.  
  132.         ;------ these next two are to be able to kickstart into user ram.
  133.         ;------ KickMemPtr holds a singly linked list of MemLists which
  134.         ;------ will be removed from the memory list via AllocAbs.    If
  135.         ;------ all the AllocAbs's succeeded, then the KickTagPtr will
  136.         ;------ be added to the rom tag list.
  137.         APTR    KickMemPtr    ; ptr to queue of mem lists
  138.         APTR    KickTagPtr    ; ptr to rom tag queue
  139.         APTR    KickCheckSum    ; checksum for mem and tags
  140.  
  141.  
  142. ******* V36 Exec additions start here ***************************************
  143.  
  144.         UWORD    ex_Pad0
  145.         ULONG    ex_LaunchPoint    ; Private to Launch/Switch
  146.         APTR    ex_RamLibPrivate
  147.         ;* The next ULONG contains the system "E" clock frequency,
  148.         ;* expressed in Hertz.  The E clock is used as a timebase for
  149.         ;* the Amiga's 8520 I/O chips. (E is connected to "02").
  150.         ;* Typical values are 715909 for NTSC, or 709379 for PAL.
  151.         ;*
  152.         ULONG    ex_EClockFrequency ;(readable)
  153.         ULONG    ex_CacheControl       ;Private to the CacheControl call
  154.         ULONG    ex_TaskID       ;Next available task ID
  155.  
  156.         ULONG    ex_PuddleSize
  157.         ULONG    ex_PoolThreshold
  158.         STRUCT    ex_PublicPool,MLN_SIZE
  159.  
  160.         APTR    ex_MMULock       ;Private
  161.  
  162.         STRUCT    ex_Reserved,12
  163.  
  164.         LABEL    SYSBASESIZE
  165.  
  166.  
  167. ******* Bit defines for AttnFlags (see above) *******************************
  168.  
  169. *  Processors and Co-processors:
  170.     BITDEF    AF,68010,0    ; also set for 68020
  171.     BITDEF    AF,68020,1    ; also set for 68030
  172.     BITDEF    AF,68030,2    ; also set for 68040
  173.     BITDEF    AF,68040,3
  174.     BITDEF    AF,68881,4    ; also set for 68882
  175.     BITDEF    AF,68882,5
  176.     BITDEF    AF,FPU40,6    ; Set if 68040 FPU
  177. ;
  178. ; The AFB_FPU40 bit is set when a working 68040 FPU
  179. ; is in the system.  If this bit is set and both the
  180. ; AFB_68881 and AFB_68882 bits are not set, then the 68040
  181. ; math emulation code has not been loaded and only 68040
  182. ; FPU instructions are available.  This bit is valid *ONLY*
  183. ; if the AFB_68040 bit is set.
  184. ;
  185. ;    BITDEF    AF,RESERVED8,8
  186. ;    BITDEF    AF,RESERVED9,9
  187.     BITDEF    AF,PRIVATE,15    ; Just what it says
  188.  
  189.  
  190. ******* Selected bit definitions for Cache manipulation calls **************
  191.  
  192.     BITDEF    CACR,EnableI,0        ;Enable instruction cache
  193.     BITDEF    CACR,FreezeI,1        ;Freeze instruction cache
  194.     BITDEF    CACR,ClearI,3        ;Clear instruction cache
  195.     BITDEF    CACR,IBE,4        ;Instruction burst enable
  196.     BITDEF    CACR,EnableD,8        ;68030 Enable data cache
  197.     BITDEF    CACR,FreezeD,9        ;68030 Freeze data cache
  198.     BITDEF    CACR,ClearD,11        ;68030 Clear data cache
  199.     BITDEF    CACR,DBE,12        ;68030 Data burst enable
  200.     BITDEF    CACR,WriteAllocate,13    ;68030 Write-Allocate mode (must
  201.                     ;always be set)
  202.     BITDEF    CACR,CopyBack,31    ;Master enable for copyback caches
  203.  
  204.  
  205.     BITDEF    DMA,Continue,1        ;Continuation flag for CachePreDMA
  206.     BITDEF    DMA,NoModify,2        ;Set if DMA does not update memory
  207.  
  208.     ENDC    ; EXEC_EXECBASE_I
  209.