From 18b0c556bf43e4f5c1b5044f532f8b77d7f52124 Mon Sep 17 00:00:00 2001 From: Abdessamad Derraz <3028866+Abdess@users.noreply.github.com> Date: Thu, 22 Oct 2026 07:13:34 +0200 Subject: [PATCH] feat: collect the dinothawr game manifest dinothawr.game is the content file or, without content, system_dir/dinothawr/dinothawr.game. The copy is the one at the pinned revision, which references bg.apng; the 2013 buildbot archive carries an older manifest. --- .../Dinothawr/dinothawr/dinothawr.game | 97 +++++++++++++++++++ emulators/dinothawr.yml | 19 ++-- 2 files changed, 107 insertions(+), 9 deletions(-) create mode 100644 bios/Dinothawr/Dinothawr/dinothawr/dinothawr.game diff --git a/bios/Dinothawr/Dinothawr/dinothawr/dinothawr.game b/bios/Dinothawr/Dinothawr/dinothawr/dinothawr.game new file mode 100644 index 00000000..82dccf75 --- /dev/null +++ b/bios/Dinothawr/Dinothawr/dinothawr/dinothawr.game @@ -0,0 +1,97 @@ + + + + <menu_bg source="assets/bg.apng" frame="2"/> + <game_bg source="assets/bg.apng" frame="0"/> + <end_bg source="assets/bg.apng" frame="1"/> + <font source="dino.font"/> + <level_complete source="assets/finished.png"/> + <lock_sprite source="assets/lock.png"/> + <sfx> + <sound source="assets/sfx/level_next.wav" name="level_next"/> + <sound source="assets/sfx/chapter_locked.wav" name="chapter_locked"/> + <sound source="assets/sfx/ice_bump.wav" name="ice_bump"/> + <sound source="assets/sfx/frozen_dino_melt.wav" name="frozen_dino_melt"/> + <sound source="assets/sfx/dino_jump.wav" name="dino_jump"/> + <sound source="assets/sfx/dino_push.wav" name="dino_push"/> + </sfx> + <music> + <bg source="assets/bg/theme.ogg" volume="0.25"/> + <bg source="assets/bg/bg1.ogg"/> + <bg source="assets/bg/bg2.ogg"/> + <bg source="assets/bg/bg3.ogg"/> + <bg source="assets/bg/bg4.ogg" volume="0.75"/> + <bg source="assets/bg/bg5.ogg" volume="0.65"/> + <bg source="assets/bg/bg8.ogg" volume="0.70"/> + </music> + <chapter name="Chapter 1" minimum_clear="5"> + <map source="level_1-1.tmx"/> + <map source="level_1-2.tmx"/> + <map source="level_1-3.tmx"/> + <map source="level_1-4.tmx"/> + <map source="level_1-5.tmx"/> + </chapter> + <chapter name="Chapter 2"> + <map source="level_2-1.tmx"/> + <map source="level_2-2.tmx"/> + <map source="level_2-3.tmx"/> + <map source="level_2-4.tmx"/> + <map source="level_2-5.tmx"/> + </chapter> + <chapter name="Chapter 3"> + <map source="level_3-1.tmx"/> + <map source="level_3-2.tmx"/> + <map source="level_3-3.tmx"/> + <map source="level_3-4.tmx"/> + <map source="level_3-5.tmx"/> + </chapter> + <chapter name="Chapter 4"> + <map source="level_4-1.tmx"/> + <map source="level_4-2.tmx"/> + <map source="level_4-3.tmx"/> + <map source="level_4-4.tmx"/> + <map source="level_4-5.tmx"/> + </chapter> + <chapter name="Chapter 5"> + <map source="level_5-1.tmx"/> + <map source="level_5-2.tmx"/> + <map source="level_5-3.tmx"/> + <map source="level_5-4.tmx"/> + <map source="level_5-5.tmx"/> + </chapter> + <chapter name="Chapter 6"> + <map source="level_6-1.tmx"/> + <map source="level_6-2.tmx"/> + <map source="level_6-3.tmx"/> + <map source="level_6-4.tmx"/> + <map source="level_6-5.tmx"/> + </chapter> + <chapter name="Chapter 7"> + <map source="level_7-1.tmx"/> + <map source="level_7-2.tmx"/> + <map source="level_7-3.tmx"/> + <map source="level_7-4.tmx"/> + <map source="level_7-5.tmx"/> + </chapter> + <chapter name="Chapter 8"> + <map source="level_8-1.tmx"/> + <map source="level_8-2.tmx"/> + <map source="level_8-3.tmx"/> + <map source="level_8-4.tmx"/> + <map source="level_8-5.tmx"/> + </chapter> + <chapter name="Chapter 9"> + <map source="level_9-1.tmx"/> + <map source="level_9-2.tmx"/> + <map source="level_9-3.tmx"/> + <map source="level_9-4.tmx"/> + <map source="level_9-5.tmx"/> + </chapter> + <chapter name="Chapter 10"> + <map source="level_10-1.tmx"/> + <map source="level_10-2.tmx"/> + <map source="level_10-3.tmx"/> + <map source="level_10-4.tmx"/> + <map source="level_10-5.tmx"/> + </chapter> +</game> diff --git a/emulators/dinothawr.yml b/emulators/dinothawr.yml index ba6dc13c..46ae02f6 100644 --- a/emulators/dinothawr.yml +++ b/emulators/dinothawr.yml @@ -14,13 +14,6 @@ notes: | Puzzle game by the libretro team (Themaister, Agnes Heyer). Push blocks on ice. Game data (TMX levels, sprites, music) needed for the core to work. - Two loading modes: - 1. Load dinothawr.game as content (data in content directory) - 2. supports_no_game=true: loads from system_dir/dinothawr/ - ref: libretro.c:476-479 - game_path_dir = join(system_dir, "/", "dinothawr") - game_path = join(game_path_dir, "/", "dinothawr.game") - Buildbot provides Dinothawr.zip via Core System Files Downloader. ref: buildbot.libretro.com/assets/system/Dinothawr.zip @@ -29,5 +22,13 @@ data_directories: installed_on: [lakka, recalbox, retrobat, retrodeck, retropie] source_ref: "libretro.c:479" -files: [] -# no BIOS/firmware, game data loaded via data_directories or content +files: + - name: "dinothawr.game" + path: "dinothawr/dinothawr.game" + installed_on: [lakka, recalbox, retrobat, retrodeck, retropie] + category: game_data + system: dinothawr + required: true + description: "Game manifest naming the levels, sprites and music the engine loads" + note: "Loaded as content (valid_extensions game) or, started without content, from system_dir/dinothawr/. Without it the core reports the game files missing and refuses to start." + source_ref: "libretro.c:116-117, 465-468, 479-488, 491-520"