diff --git a/sys.py/UI/Emulator/fav_list_page.py b/sys.py/UI/Emulator/fav_list_page.py index 1c0d857..058a7da 100644 --- a/sys.py/UI/Emulator/fav_list_page.py +++ b/sys.py/UI/Emulator/fav_list_page.py @@ -122,16 +122,12 @@ class FavListPage(Page): for i ,v in enumerate(files_path): dirmap = {} - #if os.path.isdir(v): - # continue - # dir_base_name = os.path.basename(v) - # if dir_base_name == ".Trash" or dir_base_name == ".Fav": - # pass - # else: - # dirmap["directory"] = v - # ret.append(dirmap) - - if os.path.isfile(v): + if os.path.isdir(v) and self._Emulator["FILETYPE"] == "dir": ## like DOSBOX + gameshell_bat = self._Emulator["EXT"][0] + if FileExists(v+"/"+gameshell_bat): + dirmap["gamedir"] = v.decode("utf8") + ret.append(dirmap) + if os.path.isfile(v) and self._Emulator["FILETYPE"] == "file": stats = os.stat(v) if stats.st_gid != self._Parent._FavGID: continue @@ -190,6 +186,9 @@ class FavListPage(Page): li.Init(v["directory"]) elif "file" in v: li.Init(v["file"]) + + elif "gamedir" in v: + li.Init(v["gamedir"]) else: li.Init("NoName") @@ -307,11 +306,16 @@ class FavListPage(Page): self._Screen._MsgBox.SetText("Launching...") self._Screen._MsgBox.Draw() self._Screen.SwapAndShow() - print("Run ",cur_li._Path) + if self._Emulator["FILETYPE"] == "dir": + path = cur_li._Path +"/"+self._Emulator["EXT"][0] + else: + path = cur_li._Path + + print("Run ",path) # check ROM_SO exists if FileExists(self._Emulator["ROM_SO"]): - escaped_path = CmdClean( cur_li._Path) + escaped_path = CmdClean( path) custom_config = "" if self._Emulator["RETRO_CONFIG"] != "" and len(self._Emulator["RETRO_CONFIG"]) > 5: