Files
Sprinter-SDCC/applications/Volkov/tests/run_mame_hdd.sh
T
snark13 8e389c03f8 Volkov: добавить Sprinter Commander
Реализовать двухпанельный Commander от платформенного PoC до этапов P6-P20: EMM-каталог, сортировку и выбор, операции с файлами и деревьями, транзакционное копирование, метаданные, политику конфликтов и предварительную проверку свободного места.

Добавить проектную документацию, HDD/MAME-сценарии и проверенные артефакты. Расширить libc операцией bank_write_page, исправлением режима O_RDONLY и связанными регрессионными проверками.
2026-09-10 10:45:30 +03:00

33 lines
1.2 KiB
Bash
Executable File

#!/bin/sh
# Запускает MAME с локальным тестовым CHD как hard2 (D:) и заданным Lua.
# Скрипт не пересобирает образ и не чистит каталог кадров.
set -eu
if [ "$#" -lt 3 ] || [ "$#" -gt 4 ]; then
echo "usage: $0 IMAGE.chd SCENARIO.lua SNAPSHOT_DIR [TIMEOUT]" >&2
exit 1
fi
PROJECT_DIR=$(CDPATH= cd -- "$(dirname -- "$0")/.." && pwd)
MAME_DIR="$PROJECT_DIR/../../mame/v306"
IMAGE=$(CDPATH= cd -- "$(dirname -- "$1")" && pwd)/$(basename -- "$1")
LUA=$(CDPATH= cd -- "$(dirname -- "$2")" && pwd)/$(basename -- "$2")
SNAPSHOT_DIR=$(mkdir -p "$3" && CDPATH= cd -- "$3" && pwd)
TIMEOUT=${4:-75}
if pgrep -fl 'mame[^ ]* sprinter( |$)' | grep . >/dev/null 2>&1; then
echo "run_mame_hdd.sh: уже запущен MAME sprinter" >&2
exit 1
fi
cd "$MAME_DIR"
exec timeout "$TIMEOUT" ./mame.arm sprinter \
-skip_gameinfo -video opengl -window -nofilter \
-beta:wd179x:0 35hd -beta:wd179x:1 35hd \
-flop1 ./IMG/mc.img -flop2 ./IMG/dss171u.img \
-isa0 zxbus_adapter -isa0:zxbus_adapter:card neogs \
-hard1 ./IMG/sp_hdd_sys.chd -hard2 "$IMAGE" \
-ata2:0 cdrom -cdrom ./IMG/SprinterCD.iso -bios v3.06 \
-snapshot_directory "$SNAPSHOT_DIR" -autoboot_script "$LUA"