self.libraries : list[Library] = []
self.games : list[Game] = []
- supports = [] # be careful about the order
- supports.append(SupportGog())
- supports.append(SupportWin())
- supports.append(SupportWin31())
- supports.append(SupportDos())
- supports.append(SupportExt())
+ supports = []
+ supports.append(SupportGog()) # gameinfo
+ supports.append(SupportWin()) # wine.bat
+ supports.append(SupportWin31()) # start.conf + C/WINDOWS
+ supports.append(SupportDos()) # start.conf + no C/WINDOWS
+ supports.append(SupportExt()) # start.sh
targets = []
config = Path("~/.games.cfg").expanduser()
else:
cmd = [ start.as_posix() ]
-
return run(cmd, cwd=start.parent, env=env).returncode
def wine(dir: PurePath) -> int:
else:
raise RuntimeError("wine not found")
-
return run(cmd, cwd=dir, env=env).returncode
"""Supports DOS games via DosBox."""
def supports(self, game: Game):
- return game.dir.joinpath("start.conf").exists()
+ return (
+ game.dir.joinpath("start.conf").exists()
+ and not game.dir.joinpath("C", "WINDOWS").exists()
+ )
def start(self, game: Game, params: list[str] = []):
self.running(game)
def supports(self, game: Game):
return (
game.dir.joinpath("start.conf").exists()
- and game.dir.joinpath("C", "WINDOWS").exists()
+ and game.dir.joinpath("C", "WINDOWS").exists()
)
def start(self, game: Game, params: list[str] = []):