1 |
cebix |
1.1 |
/* |
2 |
|
|
* prefs_items.cpp - Common preferences items |
3 |
|
|
* |
4 |
gbeauche |
1.7 |
* SheepShaver (C) 1997-2005 Christian Bauer and Marc Hellwig |
5 |
cebix |
1.1 |
* |
6 |
|
|
* This program is free software; you can redistribute it and/or modify |
7 |
|
|
* it under the terms of the GNU General Public License as published by |
8 |
|
|
* the Free Software Foundation; either version 2 of the License, or |
9 |
|
|
* (at your option) any later version. |
10 |
|
|
* |
11 |
|
|
* This program is distributed in the hope that it will be useful, |
12 |
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
13 |
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
14 |
|
|
* GNU General Public License for more details. |
15 |
|
|
* |
16 |
|
|
* You should have received a copy of the GNU General Public License |
17 |
|
|
* along with this program; if not, write to the Free Software |
18 |
|
|
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
19 |
|
|
*/ |
20 |
|
|
|
21 |
|
|
#include "sysdeps.h" |
22 |
|
|
|
23 |
|
|
#include "sys.h" |
24 |
|
|
#include "prefs.h" |
25 |
|
|
|
26 |
|
|
|
27 |
|
|
// Common preferences items (those which exist on all platforms) |
28 |
|
|
prefs_desc common_prefs_items[] = { |
29 |
|
|
{"disk", TYPE_STRING, true, "device/file name of Mac volume"}, |
30 |
|
|
{"floppy", TYPE_STRING, true, "device/file name of Mac floppy drive"}, |
31 |
|
|
{"cdrom", TYPE_STRING, true, "device/file names of Mac CD-ROM drive"}, |
32 |
|
|
{"extfs", TYPE_STRING, false, "root path of ExtFS"}, |
33 |
|
|
{"scsi0", TYPE_STRING, false, "SCSI target for Mac SCSI ID 0"}, |
34 |
|
|
{"scsi1", TYPE_STRING, false, "SCSI target for Mac SCSI ID 1"}, |
35 |
|
|
{"scsi2", TYPE_STRING, false, "SCSI target for Mac SCSI ID 2"}, |
36 |
|
|
{"scsi3", TYPE_STRING, false, "SCSI target for Mac SCSI ID 3"}, |
37 |
|
|
{"scsi4", TYPE_STRING, false, "SCSI target for Mac SCSI ID 4"}, |
38 |
|
|
{"scsi5", TYPE_STRING, false, "SCSI target for Mac SCSI ID 5"}, |
39 |
|
|
{"scsi6", TYPE_STRING, false, "SCSI target for Mac SCSI ID 6"}, |
40 |
gbeauche |
1.8 |
{"screen", TYPE_STRING, false, "video mode"}, |
41 |
cebix |
1.1 |
{"windowmodes", TYPE_INT32, false, "bitmap of allowed window video modes"}, |
42 |
|
|
{"screenmodes", TYPE_INT32, false, "bitmap of allowed fullscreen video modes"}, |
43 |
|
|
{"seriala", TYPE_STRING, false, "device name of Mac serial port A"}, |
44 |
|
|
{"serialb", TYPE_STRING, false, "device name of Mac serial port B"}, |
45 |
|
|
{"rom", TYPE_STRING, false, "path of ROM file"}, |
46 |
|
|
{"bootdrive", TYPE_INT32, false, "boot drive number"}, |
47 |
|
|
{"bootdriver", TYPE_INT32, false, "boot driver number"}, |
48 |
|
|
{"ramsize", TYPE_INT32, false, "size of Mac RAM in bytes"}, |
49 |
|
|
{"frameskip", TYPE_INT32, false, "number of frames to skip in refreshed video modes"}, |
50 |
|
|
{"gfxaccel", TYPE_BOOLEAN, false, "turn on QuickDraw acceleration"}, |
51 |
|
|
{"nocdrom", TYPE_BOOLEAN, false, "don't install CD-ROM driver"}, |
52 |
|
|
{"nonet", TYPE_BOOLEAN, false, "don't use Ethernet"}, |
53 |
|
|
{"nosound", TYPE_BOOLEAN, false, "don't enable sound output"}, |
54 |
|
|
{"nogui", TYPE_BOOLEAN, false, "disable GUI"}, |
55 |
gbeauche |
1.3 |
{"noclipconversion", TYPE_BOOLEAN, false, "don't convert clipboard contents"}, |
56 |
cebix |
1.1 |
{"ignoresegv", TYPE_BOOLEAN, false, "ignore illegal memory accesses"}, |
57 |
gbeauche |
1.2 |
{"jit", TYPE_BOOLEAN, false, "enable JIT compiler"}, |
58 |
gbeauche |
1.6 |
{"jit68k", TYPE_BOOLEAN, false, "enable 68k DR emulator"}, |
59 |
gbeauche |
1.4 |
{"keyboardtype", TYPE_INT32, false, "hardware keyboard type"}, |
60 |
cebix |
1.1 |
{NULL, TYPE_END, false, NULL} // End of list |
61 |
|
|
}; |
62 |
|
|
|
63 |
|
|
/* |
64 |
|
|
* Set default values for preferences items |
65 |
|
|
*/ |
66 |
|
|
|
67 |
|
|
void AddPrefsDefaults(void) |
68 |
|
|
{ |
69 |
|
|
SysAddSerialPrefs(); |
70 |
|
|
PrefsAddInt32("bootdriver", 0); |
71 |
|
|
PrefsAddInt32("bootdrive", 0); |
72 |
|
|
PrefsAddInt32("ramsize", 16 * 1024 * 1024); |
73 |
|
|
PrefsAddInt32("frameskip", 8); |
74 |
|
|
PrefsAddBool("gfxaccel", true); |
75 |
|
|
PrefsAddBool("nocdrom", false); |
76 |
|
|
PrefsAddBool("nonet", false); |
77 |
|
|
PrefsAddBool("nosound", false); |
78 |
|
|
PrefsAddBool("nogui", false); |
79 |
gbeauche |
1.3 |
PrefsAddBool("noclipconversion", false); |
80 |
gbeauche |
1.8 |
PrefsAddBool("ignoresegv", false); |
81 |
gbeauche |
1.2 |
|
82 |
|
|
#if USE_JIT |
83 |
|
|
// JIT compiler specific options |
84 |
|
|
PrefsAddBool("jit", true); |
85 |
|
|
#else |
86 |
|
|
PrefsAddBool("jit", false); |
87 |
|
|
#endif |
88 |
gbeauche |
1.6 |
PrefsAddBool("jit68k", false); |
89 |
gbeauche |
1.4 |
|
90 |
|
|
PrefsAddInt32("keyboardtype", 5); |
91 |
cebix |
1.1 |
} |