Merge pull request #66 from KeyserSoze1/supermodel_config

Supermodel config
This commit is contained in:
r3claimer 2024-04-06 14:12:35 -07:00 committed by GitHub
commit bb833c2bea
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
6 changed files with 549 additions and 26 deletions

View file

@ -0,0 +1,436 @@
;;
;; Supermodel Configuration File
;; Default settings.
;;
;
; Quick Overview
; --------------
;
; All settings are case sensitive. Numbers must be integers. Check your
; spelling carefully because invalid settings are silently ignored. To verify
; that your settings are being parsed correctly, check the contents of
; Supermodel.log.
;
; Global options apply to all games. To create configuration profiles for
; individual games, place settings under sections with the same name as the
; corresponding MAME ROM set, like so:
;
; ; Scud Race
; [ scud ]
;
; SoundVolume = 50
; MusicVolume = 200
; ; ... etc. ...
;
; For a list of all valid settings, please consult README.txt. Only default
; inputs are assigned here.
;
[ Global ]
; Graphics
New3DEngine = false
QuadRendering = false
WideScreen = false
Stretch = false
WideBackground = false
XResolution = 1920
YResolution = 1080
Fullscreen = 1
ForceFeedback = 1
Throttle = 1
; Refresh rate (milliHertz accuracy). Actual Model 3 refresh rate is 57.524 Hz
; but this can cause judder so we use 60 Hz by default.
RefreshRate = 60.000
; Legacy SCSP DSP implementation for games that do not play well with the newer
; one (e.g., Fighting Vipers 2)
LegacySoundDSP = false
; Network board
Network = false
SimulateNet = true
PortIn = 1970
PortOut = 1971
AddressOut = "127.0.0.1"
InputJoy1XDeadZone = 5
InputJoy1YDeadZone = 5
; Common
InputUIExit = "KEY_ESCAPE,JOY1_BUTTON10+JOY1_BUTTON9"
InputUIPause = "JOY1_BUTTON10+JOY1_BUTTON8"
InputUISelectCrosshairs = "JOY1_BUTTON10+JOY1_BUTTON2"
InputUISaveState = "KEY_9,JOY1_BUTTON10+JOY1_BUTTON7"
InputUILoadState = "KEY_0,JOY1_BUTTON10+JOY1_BUTTON6"
InputStart1 = "KEY_1,JOY1_BUTTON9"
InputStart2 = "KEY_2,JOY2_BUTTON10"
InputCoin1 = "KEY_3,KEY_ALT,JOY1_BUTTON8"
InputCoin2 = "KEY_4,JOY2_BUTTON9"
InputServiceA = "KEY_5,JOY1_BUTTON10+JOY1_BUTTON5"
InputServiceB = "KEY_7,JOY1_BUTTON10+JOY1_BUTTON1"
InputTestA = "KEY_6,JOY1_BUTTON10+JOY1_BUTTON4"
InputTestB = "KEY_8,JOY1_BUTTON10+JOY1_BUTTON2"
; 4-way digital joysticks
InputJoyUp = "KEY_UP,JOY1_UP"
InputJoyDown = "KEY_DOWN,JOY1_DOWN"
InputJoyLeft = "KEY_LEFT,JOY1_LEFT"
InputJoyRight = "KEY_RIGHT,JOY1_RIGHT"
InputJoyUp2 = "JOY2_UP"
InputJoyDown2 = "JOY2_DOWN"
InputJoyLeft2 = "JOY2_LEFT"
InputJoyRight2 = "JOY2_RIGHT"
; Fighting game buttons
InputPunch = "KEY_A,JOY1_BUTTON1"
InputKick = "KEY_S,JOY1_BUTTON2"
InputGuard = "KEY_D,JOY1_BUTTON4"
InputEscape = "KEY_F,JOY1_BUTTON5"
InputPunch2 = "JOY2_BUTTON1"
InputKick2 = "JOY2_BUTTON2"
InputGuard2 = "JOY2_BUTTON3"
InputEscape2 = "JOY2_BUTTON4"
; Spikeout buttons
InputShift = "KEY_A,JOY1_BUTTON1"
InputBeat = "KEY_S,JOY1_BUTTON2"
InputCharge = "KEY_D,JOY1_BUTTON4"
InputJump = "KEY_F,JOY1_BUTTON5"
; Virtua Striker buttons
InputShortPass = "KEY_A,JOY1_BUTTON1"
InputLongPass = "KEY_S,JOY1_BUTTON2"
InputShoot = "KEY_D,JOY1_BUTTON4"
InputShortPass2 = "JOY2_BUTTON1"
InputLongPass2 = "JOY2_BUTTON2"
InputShoot2 = "JOY2_BUTTON3"
; Steering wheel
InputSteeringLeft = "KEY_LEFT" ; digital, turn wheel left
InputSteeringRight = "KEY_RIGHT" ; digital, turn wheel right
InputSteering = "JOY1_YAXIS" ; analog, full steering range
; Pedals
InputAccelerator = "KEY_UP,JOY1_RZAXIS_NEG"
InputBrake = "KEY_DOWN,JOY1_ZAXIS_NEG"
; Up/down shifter manual transmission (all racers)
InputGearShiftUp = "KEY_Y,JOY1_BUTTON6" ; sequential shift up
InputGearShiftDown = "KEY_H,JOY1_BUTTON7" ; sequential shift down
; 4-Speed manual transmission (Daytona 2, Sega Rally 2, Scud Race)
InputGearShift1 = "KEY_Q,JOY1_RYAXIS_NEG"
InputGearShift2 = "KEY_W,JOY1_RYAXIS_POS"
InputGearShift3 = "KEY_E,JOY1_RXAXIS_NEG"
InputGearShift4 = "KEY_R,JOY1_RXAXIS_POS"
InputGearShiftN = "KEY_T"
; VR4 view change buttons (Daytona 2, Le Mans 24, Scud Race)
InputVR1 = "KEY_A,JOY1_BUTTON1"
InputVR2 = "KEY_S,JOY1_BUTTON2"
InputVR3 = "KEY_D,JOY1_BUTTON4"
InputVR4 = "KEY_F,JOY1_BUTTON5"
; Single view change button (Dirt Devils, ECA, Harley-Davidson, Sega Rally 2)
InputViewChange = "KEY_A,JOY1_BUTTON1"
; Handbrake (Dirt Devils, Sega Rally 2)
InputHandBrake = "KEY_S,JOY1_BUTTON2"
; Harley-Davidson controls
InputRearBrake = "KEY_S,JOY1_BUTTON2"
InputMusicSelect = "KEY_D,JOY1_BUTTON4"
; Virtual On macros
InputTwinJoyTurnLeft = "KEY_Q,JOY1_RXAXIS_NEG"
InputTwinJoyTurnRight = "KEY_W,JOY1_RXAXIS_POS"
InputTwinJoyForward = "KEY_UP,JOY1_XAXIS_POS"
InputTwinJoyReverse = "KEY_DOWN,JOY1_XAXIS_NEG"
InputTwinJoyStrafeLeft = "KEY_LEFT,JOY1_YAXIS_NEG"
InputTwinJoyStrafeRight = "KEY_RIGHT,JOY1_YAXIS_POS"
InputTwinJoyJump = "KEY_E,JOY1_BUTTON1"
InputTwinJoyCrouch = "KEY_R,JOY1_BUTTON2"
; Virtual On individual joystick mapping
InputTwinJoyLeft1 = "NONE"
InputTwinJoyLeft2 = "NONE"
InputTwinJoyRight1 = "NONE"
InputTwinJoyRight2 = "NONE"
InputTwinJoyUp1 = "NONE"
InputTwinJoyUp2 = "NONE"
InputTwinJoyDown1 = "NONE"
InputTwinJoyDown2 = "NONE"
; Virtual On buttons
InputTwinJoyShot1 = "KEY_A,JOY1_ZAXIS_NEG"
InputTwinJoyShot2 = "KEY_S,JOY1_RZAXIS_NEG"
InputTwinJoyTurbo1 = "KEY_Z,JOY1_BUTTON6"
InputTwinJoyTurbo2 = "KEY_X,JOY1_BUTTON7"
; Analog joystick (Star Wars Trilogy)
InputAnalogJoyLeft = "KEY_LEFT" ; digital, move left
InputAnalogJoyRight = "KEY_RIGHT" ; digital, move right
InputAnalogJoyUp = "KEY_UP" ; digital, move up
InputAnalogJoyDown = "KEY_DOWN" ; digital, move down
InputAnalogJoyX = "JOY1_YAXIS,MOUSE1_XAXIS_INV" ; analog, full X axis
InputAnalogJoyY = "JOY1_XAXIS_INV,MOUSE1_YAXIS_INV" ; analog, full Y axis
InputAnalogJoyTrigger = "KEY_A,JOY1_BUTTON1,MOUSE1_LEFT_BUTTON"
InputAnalogJoyEvent = "KEY_S,JOY1_BUTTON2,MOUSE1_RIGHT_BUTTON"
InputAnalogJoyTrigger2 = "KEY_D,JOY1_BUTTON5"
InputAnalogJoyEvent2 = "JOY1_BUTTON4"
; Light guns (Lost World)
InputGunLeft = "KEY_LEFT" ; digital, move gun left
InputGunRight = "KEY_RIGHT" ; digital, move gun right
InputGunUp = "KEY_UP" ; digital, move gun up
InputGunDown = "KEY_DOWN" ; digital, move gun down
InputGunX = "JOY1_YAXIS" ; analog, full X axis
InputGunY = "JOY1_XAXIS_INV" ; analog, full Y axis
InputTrigger = "KEY_A,JOY1_BUTTON1,MOUSE1_LEFT_BUTTON"
InputOffscreen = "KEY_S,JOY1_BUTTON2,MOUSE1_RIGHT_BUTTON" ; point off-screen
InputAutoTrigger = 1 ; automatic reload when off-screen
InputGunLeft2 = "NONE"
InputGunRight2 = "NONE"
InputGunUp2 = "NONE"
InputGunDown2 = "NONE"
InputGunX2 = "JOY2_XAXIS,MOUSE2_XAXIS"
InputGunY2 = "JOY2_YAXIS,MOUSE2_YAXIS"
InputTrigger2 = "JOY2_BUTTON1,MOUSE2_LEFT_BUTTON"
InputOffscreen2 = "JOY2_BUTTON2,MOUSE2_RIGHT_BUTTON"
InputAutoTrigger2 = 1
; Analog guns (Ocean Hunter, LA Machineguns)
InputAnalogGunLeft = "KEY_LEFT" ; digital, move gun left
InputAnalogGunRight = "KEY_RIGHT" ; digital, move gun right
InputAnalogGunUp = "KEY_UP" ; digital, move gun up
InputAnalogGunDown = "KEY_DOWN" ; digital, move gun down
InputAnalogGunX = "JOY1_YAXIS" ; analog, full X axis
InputAnalogGunY = "JOY1_XAXIS_INV" ; analog, full Y axis
InputAnalogTriggerLeft = "KEY_A,JOY1_BUTTON1,MOUSE1_LEFT_BUTTON"
InputAnalogTriggerRight = "KEY_S,JOY1_BUTTON2,MOUSE1_RIGHT_BUTTON"
InputAnalogGunLeft2 = "NONE"
InputAnalogGunRight2 = "NONE"
InputAnalogGunUp2 = "NONE"
InputAnalogGunDown2 = "NONE"
InputAnalogGunX2 = "MOUSE2_XAXIS"
InputAnalogGunY2 = "MOUSE2_YAXIS"
InputAnalogTriggerLeft2 = "MOUSE2_LEFT_BUTTON"
InputAnalogTriggerRight2 = "MOUSE2_RIGHT_BUTTON"
; Ski Champ controls
InputSkiLeft = "KEY_LEFT"
InputSkiRight = "KEY_RIGHT"
InputSkiUp = "KEY_UP"
InputSkiDown = "KEY_DOWN"
InputSkiX = "JOY1_YAXIS"
InputSkiY = "JOY1_XAXIS_INV"
InputSkiPollLeft = "KEY_A,JOY1_ZAXIS_NEG"
InputSkiPollRight = "KEY_S,JOY1_RZAXIS_NEG"
InputSkiSelect1 = "KEY_Q,JOY1_BUTTON1"
InputSkiSelect2 = "KEY_W,JOY1_BUTTON2"
InputSkiSelect3 = "KEY_E,JOY1_BUTTON4"
; Magical Truck Adventure controls
InputMagicalLeverUp1 = "KEY_UP"
InputMagicalLeverDown1 = "KEY_DOWN"
InputMagicalLeverUp2 = "NONE"
InputMagicalLeverDown2 = "NONE"
InputMagicalLever1 = "JOY1_XAXIS"
InputMagicalLever2 = "JOY2_YAXIS"
InputMagicalPedal1 = "KEY_A,JOY1_BUTTON1"
InputMagicalPedal2 = "KEY_S,JOY2_BUTTON1"
; Sega Bass Fishing / Get Bass controls
InputFishingRodLeft = "KEY_LEFT"
InputFishingRodRight = "KEY_RIGHT"
InputFishingRodUp = "KEY_UP"
InputFishingRodDown = "KEY_DOWN"
InputFishingStickLeft = "KEY_A"
InputFishingStickRight = "KEY_D"
InputFishingStickUp = "KEY_W"
InputFishingStickDown = "KEY_S"
InputFishingRodX = "JOY1_YAXIS"
InputFishingRodY = "JOY1_XAXIS_INV"
InputFishingStickX = "JOY1_RXAXIS"
InputFishingStickY = "JOY1_RYAXIS"
InputFishingReel = "KEY_SPACE,JOY1_ZAXIS_NEG"
InputFishingCast = "KEY_Z,JOY1_BUTTON1"
InputFishingSelect = "KEY_X,JOY1_BUTTON2"
InputFishingTension = "KEY_T,JOY1_RZAXIS_NEG"
;Our non input settings...
; Game specific settings
;daytona 2 power edition
[ dayto2pe ]
PowerPCFrequency = 90
EmulateDSB = 1
;daytona 2: battle to the edge
[ daytona2 ]
PowerPCFrequency = 90
EmulateDSB = 1
;Dirt Devils (Export, Revision A)
[ dirtdvls ]
PowerPCFrequency = 60
;Dirt Devils (Australia, Revision A)
[ dirtdvlsa ]
PowerPCFrequency = 60
;Dirt Devils (German)
[ dirtdvlsg ]
PowerPCFrequency = 60
;Dirt Devils (Japan, Revision A)
[ dirtdvlsj ]
PowerPCFrequency = 60
;Emergency Call Ambulance (Export) - NOT WORKING PI
[ eca ]
;Emergency Call Ambulance (Japan) - NOIT WORKING PI
[ ecaj ]
;Emergency Call Ambulance (US location test?) - NOT WORKING PI
[ ecap ]
;Emergency Call Ambulance (USA) - NOT WORKING PI
[ ecau ]
;Fighting Vipers 2 (Japan, Revision A)
[ fvipers2 ]
PowerPCFrequency = 55
;Fighting Vipers 2 (?)
[ fvipers2o ]
PowerPCFrequency = 48
;Get Bass (?)
[ getbass ]
PowerPCFrequency = 30
;Harley-Davidson and L.A. Riders (Revision B) - pi too slow
[ harley ]
PowerPCFrequency = 166
;Harley-Davidson and L.A. Riders (Revision A) - pi too slow
[ harleya ]
PowerPCFrequency = 166
;L.A. Machineguns: Rage of the Machines (Japan)
[ lamachin ]
PowerPCFrequency = 40
;Le Mans 24 (Revision B)
[ lemans24 ]
;The Lost World (Japan, Revision A)
[ lostwsga ];The Lost World (Original Revision)
PowerPCFrequency = 33
[ lostwsgo ]
PowerPCFrequency = 33
;Magical Truck Adventure (Japan)
[ magtruck ]
PowerPCFrequency = 40
;The Ocean Hunter - Default works fine on pi
[ oceanhun ]
MusicVolume = 200
SoundVolume = 200
[ oceanhuna ]
MusicVolume = 200
SoundVolume = 200
;Scud Race (Australia, Twin)
[ scud ]
PowerPCFrequency = 35
MusicVolume = 200
EmulateDSB = 1
;Scud Race (Export, Twin)
[ scuda ]
PowerPCFrequency = 35
MusicVolume = 200
EmulateDSB = 1
;Scud Race (Japan, Deluxe)
[ scudj ]
PowerPCFrequency = 35
MusicVolume = 200
EmulateDSB = 1
;Scud Race Plus (Revision A)
[ scudplus ]
PowerPCFrequency = 35
MusicVolume = 200
EmulateDSB = 1
;Scud Race Plus (?)
[ scudplusa ]
PowerPCFrequency = 35
MusicVolume = 200
EmulateDSB = 1
;Ski Champ (Japan)
[ skichamp ]
;PowerPCFrequency = 43
PowerPCFrequency = 60
;Spikeout Final Edition (?) - too slow on pi
[ spikeofe ]
PowerPCFrequency = 100
EmulateDSB = 1
;Spikeout (Revision C)
[ spikeout ]
;PowerPCFrequency = 35
PowerPCFrequency = 55
EmulateDSB = 1
;Sega Rally 2 (?)
[ srally2 ]
EmulateDSB = 1
PowerPCFrequency = 60
;Sega Rally 2 (Prototype)
[ srally2p ]
PowerPCFrequency = 48
EmulateDSB = 1
;Sega Rally 2 (Prototype Version A)
[ srally2pa ]
PowerPCFrequency = 48
EmulateDSB = 1
;Sega Rally 2 (Deluxe)
[ srally2x ]
;Playable on pi but more slower down than srally2
PowerPCFrequency = 100
EmulateDSB = 1
;Star Wars Trilogy Arcade - Default works fine on pi
[ swtrilgy ]
;Star Wars Trilogy Arcade (?)
[ swtrilgya ]
;Star Wars Trilogy Arcade (?)
[ swtrilgyp ]
;Virtua Fighter 3 (Revision D)
[ vf3 ]
PowerPCFrequency = 40
;PowerPCFrequency = 100
;Virtua Fighter 3 (Revision A)
[ vf3a ]
PowerPCFrequency = 40
;Virtua Fighter 3 (Revision C)
[ vf3c ]
PowerPCFrequency = 40
;Virtua Fighter 3 Team Battle (?)
[ vf3tb ]
PowerPCFrequency = 40
;Virtual On 2: Oratorio Tangram (Revision B)
[ von2 ]
PowerPCFrequency = 30
;Virtual On 2: Oratorio Tangram (Ver 5.4g)
[ von254g ]
PowerPCFrequency = 30
;Virtual On 2: Oratorio Tangram (Revision A)
[ von2a ]
PowerPCFrequency = 30
;Virtual On 2: Oratorio Tangram (?)
[ von2o ]
PowerPCFrequency = 35
;Virtua Striker 2 (Step 2.0) - no special settings
[ vs2 ]
;Virtua Striker 2 (Step 1.5) - no special settings
[ vs215 ]
;Virtua Striker 2 (Step 1.5, older) - no special settings
[ vs215o ]
;Virtua Striker 2 '98 (Step 2.0) - no special settings
[ vs298 ]
;Virtua Striker 2 '98 (Step 1.5) - no special settings
[ vs29815 ]
;Virtua Striker 2 '99 (?)
[ vs299 ]
;Virtua Striker 2 '99 (Step 1.5)
[ vs29915 ]
;Virtua Striker 2 '99 (Revision A)
[ vs299a ]
;Virtua Striker 2 '99 (Revision B)
[ vs299b ]
;Virtua Striker 2 '99.1 (Revision B)

