add dosbox

This commit is contained in:
cuu 2018-06-20 20:35:40 +08:00
parent 716d12f04d
commit 650bdb1fd8
5 changed files with 2909 additions and 11 deletions

Binary file not shown.

View File

@ -0,0 +1,8 @@
ROM=/home/cpi/games/DOSBOX
ROM_SO=/home/cpi/apps/emulators/dosbox_libretro.so
EXT=GAMESHELL.BAT
FILETYPE=dir
LAUNCHER=retroarch -L
TITLE=DOS games
SO_URL=http://buildbot.libretro.com/nightly/linux/armhf/latest/dosbox_libretro.so.zip
RETRO_CONFIG=/home/cpi/apps/launcher/Menu/GameShell/20_Retro\ Games/DOSBOX/retroarch.cfg

File diff suppressed because it is too large Load Diff

View File

@ -133,14 +133,12 @@ class RomListPage(Page):
for i ,v in enumerate(files_path):
dirmap = {}
#if os.path.isdir(v):
# 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
@ -199,6 +197,8 @@ class RomListPage(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")
@ -336,16 +336,25 @@ class RomListPage(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)
if self._Emulator["FILETYPE"] == "dir":
escaped_path = CmdClean(path)
else:
escaped_path = CmdClean(path)
custom_config = ""
if self._Emulator["RETRO_CONFIG"] != "" and len(self._Emulator["RETRO_CONFIG"]) > 5:
custom_config = " -c " + self._Emulator["RETRO_CONFIG"]
cmdpath = " ".join( (self._Emulator["LAUNCHER"],self._Emulator["ROM_SO"], custom_config, escaped_path))
pygame.event.post( pygame.event.Event(RUNEVT, message=cmdpath))
return

View File

@ -406,6 +406,7 @@ class MainScreen(object):
obj["ROM"] = ""
obj["ROM_SO"] =""
obj["EXT"] = []
obj["FILETYPE"] = "file"
obj["LAUNCHER"] = ""
obj["TITLE"] = "Game"
obj["SO_URL"] = ""