diff options
author | Simon Howard | 2008-10-08 18:47:13 +0000 |
---|---|---|
committer | Simon Howard | 2008-10-08 18:47:13 +0000 |
commit | d4d0f9945cefdb86241b5bd095e82ddbfca0e134 (patch) | |
tree | 177a0c2415b26b3b16077993399760de417190c7 /src/hexen/m_misc.c | |
parent | dc7d72797f1d6810b8ba2f8472f6828f1f714df6 (diff) | |
download | chocolate-doom-d4d0f9945cefdb86241b5bd095e82ddbfca0e134.tar.gz chocolate-doom-d4d0f9945cefdb86241b5bd095e82ddbfca0e134.tar.bz2 chocolate-doom-d4d0f9945cefdb86241b5bd095e82ddbfca0e134.zip |
Switch configuration file code to common configuration file code, and
remove old code.
Subversion-branch: /branches/raven-branch
Subversion-revision: 1338
Diffstat (limited to 'src/hexen/m_misc.c')
-rw-r--r-- | src/hexen/m_misc.c | 324 |
1 files changed, 0 insertions, 324 deletions
diff --git a/src/hexen/m_misc.c b/src/hexen/m_misc.c index e8a6c91b..eb16b621 100644 --- a/src/hexen/m_misc.c +++ b/src/hexen/m_misc.c @@ -171,327 +171,3 @@ void M_ForceUppercase(char *text) } } -/* -============================================================================== - - DEFAULTS - -============================================================================== -*/ - -int usemouse; -int usejoystick; - -extern int key_right, key_left, key_up, key_down; -extern int key_strafeleft, key_straferight, key_jump; -extern int key_fire, key_use, key_strafe, key_speed; -extern int key_flyup, key_flydown, key_flycenter; -extern int key_lookup, key_lookdown, key_lookcenter; -extern int key_invleft, key_invright, key_useartifact; - -extern int mousebfire; -extern int mousebstrafe; -extern int mousebforward; -extern int mousebjump; - -extern int joybfire; -extern int joybstrafe; -extern int joybuse; -extern int joybspeed; -extern int joybjump; - -extern boolean messageson; - -extern int viewwidth, viewheight; - -int mouseSensitivity; - -extern int screenblocks; - -extern char *chat_macros[10]; - -typedef struct -{ - char *name; - int *location; - int defaultvalue; - int scantranslate; // PC scan code hack - int untranslated; // lousy hack -} default_t; - -#ifndef __NeXT__ -extern int snd_Channels; -extern int snd_DesiredMusicDevice, snd_DesiredSfxDevice; -extern int snd_MusicDevice, // current music card # (index to dmxCodes) - snd_SfxDevice; // current sfx card # (index to dmxCodes) - -extern int snd_SBport, snd_SBirq, snd_SBdma; // sound blaster variables -extern int snd_Mport; // midi variables -#endif - -default_t defaults[] = { - {"mouse_sensitivity", &mouseSensitivity, 5}, - -#ifndef __NeXT__ - {"sfx_volume", &snd_MaxVolume, 10}, - {"music_volume", &snd_MusicVolume, 10}, -#endif - -#ifdef __WATCOMC__ -#define SC_UPARROW 0x48 -#define SC_DOWNARROW 0x50 -#define SC_LEFTARROW 0x4b -#define SC_RIGHTARROW 0x4d -#define SC_RCTRL 0x1d -#define SC_RALT 0x38 -#define SC_RSHIFT 0x36 -#define SC_SPACE 0x39 -#define SC_COMMA 0x33 -#define SC_PERIOD 0x34 -#define SC_PAGEUP 0x49 -#define SC_INSERT 0x52 -#define SC_HOME 0x47 -#define SC_PAGEDOWN 0x51 -#define SC_DELETE 0x53 -#define SC_END 0x4f -#define SC_ENTER 0x1c -#define SC_SLASH 0X35 - - {"key_right", &key_right, SC_RIGHTARROW, 1}, - {"key_left", &key_left, SC_LEFTARROW, 1}, - {"key_up", &key_up, SC_UPARROW, 1}, - {"key_down", &key_down, SC_DOWNARROW, 1}, - {"key_strafeleft", &key_strafeleft, SC_COMMA, 1}, - {"key_straferight", &key_straferight, SC_PERIOD, 1}, - {"key_jump", &key_jump, SC_SLASH, 1}, - {"key_flyup", &key_flyup, SC_PAGEUP, 1}, - {"key_flydown", &key_flydown, SC_INSERT, 1}, - {"key_flycenter", &key_flycenter, SC_HOME, 1}, - {"key_lookup", &key_lookup, SC_PAGEDOWN, 1}, - {"key_lookdown", &key_lookdown, SC_DELETE, 1}, - {"key_lookcenter", &key_lookcenter, SC_END, 1}, - {"key_invleft", &key_invleft, 0x1a, 1}, - {"key_invright", &key_invright, 0x1b, 1}, - {"key_useartifact", &key_useartifact, SC_ENTER, 1}, - - {"key_fire", &key_fire, SC_RCTRL, 1}, - {"key_use", &key_use, SC_SPACE, 1}, - {"key_strafe", &key_strafe, SC_RALT, 1}, - {"key_speed", &key_speed, SC_RSHIFT, 1}, -#endif - -#ifdef __NeXT__ - {"key_right", &key_right, KEY_RIGHTARROW}, - {"key_left", &key_left, KEY_LEFTARROW}, - {"key_up", &key_up, KEY_UPARROW}, - {"key_down", &key_down, KEY_DOWNARROW}, - {"key_strafeleft", &key_strafeleft, ','}, - {"key_straferight", &key_straferight, '.'}, - {"key_jump", &key_jump, '/'}, - {"key_flyup", &key_flyup, 'u'}, - {"key_flydown", &key_flydown, 'j'}, - {"key_flycenter", &key_flycenter, 'k'}, - {"key_lookup", &key_lookup, 'm'}, - {"key_lookdown", &key_lookdown, 'b'}, - {"key_lookcenter", &key_lookcenter, 'n'}, - {"key_invleft", &key_invleft, '['}, - {"key_invright", &key_invright, ']'}, - {"key_useartifact", &key_useartifact, 13}, - - {"key_fire", &key_fire, ' ', 1}, - {"key_use", &key_use, 'x', 1}, - {"key_strafe", &key_strafe, 'c', 1}, - {"key_speed", &key_speed, 'z', 1}, -#endif - - {"use_mouse", &usemouse, 1}, - {"mouseb_fire", &mousebfire, 0}, - {"mouseb_strafe", &mousebstrafe, 1}, - {"mouseb_forward", &mousebforward, 2}, - {"mouseb_jump", &mousebjump, -1}, - - {"use_joystick", &usejoystick, 0}, - {"joyb_fire", &joybfire, 0}, - {"joyb_strafe", &joybstrafe, 1}, - {"joyb_use", &joybuse, 3}, - {"joyb_speed", &joybspeed, 2}, - {"joyb_jump", &joybjump, -1}, - - {"screenblocks", &screenblocks, 10}, - -#ifndef __NeXT__ - {"snd_channels", &snd_Channels, 3}, - {"snd_musicdevice", &snd_DesiredMusicDevice, 0}, - {"snd_sfxdevice", &snd_DesiredSfxDevice, 0}, - {"snd_sbport", &snd_SBport, 544}, - {"snd_sbirq", &snd_SBirq, -1}, - {"snd_sbdma", &snd_SBdma, -1}, - {"snd_mport", &snd_Mport, -1}, -#endif - - {"usegamma", &usegamma, 0}, - -#define DEFAULT_SAVEPATH "hexndata/" - - {"savedir", (int *) &SavePath, (int) DEFAULT_SAVEPATH}, - - {"messageson", (int *) &messageson, 1}, - - {"chatmacro0", (int *) &chat_macros[0], (int) HUSTR_CHATMACRO0}, - {"chatmacro1", (int *) &chat_macros[1], (int) HUSTR_CHATMACRO1}, - {"chatmacro2", (int *) &chat_macros[2], (int) HUSTR_CHATMACRO2}, - {"chatmacro3", (int *) &chat_macros[3], (int) HUSTR_CHATMACRO3}, - {"chatmacro4", (int *) &chat_macros[4], (int) HUSTR_CHATMACRO4}, - {"chatmacro5", (int *) &chat_macros[5], (int) HUSTR_CHATMACRO5}, - {"chatmacro6", (int *) &chat_macros[6], (int) HUSTR_CHATMACRO6}, - {"chatmacro7", (int *) &chat_macros[7], (int) HUSTR_CHATMACRO7}, - {"chatmacro8", (int *) &chat_macros[8], (int) HUSTR_CHATMACRO8}, - {"chatmacro9", (int *) &chat_macros[9], (int) HUSTR_CHATMACRO9} -}; - -int numdefaults; -char defaultfile[128]; - -/* -============== -= -= M_SaveDefaults -= -============== -*/ - -void M_SaveDefaults(void) -{ - int i, v; - FILE *f; - - f = fopen(defaultfile, "w"); - if (!f) - return; // can't write the file, but don't complain - - for (i = 0; i < numdefaults; i++) - { -#ifdef __WATCOMC__ - if (defaults[i].scantranslate) - defaults[i].location = &defaults[i].untranslated; -#endif - if (defaults[i].defaultvalue > -0xfff - && defaults[i].defaultvalue < 0xfff) - { - v = *defaults[i].location; - fprintf(f, "%s\t\t%i\n", defaults[i].name, v); - } - else - { - fprintf(f, "%s\t\t\"%s\"\n", defaults[i].name, - *(char **) (defaults[i].location)); - } - } - - fclose(f); -} - -//========================================================================== -// -// M_LoadDefaults -// -//========================================================================== - -extern byte scantokey[128]; - -void M_LoadDefaults(char *fileName) -{ - int i; - int len; - FILE *f; - char def[80]; - char strparm[100]; - char *newstring; - int parm; - boolean isstring; - - // Set everything to base values - numdefaults = sizeof(defaults) / sizeof(defaults[0]); - for (i = 0; i < numdefaults; i++) - { - *defaults[i].location = defaults[i].defaultvalue; - } - - // Check for a custom config file - i = M_CheckParm("-config"); - if (i && i < myargc - 1) - { - strcpy(defaultfile, myargv[i + 1]); - ST_Message("config file: %s\n", defaultfile); - } - else if (cdrom) - { - sprintf(defaultfile, "c:\\hexndata\\%s", fileName); - } - else - { - strcpy(defaultfile, fileName); - } - - // Scan the config file - f = fopen(defaultfile, "r"); - if (f) - { - while (!feof(f)) - { - isstring = false; - if (fscanf(f, "%79s %[^\n]\n", def, strparm) == 2) - { - if (strparm[0] == '"') - { - // Get a string default - isstring = true; - len = strlen(strparm); - newstring = (char *) malloc(len); - if (newstring == NULL) - I_Error("can't malloc newstring"); - strparm[len - 1] = 0; - strcpy(newstring, strparm + 1); - } - else if (strparm[0] == '0' && strparm[1] == 'x') - { - sscanf(strparm + 2, "%x", &parm); - } - else - { - sscanf(strparm, "%i", &parm); - } - for (i = 0; i < numdefaults; i++) - { - if (!strcmp(def, defaults[i].name)) - { - if (!isstring) - { - *defaults[i].location = parm; - } - else - { - *defaults[i].location = (int) newstring; - } - break; - } - } - } - } - fclose(f); - } - -#ifdef __WATCOMC__ - // Translate the key scancodes - for (i = 0; i < numdefaults; i++) - { - if (defaults[i].scantranslate) - { - parm = *defaults[i].location; - defaults[i].untranslated = parm; - *defaults[i].location = scantokey[parm]; - } - } -#endif -} - |