/*
**  $VER: modules.e V0.8B
**
**  (C) Copyright 1996-1997 DreamWorld Productions.
**      All Rights Reserved.
**
*/

OPT MODULE
OPT EXPORT
OPT PREPROCESS

MODULE 'gms/dpkernel','system/register','files/files'

/*****************************************************************************
** Module Object.
*/

CONST MODVERSION  = 1
CONST TAGS_MODULE = $FFFB0000+ID_MODULE

OBJECT module
  head[1]   :ARRAY OF head    /* [00] Standard header */
  number    :INT              /* [12] Number of the associated module */
  modbase   :LONG             /* [14] Function jump table */
  empz      :LONG             /* [18] Segment pointer */
  tabletype :INT              /* [22] */
  empty     :INT              /* [24] */
  emp       :LONG             /* [26] Size of the function table */
  version   :LONG             /* [30] Version of the module */
  revision  :LONG             /* [34] Revision of the module */
  table     :PTR TO modheader /* [38] Header */
  name      :LONG             /* [42] Name of the module */
ENDOBJECT

CONST MODA_NUMBER    = TWORD OR 12,
      MODA_TABLETYPE = TWORD OR 22,
      MODA_VERSION   = TLONG OR 30,
      MODA_REVISION  = TLONG OR 34,
      MODA_NAME      = TAPTR OR 42

CONST JMP_LVO    = 1,
      JMP_AMIGAE = 2

/*****************************************************************************
** Module file header.
*/

CONST MODULE_HEADER_V1 = $4D4F4401

OBJECT modheader
  version        :LONG
  open           :LONG
  close          :LONG  
  expunge        :LONG
  setprefs       :LONG
  freeprefs      :LONG
  funcList       :LONG  /* Pointer to function list */
  cpunumber      :LONG  /* CPU that this module is compiled for */
  modversion     :LONG  /* Version of this module */
  modrevision    :LONG  /* Revision of this module */
  mindpkversion  :LONG  /* Minimum DPK version required */
  mindpkrevision :LONG  /* Minimum DPK revision required */
  init           :LONG
  modbase        :LONG  /* Generated function base for given CPU */
ENDOBJECT

CONST CPU_68000 = 1,
      CPU_68010 = 2,
      CPU_68020 = 3,
      CPU_68030 = 4,
      CPU_68040 = 5,
      CPU_68060 = 6

