mirror of
https://github.com/Oibaf66/frodo-wii.git
synced 2024-11-26 13:34:22 +01:00
Non-working saves
This commit is contained in:
parent
b4bdbf818b
commit
07eae7b91a
2
Makefile
2
Makefile
@ -60,7 +60,7 @@ export DEPSDIR := $(CURDIR)/$(BUILD)
|
|||||||
#---------------------------------------------------------------------------------
|
#---------------------------------------------------------------------------------
|
||||||
CFILES := char_to_kc.c
|
CFILES := char_to_kc.c
|
||||||
CPPFILES := Display.cpp main.cpp Prefs.cpp SID.cpp REU.cpp IEC.cpp 1541fs.cpp \
|
CPPFILES := Display.cpp main.cpp Prefs.cpp SID.cpp REU.cpp IEC.cpp 1541fs.cpp \
|
||||||
1541d64.cpp 1541t64.cpp 1541job.o SAM.cpp C64.cpp CPUC64.cpp VIC.cpp \
|
1541d64.cpp 1541t64.cpp 1541job.cpp SAM.cpp C64.cpp CPUC64.cpp VIC.cpp \
|
||||||
CIA.cpp CPU1541.cpp menu.cpp
|
CIA.cpp CPU1541.cpp menu.cpp
|
||||||
sFILES :=
|
sFILES :=
|
||||||
SFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.S)))
|
SFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.S)))
|
||||||
|
@ -255,7 +255,14 @@ void C64::save_load_state(Prefs *np)
|
|||||||
case 1: /* save */
|
case 1: /* save */
|
||||||
{
|
{
|
||||||
char buf[255];
|
char buf[255];
|
||||||
const char *name = "save";
|
char name[255];
|
||||||
|
char *p;
|
||||||
|
|
||||||
|
p = strrchr(ThePrefs.DrivePath[0], '/');
|
||||||
|
if (p == NULL)
|
||||||
|
strcpy(name, "unknown");
|
||||||
|
else
|
||||||
|
strncpy(name, p + 1, 255);
|
||||||
|
|
||||||
snprintf(buf, 255, "/apps/frodo/saves/%s.sav", name);
|
snprintf(buf, 255, "/apps/frodo/saves/%s.sav", name);
|
||||||
|
|
||||||
@ -264,7 +271,55 @@ void C64::save_load_state(Prefs *np)
|
|||||||
case 0: /* load/delete */
|
case 0: /* load/delete */
|
||||||
case 2:
|
case 2:
|
||||||
{
|
{
|
||||||
|
DIR *d = opendir(this->base_dir);
|
||||||
|
const char **file_list;
|
||||||
|
int cur = 0;
|
||||||
|
struct dirent *de;
|
||||||
|
int cnt = 16;
|
||||||
|
|
||||||
|
if (!d)
|
||||||
|
return;
|
||||||
|
|
||||||
|
file_list = (const char**)malloc(cnt * sizeof(char*));
|
||||||
|
file_list[cur] = NULL;
|
||||||
|
|
||||||
|
for (de = readdir(d);
|
||||||
|
de;
|
||||||
|
de = readdir(d))
|
||||||
|
{
|
||||||
|
if (strstr(de->d_name, ".sav"))
|
||||||
|
{
|
||||||
|
char *p;
|
||||||
|
|
||||||
|
p = strdup(de->d_name);
|
||||||
|
file_list[cur++] = p;
|
||||||
|
file_list[cur] = NULL;
|
||||||
|
if (cur > cnt - 2)
|
||||||
|
{
|
||||||
|
cnt = cnt + 32;
|
||||||
|
file_list = (const char**)realloc(file_list, cnt * sizeof(char*));
|
||||||
|
if (!file_list)
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
closedir(d);
|
||||||
|
if (cur == 0)
|
||||||
|
break;
|
||||||
|
|
||||||
|
menu_init(&select_saves_menu, this->menu_font, file_list,
|
||||||
|
0, 0, MENU_SIZE_X, MENU_SIZE_Y);
|
||||||
int save = menu_select(real_screen, &select_saves_menu, NULL);
|
int save = menu_select(real_screen, &select_saves_menu, NULL);
|
||||||
|
if (save >= 0)
|
||||||
|
{
|
||||||
|
if (opt == 2)
|
||||||
|
{
|
||||||
|
/* FIXME! Delete */
|
||||||
|
}
|
||||||
|
else /* Load the snapshot */
|
||||||
|
this->LoadSnapshot((char*)file_list[save]);
|
||||||
|
}
|
||||||
|
menu_fini(&select_saves_menu);
|
||||||
} break;
|
} break;
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
|
2
meta.xml
2
meta.xml
@ -4,7 +4,7 @@
|
|||||||
<coder>Simon Kagstrom</coder>
|
<coder>Simon Kagstrom</coder>
|
||||||
<version>1</version>
|
<version>1</version>
|
||||||
<release_date>20090107</release_date>
|
<release_date>20090107</release_date>
|
||||||
<short_description>Frodo is a C64 emulator</short_description>
|
<short_description>Commodore 64 emulator</short_description>
|
||||||
<long_description>Frodo is a C64 emulator written by Christian Bauer. It
|
<long_description>Frodo is a C64 emulator written by Christian Bauer. It
|
||||||
supports C64 disk and tape images in the .d64 and .t64 formats. The port
|
supports C64 disk and tape images in the .d64 and .t64 formats. The port
|
||||||
to Wii was done by Simon Kagstrom.</long_description>
|
to Wii was done by Simon Kagstrom.</long_description>
|
||||||
|
Loading…
Reference in New Issue
Block a user