Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/ClusterM/hakchi2.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexey 'Cluster' Avdyukhin <clusterrr@clusterrr.com>2017-02-17 18:23:28 +0300
committerAlexey 'Cluster' Avdyukhin <clusterrr@clusterrr.com>2017-02-17 18:23:28 +0300
commitff99016bf28edcbac563a64ebba8da3e3b4794de (patch)
tree05f91edd200dbf09eb5caca5a3844c00098d8a7e /user_mods
parentb6335e3646843b937e249ef9ee98cafee8585cea (diff)
Added missed files
Diffstat (limited to 'user_mods')
-rw-r--r--user_mods/retroarch.hmod/bin/fbgrabbin0 -> 27221 bytes
-rw-r--r--user_mods/retroarch.hmod/bin/gb2
-rw-r--r--user_mods/retroarch.hmod/bin/gba2
-rw-r--r--user_mods/retroarch.hmod/bin/md2
-rw-r--r--user_mods/retroarch.hmod/bin/n642
-rw-r--r--user_mods/retroarch.hmod/bin/nes10
-rw-r--r--user_mods/retroarch.hmod/bin/retroarchbin0 -> 1244080 bytes
-rw-r--r--user_mods/retroarch.hmod/bin/retroarch-clover8
-rw-r--r--user_mods/retroarch.hmod/bin/retroarch-mini5
-rw-r--r--user_mods/retroarch.hmod/bin/retroarch-watchdog83
-rw-r--r--user_mods/retroarch.hmod/bin/sms2
-rw-r--r--user_mods/retroarch.hmod/bin/snes2
-rw-r--r--user_mods/retroarch.hmod/usr/bin/clover-kachikachi53
13 files changed, 171 insertions, 0 deletions
diff --git a/user_mods/retroarch.hmod/bin/fbgrab b/user_mods/retroarch.hmod/bin/fbgrab
new file mode 100644
index 00000000..8cd18833
--- /dev/null
+++ b/user_mods/retroarch.hmod/bin/fbgrab
Binary files differ
diff --git a/user_mods/retroarch.hmod/bin/gb b/user_mods/retroarch.hmod/bin/gb
new file mode 100644
index 00000000..bb974115
--- /dev/null
+++ b/user_mods/retroarch.hmod/bin/gb
@@ -0,0 +1,2 @@
+#!/bin/sh
+exec retroarch-clover gambatte "$@"
diff --git a/user_mods/retroarch.hmod/bin/gba b/user_mods/retroarch.hmod/bin/gba
new file mode 100644
index 00000000..3ef42e0d
--- /dev/null
+++ b/user_mods/retroarch.hmod/bin/gba
@@ -0,0 +1,2 @@
+#!/bin/sh
+exec retroarch-clover mednafen_gba "$@"
diff --git a/user_mods/retroarch.hmod/bin/md b/user_mods/retroarch.hmod/bin/md
new file mode 100644
index 00000000..dca6d3be
--- /dev/null
+++ b/user_mods/retroarch.hmod/bin/md
@@ -0,0 +1,2 @@
+#!/bin/sh
+exec retroarch-clover genesis_plus_gx "$@"
diff --git a/user_mods/retroarch.hmod/bin/n64 b/user_mods/retroarch.hmod/bin/n64
new file mode 100644
index 00000000..3ecc32f6
--- /dev/null
+++ b/user_mods/retroarch.hmod/bin/n64
@@ -0,0 +1,2 @@
+#!/bin/sh
+exec retroarch-clover mupen64plus "$@"
diff --git a/user_mods/retroarch.hmod/bin/nes b/user_mods/retroarch.hmod/bin/nes
new file mode 100644
index 00000000..7fb6453a
--- /dev/null
+++ b/user_mods/retroarch.hmod/bin/nes
@@ -0,0 +1,10 @@
+#!/bin/sh
+core=fceumm
+filename="$1"
+extension="${filename##*.}"
+if [ "$extension" == "fds" ]; then
+ core=nestopia
+ cp -f /usr/share/kachikachi/fds_bios.bin /tmp/disksys.rom
+fi
+
+exec retroarch-clover "$core" "$@"
diff --git a/user_mods/retroarch.hmod/bin/retroarch b/user_mods/retroarch.hmod/bin/retroarch
new file mode 100644
index 00000000..93b22eb3
--- /dev/null
+++ b/user_mods/retroarch.hmod/bin/retroarch
Binary files differ
diff --git a/user_mods/retroarch.hmod/bin/retroarch-clover b/user_mods/retroarch.hmod/bin/retroarch-clover
new file mode 100644
index 00000000..7cee66b9
--- /dev/null
+++ b/user_mods/retroarch.hmod/bin/retroarch-clover
@@ -0,0 +1,8 @@
+#!/bin/sh
+core=$1
+shift
+retroarch-watchdog $$ $core ${1+"$@"} &
+while true; do
+# Zzz... I'll sleep untill my death
+sleep 42
+done
diff --git a/user_mods/retroarch.hmod/bin/retroarch-mini b/user_mods/retroarch.hmod/bin/retroarch-mini
new file mode 100644
index 00000000..8d7cdef5
--- /dev/null
+++ b/user_mods/retroarch.hmod/bin/retroarch-mini
@@ -0,0 +1,5 @@
+#!/bin/sh
+export HOME=/etc/libretro
+core=$HOME/core/$1_libretro.so
+shift
+exec retroarch -c "$HOME/retroarch.cfg" -vfL "$core" ${1+"$@"}
diff --git a/user_mods/retroarch.hmod/bin/retroarch-watchdog b/user_mods/retroarch.hmod/bin/retroarch-watchdog
new file mode 100644
index 00000000..75de199f
--- /dev/null
+++ b/user_mods/retroarch.hmod/bin/retroarch-watchdog
@@ -0,0 +1,83 @@
+#!/bin/sh
+HOME=/etc/libretro
+pid=$1
+corename=$2
+core=$HOME/core/$2_libretro.so
+rom=$3
+id=$(echo $(basename "$rom") | cut -f 1 -d '.')
+autosave="/var/cache/$id.state.auto"
+rsram="/var/cache/$id.srm"
+shift 3
+
+scanlines=0
+[ "$corename" == "fceumm" ] && scanlines_allowed=1
+[ "$corename" == "nestopia" ] && scanlines_allowed=1
+[ "$corename" == "emux_sms" ] && scanlines_allowed=1
+
+while [ $# -gt 0 ]; do
+ [ "$1" == "--load-state-file" ] && load="$2"
+ [ "$1" == "--save-on-quit" ] && save="$2"
+ [ "$1" == "--save-screenshot-on-quit" ] && screenshot="$2"
+ [ "$1" == "--save-data-backing-file" ] && sram="$2"
+ [ "$1" == "--graphic-filter" ] && filter="$2"
+ [ "$scanlines_allowed" == "1" ] && [ "$1" == "--enable-crt-scanlines" ] && scanlines=1
+ [ "$1" == "--ra-scanlines" ] && scanlines=1
+ shift
+done
+
+# saves if any
+rm -f /var/cache/*.state /var/cache/*.auto /var/cache/*.srm
+[ ! -z "$load" ] && [ -f "$load" ] && cp -f "$load" "$autosave" && echo cp -f "$load" "$autosave"
+[ ! -z "$sram" ] && [ -f "$sram" ] && cp -f "$sram" "$rsram" && echo cp -f "$sram" "$rsram"
+
+# core provided ratio for CRT mode
+[ "$filter" == "crt720" ] && ratio=21 && smooth=true && [ "$scanlines_allowed" == "1" ] && scanlines=1
+# core provided ratio for 4:3 mode
+[ "$filter" == "gpu720" ] && ratio=21 && smooth=true
+# pixel perfect - 1:1 for pixel perfect mode
+[ "$filter" == "ppu" ] && ratio=20 && smooth=false
+
+# set aspect ratio in config
+[ -z "$ratio" ] || sed -i -e 's/aspect_ratio_index = "[^"]*"/aspect_ratio_index = "'$ratio'"/g' /etc/libretro/retroarch.cfg
+[ -z "$smooth" ] || sed -i -e 's/video_smooth = "[^"]*"/video_smooth = "'$smooth'"/g' /etc/libretro/retroarch.cfg
+
+# enable shader scanlines if need
+if [ "$scanlines" == "1" ]; then
+ sed -i -e 's/video_shader = "[^"]*"/video_shader = "~\/shaders\/retroarch\.glslp"/g' /etc/libretro/retroarch.cfg
+ cp -f /etc/libretro/shaders/scanlines.glslp /etc/libretro/shaders/retroarch.glslp
+else
+ sed -i -e 's/video_shader = "[^"]*"/video_shader = ""/g' /etc/libretro/retroarch.cfg
+fi
+
+retroarch -c "$HOME/retroarch.cfg" -vfL "$core" "$rom" &
+rpid=$!
+sleep 1
+rm -f /var/cache/*.state /var/cache/*.auto /var/cache/*.srm
+
+while true; do
+ if [ "$(ps -o pid | grep -c $pid)" == "0" ]; then
+ kill $rpid
+ break
+ fi
+ if [ "$(ps -o pid | grep -c $rpid)" == "0" ]; then
+ kill $pid
+ break
+ fi
+ usleep 100000
+done
+
+# We can't let clover shell load so fast, so killing it
+pkill -KILL clover-mcp
+pkill -KILL ReedPlayer-Clover
+
+# Saves! It's primary task
+mkdir -p $(dirname "$save")
+mkdir -p $(dirname "$sram")
+mkdir -p $(dirname "$screenshot")
+[ ! -z "$save" ] && [ -f "$autosave" ] && mv -f "$autosave" "$save"
+[ ! -z "$sram" ] && [ -f "$rsram" ] && mv -f "$rsram" "$sram"
+
+[ -z "$screenshot" ] || fbgrab -z 0 "$screenshot"
+
+# Back to shell
+clover-mcp
diff --git a/user_mods/retroarch.hmod/bin/sms b/user_mods/retroarch.hmod/bin/sms
new file mode 100644
index 00000000..dca6d3be
--- /dev/null
+++ b/user_mods/retroarch.hmod/bin/sms
@@ -0,0 +1,2 @@
+#!/bin/sh
+exec retroarch-clover genesis_plus_gx "$@"
diff --git a/user_mods/retroarch.hmod/bin/snes b/user_mods/retroarch.hmod/bin/snes
new file mode 100644
index 00000000..215b4ab8
--- /dev/null
+++ b/user_mods/retroarch.hmod/bin/snes
@@ -0,0 +1,2 @@
+#!/bin/sh
+exec retroarch-clover snes9x2010 "$@"
diff --git a/user_mods/retroarch.hmod/usr/bin/clover-kachikachi b/user_mods/retroarch.hmod/usr/bin/clover-kachikachi
new file mode 100644
index 00000000..c31ae361
--- /dev/null
+++ b/user_mods/retroarch.hmod/usr/bin/clover-kachikachi
@@ -0,0 +1,53 @@
+#!/bin/sh
+
+set -x
+export MALI_NOCLEAR=1
+
+supported_mappers="0 1 2 3 4 5 7 9 10 86 87 184"
+emulator=retroarch
+
+args=$@
+filename=$1
+extension=${filename##*.}
+header=$(hexdump -v -n 8 -e '1/1 "%02X"' "$filename")
+mapper=$((0x${header:14:1}${header:12:1}))
+fourscreen=$(expr $((0x${header:13:1})) / 8)
+
+echo mapper: $mapper
+echo four-screen: $fourscreen
+
+for m in $supported_mappers; do
+ [ "$m" == "$mapper" ] && emulator=kachikachi
+done
+[ "$fourscreen" == "1" ] && emulator=retroarch
+
+# But this information is not corrent if it was FDS file or UNIF file
+[ "$extension" == "fds" ] && emulator=kachikachi
+[ "$extension" == "unf" ] && emulator=retroarch
+[ "$extension" == "unif" ] && emulator=retroarch
+
+while [ $# -gt 0 ]; do
+ [ "$1" == "--retroarch" ] && emulator=retroarch
+ [ "$1" == "--core" ] && core=$2
+ shift
+done
+
+echo using $emulator
+
+if [ "$emulator" == "kachikachi" ]; then
+# Seems like this game will work on default emulator
+exec kachikachi \
+ --fullscreen \
+ --sync-guest-with-host \
+ --fds-initial-disk-insert-on-keypress \
+ --fds-auto-disk-side-switch \
+ --fds-disable-host-guest-sync-on-disk-op \
+ --keep-aspect-ratio \
+ $args
+fi
+
+if [ "$emulator" == "retroarch" ]; then
+# Using RetroArch
+ [ -z "$core" ] && exec nes $filename
+ [ -z "$core" ] || exec retroarch-clover $core $filename
+fi