Compatible with launcher's action.config

This commit is contained in:
cuu 2019-06-18 17:03:45 +08:00
parent 37ae53db27
commit 0db31341e1
12 changed files with 56 additions and 41 deletions

View File

@ -233,9 +233,17 @@ func (self *GPUDriverPage) Click() {
if strings.Contains(cur_li.Value,"modesetting") { if strings.Contains(cur_li.Value,"modesetting") {
lockfile,_ := homedir.Expand("~/.lima") lockfile,_ := homedir.Expand("~/.lima")
UI.System("touch "+lockfile) UI.System("touch "+lockfile)
UI.ArmSystem("sudo mv /usr/lib/xorg/modules/drivers/modesetting_drv.so.lima /usr/lib/xorg/modules/drivers/modesetting_drv.so")
UI.ArmSystem("sudo sed -i '/^#.*lima/s/^#//' /etc/ld.so.conf.d/00-arm-linux-gnueabihf.conf")
UI.ArmSystem("sudo ldconfig")
}else { }else {
lockfile,_ := homedir.Expand("~/.lima") lockfile,_ := homedir.Expand("~/.lima")
UI.System("rm "+lockfile) UI.System("rm "+lockfile)
UI.ArmSystem("sudo mv /usr/lib/xorg/modules/drivers/modesetting_drv.so /usr/lib/xorg/modules/drivers/modesetting_drv.so.lima")
UI.ArmSystem("sudo sed -i 's/^[^#]*lima/#&/' /etc/ld.so.conf.d/00-arm-linux-gnueabihf.conf")
UI.ArmSystem("sudo ldconfig")
} }
time.BlockDelay(1000) time.BlockDelay(1000)
@ -352,7 +360,7 @@ func (self *GPUDriverPage) Draw() {
} }
if self.HWND != nil { if self.HWND != nil {
surface.Fill(self.HWND, &color.Color{255,255,255,255}) surface.Fill(self.HWND, UI.MySkinManager.GiveColor("White"))
rect_ := rect.Rect(self.PosX,self.PosY,self.Width,self.Height) rect_ := rect.Rect(self.PosX,self.PosY,self.Width,self.Height)
surface.Blit(self.HWND,self.CanvasHWND,&rect_,nil) surface.Blit(self.HWND,self.CanvasHWND,&rect_,nil)
} }

View File

@ -0,0 +1,7 @@
ROM=/home/cpi/games/MAME
ROM_SO=/home/cpi/apps/emulators/mame2003_plus_libretro.so
EXT=zip
LAUNCHER=retroarch -L
TITLE=MAME Roms
EXCLUDE=neogeo.zip
SO_URL=https://raw.githubusercontent.com/cuu/emulators/master/mame2003_plus_libretro.so.zip

View File

@ -1,9 +0,0 @@
{
"ROM":"/home/cpi/games/MAME",
"ROM_SO":"/home/cpi/apps/emulators/mame2003_plus_libretro.so",
"EXT":["zip"],
"LAUNCHER":"retroarch -L",
"TITLE":"MAME Roms",
"EXCLUDE":["neogeo.zip"],
"SO_URL":"http://buildbot.libretro.com/nightly/linux/armhf/latest/mame2003_plus_libretro.so.zip"
}

View File

@ -0,0 +1,6 @@
ROM=/home/cpi/games/MGBA
ROM_SO=/home/cpi/apps/emulators/mgba_libretro.so
EXT=gb,gbc,gba,gbx
LAUNCHER=retroarch -L
TITLE=MGBA Roms
SO_URL=https://raw.githubusercontent.com/cuu/emulators/master/mgba_libretro.so.zip

View File

@ -1,8 +0,0 @@
{
"ROM":"/home/cpi/games/MGBA",
"ROM_SO":"/home/cpi/apps/emulators/mgba_libretro.so",
"EXT":["gba","gbx"],
"LAUNCHER":"retroarch -L",
"TITLE":"MGBA Roms",
"SO_URL":"http://buildbot.libretro.com/nightly/linux/armhf/latest/mgba_libretro.so.zip"
}

View File

@ -0,0 +1,7 @@
ROM=/home/cpi/games/NESTOPIA
ROM_SO=/home/cpi/apps/emulators/nestopia_libretro.so
EXT=zip,nes
LAUNCHER=retroarch -L
TITLE=NESTOPIA Roms
SO_URL=https://raw.githubusercontent.com/cuu/emulators/master/nestopia_libretro.so.zip

View File

