Batocera 新增 Libretro Geolith core

Geolith core 是一個高度準確的模擬 Neo Geo AES(家用機)和 MVS(街機)系統模擬器核心程式 。Geolith 核心使用單一檔案的 .neo 的檔案格式。除了 Neo Geo 的遊戲外也有少部份 homebrew 的遊戲或大型電玩移植的遊戲,如 Shinobi – NeoGeo Port 。但至 Batocera 最新的 4.2 版仍未直接支援 Geolith core 。本篇文章就是要教各位如何手動增加 Geolith core 至 Batocera 的系統裡 。

首先先下載我自行編譯的 Geolith core (x64 Linux) 並把它解壓縮。你會看到 geolith_libretro.so 跟 geolith_libretro.info 這兩個檔案。另外你也得自行尋找一下 BIOS 檔

FilenameDescriptionmd5sum
aes.zip

Neo Geo AES BIOS – Requiredad9585c72130c56f04ae26aae87c289d
neogeo.zip

Neo Geo MVS BIOS – Required00dad01abdbf8ea9e79ad2fe11bdb182
Shinobi NeoGeo Port

把找到的 BIOS 檔放進 batocera bios 的目錄裡。geolith_libretro.so 放進 /usr/lib/libretro/ 裡 geolith_libretro.info 放進 /usr/share/libretro/info/ 之後執行 batocera-save-overlay 。save-overlay 的方式較為簡單但會在下次你 Batocera 升級時消失。另外一種是寫成 service 的方式。

mkdir -p /userdata/libretrocores
之後把下方程式存成 libretrocores 並給予執行權限 放進 /userdata/system/services/ 就可以在 ES 的選單中看見。設定自動執行後以後就不怕 Batocera 更新後 geolith_libretro 消失

#!/bin/bash
start() {

    # Permisos
    chmod -R 777 /userdata/libretrocores/
	
	# Geolith Neogeo
    ln -sf /userdata/libretrocores/geolith_libretro.so /usr/lib/libretro/geolith_libretro.so
    ln -sf /userdata/libretrocores/geolith_libretro.info /usr/share/libretro/info/geolith_libretro.info
		
}

stop() {
    echo "nothing"
}

case $1 in
    start)
      start &
    ;;

    stop)
      stop &
    ;;

    *)
      echo "Usage: $0 {start|stop}"

exit 1

esac

最後修改在 es_system.cfg 增加 <core>geolith</core> 如下

  <system>
        <fullname>Neo-Geo</fullname>
        <name>neogeo</name>
        <manufacturer>SNK</manufacturer>
        <release>1990</release>
        <hardware>console</hardware>
        <path>/userdata/roms/neogeo</path>
        <extension>.7z .zip .neo</extension>
        <command>emulatorlauncher %CONTROLLERSCONFIG% -system %SYSTEM% -rom %ROM% -gameinfoxml %GAMEINFOXML% -systemname %SYSTEMNAME%</command>
        <platform>neogeo, arcade</platform>
        <theme>neogeo</theme>
        <emulators>
            <emulator name="libretro">
                <cores>
                    <core default="true">fbneo</core>
                    <core>mame</core>
                    <core>mame0139</core>
                    <core>mame078plus</core>
					<core>geolith</core>					
                </cores>
            </emulator>
            <emulator name="mame">
                <cores>
                    <core>mame</core>
                </cores>
            </emulator>
        </emulators>
  </system>

也許你需要再多加一個步驟。

1. 複製:”es_systems.cfg” 從:/usr/share/emulationstation 到:/userdata/system/configs/emulationstation 這樣就能隨時更改。修改完成記得重啟電腦。

blog.ocam.live
blog.ocam.live

關注科技新聞、SEO、人工智慧、電玩模擬器、程式設言、與 IT 日常等議題,深入簡出文章的說明並持續追蹤相關新聞的發展與報導。