diff options
Diffstat (limited to 'apps/plugins/rockboy/loader.c')
-rw-r--r-- | apps/plugins/rockboy/loader.c | 71 |
1 files changed, 8 insertions, 63 deletions
diff --git a/apps/plugins/rockboy/loader.c b/apps/plugins/rockboy/loader.c index bdccb2e7e1..d48a06957e 100644 --- a/apps/plugins/rockboy/loader.c +++ b/apps/plugins/rockboy/loader.c | |||
@@ -26,7 +26,7 @@ | |||
26 | * 11 - ROM+MBC3 | 26 | * 11 - ROM+MBC3 |
27 | */ | 27 | */ |
28 | 28 | ||
29 | static int mbc_table[256] = | 29 | static const int mbc_table[256] = |
30 | { | 30 | { |
31 | MBC_NONE, | 31 | MBC_NONE, |
32 | MBC_MBC1, | 32 | MBC_MBC1, |
@@ -81,7 +81,7 @@ static int mbc_table[256] = | |||
81 | MBC_HUC1 | 81 | MBC_HUC1 |
82 | }; | 82 | }; |
83 | 83 | ||
84 | static unsigned short romsize_table[56] = | 84 | static const unsigned short romsize_table[56] = |
85 | { | 85 | { |
86 | 2, 4, 8, 16, 32, 64, 128, 256, | 86 | 2, 4, 8, 16, 32, 64, 128, 256, |
87 | 512, 0, 0, 0, 0, 0, 0, 0, | 87 | 512, 0, 0, 0, 0, 0, 0, 0, |
@@ -94,7 +94,7 @@ static unsigned short romsize_table[56] = | |||
94 | }; | 94 | }; |
95 | 95 | ||
96 | /* Ram size should be no larger then 16 banks 1Mbit */ | 96 | /* Ram size should be no larger then 16 banks 1Mbit */ |
97 | static unsigned char ramsize_table[5] = | 97 | static const unsigned char ramsize_table[5] = |
98 | { | 98 | { |
99 | 0, 1, 1, 4, 16 | 99 | 0, 1, 1, 4, 16 |
100 | }; | 100 | }; |
@@ -104,8 +104,6 @@ static char sramfile[500]; | |||
104 | static char rtcfile[500]; | 104 | static char rtcfile[500]; |
105 | static char saveprefix[500]; | 105 | static char saveprefix[500]; |
106 | 106 | ||
107 | static int saveslot; | ||
108 | |||
109 | static int forcebatt, nobatt; | 107 | static int forcebatt, nobatt; |
110 | static int forcedmg; | 108 | static int forcedmg; |
111 | 109 | ||
@@ -142,7 +140,7 @@ static byte *loadfile(int fd, int *len) | |||
142 | return d; | 140 | return d; |
143 | } | 141 | } |
144 | 142 | ||
145 | int rom_load(void) | 143 | static int rom_load(void) |
146 | { | 144 | { |
147 | int fd; | 145 | int fd; |
148 | byte c, *data, *header; | 146 | byte c, *data, *header; |
@@ -220,7 +218,7 @@ int rom_load(void) | |||
220 | return 0; | 218 | return 0; |
221 | } | 219 | } |
222 | 220 | ||
223 | int sram_load(void) | 221 | static int sram_load(void) |
224 | { | 222 | { |
225 | int fd; | 223 | int fd; |
226 | char meow[500]; | 224 | char meow[500]; |
@@ -243,7 +241,7 @@ int sram_load(void) | |||
243 | } | 241 | } |
244 | 242 | ||
245 | 243 | ||
246 | int sram_save(void) | 244 | static int sram_save(void) |
247 | { | 245 | { |
248 | int fd; | 246 | int fd; |
249 | char meow[500]; | 247 | char meow[500]; |
@@ -261,45 +259,7 @@ int sram_save(void) | |||
261 | return 0; | 259 | return 0; |
262 | } | 260 | } |
263 | 261 | ||
264 | 262 | static void rtc_save(void) | |
265 | void state_save(int n) | ||
266 | { | ||
267 | int fd; | ||
268 | char name[500]; | ||
269 | |||
270 | if (n < 0) n = saveslot; | ||
271 | if (n < 0) n = 0; | ||
272 | snprintf(name, 499,"%s.%03d", saveprefix, n); | ||
273 | |||
274 | if ((fd = open(name, O_WRONLY|O_CREAT|O_TRUNC)>=0)) | ||
275 | { | ||
276 | savestate(fd); | ||
277 | close(fd); | ||
278 | } | ||
279 | } | ||
280 | |||
281 | |||
282 | void state_load(int n) | ||
283 | { | ||
284 | int fd; | ||
285 | char name[500]; | ||
286 | |||
287 | if (n < 0) n = saveslot; | ||
288 | if (n < 0) n = 0; | ||
289 | snprintf(name, 499, "%s.%03d", saveprefix, n); | ||
290 | |||
291 | if ((fd = open(name, O_RDONLY)>=0)) | ||
292 | { | ||
293 | loadstate(fd); | ||
294 | close(fd); | ||
295 | vram_dirty(); | ||
296 | pal_dirty(); | ||
297 | sound_dirty(); | ||
298 | mem_updatemap(); | ||
299 | } | ||
300 | } | ||
301 | |||
302 | void rtc_save(void) | ||
303 | { | 263 | { |
304 | int fd; | 264 | int fd; |
305 | if (!rtc.batt) return; | 265 | if (!rtc.batt) return; |
@@ -308,7 +268,7 @@ void rtc_save(void) | |||
308 | close(fd); | 268 | close(fd); |
309 | } | 269 | } |
310 | 270 | ||
311 | void rtc_load(void) | 271 | static void rtc_load(void) |
312 | { | 272 | { |
313 | int fd; | 273 | int fd; |
314 | if (!rtc.batt) return; | 274 | if (!rtc.batt) return; |
@@ -317,21 +277,6 @@ void rtc_load(void) | |||
317 | close(fd); | 277 | close(fd); |
318 | } | 278 | } |
319 | 279 | ||
320 | |||
321 | void loader_unload(void) | ||
322 | { | ||
323 | sram_save(); | ||
324 | /* if (romfile) free(romfile); | ||
325 | if (sramfile) free(sramfile); | ||
326 | if (saveprefix) free(saveprefix); | ||
327 | if (rom.bank) free(rom.bank); | ||
328 | if (ram.sbank) free(ram.sbank); */ | ||
329 | romfile = 0; | ||
330 | rom.bank = 0; | ||
331 | ram.sbank = 0; | ||
332 | mbc.type = mbc.romsize = mbc.ramsize = mbc.batt = 0; | ||
333 | } | ||
334 | |||
335 | void cleanup(void) | 280 | void cleanup(void) |
336 | { | 281 | { |
337 | sram_save(); | 282 | sram_save(); |