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

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

unix.superglobalmegacorp.com

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