comparison rogue4/options.c @ 239:837044d2c362

Merge the GCC5 and build fix branches. This fixes all warnings produced by GCC 5, except the ones related to system functions. Those could be fixed by including the proper headers, but it would be better to replace the system-dependent code with functions from mdport.c.
author John "Elwin" Edwards
date Fri, 11 Mar 2016 19:47:52 -0500
parents 50b89f165a34
children e52a8a7ad4c5
comparison
equal deleted inserted replaced
232:bac2c81fec78 239:837044d2c362
25 * description of an option and what to do with it 25 * description of an option and what to do with it
26 */ 26 */
27 struct optstruct { 27 struct optstruct {
28 char *o_name; /* option name */ 28 char *o_name; /* option name */
29 char *o_prompt; /* prompt for interactive entry */ 29 char *o_prompt; /* prompt for interactive entry */
30 int *o_opt; /* pointer to thing to set */ 30 void *o_opt; /* pointer to thing to set */
31 int (*o_putfunc)(); /* function to print value */ 31 void (*o_putfunc)(); /* function to print value */
32 int (*o_getfunc)(); /* function to get value interactively */ 32 int (*o_getfunc)(); /* function to get value interactively */
33 }; 33 };
34 34
35 typedef struct optstruct OPTION; 35 typedef struct optstruct OPTION;
36 36
41 int get_bool(bool *bp, WINDOW *win); 41 int get_bool(bool *bp, WINDOW *win);
42 int get_str(char *opt, WINDOW *win); 42 int get_str(char *opt, WINDOW *win);
43 43
44 OPTION optlist[] = { 44 OPTION optlist[] = {
45 {"terse", "Terse output: ", 45 {"terse", "Terse output: ",
46 (int *) &terse, put_bool, get_bool }, 46 (void *) &terse, put_bool, get_bool },
47 {"flush", "Flush typeahead during battle: ", 47 {"flush", "Flush typeahead during battle: ",
48 (int *) &fight_flush, put_bool, get_bool }, 48 (void *) &fight_flush, put_bool, get_bool },
49 {"jump", "Show position only at end of run: ", 49 {"jump", "Show position only at end of run: ",
50 (int *) &jump, put_bool, get_bool }, 50 (void *) &jump, put_bool, get_bool },
51 {"step", "Do inventories one line at a time: ", 51 {"step", "Do inventories one line at a time: ",
52 (int *) &slow_invent, put_bool, get_bool }, 52 (void *) &slow_invent, put_bool, get_bool },
53 {"askme", "Ask me about unidentified things: ", 53 {"askme", "Ask me about unidentified things: ",
54 (int *) &askme, put_bool, get_bool }, 54 (void *) &askme, put_bool, get_bool },
55 {"passgo", "Follow turnings in passageways: ", 55 {"passgo", "Follow turnings in passageways: ",
56 (int *) &passgo, put_bool, get_bool }, 56 (void *) &passgo, put_bool, get_bool },
57 {"name", "Name: ", 57 {"name", "Name: ",
58 (int *) whoami, put_str, get_str }, 58 (void *) whoami, put_str, get_str },
59 {"fruit", "Fruit: ", 59 {"fruit", "Fruit: ",
60 (int *) fruit, put_str, get_str }, 60 (void *) fruit, put_str, get_str },
61 {"file", "Save file: ", 61 {"file", "Save file: ",
62 (int *) file_name, put_str, get_str } 62 (void *) file_name, put_str, get_str }
63 }; 63 };
64 64
65 /* 65 /*
66 * option: 66 * option:
67 * Print and then set options from the terminal 67 * Print and then set options from the terminal