-
-
Notifications
You must be signed in to change notification settings - Fork 50
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
7 changed files
with
166 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,26 @@ | ||
#!/bin/sh | ||
|
||
filename=$1 | ||
filebase=$(basename "$filename") | ||
extension="${filebase##*.}" | ||
tmppath=/tmp/rom | ||
if [ "$extension" == "7z" ]; then | ||
mkdir -p $tmppath | ||
rm -rf $tmppath/* | ||
cd $tmppath | ||
tiny7zx x $filename | ||
filename=$tmppath/$(ls) | ||
fi | ||
|
||
filebase=$(basename "$filename") | ||
extension="${filebase##*.}" | ||
if [ "$extension" == "sfrom" ]; then | ||
mkdir -p $tmppath | ||
rm -f $tmppath/*.7z | ||
rm -f $tmppath/*.bin | ||
dd if="$filename" of="$tmppath/$filebase.bin" bs=48 skip=1 | ||
filename=$tmppath/$filebase.bin | ||
fi | ||
shift | ||
|
||
exec retroarch-clover snes9x "$filename" "$@" |
Binary file not shown.
12 changes: 12 additions & 0 deletions
12
core_modules/snes9x.hmod/etc/libretro/info/snes9x_libretro.info
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
display_name = "SNES / Super Famicom (Snes9x)" | ||
authors = "Snes9x Team" | ||
supported_extensions = "smc|sfc|swc|fig" | ||
corename = "Snes9x" | ||
manufacturer = "Nintendo" | ||
categories = "Emulator" | ||
systemname = "Super Nintendo Entertainment System" | ||
database = "Nintendo - Super Nintendo Entertainment System|Nintendo - Super Nintendo Entertainment System Hacks|Nintendo - Sufami Turbo" | ||
license = "Non-commercial" | ||
permissions = "" | ||
display_version = "1.53" | ||
supports_no_game = "false" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
[ -f "$mountpoint/usr/bin/clover-canoe-shvc" ] && overmount /usr/bin/clover-canoe-shvc |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
transfer_default | ||
chmod +x $rootfs/bin/* | ||
chmod +x $rootfs/usr/bin/* | ||
return 1 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
=== SNES9x core for RetroArch === | ||
|
||
This module will add support for Super Famicom / Super Nintendo games to RetroArch | ||
Due to some bug in the core savestates do not work properly. | ||
|
||
Available executables and arguments: | ||
- /bin/snes <rom> <clover_args> | ||
runs "snes9x" core | ||
|
||
For SNES Classic Mini users: | ||
please note that you can also add "--retroarch" argument to "clover-canoe-shvc" to use RetroArch instead of original emulator. Use it for problem games. | ||
|
||
Core by libretro | ||
Module by pcm | ||
Hakchi module system by madmonkey | ||
NES Mini shell integration by Cluster | ||
(c) 2016-2017 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,106 @@ | ||
#!/bin/sh | ||
|
||
set -x | ||
|
||
export MALI_NOCLEAR=1 | ||
|
||
decorative_options() | ||
{ | ||
local fn="$1_options.txt" | ||
if [ ! -f "$fn" ] ; then | ||
return | ||
fi | ||
while read option ; do | ||
case "$option" in | ||
hue) printf ' --decorative-frame-hue';; | ||
luminosity) printf ' --decorative-frame-luminosity';; | ||
saturation) printf ' --decorative-frame-saturation';; | ||
esac | ||
done < "$fn" | ||
} | ||
|
||
args=$@ | ||
options="" | ||
retroarch=0 | ||
clovercon_file=/dev/clovercon1 | ||
video_mode=keep-aspect-ratio | ||
mode1="-filter 2 -magfilter 1" | ||
mode2="-filter 1 -magfilter 3" | ||
mode3="-filter 1 --pixel-perfect" | ||
|
||
while [ $# -gt 0 ] ; do | ||
case "$1" in | ||
--title-code) title_code="$2"; shift ;; | ||
--load-state-file) options="$options -resume" ;; | ||
--save-data-backing-file) options="$options --sram-file" ;; | ||
--replay-inputs) options="$options -replay-all -replay" ;; | ||
--record-inputs) options="$options -record-next -enable-pad-debug-controls" ;; | ||
--video-mode) | ||
video_mode=$2 | ||
shift | ||
;; | ||
--no-scanlines) | ||
mode1="-filter 1 -magfilter 1" | ||
;; | ||
--no-smooth) | ||
mode1="-filter 2 -magfilter 3" | ||
;; | ||
--smooth43) | ||
mode2="-filter 1 -magfilter 1" | ||
;; | ||
--rollback-mode) | ||
case "$2" in | ||
record) options="$options -rollback-mode 1" ;; | ||
replay) options="$options -rollback-mode 2" ;; | ||
esac | ||
options="$options --rollback-ui /usr/share/canoe/rollback-ui" | ||
options="-rollback-snapshot-period 720 $options" | ||
options="$options --enable-sram-file-hash" | ||
shift | ||
;; | ||
--rollback-output-dir) options="$options -rollback-output-dir $2"; shift ;; | ||
--rollback-input-dir) options="$options -rollback-input-dir $2"; shift ;; | ||
--decorative-frame-path) options="$options --use-decorative-frame $2 $(decorative_options $2)"; shift ;; | ||
-retroarch) retroarch=1 ;; | ||
--retroarch) retroarch=1 ;; | ||
--core) core=$2; shift ;; | ||
-core) core=$2; shift ;; | ||
*.sfrom) | ||
if [ -f "$1.gz" ]; then | ||
options="$options /tmp/ROM.sfrom" | ||
gunzip -c "$1.gz" > /tmp/ROM.sfrom | ||
filename=/tmp/ROM.sfrom | ||
else | ||
options="$options $1" | ||
filename=$1 | ||
fi | ||
;; | ||
*) options="$options $1" ;; | ||
esac | ||
shift | ||
done | ||
|
||
case "$video_mode" in | ||
keep-aspect-ratio) options="$options $mode2" ;; | ||
pixel-perfect) options="$options $mode3" ;; | ||
crt-filter) options="$options $mode1" ;; | ||
esac | ||
|
||
read BUILD_TYPE < /etc/clover/buildtype | ||
case "$BUILD_TYPE" in | ||
devel) log="-log $title_code.log -log-append --debug-menu-settings /var/lib/clover/canoe/debug-menu.json --decorative-frames-path /usr/share/backgrounds" ;; | ||
test) log="-log $title_code.log" ;; | ||
*) ;; | ||
esac | ||
|
||
# Hold up to forcely disable RetroArch | ||
[ -e "$clovercon_file" ] && [ "$(cat $clovercon_file)" == "1000" ] && retroarch=0 | ||
# Hold down to forcely enable RetroArch | ||
[ -e "$clovercon_file" ] && [ "$(cat $clovercon_file)" == "2000" ] && retroarch=1 | ||
|
||
if [ "$retroarch" == "0" ]; then | ||
exec canoe-shvc $options $log | ||
else | ||
[ -z "$core" ] && exec snes $filename $args | ||
[ -z "$core" ] || exec retroarch-clover $core $filename $args | ||
fi |