Annotation of hatari/src/includes/configuration.h, revision 1.1.1.6

1.1       root        1: /*
1.1.1.3   root        2:   Hatari - configuration.h
                      3: 
                      4:   This file is distributed under the GNU Public License, version 2 or at
                      5:   your option any later version. Read the file gpl.txt for details.
1.1       root        6: */
                      7: 
1.1.1.3   root        8: #ifndef HATARI_CONFIGURATION_H
                      9: #define HATARI_CONFIGURATION_H
                     10: 
                     11: 
1.1.1.6 ! root       12: /* Logging */
        !            13: typedef struct
        !            14: {
        !            15:   char sLogFileName[FILENAME_MAX];
        !            16:   int nTextLogLevel;
        !            17:   int nAlertDlgLogLevel;
        !            18: } CNF_LOG;
        !            19: 
        !            20: 
1.1.1.5   root       21: /* ROM (TOS + cartridge) configuration */
1.1.1.3   root       22: typedef struct
                     23: {
1.1.1.5   root       24:   char szTosImageFileName[FILENAME_MAX];
                     25:   char szCartridgeImageFileName[FILENAME_MAX];
                     26: } CNF_ROM;
1.1.1.3   root       27: 
                     28: 
                     29: /* Sound configuration */
                     30: typedef enum
                     31: {
                     32:   PLAYBACK_LOW,
                     33:   PLAYBACK_MEDIUM,
                     34:   PLAYBACK_HIGH
                     35: } SOUND_QUALITIY;
                     36: 
                     37: typedef struct
                     38: {
                     39:   BOOL bEnableSound;
                     40:   SOUND_QUALITIY nPlaybackQuality;
1.1.1.4   root       41:   char szYMCaptureFileName[FILENAME_MAX];
1.1.1.3   root       42: } CNF_SOUND;
                     43: 
                     44: 
                     45: 
1.1.1.4   root       46: /* RS232 configuration */
1.1.1.3   root       47: typedef struct
                     48: {
                     49:   BOOL bEnableRS232;
1.1.1.4   root       50:   char szOutFileName[FILENAME_MAX];
                     51:   char szInFileName[FILENAME_MAX];
1.1.1.3   root       52: } CNF_RS232;
                     53: 
                     54: 
                     55: /* Dialog Keyboard */
                     56: typedef enum
                     57: {
                     58:   KEYMAP_SYMBOLIC,  /* Use keymapping with symbolic (ASCII) key codes */
                     59:   KEYMAP_SCANCODE,  /* Use keymapping with PC keyboard scancodes */
                     60:   KEYMAP_LOADED     /* Use keymapping with a map configuration file */
                     61: } KEYMAPTYPE;
                     62: 
                     63: typedef struct
                     64: {
                     65:   BOOL bDisableKeyRepeat;
                     66:   KEYMAPTYPE nKeymapType;
1.1.1.4   root       67:   char szMappingFileName[FILENAME_MAX];
1.1.1.3   root       68: } CNF_KEYBOARD;
                     69: 
                     70: 
                     71: /* Memory configuration */
                     72: typedef enum
                     73: {
                     74:   MEMORY_SIZE_512Kb,
                     75:   MEMORY_SIZE_1Mb,
                     76:   MEMORY_SIZE_2Mb,
                     77:   MEMORY_SIZE_4Mb
                     78: } MEMORY_SIZE;
                     79: 
                     80: typedef struct
                     81: {
                     82:   MEMORY_SIZE nMemorySize;
1.1.1.4   root       83:   char szMemoryCaptureFileName[FILENAME_MAX];
1.1.1.3   root       84: } CNF_MEMORY;
                     85: 
                     86: 
                     87: /* Joystick configuration */
                     88: typedef struct
                     89: {
                     90:   BOOL bCursorEmulation;
                     91:   BOOL bEnableAutoFire;
                     92: } JOYSTICK;
                     93: 
                     94: typedef struct
                     95: {
                     96:   JOYSTICK Joy[2];
                     97: } CNF_JOYSTICKS;
                     98: 
                     99: 
                    100: /* Discimage configuration */
1.1.1.6 ! root      101: 
        !           102: typedef enum
        !           103: {
        !           104:   WRITEPROT_OFF,
        !           105:   WRITEPROT_ON,
        !           106:   WRITEPROT_AUTO
        !           107: } WRITEPROTECTION;
        !           108: 
