home *** CD-ROM | disk | FTP | other *** search
/ ftp.whtech.com / ftp.whtech.com.7z / ftp.whtech.com / emulators / v9t9 / linux / sources / V9t9 / source / moduledb.h < prev    next >
Encoding:
C/C++ Source or Header  |  2006-10-19  |  864 b   |  33 lines

  1.  
  2. #ifndef __MODULEDB_H__
  3. #define __MODULEDB_H__
  4.  
  5. /*    Flags for standard module parts */
  6. enum
  7. {
  8.     MOD_PART_GROM    = 1,    // GROM at >6000 of an indefinite size
  9.     MOD_PART_ROM    = 2,    // ROM at >6000 of size >2000
  10.     MOD_PART_BANKED    = 4,    // like ROM, but two banks switched through 
  11.                             // write to >6000 or >6002
  12.     MOD_PART_MINIMEM= 8,    // Mini-Memory RAM at >7000 of size >1000
  13.  
  14.     MOD_PART_GRAMKRACKER = 16 // all segments are in GRAM KRACKER format
  15. };
  16.  
  17.  
  18. typedef struct ModuleEntry {
  19.     char    *name;        /* screen name */
  20.     char    *tag;        /* tag for quick loading */
  21.     char    *commands;    /* commands to define memory */
  22.     struct ModuleEntry *next;    /* next entry in database */
  23. } ModuleEntry;
  24.  
  25. extern ModuleEntry *moddb, *loaded_module;
  26.  
  27. int        modules_init(void);
  28. int        modules_init_db(char *dbfilename);
  29. int     module_load(ModuleEntry *ent);
  30. int        module_load_by_name(const char *tag);
  31.  
  32. #endif
  33.