@ -1,9 +0,0 @@
{
"ROM":"/home/cpi/games/NESTOPIA",
"ROM_SO":"/home/cpi/apps/emulators/nestopia_libretro.so",
"EXT":["zip"],
"LAUNCHER":"retroarch -L",
"TITLE":"NESTOPIA Roms",
"SO_URL":"http://buildbot.libretro.com/nightly/linux/armhf/latest/nestopia_libretro.so.zip"
}

View File

@ -13,8 +13,9 @@ import (
"encoding/json" "encoding/json"
"sort" "sort"
"github.com/yookoala/realpath" "github.com/go-ini/ini"
"github.com/yookoala/realpath"
"github.com/clockworkpi/LauncherGoDev/sysgo/UI" "github.com/clockworkpi/LauncherGoDev/sysgo/UI"
"github.com/clockworkpi/LauncherGoDev/sysgo/UI/Emulator" "github.com/clockworkpi/LauncherGoDev/sysgo/UI/Emulator"
@ -184,10 +185,11 @@ func ReadTheDirIntoPages(self *UI.MainScreen, _dir string, pglevel int, cur_page
a_c := Emulator.ActionConfig{} a_c := Emulator.ActionConfig{}
a_c.FILETYPE="file" a_c.FILETYPE="file"
a_c.TITLE = "Game" a_c.TITLE = "Game"
dat, err := ioutil.ReadFile(_dir+"/"+f.Name()+"/" +UI.Emulator_flag) cfg, err := ini.Load(_dir+"/"+f.Name()+"/" +UI.Emulator_flag)
UI.ShowErr(err) UI.ShowErr(err)
err = json.Unmarshal(dat, &a_c) err = cfg.MapTo(&a_c)
if err == nil { if err == nil {
//fmt.Println(a_c) //fmt.Println(a_c)
if UI.FileExists(filepath.Join(_dir,f.Name(),"retroarch-local.cfg")) { if UI.FileExists(filepath.Join(_dir,f.Name(),"retroarch-local.cfg")) {

View File

@ -6,15 +6,15 @@ import (
) )
type ActionConfig struct { type ActionConfig struct {
ROM string `json:"ROM"` ROM string `ini:"ROM"`
ROM_SO string `json:"ROM_SO"` ROM_SO string `ini:"ROM_SO"`
EXT []string `json:"EXT"` EXT []string `ini:"EXT,omitempty"`
EXCLUDE []string `json:"EXCLUDE"` EXCLUDE []string `ini:"EXCLUDE,omitempty"`
FILETYPE string `json:"FILETYPE"` // defalut is file FILETYPE string `ini:"FILETYPE"` // defalut is file
LAUNCHER string `json:"LAUNCHER"` LAUNCHER string `ini:"LAUNCHER"`
TITLE string `json:"TITLE"` // defaut is Game TITLE string `ini:"TITLE"` // defaut is Game
SO_URL string `json:"SO_URL"` SO_URL string `ini:"SO_URL"`
RETRO_CONFIG string `json:"RETRO_CONFIG"` RETRO_CONFIG string `ini:"RETRO_CONFIG"`
} }

View File

@ -16,6 +16,6 @@ var (
) )
var ( var (
Emulator_flag = "action.json" Emulator_flag = "action.config"
Plugin_flag = "plugin.json" Plugin_flag = "plugin.json"
) )

View File

@ -64,7 +64,7 @@ func (self *SkinManager) Init() {
self.Colors["White"] = &color.Color{255,255,255,255} self.Colors["White"] = &color.Color{255,255,255,255}
self.Colors["Black"] = &color.Color{0,0,0,255} self.Colors["Black"] = &color.Color{0,0,0,255}
fname := "skin/"+sysgo.SKIN+"/config.cfg" fname := "skin/"+sysgo.SKIN+"/config.ini"
load_opts := ini.LoadOptions{ load_opts := ini.LoadOptions{
IgnoreInlineComment:true, IgnoreInlineComment:true,

View File

@ -12,6 +12,7 @@ import (
"strconv" "strconv"
"syscall" "syscall"
"os/exec" "os/exec"
"runtime"
"github.com/cuu/gogame/display" "github.com/cuu/gogame/display"
@ -260,6 +261,16 @@ func System(cmd string) string {
return ret return ret
} }
func ArmSystem(cmd string) string {
if strings.Contains(runtime.GOARCH,"arm") == true {
return System(cmd)
}else {
return ""
}
}
func SystemTrim(cmd string) string { func SystemTrim(cmd string) string {
ret := "" ret := ""
out,err := exec.Command("bash","-c",cmd).Output() out,err := exec.Command("bash","-c",cmd).Output()