Different set of variables for loading paths

This commit is contained in:
fabio.olimpieri 2013-01-19 17:08:26 +00:00
parent 8660383a30
commit ddcbe793d8
4 changed files with 74 additions and 76 deletions

View File

@ -74,8 +74,12 @@ char path_mdrs[2049];
char path_scr1[2049];
char path_scr2[2049];
char path_confs[2049];
char path_poke[2049];
char path_tmp[2049];
char load_path_snaps[2049];
char load_path_taps[2049];
char load_path_scr1[2049];
char load_path_poke[2049];
unsigned int colors[80];
unsigned int jump_frames,curr_frames;
@ -1143,7 +1147,10 @@ int main(int argc,char *argv[]) {
if (fatInitDefault())
printf("FAT subsytem initialized\n");
else
{
printf("Couldn't initialize FAT subsytem\n");
exit(0);
}
DIR *dp;
@ -1343,7 +1350,7 @@ int main(int argc,char *argv[]) {
strcpy(path_scr1,path_snaps);
strcpy(path_scr2,path_snaps);
strcpy(path_confs,path_snaps);
strcpy(path_poke,path_snaps);
strcpy(load_path_poke,path_snaps);
strcpy(path_tmp,path_snaps);
strcat(path_snaps,"snapshots");
strcat(path_taps,"tapes");
@ -1351,8 +1358,11 @@ int main(int argc,char *argv[]) {
strcat(path_scr1,"scr"); //left scr for retrocompatibility
strcat(path_scr2,"scr2");
strcat(path_confs,"configurations");
strcat(path_poke,"poke");
strcat(load_path_poke,"poke");
strcat(path_tmp,"tmp");
strcpy(load_path_snaps,path_snaps);
strcpy(load_path_taps,path_taps);
strcpy(load_path_scr1,path_scr1);
//Remove and make tmp dir
@ -1384,32 +1394,40 @@ int main(int argc,char *argv[]) {
case 1: //SD
if (sdismount)
{
strcpy(path_snaps,"sd:/");
strcpy(path_taps,"sd:/");
strcpy(load_path_snaps,"sd:/");
strcpy(load_path_taps,"sd:/");
strcpy(load_path_scr1,"sd:/");
strcpy(load_path_poke,"sd:/");
}
else ordenador.port =0;
break;
case 2: //USB
if (usbismount)
{
strcpy(path_snaps,"usb:/");
strcpy(path_taps,"usb:/");
strcpy(load_path_snaps,"usb:/");
strcpy(load_path_taps,"usb:/");
strcpy(load_path_scr1,"usb:/");
strcpy(load_path_poke,"usb:/");
}
else ordenador.port =0;
break;
case 3: //SMB
if (smbismount)
{
strcpy(path_snaps,"smb:/");
strcpy(path_taps,"smb:/");
strcpy(load_path_snaps,"smb:/");
strcpy(load_path_taps,"smb:/");
strcpy(load_path_scr1,"smb:/");
strcpy(load_path_poke,"smb:/");
}
else ordenador.port =0;
break;
case 4: //FTP
if (ftpismount)
{
strcpy(path_snaps,"ftp:");
strcpy(path_taps,"ftp:");
strcpy(load_path_snaps,"ftp:/");
strcpy(load_path_taps,"ftp:/");
strcpy(load_path_scr1,"ftp:/");
strcpy(load_path_poke,"ftp:/");
}
else ordenador.port =0;
break;

View File

@ -38,8 +38,12 @@ extern char path_mdrs[2049];
extern char path_scr1[2049];
extern char path_scr2[2049];
extern char path_confs[2049];
extern char path_poke[2049];
extern char path_tmp[2049];
extern char load_path_snaps[2049];
extern char load_path_taps[2049];
extern char load_path_scr1[2049];
extern char load_path_poke[2049];
extern unsigned int colors[80];
extern unsigned int jump_frames,curr_frames;
extern unsigned char sdismount, usbismount, smbismount, tmpismade, ftpismount,networkisinit;

View File

@ -229,7 +229,7 @@ static void insert_tape()
ordenador.tape_current_bit=0;
ordenador.tape_current_mode=TAP_TRASH;
const char *filename = menu_select_file(path_taps, ordenador.current_tap, 1);
const char *filename = menu_select_file(load_path_taps, ordenador.current_tap, 1);
if (filename==NULL) // Aborted
return;
@ -287,7 +287,7 @@ static void insert_tape()
static void delete_tape()
{
const char *filename = menu_select_file(path_taps, NULL, 1);
const char *filename = menu_select_file(load_path_taps, NULL, 1);
if (filename==NULL) // Aborted
return;
@ -310,15 +310,6 @@ void create_tapfile_sdl() {
clean_screen();
if (ordenador.port==3) //If FTP is selected, saves file on SD card
{
int length;
strcpy(path_taps,getenv("HOME"));
length=strlen(path_taps);
if ((length>0)&&(path_taps[length-1]!='/')) strcat(path_taps,"/");
strcat(path_taps,"tapes");
}
print_string(videomem,"Choose a name for the TAP file",-1,32,14,0,ancho);
print_string(videomem,"(up to 30 characters)",-1,52,14,0,ancho);
@ -328,7 +319,6 @@ void create_tapfile_sdl() {
retorno=ask_filename_sdl(nombre2,82,"tap",path_taps,NULL);
if (ordenador.port==3) strcpy(path_taps,"ftp:");
if(retorno==2) // abort
return;
@ -944,7 +934,7 @@ static int load_scr()
retorno2=0; //stay in the menu as default
const char *filename = menu_select_file(path_scr1, NULL, 0); // Load from SCR1
const char *filename = menu_select_file(load_path_scr1, NULL, 0); // Load from SCR1
if (filename==NULL) // Aborted
return 0;
@ -1075,38 +1065,34 @@ static void set_port(int which)
switch (which)
{
case 0: //PORT_DEFAULT
strcpy(path_snaps,getenv("HOME"));
length=strlen(path_snaps);
if ((length>0)&&(path_snaps[length-1]!='/')) strcat(path_snaps,"/");
strcpy(path_taps,path_snaps);
strcpy(path_poke,path_snaps);
strcpy(path_scr1,path_snaps);
strcpy(path_scr2,path_snaps);
strcat(path_snaps,"snapshots");
strcat(path_taps,"tapes");
strcat(path_poke,"poke");
strcat(path_scr1,"scr");
strcat(path_scr2,"scr2");
strcpy(load_path_snaps,getenv("HOME"));
length=strlen(load_path_snaps);
if ((length>0)&&(load_path_snaps[length-1]!='/')) strcat(load_path_snaps,"/");
strcpy(load_path_taps,load_path_snaps);
strcpy(load_path_scr1,load_path_snaps);
strcpy(load_path_poke,load_path_snaps);
strcat(load_path_snaps,"snapshots");
strcat(load_path_taps,"tapes");
strcat(load_path_scr1,"scr");
strcat(load_path_poke,"poke");
ordenador.port = which;
break;
case 1: //PORT_SD
if (sdismount) {
strcpy(path_snaps,"sd:/");
strcpy(path_taps,"sd:/");
strcpy(path_poke,"sd:/");
strcpy(path_scr1,"sd:/");
strcpy(path_scr2,"sd:/");
strcpy(load_path_snaps,"sd:/");
strcpy(load_path_taps,"sd:/");
strcpy(load_path_scr1,"sd:/");
strcpy(load_path_poke,"sd:/");
ordenador.port = which;}
else
msgInfo("SD is not mounted",3000,NULL);
break;
case 2: //PORT_USB
if (usbismount) {
strcpy(path_snaps,"usb:/");
strcpy(path_taps,"usb:/");
strcpy(path_poke,"usb:/");
strcpy(path_scr1,"usb:/");
strcpy(path_scr2,"usb:/");
strcpy(load_path_snaps,"usb:/");
strcpy(load_path_taps,"usb:/");
strcpy(load_path_scr1,"usb:/");
strcpy(load_path_poke,"usb:/");
ordenador.port = which;}
else
msgInfo("USB is not mounted",3000,NULL);
@ -1120,11 +1106,10 @@ static void set_port(int which)
if (smbismount) msgInfo("SMB is now mounted",3000,NULL);
}
if (smbismount) {
strcpy(path_snaps,"smb:/");
strcpy(path_taps,"smb:/");
strcpy(path_poke,"smb:/");
strcpy(path_scr1,"smb:/");
strcpy(path_scr2,"smb:/");
strcpy(load_path_snaps,"smb:/");
strcpy(load_path_taps,"smb:/");
strcpy(load_path_scr1,"smb:/");
strcpy(load_path_poke,"smb:/");
ordenador.port = which;}
else
msgInfo("SMB is not mounted",3000,NULL);
@ -1139,11 +1124,10 @@ static void set_port(int which)
}
if (ftpismount) {
strcpy(path_snaps,"ftp:");
strcpy(path_taps,"ftp:");
strcpy(path_poke,"ftp:");
strcpy(path_scr1,"ftp:");
strcpy(path_scr2,"ftp:");
strcpy(load_path_snaps,"ftp:/");
strcpy(load_path_taps,"ftp:/");
strcpy(load_path_scr1,"ftp:/");
strcpy(load_path_poke,"ftp:/");
ordenador.port = which;}
else
msgInfo("FTP is not mounted",3000,NULL);
@ -1386,7 +1370,7 @@ int parse_poke (const char *filename)
static int load_poke_file()
{
char *dir = path_poke;
char *dir = load_path_poke;
int ritorno, retorno2;
ritorno=0;
retorno2=0; //Stay in menu as default
@ -1522,6 +1506,7 @@ void virtual_keyboard(void)
static int save_load_snapshot(int which)
{
char *dir = path_snaps;
char *dir_load = load_path_snaps;
const char *tape = ordenador.last_selected_file;
char *ptr;
char db[256];
@ -1545,7 +1530,7 @@ static int save_load_snapshot(int which)
case 2:
case 0: // Load or delete file
{
const char *filename = menu_select_file(dir, NULL,1);
const char *filename = menu_select_file(dir_load, NULL,1);
if (!filename)
return 0;
@ -1578,17 +1563,8 @@ static int save_load_snapshot(int which)
free((void*)filename);
} break;
case 1: // Save snapshot file
if (ordenador.port==3) //If file is taken from FTP, saves file on SD card
{
int length;
strcpy(path_snaps,getenv("HOME"));
length=strlen(path_snaps);
if ((length>0)&&(path_snaps[length-1]!='/')) strcat(path_snaps,"/");
strcat(path_snaps,"snapshots");
dir=path_snaps;
}
snprintf(db, 255, "%s/%s.z80", dir, fb);
if (ordenador.port==3) strcpy(path_snaps,"ftp:");
retorno=save_z80(db,0);
switch(retorno)
{

View File

@ -689,7 +689,7 @@ void select_tapfile() {
print_string(videomem,"Choose the TAPE file to load",-1,32,13,0,ancho);
filename=select_file(path_taps,FILETYPE_TAP_TZX);
filename=select_file(load_path_taps,FILETYPE_TAP_TZX);
if(filename==NULL) { // Aborted
clean_screen();
@ -1002,7 +1002,7 @@ void create_scrfile() {
print_string(videomem,"(up to 30 characters)",-1,52,14,0,ancho);
print_string(videomem,"SCR file will be saved in:",-1,132,12,0,ancho);
print_string(videomem,path_snaps,0,152,12,0,ancho);
print_string(videomem,path_scr1,0,152,12,0,ancho);
if (strlen(ordenador.current_tap))
{
@ -1012,7 +1012,7 @@ void create_scrfile() {
else
name=NULL;
retorno=ask_filename(nombre2,84,"scr",path_snaps, name);
retorno=ask_filename(nombre2,84,"scr",path_scr1, name);
clean_screen();
@ -1547,7 +1547,7 @@ void load_z80file() {
print_string(videomem,"Choose the Z80 snapshot file to load",-1,32,13,0,ancho);
filename=select_file(path_snaps,FILETYPE_Z80);
filename=select_file(load_path_snaps,FILETYPE_Z80);
if(filename==NULL) { // Aborted
clean_screen();
@ -1592,7 +1592,7 @@ void load_scrfile() {
print_string(videomem,"Choose the SCR snapshot file to load",-1,32,13,0,ancho);
filename=select_file(path_snaps,FILETYPE_SCR);
filename=select_file(load_path_scr1,FILETYPE_SCR);
if(filename==NULL) { // Aborted
clean_screen();