OSCR
Open Source Cartridge Reader
Loading...
Searching...
No Matches
l10n.h
1/********************************************************************
2 * Open Source Cartridge Reader *
3 ********************************************************************/
4#pragma once
5#ifndef OSCR_LANG_H_
6# define OSCR_LANG_H_
7
8# include "syslibinc.h"
9# include "config.h"
10# include "common/Types.h"
11
12namespace OSCR
13{
14 namespace Lang
15 {
16 extern void menuHeader(char buffer[], size_t size, char const * flashStr);
17
18 extern char * formatSubmenuTitle(char const * flashStr);
19
20 extern void printUpper(char const * str);
21 extern void printUpper(__FlashStringHelper const * flashStr);
22 extern void printUpper_P(char const * flashStr);
23 extern void printUpper_P(__FlashStringHelper const * flashStr);
24
25 extern void printUpperLine(char const * str);
26 extern void printUpperLine(__FlashStringHelper const * flashStr);
27 extern void printUpperLine_P(char const * flashStr);
28 extern void printUpperLine_P(__FlashStringHelper const * flashStr);
29
30 extern void printBits(uint32_t bits);
31 extern void printBitsLine(uint32_t bits);
32
33 extern void printBytes(uint32_t bytes);
34 extern void printBytesLine(uint32_t bytes);
35
36 extern void printSwitchVoltage(Voltage voltage);
37 extern void printErrorVerifyBytes(uint32_t byteCount);
38
39 namespace Updater
40 {
41 extern void oscrInfo();
42 extern void flagValue(char const flag[], uint8_t value);
43 extern void flagValue(char const flag[], uint16_t value);
44 extern void flagValue(char const flag[], uint32_t value);
45 extern void flagValue(char const flag[], uint64_t value);
46 extern void flagValue(char const flag[], char const value[]);
47 extern void flagValue(char const flag[]);
48 extern void flagValueV(char const flag[], uint8_t values[], size_t valueCount);
49 extern void flagValueV(char const flag[], uint32_t values[], size_t valueCount);
50 }
51 }
52
53 namespace Strings
54 {
55 // Common words/phrases
56 namespace Common
57 {
58 extern char const PROGMEM OSCR[];
59
60 extern char const PROGMEM ROM[];
61 extern char const PROGMEM RAM[];
62 extern char const PROGMEM SRAM[];
63 extern char const PROGMEM PRG[];
64 extern char const PROGMEM CHR[];
65 extern char const PROGMEM EEPROM[];
66 extern char const PROGMEM Flash[];
67 extern char const PROGMEM None[];
68
69 extern char const PROGMEM Lower[];
70 extern char const PROGMEM Upper[];
71
72 extern char const PROGMEM Save[];
73 extern char const PROGMEM Blank[];
74 extern char const PROGMEM NotBlank[];
75
76 extern char const PROGMEM Invalid[];
77 extern char const PROGMEM Unknown[];
78
79 extern char const PROGMEM Finished[];
80 extern char const PROGMEM Done[];
81
82 extern char const PROGMEM OK[];
83 extern char const PROGMEM FAIL[];
84 extern char const PROGMEM DONE[];
85 }
86
87 namespace MenuOptions // most work as headers too
88 {
89 extern char const PROGMEM Cartridge[];
90 extern char const PROGMEM Controller[];
91
92 extern char const PROGMEM ReadROM[];
93 extern char const PROGMEM WriteFlash[];
94 extern char const PROGMEM ReadSave[];
95 extern char const PROGMEM WriteSave[];
96
97 extern char const PROGMEM SetCartType[];
98 extern char const PROGMEM SetCartSize[];
99 extern char const PROGMEM SetROMSize[];
100 extern char const PROGMEM SetMapper[];
101 extern char const PROGMEM SetSaveType[];
102 extern char const PROGMEM SetSaveSize[];
103 extern char const PROGMEM SetSize[];
104
105 extern char const PROGMEM SelectCart[];
106 extern char const PROGMEM SelectFile[];
107
108 extern char const PROGMEM RefreshCart[];
109 extern char const PROGMEM CartInfo[];
110
111 extern char const PROGMEM Read[];
112 extern char const PROGMEM Write[];
113 extern char const PROGMEM Erase[];
114
115 extern char const PROGMEM Abort[];
116 extern char const PROGMEM Retry[];
117 extern char const PROGMEM Continue[];
118
119 extern char const PROGMEM Yes[];
120 extern char const PROGMEM No[];
121
122 extern char const PROGMEM Back[];
123 extern char const PROGMEM Reset[];
124
125 extern char const PROGMEM Unlock[];
126 }
127
128 // Power
129 namespace Power
130 {
131 extern char const PROGMEM VSELECT[];
132 extern char const PROGMEM VCC[];
133 extern char const PROGMEM Voltage3V3[];
134 extern char const PROGMEM Voltage5[];
135 }
136
137 // Sizes
138 namespace Units
139 {
140 extern char const PROGMEM Size32B[];
141 extern char const PROGMEM Size64B[];
142 extern char const PROGMEM Size128B[];
143 extern char const PROGMEM Size256B[];
144 extern char const PROGMEM Size512B[];
145 extern char const PROGMEM Size1KB[];
146 extern char const PROGMEM Size2KB[];
147 extern char const PROGMEM Size4KB[];
148 extern char const PROGMEM Size8KB[];
149 extern char const PROGMEM Size16KB[];
150 extern char const PROGMEM Size24KB[];
151 extern char const PROGMEM Size32KB[];
152 extern char const PROGMEM Size64KB[];
153 extern char const PROGMEM Size128KB[];
154 extern char const PROGMEM Size256KB[];
155 extern char const PROGMEM Size512KB[];
156 extern char const PROGMEM Size1MB[];
157 extern char const PROGMEM Size2MB[];
158 extern char const PROGMEM Size4MB[];
159 extern char const PROGMEM Size8MB[];
160 extern char const PROGMEM Size12MB[];
161 extern char const PROGMEM Size16MB[];
162 extern char const PROGMEM Size32MB[];
163 extern char const PROGMEM Size64MB[];
164 extern char const PROGMEM Size128MB[];
165
166 extern char const PROGMEM B[];
167 extern char const PROGMEM K[];
168 extern char const PROGMEM M[];
169 extern char const PROGMEM KB[];
170 extern char const PROGMEM MB[];
171 }
172
173 // Symbols
174 namespace Symbol
175 {
176 // Generic Symbols
177 extern char const PROGMEM Empty[];
178 extern char const PROGMEM Space[];
179 extern char const PROGMEM Comma[];
180 extern char const PROGMEM Plus[];
181 extern char const PROGMEM Minus[];
182 extern char const PROGMEM Percent[];
183 extern char const PROGMEM Asterisk[];
184 extern char const PROGMEM Slash[];
185 extern char const PROGMEM MenuSpaces[];
186 extern char const PROGMEM MenuSelection[];
187 extern char const PROGMEM Arrow[];
188 extern char const PROGMEM NotEqual[];
189 extern char const PROGMEM LabelEnd[];
190 extern char const PROGMEM FullStop[];
191 extern char const PROGMEM Ellipsis[];
192 extern char const PROGMEM NewLine[];
193 extern char const PROGMEM X[];
194
195 extern char const PROGMEM PaddedSlash[];
196 extern char const PROGMEM PaddedX[];
197
198 // Progress Bar
199 extern char const PROGMEM ProgressBarOpen[];
200 extern char const PROGMEM ProgressBarClose[];
201 extern char const PROGMEM ProgressBarEmpty[];
202 extern char const PROGMEM ProgressBarFilled[];
203 extern char const PROGMEM ProgressBarUnknown[];
204 }
205
206 namespace Names
207 {
208 extern char const PROGMEM NormalCFI8[];
209 extern char const PROGMEM SwitchedCFI8[];
210 extern char const PROGMEM NormalCFI16[];
211 extern char const PROGMEM SwitchedCFI16[];
212 }
213
214 // Headings
215 namespace Headings
216 {
217 extern char const PROGMEM OSCR[];
218 extern char const PROGMEM CRDB[];
219
220 extern char const PROGMEM ChangeVoltage[];
221 extern char const PROGMEM OverrideVoltage[];
222
223 extern char const PROGMEM BlankCheck[];
224
225 extern char const PROGMEM SelectCartSize[];
226 extern char const PROGMEM SelectSaveSize[];
227 extern char const PROGMEM SelectBufferSize[];
228 extern char const PROGMEM SelectSectorSize[];
229 extern char const PROGMEM SelectMapper[];
230 extern char const PROGMEM SelectType[];
231 extern char const PROGMEM SelectOne[];
232 extern char const PROGMEM SelectCRDBEntry[];
233
234 extern char const PROGMEM HardwareProblem[];
235
236 extern char const PROGMEM FatalError[];
237 extern char const PROGMEM CartridgeError[];
238 extern char const PROGMEM SD[];
239
240 extern char const PROGMEM ConfirmErase[];
241
242 extern char const PROGMEM Warning[];
243
244 extern char const PROGMEM CRDBDebugROM[];
245 extern char const PROGMEM CRDBDebugMapper[];
246 extern char const PROGMEM CRDBDebugEnd[];
247 }
248
249 // Errors
250 namespace Errors
251 {
252 extern char const PROGMEM StorageError[];
253 extern char const PROGMEM BuffereOverflow[];
254 extern char const PROGMEM NameOverflow[];
255 extern char const PROGMEM ClockGenMissing[];
256 extern char const PROGMEM RTCMissing[];
257
258 extern char const PROGMEM NoSave[];
259 extern char const PROGMEM NotLargeEnough[];
260 extern char const PROGMEM NotSupportedByCart[];
261 extern char const PROGMEM HeaderNotFound[];
262 extern char const PROGMEM InvalidType[];
263 extern char const PROGMEM UnknownType[];
264 extern char const PROGMEM IncorrectChecksum[];
265 extern char const PROGMEM IncorrectFileSize[];
266 extern char const PROGMEM UnlockFailed[];
267 extern char const PROGMEM TimedOut[];
268 extern char const PROGMEM NoDataReceived[];
269
270 extern char const PROGMEM DatabaseError[];
271 extern char const PROGMEM DatabaseNotFound[];
272 extern char const PROGMEM NotFoundDB[];
273
274 extern char const PROGMEM IncorrectVoltage[];
275 }
276
277 // Statuses
278 namespace Status
279 {
280 extern char const PROGMEM Reading[];
281 extern char const PROGMEM Writing[];
282 extern char const PROGMEM Erasing[];
283 extern char const PROGMEM Verifying[];
284 extern char const PROGMEM Checking[];
285 extern char const PROGMEM Searching[];
286 extern char const PROGMEM Checksum[];
287 extern char const PROGMEM CRC32[];
288 extern char const PROGMEM Locking[];
289 extern char const PROGMEM Unlocking[];
290 extern char const PROGMEM SearchingDatabase[];
291 extern char const PROGMEM PressButton[];
292 }
293
294 // Labels
295 namespace Labels
296 {
297 extern char const PROGMEM CHK[];
298 extern char const PROGMEM CHECKSUM[];
299 extern char const PROGMEM ERROR[];
300 extern char const PROGMEM MAPPER[];
301 extern char const PROGMEM SUBMAPPER[];
302 extern char const PROGMEM NUMBER[];
303 extern char const PROGMEM NAME[];
304 extern char const PROGMEM TYPE[];
305 extern char const PROGMEM BANK[];
306 extern char const PROGMEM BANKS[];
307 extern char const PROGMEM SAVE[];
308 extern char const PROGMEM SAVE_SIZE[];
309 extern char const PROGMEM SAVE_TYPE[];
310 extern char const PROGMEM REVISION[];
311 extern char const PROGMEM RAM[];
312 extern char const PROGMEM RAM_SIZE[];
313 extern char const PROGMEM ROM[];
314 extern char const PROGMEM ROM_SIZE[];
315 extern char const PROGMEM SIZE[];
316 extern char const PROGMEM Address[];
317
318 extern char const PROGMEM ID[];
319 extern char const PROGMEM CRCSum[];
320 extern char const PROGMEM Selected[];
321 extern char const PROGMEM SizeLow[];
322 extern char const PROGMEM SizeHigh[];
323
324 extern char const PROGMEM File[];
325 }
326
327 // Templates
328 namespace Templates
329 {
330 extern char const PROGMEM PaddedHex2[];
331
332 extern char const PROGMEM SizeBits[];
333 extern char const PROGMEM SizeK[];
334 extern char const PROGMEM SizeM[];
335 extern char const PROGMEM SizeG[];
336
337 extern char const PROGMEM SizeBytes[];
338 extern char const PROGMEM SizeKB[];
339 extern char const PROGMEM SizeMB[];
340 extern char const PROGMEM SizeGB[];
341
342 extern char const PROGMEM Browse[];
343
344 extern char const PROGMEM VoltageSwitchTo[];
345
346 extern char const PROGMEM ErrorVerifyBytes[];
347
348 extern char const PROGMEM OSCRHeaderPrefix[];
349 }
350
351 namespace Features
352 {
353 extern char const PROGMEM CheckVoltage[];
354 extern char const PROGMEM Settings[];
355 extern char const PROGMEM About[];
356 extern char const PROGMEM Reset[];
357 }
358
359 namespace Directory
360 {
361 extern char const PROGMEM ROM[];
362 extern char const PROGMEM MPK[];
363 extern char const PROGMEM Save[];
364 extern char const PROGMEM Raw[];
365 extern char const PROGMEM SIMM[];
366 }
367
368 namespace FileType
369 {
370 extern char const PROGMEM Save[];
371 extern char const PROGMEM SaveRAM[];
372 extern char const PROGMEM SaveRA[];
373 extern char const PROGMEM SaveFlash[];
374 extern char const PROGMEM SaveEEPROM[];
375 extern char const PROGMEM SaveBackup[];
376 extern char const PROGMEM Raw[];
377 extern char const PROGMEM Map[];
378 extern char const PROGMEM CRCX[];
379 extern char const PROGMEM U2[];
380
381 extern char const PROGMEM DefaultName[];
382
383 extern char const PROGMEM GameBoy[];
384 extern char const PROGMEM GBMemoryModule[];
385 extern char const PROGMEM GBSmartModule[];
386 extern char const PROGMEM GameBoyAdvance[];
387 extern char const PROGMEM NES[];
388 extern char const PROGMEM SNES[];
389 extern char const PROGMEM SNESD[];
390 extern char const PROGMEM Satellaview[];
391 extern char const PROGMEM SFM[];
392 extern char const PROGMEM SFM_NP[];
393 extern char const PROGMEM ST[];
394 extern char const PROGMEM GPC[];
395 extern char const PROGMEM N64[];
396 extern char const PROGMEM N64F[];
397 extern char const PROGMEM MPK[];
398 extern char const PROGMEM MegaDrive[];
399 extern char const PROGMEM MegaDrive32X[];
400 extern char const PROGMEM SMS[];
401 extern char const PROGMEM GameGear[];
402 extern char const PROGMEM SG1000[];
403 extern char const PROGMEM PCEngine[];
404 extern char const PROGMEM WonderSwan[];
405 extern char const PROGMEM NeoGeoPocket[];
406 extern char const PROGMEM Intellivision[];
407 extern char const PROGMEM Colecovision[];
408 extern char const PROGMEM VirtualBoy[];
409 extern char const PROGMEM Supervision[];
410 extern char const PROGMEM PocketChallengeW[];
411 extern char const PROGMEM Atari2600[];
412 extern char const PROGMEM Atari5200[];
413 extern char const PROGMEM Atari7800[];
414 extern char const PROGMEM Odyssey2[];
415 extern char const PROGMEM Arcadia2001[];
416 extern char const PROGMEM ChannelF[];
417 extern char const PROGMEM SuperAcan[];
418 extern char const PROGMEM MSX[];
419 extern char const PROGMEM PokemonMini[];
420 extern char const PROGMEM CasioLoopy[];
421 extern char const PROGMEM Commodore64[];
422 extern char const PROGMEM AtariJaguar[];
423 extern char const PROGMEM AtariLynx[];
424 extern char const PROGMEM Vectrex[];
425 extern char const PROGMEM Atari8[];
426 extern char const PROGMEM BallyAstrocade[];
427 extern char const PROGMEM LittleJammer[];
428 extern char const PROGMEM LittleJammerPro[];
429 extern char const PROGMEM CasioPV1000[];
430 extern char const PROGMEM VIC20[];
431 extern char const PROGMEM Leapster[];
432 extern char const PROGMEM RCAStudio2[];
433 extern char const PROGMEM TI99[];
434 extern char const PROGMEM TomyPyuuta[];
435 extern char const PROGMEM TRS80[];
436 extern char const PROGMEM VSmile[];
437 extern char const PROGMEM CPS3[];
438 extern char const PROGMEM Flash[];
439 }
440
441 namespace Cores
442 {
443 extern char const PROGMEM GameBoy[];
444 extern char const PROGMEM GBMemoryModule[];
445 extern char const PROGMEM GBSmartModule[];
446 extern char const PROGMEM GameBoyAdvance[];
447 extern char const PROGMEM NES[];
448 extern char const PROGMEM SNES[];
449 extern char const PROGMEM Satellaview[];
450 extern char const PROGMEM SFM[];
451 extern char const PROGMEM ST[];
452 extern char const PROGMEM GPC[];
453 extern char const PROGMEM N64[];
454 extern char const PROGMEM MegaDrive[];
455 extern char const PROGMEM SMSGGSG[];
456 extern char const PROGMEM SMS[];
457 extern char const PROGMEM GameGear[];
458 extern char const PROGMEM SG1000[];
459 extern char const PROGMEM PCEngine[];
460 extern char const PROGMEM WonderSwan[];
461 extern char const PROGMEM NeoGeoPocket[];
462 extern char const PROGMEM Intellivision[];
463 extern char const PROGMEM Colecovision[];
464 extern char const PROGMEM VirtualBoy[];
465 extern char const PROGMEM Supervision[];
466 extern char const PROGMEM PocketChallengeW[];
467 extern char const PROGMEM Atari2600[];
468 extern char const PROGMEM Atari5200[];
469 extern char const PROGMEM Atari7800[];
470 extern char const PROGMEM Odyssey2[];
471 extern char const PROGMEM Arcadia2001[];
472 extern char const PROGMEM ChannelF[];
473 extern char const PROGMEM SuperAcan[];
474 extern char const PROGMEM MSX[];
475 extern char const PROGMEM PokemonMini[];
476 extern char const PROGMEM CasioLoopy[];
477 extern char const PROGMEM Commodore64[];
478 extern char const PROGMEM AtariJaguar[];
479 extern char const PROGMEM AtariLynx[];
480 extern char const PROGMEM Vectrex[];
481 extern char const PROGMEM Atari8[];
482 extern char const PROGMEM BallyAstrocade[];
483 extern char const PROGMEM LittleJammer[];
484 extern char const PROGMEM LittleJammerPro[];
485 extern char const PROGMEM CasioPV1000[];
486 extern char const PROGMEM VIC20[];
487 extern char const PROGMEM Leapster[];
488 extern char const PROGMEM RCAStudio2[];
489 extern char const PROGMEM TI99[];
490 extern char const PROGMEM TomyPyuuta[];
491 extern char const PROGMEM TRS80[];
492 extern char const PROGMEM VSmile[];
493 extern char const PROGMEM Flashrom[];
494 extern char const PROGMEM CPS3[];
495 extern char const PROGMEM SelfTest[];
496 }
497 }
498}
499
500#endif /* OSCR_LANG_H_ */
Core-specific string constants.
Definition OSCR.h:106
String constants.
Definition OSCR.h:98
Main program.
Definition Storage.h:13
Voltage
Definition Types.h:68