View file

@ -24,26 +24,13 @@ esac
PKG_MAKE_OPTS="NET_BOARD=1"
pre_configure_target() {
pre_patch() {
cp ${PKG_BUILD}/Makefiles/Makefile.UNIX ${PKG_BUILD}/Makefile
}
post_patch() {
# Add proper include directory
sed -e "s+-DGLEW_STATIC+-I${SYSROOT_PREFIX}/usr/include -DGLEW_STATIC+g" -i ${PKG_BUILD}/Makefiles/Rules.inc
# Fix to allow cross-compiling
sed 's+ARCH = -march=native+ARCH = -DSDL_DISABLE_IMMINTRIN_H+g' -i ${PKG_BUILD}/Makefiles/Rules.inc
# This file needs to be compiled for the Host system to run. Hard coding gcc for now.
sed 's+$(SILENT)$(CC) $< $(CFLAGS)+$(SILENT)gcc $< $(CFLAGS) -march=native+g' -i ${PKG_BUILD}/Makefiles/Rules.inc
sed 's+$(SILENT)$(LD) $(MUSASHI_LDFLAGS)+$(SILENT)gcc $(MUSASHI_LDFLAGS)+g' -i ${PKG_BUILD}/Makefiles/Rules.inc
# More fixes for cross compilation.
sed 's+CC = gcc+ +g' -i ${PKG_BUILD}/Makefile
sed 's/CXX = g++/ /g' -i ${PKG_BUILD}/Makefile
sed 's+LD = gcc+ +g' -i ${PKG_BUILD}/Makefile
# Use the compiler to link vs ld as the original Makefile intended and cross compiler fixes above changed.
sed 's+$(SILENT)$(LD) $(OBJ_FILES) $(LDFLAGS)+$(SILENT)$(CC) $(OBJ_FILES) $(LDFLAGS)+g' -i ${PKG_BUILD}/Makefiles/Rules.inc
sed -e "s+MUSASHI_CFLAGS =+MUSASHI_CFLAGS = -I${SYSROOT_PREFIX}/usr/include+g" -i ${PKG_BUILD}/Makefiles/Rules.inc
}
makeinstall_target() {
@ -54,5 +41,5 @@ makeinstall_target() {
mkdir -p ${INSTALL}/usr/config/supermodel
mkdir -p ${INSTALL}/usr/config/supermodel/Config
cp ${PKG_BUILD}/Config/Games.xml ${INSTALL}/usr/config/supermodel/Config
cp ${PKG_BUILD}/Config/Supermodel.ini ${INSTALL}/usr/config/supermodel/Config
cp -r ${PKG_DIR}/config/${DEVICE}/* ${INSTALL}/usr/config/supermodel/Config
}

View file

@ -0,0 +1,47 @@
--- a/Makefile 2023-04-02 07:03:17.000000000 -0400
+++ b/Makefile 2024-04-05 13:57:55.702281044 -0400
@@ -47,9 +47,9 @@
#
# Toolchain
#
-CC = gcc
-CXX = g++
-LD = gcc
+
+
+
#
# SDL
--- a/Makefiles/Rules.inc 2024-04-05 13:49:40.615575984 -0400
+++ b/Makefiles/Rules.inc 2024-04-05 13:13:09.405606344 -0400
@@ -68,7 +68,7 @@
#
# Compiler options
#
-ARCH = -march=native
+ARCH = -DSDL_DISABLE_IMMINTRIN_H
OPT = -O3
WARN = -Wall
CSTD = -std=iso9899:2011
@@ -242,7 +242,7 @@
$(BIN_DIR)/$(OUTFILE): $(BIN_DIR) $(OBJ_DIR) $(OBJ_FILES)
$(info --------------------------------------------------------------------------------)
$(info Linking Supermodel : $(BIN_DIR)/$(OUTFILE))
- $(SILENT)$(LD) $(OBJ_FILES) $(LDFLAGS)
+ $(SILENT)$(CC) $(OBJ_FILES) $(LDFLAGS)
$(info --------------------------------------------------------------------------------)
$(BIN_DIR):
@@ -305,9 +305,9 @@
$(MUSASHI_OUTFILE): Src/CPU/68K/Musashi/m68kmake.c Src/CPU/68K/Musashi/m68k_in.c
$(info --------------------------------------------------------------------------------)
$(info Compiling : $< -> $(OBJ_DIR)/m68kmake.o)
- $(SILENT)$(CC) $< $(CFLAGS) -o $(OBJ_DIR)/m68kmake.o
+ $(SILENT)gcc $< $(CFLAGS) -march=native -o $(OBJ_DIR)/m68kmake.o
$(info Linking : $(MUSASHI_OUTFILE))
- $(SILENT)$(LD) $(MUSASHI_LDFLAGS)
+ $(SILENT)gcc $(MUSASHI_LDFLAGS)
$(OBJ_DIR)/m68kops.h $(OBJ_DIR)/m68kops.c $(OBJ_DIR)/m68kopac.c $(OBJ_DIR)/m68kopdm.c $(OBJ_DIR)/m68kopnz.c: $(MUSASHI_OUTFILE) Src/CPU/68K/Musashi/m68k_in.c Src/CPU/68K/Musashi/m68k.h Src/CPU/68K/Musashi/m68kconf.h
$(info Generating 68K emulator: $@)

View file

@ -41,6 +41,43 @@ else
unset EMUPERF
fi
#Emulation Station Features
GAME=$(echo "${1}"| sed "s#^/.*/##")
VSYNC=$(get_setting vsync segamodel3 "${GAME}")
RESOLUTION=$(get_setting resolution segamodel3 "${GAME}")
ENGINE=$(get_setting rendering_engine segamodel3 "${GAME}")
OPTIONS=
#VSYNC
if [ "$VSYNC" = "true" ]
then
OPTIONS+=" -vsync"
elif [ "$VSYNC" = "false" ]
then
OPTIONS+=" -no-vsync"
fi
#ENGINE
if [ "$ENGINE" = "1" ]
then
OPTIONS+=" -new3d"
elif [ "$ENGINE" = "0" ]
then
OPTIONS+=" -legacy3d"
fi
#RESOLUTION
if [ "$RESOLUTION" = "1" ]
then
OPTIONS+=" -res=496,384"
elif [ "$RESOLUTION" = "2" ]
then
OPTIONS+=" -res=992,768"
else
OPTIONS+=" -fullscreen"
fi
cd ${CONFIG_DIR}
echo "Command: supermodel "${1}" -fullscreen" >/var/log/exec.log 2>&1
${EMUPERF} supermodel "${1}" -fullscreen >>/var/log/exec.log 2>&1 ||:
echo "Command: supermodel "${1}" ${OPTIONS}" >/var/log/exec.log 2>&1
${EMUPERF} supermodel "${1}" ${OPTIONS} >>/var/log/exec.log 2>&1 ||:

View file

@ -764,11 +764,6 @@
</cores>
</emulator>
<emulator name="pico-8" features="pixel_perfect" />
<emulator name="supermodel">
<cores>
<core name="supermodel-sa" />
</cores>
</emulator>
<emulator name="retroarch" features="ratio, smooth, shaders, pixel_perfect, latency_reduction, game_translation">
<cores>
<core name="2048" features="netplay, rewind, autosave" />
@ -981,4 +976,25 @@
</core>
</cores>
</emulator>
<emulator name="supermodel">
<cores>
<core name="supermodel-sa">
<features>
<feature name="resolution">
<choice name="Full (1395x1080)" value="0" />
<choice name="1x (496x384)" value="1" />
<choice name="2x (992x768)" value="2" />
</feature>
<feature name="vsync">
<choice name="on" value="true" />
<choice name="off" value="false" />
</feature>
<feature name="rendering engine">
<choice name="legacy (default)" value="0" />
<choice name="new" value="1" />
</feature>
</features>
</core>
</cores>
</emulator>
</features>

View file

@ -4,7 +4,7 @@
# Copyright (C) 2023 JELOS (https://github.com/JustEnoughLinuxOS)
PKG_NAME="es-theme-art-book-next"
PKG_VERSION="3c1df8c56cbe1ca476531da14c01af77aa9092a4"
PKG_VERSION="9709a73be65faab5cb18d38de5fc0298aec7fcd6"
PKG_ARCH="any"
PKG_LICENSE="CUSTOM"
PKG_SITE="https://github.com/anthonycaccese/art-book-next-jelos"