34
34
#include "pet-cmdline-options.h"
37
#ifdef HAS_TRANSLATION
38
#include "translate.h"
38
40
static const cmdline_option_t cmdline_options[] = {
39
41
{ "-model", CALL_FUNCTION, 1, pet_set_model, NULL, NULL, NULL,
40
"<modelnumber>", "Specify PET model to emulate" },
41
{ "-kernal", SET_RESOURCE, 1, NULL, NULL, "KernalName", NULL,
42
"<name>", "Specify name of Kernal ROM image" },
43
{ "-basic", SET_RESOURCE, 1, NULL, NULL, "BasicName", NULL,
44
"<name>", "Specify name of BASIC ROM image" },
45
{ "-editor", SET_RESOURCE, 1, NULL, NULL, "EditorName", NULL,
46
"<name>", "Specify name of Editor ROM image" },
47
{ "-chargen", SET_RESOURCE, 1, NULL, NULL, "ChargenName", NULL,
48
"<name>", "Specify name of character generator ROM image" },
49
{ "-rom9", SET_RESOURCE, 1, NULL, NULL, "RomModule9Name", NULL,
50
"<name>", "Specify 4K extension ROM name at $9***" },
51
{ "-romA", SET_RESOURCE, 1, NULL, NULL, "RomModuleAName", NULL,
52
"<name>", "Specify 4K extension ROM name at $A***" },
53
{ "-romB", SET_RESOURCE, 1, NULL, NULL, "RomModuleBName", NULL,
54
"<name>", "Specify 4K extension ROM name at $B***" },
55
{ "-petram9", SET_RESOURCE, 0, NULL, NULL, "Ram9", (void *)1,
56
NULL, "Enable PET8296 4K RAM mapping at $9***" },
57
{ "+petram9", SET_RESOURCE, 0, NULL, NULL, "Ram9", (void *)0,
58
NULL, "Disable PET8296 4K RAM mapping at $9***" },
59
{ "-petramA", SET_RESOURCE, 0, NULL, NULL, "RamA", (void *)1,
60
NULL, "Enable PET8296 4K RAM mapping at $A***" },
61
{ "+petramA", SET_RESOURCE, 0, NULL, NULL, "RamA", (void *)0,
62
NULL, "Disable PET8296 4K RAM mapping at $A***" },
63
{ "-superpet", SET_RESOURCE, 0, NULL, NULL, "SuperPET", (void *)1,
64
NULL, "Enable SuperPET I/O" },
65
{ "+superpet", SET_RESOURCE, 0, NULL, NULL, "SuperPET", (void *)0,
66
NULL, "Disable SuperPET I/O" },
67
{ "-basic1", SET_RESOURCE, 0, NULL, NULL, "Basic1", (void *)1,
68
NULL, "Enable ROM 1 Kernal patches" },
69
{ "+basic1", SET_RESOURCE, 0, NULL, NULL, "Basic1", (void *)0,
70
NULL, "Disable ROM 1 Kernal patches" },
71
{ "-basic1char", SET_RESOURCE, 0, NULL, NULL, "Basic1Chars",
73
NULL, "Switch upper/lower case charset" },
74
{ "+basic1char", SET_RESOURCE, 0, NULL, NULL, "Basic1Chars",
76
NULL, "Do not switch upper/lower case charset" },
77
{ "-eoiblank", SET_RESOURCE, 0, NULL, NULL, "EoiBlank", (void *)1,
78
NULL, "EOI blanks screen" },
79
{ "+eoiblank", SET_RESOURCE, 0, NULL, NULL, "EoiBlank", (void *)0,
80
NULL, "EOI does not blank screen" },
81
{ "-emuid", SET_RESOURCE, 0, NULL, NULL, "EmuID", (void *)1,
82
NULL, "Enable emulator identification" },
83
{ "+emuid", SET_RESOURCE, 0, NULL, NULL, "EmuID", (void *)0,
84
NULL, "Disable emulator identification" },
86
{ "-keymap", SET_RESOURCE, 1, NULL, NULL, "KeymapIndex", NULL,
87
"<number>", N_("Specify index of keymap file") },
88
{ "-grsymkeymap", SET_RESOURCE, 1, NULL, NULL, "KeymapGraphicsSymFile",
42
IDCLS_P_MODELNUMBER, IDCLS_SPECIFY_PET_MODEL },
43
{ "-kernal", SET_RESOURCE, 1, NULL, NULL, "KernalName", NULL,
44
IDCLS_P_NAME, IDCLS_SPECIFY_KERNAL_ROM_NAME },
45
{ "-basic", SET_RESOURCE, 1, NULL, NULL, "BasicName", NULL,
46
IDCLS_P_NAME, IDCLS_SPECIFY_BASIC_ROM_NAME },
47
{ "-editor", SET_RESOURCE, 1, NULL, NULL, "EditorName", NULL,
48
IDCLS_P_NAME, IDCLS_SPECIFY_EDITOR_ROM_NAME },
49
{ "-chargen", SET_RESOURCE, 1, NULL, NULL, "ChargenName", NULL,
50
IDCLS_P_NAME, IDCLS_SPECIFY_CHARGEN_ROM_NAME },
51
{ "-rom9", SET_RESOURCE, 1, NULL, NULL, "RomModule9Name", NULL,
52
IDCLS_P_NAME, IDCLS_SPECIFY_4K_ROM_9XXX_NAME },
53
{ "-romA", SET_RESOURCE, 1, NULL, NULL, "RomModuleAName", NULL,
54
IDCLS_P_NAME, IDCLS_SPECIFY_4K_ROM_AXXX_NAME },
55
{ "-romB", SET_RESOURCE, 1, NULL, NULL, "RomModuleBName", NULL,
56
IDCLS_P_NAME, IDCLS_SPECIFY_4K_ROM_BXXX_NAME },
57
{ "-petram9", SET_RESOURCE, 0, NULL, NULL, "Ram9", (void *)1,
58
0, IDCLS_PET8296_ENABLE_4K_RAM_AT_9000 },
59
{ "+petram9", SET_RESOURCE, 0, NULL, NULL, "Ram9", (void *)0,
60
0, IDCLS_PET8296_DISABLE_4K_RAM_AT_9000 },
61
{ "-petramA", SET_RESOURCE, 0, NULL, NULL, "RamA", (void *)1,
62
0, IDCLS_PET8296_ENABLE_4K_RAM_AT_A000 },
63
{ "+petramA", SET_RESOURCE, 0, NULL, NULL, "RamA", (void *)0,
64
0, IDCLS_PET8296_DISABLE_4K_RAM_AT_A000 },
65
{ "-superpet", SET_RESOURCE, 0, NULL, NULL, "SuperPET", (void *)1,
66
0, IDCLS_ENABLE_SUPERPET_IO },
67
{ "+superpet", SET_RESOURCE, 0, NULL, NULL, "SuperPET", (void *)0,
68
0, IDCLS_DISABLE_SUPERPET_IO },
69
{ "-basic1", SET_RESOURCE, 0, NULL, NULL, "Basic1", (void *)1,
70
0, IDCLS_ENABLE_ROM_1_KERNAL_PATCHES },
71
{ "+basic1", SET_RESOURCE, 0, NULL, NULL, "Basic1", (void *)0,
72
0, IDCLS_DISABLE_ROM_1_KERNAL_PATCHES },
73
{ "-basic1char", SET_RESOURCE, 0, NULL, NULL, "Basic1Chars",
75
0, IDCLS_SWITCH_UPPER_LOWER_CHARSET },
76
{ "+basic1char", SET_RESOURCE, 0, NULL, NULL, "Basic1Chars",
78
0, IDCLS_NO_SWITCH_UPPER_LOWER_CHARSET },
79
{ "-eoiblank", SET_RESOURCE, 0, NULL, NULL, "EoiBlank", (void *)1,
80
0, IDCLS_EOI_BLANKS_SCREEN },
81
{ "+eoiblank", SET_RESOURCE, 0, NULL, NULL, "EoiBlank", (void *)0,
82
0, IDCLS_EOI_DOES_NOT_BLANK_SCREEN },
83
{ "-emuid", SET_RESOURCE, 0, NULL, NULL, "EmuID", (void *)1,
84
0, IDCLS_ENABLE_EMULATOR_ID },
85
{ "+emuid", SET_RESOURCE, 0, NULL, NULL, "EmuID", (void *)0,
86
0, IDCLS_DISABLE_EMULATOR_ID },
88
{ "-keymap", SET_RESOURCE, 1, NULL, NULL, "KeymapIndex", NULL,
89
IDCLS_P_NUMBER, IDCLS_SPECIFY_KEYMAP_INDEX },
90
{ "-grsymkeymap", SET_RESOURCE, 1, NULL, NULL, "KeymapGraphicsSymFile",
92
IDCLS_SPECIFY_GFX_SYM_KEYMAP_NAME },
93
{ "-grposkeymap", SET_RESOURCE, 1, NULL, NULL, "KeymapGraphicsPosFile",
95
IDCLS_SPECIFY_GFX_POS_KEYMAP_NAME },
96
{ "-buksymkeymap", SET_RESOURCE, 1, NULL, NULL, "KeymapBusinessUKSymFile",
98
IDCLS_SPECIFY_BUK_SYM_KEYMAP_NAME },
99
{ "-bukposkeymap", SET_RESOURCE, 1, NULL, NULL, "KeymapBusinessUKPosFile",
101
IDCLS_SPECIFY_BUK_POS_KEYMAP_NAME },
102
{ "-bdesymkeymap", SET_RESOURCE, 1, NULL, NULL, "KeymapBusinessDESymFile",
104
IDCLS_SPECIFY_BDE_SYM_KEYMAP_NAME },
105
{ "-bdeposkeymap", SET_RESOURCE, 1, NULL, NULL, "KeymapBusinessDEPosFile",
107
IDCLS_SPECIFY_BDE_POS_KEYMAP_NAME },
112
static const cmdline_option_t cmdline_options[] = {
113
{ "-model", CALL_FUNCTION, 1, pet_set_model, NULL, NULL, NULL,
114
N_("<modelnumber>"), N_("Specify PET model to emulate") },
115
{ "-kernal", SET_RESOURCE, 1, NULL, NULL, "KernalName", NULL,
116
N_("<name>"), N_("Specify name of Kernal ROM image") },
117
{ "-basic", SET_RESOURCE, 1, NULL, NULL, "BasicName", NULL,
118
N_("<name>"), N_("Specify name of BASIC ROM image") },
119
{ "-editor", SET_RESOURCE, 1, NULL, NULL, "EditorName", NULL,
120
N_("<name>"), N_("Specify name of Editor ROM image") },
121
{ "-chargen", SET_RESOURCE, 1, NULL, NULL, "ChargenName", NULL,
122
N_("<name>"), N_("Specify name of character generator ROM image") },
123
{ "-rom9", SET_RESOURCE, 1, NULL, NULL, "RomModule9Name", NULL,
124
N_("<name>"), N_("Specify 4K extension ROM name at $9***") },
125
{ "-romA", SET_RESOURCE, 1, NULL, NULL, "RomModuleAName", NULL,
126
N_("<name>"), N_("Specify 4K extension ROM name at $A***") },
127
{ "-romB", SET_RESOURCE, 1, NULL, NULL, "RomModuleBName", NULL,
128
N_("<name>"), N_("Specify 4K extension ROM name at $B***") },
129
{ "-petram9", SET_RESOURCE, 0, NULL, NULL, "Ram9", (void *)1,
130
NULL, N_("Enable PET8296 4K RAM mapping at $9***") },
131
{ "+petram9", SET_RESOURCE, 0, NULL, NULL, "Ram9", (void *)0,
132
NULL, N_("Disable PET8296 4K RAM mapping at $9***") },
133
{ "-petramA", SET_RESOURCE, 0, NULL, NULL, "RamA", (void *)1,
134
NULL, N_("Enable PET8296 4K RAM mapping at $A***") },
135
{ "+petramA", SET_RESOURCE, 0, NULL, NULL, "RamA", (void *)0,
136
NULL, N_("Disable PET8296 4K RAM mapping at $A***") },
137
{ "-superpet", SET_RESOURCE, 0, NULL, NULL, "SuperPET", (void *)1,
138
NULL, N_("Enable SuperPET I/O") },
139
{ "+superpet", SET_RESOURCE, 0, NULL, NULL, "SuperPET", (void *)0,
140
NULL, N_("Disable SuperPET I/O") },
141
{ "-basic1", SET_RESOURCE, 0, NULL, NULL, "Basic1", (void *)1,
142
NULL, N_("Enable ROM 1 Kernal patches") },
143
{ "+basic1", SET_RESOURCE, 0, NULL, NULL, "Basic1", (void *)0,
144
NULL, N_("Disable ROM 1 Kernal patches") },
145
{ "-basic1char", SET_RESOURCE, 0, NULL, NULL, "Basic1Chars",
147
NULL, N_("Switch upper/lower case charset") },
148
{ "+basic1char", SET_RESOURCE, 0, NULL, NULL, "Basic1Chars",
150
NULL, N_("Do not switch upper/lower case charset") },
151
{ "-eoiblank", SET_RESOURCE, 0, NULL, NULL, "EoiBlank", (void *)1,
152
NULL, N_("EOI blanks screen") },
153
{ "+eoiblank", SET_RESOURCE, 0, NULL, NULL, "EoiBlank", (void *)0,
154
NULL, N_("EOI does not blank screen") },
155
{ "-emuid", SET_RESOURCE, 0, NULL, NULL, "EmuID", (void *)1,
156
NULL, N_("Enable emulator identification") },
157
{ "+emuid", SET_RESOURCE, 0, NULL, NULL, "EmuID", (void *)0,
158
NULL, N_("Disable emulator identification") },
160
{ "-keymap", SET_RESOURCE, 1, NULL, NULL, "KeymapIndex", NULL,
161
N_("<number>"), N_("Specify index of keymap file") },
162
{ "-grsymkeymap", SET_RESOURCE, 1, NULL, NULL, "KeymapGraphicsSymFile",
90
164
N_("Specify name of graphics keyboard symbolic keymap file") },
91
165
{ "-grposkeymap", SET_RESOURCE, 1, NULL, NULL, "KeymapGraphicsPosFile",
93
167
N_("Specify name of graphics keyboard positional keymap file") },
94
168
{ "-buksymkeymap", SET_RESOURCE, 1, NULL, NULL, "KeymapBusinessUKSymFile",
96
170
N_("Specify name of UK business keyboard symbolic keymap file") },
97
171
{ "-bukposkeymap", SET_RESOURCE, 1, NULL, NULL, "KeymapBusinessUKPosFile",
99
173
N_("Specify name of UK business keyboard positional keymap file") },
100
174
{ "-bdesymkeymap", SET_RESOURCE, 1, NULL, NULL, "KeymapBusinessDESymFile",
102
176
N_("Specify name of German business keyboard symbolic keymap file") },
103
177
{ "-bdeposkeymap", SET_RESOURCE, 1, NULL, NULL, "KeymapBusinessDEPosFile",
105
179
N_("Specify name of German business keyboard positional keymap file") },
110
185
int pet_cmdline_options_init(void)