1.1.1.3   root      109: typedef struct
                    110: {
                    111:   BOOL bAutoInsertDiscB;
1.1.1.6 ! root      112:   WRITEPROTECTION nWriteProtection;
1.1.1.4   root      113:   char szDiscImageDirectory[FILENAME_MAX];
1.1.1.3   root      114: } CNF_DISCIMAGE;
                    115: 
                    116: 
                    117: /* Hard discs configuration */
                    118: #define MAX_HARDDRIVES  1
                    119: #define DRIVELIST_TO_DRIVE_INDEX(DriveList)  (DriveList+1)
                    120: 
                    121: typedef enum
                    122: {
                    123:   DRIVELIST_NONE,
                    124:   DRIVELIST_C,
                    125:   DRIVELIST_CD,
                    126:   DRIVELIST_CDE,
                    127:   DRIVELIST_CDEF
                    128: } DRIVELIST;
                    129: 
                    130: typedef enum
                    131: {
                    132:   DRIVE_C,
                    133:   DRIVE_D,
                    134:   DRIVE_E,
                    135:   DRIVE_F
                    136: } DRIVELETTER;
                    137: 
                    138: typedef struct
                    139: {
                    140:   int nDriveList;
                    141:   BOOL bBootFromHardDisc;
                    142:   int nHardDiscDir;
                    143:   BOOL bUseHardDiscDirectories;
                    144:   BOOL bUseHardDiscImage;
1.1.1.4   root      145:   char szHardDiscDirectories[MAX_HARDDRIVES][FILENAME_MAX];
                    146:   char szHardDiscImage[FILENAME_MAX];
1.1.1.3   root      147: } CNF_HARDDISC;
                    148: 
                    149: 
                    150: /* Screen configuration */
                    151: typedef struct
                    152: {
                    153:   BOOL bFullScreen;
                    154:   BOOL bFrameSkip;
1.1.1.5   root      155:   BOOL bAllowOverscan;
                    156:   BOOL bInterleavedScreen;
1.1.1.3   root      157:   int ChosenDisplayMode;
1.1.1.5   root      158:   BOOL bUseHighRes;
                    159:   BOOL bUseExtVdiResolutions;
                    160:   int nVdiResolution;
                    161:   int nVdiColors;
1.1.1.3   root      162:   BOOL bCaptureChange;
                    163:   int nFramesPerSecond;
                    164: } CNF_SCREEN;
                    165: 
                    166: 
                    167: /* Printer configuration */
                    168: typedef struct
                    169: {
                    170:   BOOL bEnablePrinting;
                    171:   BOOL bPrintToFile;
1.1.1.4   root      172:   char szPrintToFileName[FILENAME_MAX];
1.1.1.3   root      173: } CNF_PRINTER;
                    174: 
                    175: 
1.1.1.4   root      176: /* Midi configuration */
                    177: typedef struct
                    178: {
                    179:   BOOL bEnableMidi;
                    180:   char szMidiOutFileName[FILENAME_MAX];
                    181: } CNF_MIDI;
                    182: 
                    183: 
1.1.1.3   root      184: /* Dialog System */
                    185: typedef enum
                    186: {
                    187:   MINMAXSPEED_MIN,
                    188:   MINMAXSPEED_1,
                    189:   MINMAXSPEED_2,
                    190:   MINMAXSPEED_3,
                    191:   MINMAXSPEED_MAX
                    192: } MINMAXSPEED_TYPE;
                    193: 
1.1.1.6 ! root      194: typedef enum
        !           195: {
        !           196:   MACHINE_ST,
        !           197:   MACHINE_STE
        !           198: } MACHINETYPE;
        !           199: 
1.1.1.3   root      200: typedef struct
                    201: {
                    202:   int nCpuLevel;
1.1.1.6 ! root      203:   int nCpuFreq;
1.1.1.3   root      204:   BOOL bCompatibleCpu;
1.1.1.6 ! root      205:   /*BOOL bAddressSpace24;*/
        !           206:   MACHINETYPE nMachineType;
1.1.1.3   root      207:   BOOL bBlitter;                  /* TRUE if blitter is enabled */
1.1.1.6 ! root      208:   BOOL bRealTimeClock;
1.1.1.4   root      209:   BOOL bPatchTimerD;
                    210:   BOOL bSlowFDC;                  /* TRUE to slow down FDC emulation */
1.1.1.3   root      211:   MINMAXSPEED_TYPE nMinMaxSpeed;
                    212: } CNF_SYSTEM;
                    213: 
                    214: 
                    215: /* State of system is stored in this structure */
                    216: /* On reset, variables are copied into system globals and used. */
                    217: typedef struct
                    218: {
                    219:   /* Configure */
1.1.1.6 ! root      220:   CNF_LOG Log;
1.1.1.3   root      221:   CNF_SCREEN Screen;
                    222:   CNF_JOYSTICKS Joysticks;
                    223:   CNF_KEYBOARD Keyboard;
                    224:   CNF_SOUND Sound;
                    225:   CNF_MEMORY Memory;
                    226:   CNF_DISCIMAGE DiscImage;
                    227:   CNF_HARDDISC HardDisc;
1.1.1.5   root      228:   CNF_ROM Rom;
1.1.1.3   root      229:   CNF_RS232 RS232;
                    230:   CNF_PRINTER Printer;
1.1.1.4   root      231:   CNF_MIDI Midi;
1.1.1.3   root      232:   CNF_SYSTEM System;
                    233: } CNF_PARAMS;
                    234: 
                    235: 
1.1       root      236: extern BOOL bFirstTimeInstall;
1.1.1.3   root      237: extern CNF_PARAMS ConfigureParams;
1.1.1.4   root      238: extern char sConfigFileName[FILENAME_MAX];
1.1       root      239: 
1.1.1.2   root      240: extern void Configuration_SetDefault(void);
1.1.1.5   root      241: extern void Configuration_WorkOnDetails(BOOL bReset);
1.1.1.6 ! root      242: extern void Configuration_Load(const char *psFileName);
1.1.1.3   root      243: extern void Configuration_Save(void);
                    244: 
                    245: #endif

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.