|
|
1.1 root 1: /*
2: Hatari - options_cpu.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.
6: */
7:
8: #ifndef OPTIONS_CPU_H
9: #define OPTIONS_CPU_H
10:
11: #define MAX_CUSTOM_MEMORY_ADDRS 2
12:
13: struct uae_prefs {
14: /* int struct strlist *all_lines; */
15:
16: TCHAR description[256];
17: TCHAR info[256];
18: int config_version;
19: TCHAR config_hardware_path[MAX_DPATH];
20: TCHAR config_host_path[MAX_DPATH];
21:
22: bool illegal_mem;
23: bool use_serial;
24: bool serial_demand;
25: bool serial_hwctsrts;
26: bool serial_direct;
27: bool parallel_demand;
28: int parallel_matrix_emulation;
29: bool parallel_postscript_emulation;
30: bool parallel_postscript_detection;
31: int parallel_autoflush_time;
32: TCHAR ghostscript_parameters[256];
33: bool use_gfxlib;
34: bool socket_emu;
35:
36: bool start_debugger;
37: bool start_gui;
38:
39: /*KbdLang keyboard_lang;*/
40:
41: int produce_sound;
42: int sound_stereo;
43: int sound_stereo_separation;
44: int sound_mixed_stereo_delay;
45: int sound_freq;
46: int sound_maxbsiz;
47: int sound_latency;
48: int sound_interpol;
49: int sound_filter;
50: int sound_filter_type;
51: int sound_volume;
52: bool sound_stereo_swap_paula;
53: bool sound_stereo_swap_ahi;
54: bool sound_auto;
55:
56: int comptrustbyte;
57: int comptrustword;
58: int comptrustlong;
59: int comptrustnaddr;
60: bool compnf;
61: bool compfpu;
62: bool comp_midopt;
63: bool comp_lowopt;
64: bool fpu_strict;
65:
66: bool comp_hardflush;
67: bool comp_constjump;
68: bool comp_oldsegv;
69:
70: int cachesize;
71: int optcount[10];
72:
73: bool avoid_cmov;
74:
75: int gfx_display;
76: TCHAR gfx_display_name[256];
77: int gfx_framerate, gfx_autoframerate;
78: /*
79: struct wh gfx_size_win;
80: struct wh gfx_size_fs;
81: struct wh gfx_size;
82: struct wh gfx_size_win_xtra[4];
83: struct wh gfx_size_fs_xtra[4];
84: */
85: bool gfx_autoresolution;
86: bool gfx_scandoubler;
87: int gfx_refreshrate;
88: int gfx_avsync, gfx_pvsync;
89: int gfx_resolution;
90: int gfx_vresolution;
91: int gfx_lores_mode;
92: int gfx_scanlines;
93: int gfx_afullscreen, gfx_pfullscreen;
94: int gfx_xcenter, gfx_ycenter;
95: int gfx_xcenter_pos, gfx_ycenter_pos;
96: int gfx_xcenter_size, gfx_ycenter_size;
97: int gfx_max_horizontal, gfx_max_vertical;
98: int gfx_saturation, gfx_luminance, gfx_contrast, gfx_gamma;
99: bool gfx_blackerthanblack;
100: int gfx_backbuffers;
101: int gfx_api;
102: int color_mode;
103:
104: int gfx_filter;
105: TCHAR gfx_filtershader[MAX_DPATH];
106: TCHAR gfx_filtermask[MAX_DPATH];
107: TCHAR gfx_filteroverlay[MAX_DPATH];
108: /*struct wh gfx_filteroverlay_pos;*/
109: int gfx_filteroverlay_overscan;
110: int gfx_filter_scanlines;
111: int gfx_filter_scanlineratio;
112: int gfx_filter_scanlinelevel;
113: int gfx_filter_horiz_zoom, gfx_filter_vert_zoom;
114: int gfx_filter_horiz_zoom_mult, gfx_filter_vert_zoom_mult;
115: int gfx_filter_horiz_offset, gfx_filter_vert_offset;
116: int gfx_filter_filtermode;
117: int gfx_filter_bilinear;
118: int gfx_filter_noise, gfx_filter_blur;
119: int gfx_filter_saturation, gfx_filter_luminance, gfx_filter_contrast, gfx_filter_gamma;
120: int gfx_filter_keep_aspect, gfx_filter_aspect;
121: int gfx_filter_autoscale;
122:
123: bool immediate_blits;
124: unsigned int chipset_mask;
125: bool ntscmode;
126: bool genlock;
127: int chipset_refreshrate;
128: int collision_level;
129: int leds_on_screen;
130: int keyboard_leds[3];
131: bool keyboard_leds_in_use;
132: int scsi;
133: bool sana2;
134: bool uaeserial;
135: int catweasel;
136: int cpu_idle;
137: bool cpu_cycle_exact;
138: int cpu_clock_multiplier;
139: int cpu_frequency;
140: bool blitter_cycle_exact;
141: int floppy_speed;
142: int floppy_write_length;
143: int floppy_random_bits_min;
144: int floppy_random_bits_max;
145: bool tod_hack;
146: uae_u32 maprom;
147: int turbo_emulation;
148: bool headless;
149:
150: int cs_compatible;
151: int cs_ciaatod;
152: int cs_rtc;
153: int cs_rtc_adjust;
154: int cs_rtc_adjust_mode;
155: bool cs_ksmirror_e0;
156: bool cs_ksmirror_a8;
157: bool cs_ciaoverlay;
158: bool cs_cd32cd;
159: bool cs_cd32c2p;
160: bool cs_cd32nvram;
161: bool cs_cdtvcd;
162: bool cs_cdtvram;
163: int cs_cdtvcard;
164: int cs_ide;
165: bool cs_pcmcia;
166: bool cs_a1000ram;
167: int cs_fatgaryrev;
168: int cs_ramseyrev;
169: int cs_agnusrev;
170: int cs_deniserev;
171: int cs_mbdmac;
172: bool cs_cdtvscsi;
173: bool cs_a2091, cs_a4091;
174: bool cs_df0idhw;
175: bool cs_slowmemisfast;
176: bool cs_resetwarning;
177: bool cs_denisenoehb;
178: bool cs_dipagnus;
179: bool cs_agnusbltbusybug;
180:
181: TCHAR romfile[MAX_DPATH];
182: TCHAR romident[256];
183: TCHAR romextfile[MAX_DPATH];
184: TCHAR romextident[256];
185: TCHAR flashfile[MAX_DPATH];
186: TCHAR cartfile[MAX_DPATH];
187: TCHAR cartident[256];
188: int cart_internal;
189: TCHAR pci_devices[256];
190: TCHAR prtname[256];
191: TCHAR sername[256];
192: TCHAR amaxromfile[MAX_DPATH];
193: TCHAR a2065name[MAX_DPATH];
194: /*struct cdslot cdslots[MAX_TOTAL_SCSI_DEVICES];*/
195: TCHAR quitstatefile[MAX_DPATH];
196: TCHAR statefile[MAX_DPATH];
197: TCHAR inprecfile[MAX_DPATH];
198: int inprecmode;
199:
200: TCHAR path_floppy[256];
201: TCHAR path_hardfile[256];
202: TCHAR path_rom[256];
203:
204: int m68k_speed;
205: int cpu_model;
206: int cpu_level;
207: int mmu_model;
208: int cpu060_revision;
209: int fpu_model;
210: int fpu_revision;
211: bool cpu_compatible;
212: bool address_space_24;
213: bool picasso96_nocustom;
214: int picasso96_modeflags;
215:
216: uae_u32 z3fastmem_size, z3fastmem2_size;
217: uae_u32 z3fastmem_start;
218: uae_u32 z3chipmem_size;
219: uae_u32 z3chipmem_start;
220: uae_u32 fastmem_size;
221: uae_u32 chipmem_size;
222: uae_u32 bogomem_size;
223: uae_u32 mbresmem_low_size;
224: uae_u32 mbresmem_high_size;
225: uae_u32 gfxmem_size;
226: uae_u32 custom_memory_addrs[MAX_CUSTOM_MEMORY_ADDRS];
227: uae_u32 custom_memory_sizes[MAX_CUSTOM_MEMORY_ADDRS];
228:
229: bool kickshifter;
230: bool filesys_no_uaefsdb;
231: bool filesys_custom_uaefsdb;
232: bool mmkeyboard;
233: int uae_hide;
234:
235: int mountitems;
236: /*struct uaedev_config_info mountconfig[MOUNT_CONFIG_SIZE];*/
237:
238: int nr_floppies;
239: /*struct floppyslot floppyslots[4];*/
240: /*TCHAR dfxlist[MAX_SPARE_DRIVES][MAX_DPATH];*/
241: int dfxclickvolume;
242: int dfxclickchannelmask;
243:
244: /* Target specific options */
245:
246: bool win32_middle_mouse;
247: bool win32_logfile;
248: bool win32_notaskbarbutton;
249: bool win32_alwaysontop;
250: bool win32_powersavedisabled;
251: bool win32_minimize_inactive;
252: int win32_statusbar;
253:
254: int win32_active_priority;
255: int win32_inactive_priority;
256: bool win32_inactive_pause;
257: bool win32_inactive_nosound;
258: int win32_iconified_priority;
259: bool win32_iconified_pause;
260: bool win32_iconified_nosound;
261:
262: bool win32_rtgmatchdepth;
263: bool win32_rtgscaleifsmall;
264: bool win32_rtgallowscaling;
265: int win32_rtgscaleaspectratio;
266: int win32_rtgvblankrate;
267: bool win32_borderless;
268: bool win32_ctrl_F11_is_quit;
269: bool win32_automount_removable;
270: bool win32_automount_drives;
271: bool win32_automount_cddrives;
272: bool win32_automount_netdrives;
273: bool win32_automount_removabledrives;
274: int win32_midioutdev;
275: int win32_midiindev;
276: int win32_uaescsimode;
277: int win32_soundcard;
278: int win32_samplersoundcard;
279: bool win32_soundexclusive;
280: bool win32_norecyclebin;
281: int win32_specialkey;
282: int win32_guikey;
283: int win32_kbledmode;
284: TCHAR win32_commandpathstart[MAX_DPATH];
285: TCHAR win32_commandpathend[MAX_DPATH];
286: TCHAR win32_parjoyport0[MAX_DPATH];
287: TCHAR win32_parjoyport1[MAX_DPATH];
288:
289: bool statecapture;
290: int statecapturerate, statecapturebuffersize;
291:
292: /* input */
293:
294: /*struct jport jports[MAX_JPORTS];*/
295: int input_selected_setting;
296: int input_joymouse_multiplier;
297: int input_joymouse_deadzone;
298: int input_joystick_deadzone;
299: int input_joymouse_speed;
300: int input_analog_joystick_mult;
301: int input_analog_joystick_offset;
302: int input_autofire_linecnt;
303: int input_mouse_speed;
304: int input_tablet;
305: bool input_magic_mouse;
306: int input_magic_mouse_cursor;
307: /*
308: struct uae_input_device joystick_settings[MAX_INPUT_SETTINGS][MAX_INPUT_DEVICES];
309: struct uae_input_device mouse_settings[MAX_INPUT_SETTINGS][MAX_INPUT_DEVICES];
310: struct uae_input_device keyboard_settings[MAX_INPUT_SETTINGS][MAX_INPUT_DEVICES];
311: int dongle;
312: */
313: };
314:
315: extern struct uae_prefs currprefs, changed_prefs;
316: extern void fixup_cpu (struct uae_prefs *prefs);
317:
318:
319: extern void check_prefs_changed_cpu (void);
320:
321: #endif /* OPTIONS_CPU_H */
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.