mirror of
https://github.com/Abdess/retroarch_system.git
synced 2026-04-13 12:22:33 -05:00
240 file-level entries used notes: instead of the canonical note: field. verify.py and cross_reference.py only read note:, so these were silently ignored.
92 lines
3.7 KiB
YAML
92 lines
3.7 KiB
YAML
emulator: Geargrafx
|
|
type: libretro
|
|
core_classification: official_port
|
|
source: "https://github.com/drhelius/Geargrafx"
|
|
upstream: "https://github.com/drhelius/Geargrafx"
|
|
profiled_date: "2026-03-23"
|
|
core_version: "1.6.0"
|
|
display_name: "NEC - PC Engine / SuperGrafx / CD (Geargrafx)"
|
|
cores:
|
|
- geargrafx
|
|
systems:
|
|
- nec-pc-engine
|
|
- nec-supergrafx
|
|
- nec-pc-engine-cd
|
|
|
|
notes: |
|
|
Geargrafx is a PC Engine / TurboGrafx-16 / SuperGrafx / CD-ROM emulator by
|
|
Ignacio Sanchez (drhelius). HuCard games run without BIOS.
|
|
|
|
CD-ROM games require a System Card BIOS from the system directory. The core
|
|
option "geargrafx_cdrom_bios" selects which card: Auto (default, maps to
|
|
syscard3.pce), System Card 1, System Card 2, System Card 3, or Game Express.
|
|
load_bios() in libretro.cpp builds "{system_directory}/{filename}" and calls
|
|
core->LoadBios(path, true) for the syscard, then always attempts to load
|
|
gexpress.pce via core->LoadBios(path, false).
|
|
|
|
LoadBios() in media.cpp reads the file, strips a 512-byte header if present,
|
|
computes CRC32, and checks it against k_game_database entries flagged with
|
|
GG_GAMEDB_BIOS_SYSCARD or GG_GAMEDB_BIOS_GAME_EXPRESS. If the CRC32 is not
|
|
found, the BIOS is marked as "Unknown" and invalid, but loading still proceeds.
|
|
Size is checked against expected constants and logged if wrong, but not enforced.
|
|
|
|
Game Express CD-ROM games are auto-detected via CRC32 lookup in game_db.h
|
|
(GG_GAMEDB_GAME_EXPRESS flag). Arcade Card games are also detected from
|
|
game_db.h and enable extra 0x30000 bytes of Card RAM for Super CD-ROM mode.
|
|
|
|
files:
|
|
- name: "syscard3.pce"
|
|
description: "Super CD-ROM System Card 3.0"
|
|
size: 262144
|
|
required: true
|
|
validation: [size, crc32]
|
|
source_ref: "libretro.cpp:453,471-473, media.cpp:241-307, defines.h:52, game_db.h:50,52"
|
|
note: >
|
|
Default BIOS for CD-ROM games (cdrom_bios Auto or System Card 3).
|
|
game_db.h recognizes Japan (CRC32 6D9A73EF) and USA (CRC32 2B5B75FE)
|
|
variants under the same filename.
|
|
|
|
- name: "syscard2.pce"
|
|
description: "CD-ROM System Card 2.0"
|
|
size: 262144
|
|
required: false
|
|
validation: [size, crc32]
|
|
source_ref: "libretro.cpp:452,462-463, media.cpp:241-307, game_db.h:48-49,51"
|
|
note: >
|
|
cdrom_bios = 'System Card 2'. For older CD-ROM2 titles. game_db.h
|
|
recognizes three variants: v2.0 Japan (CRC32 52520BC6), v2.1 Japan
|
|
(CRC32 283B74E0), and USA (CRC32 FF2A5EC3).
|
|
|
|
- name: "syscard1.pce"
|
|
description: "CD-ROM System Card 1.0 (Japan)"
|
|
size: 262144
|
|
required: false
|
|
validation: [size, crc32]
|
|
source_ref: "libretro.cpp:451,459-460, media.cpp:241-307, game_db.h:47"
|
|
note: >
|
|
cdrom_bios = 'System Card 1'. Very early CD-ROM2 games only.
|
|
CRC32 3F9F95A4.
|
|
|
|
- name: "gexpress.pce"
|
|
description: "Game Express CD Card"
|
|
size: 32768
|
|
required: false
|
|
validation: [size, crc32]
|
|
source_ref: "libretro.cpp:454,468-469,481-482, media.cpp:241-307, defines.h:53, game_db.h:53-54"
|
|
note: >
|
|
Always loaded alongside the selected System Card BIOS (libretro.cpp:481).
|
|
Required for Game Express CD-ROM titles. game_db.h recognizes Blue Version
|
|
(CRC32 51A12D90) and Green Version (CRC32 16AAF05A).
|
|
|
|
valid_bios_crc32:
|
|
syscard:
|
|
- { crc32: "3F9F95A4", name: "CD-ROM System Card 1.0 (J)" }
|
|
- { crc32: "52520BC6", name: "CD-ROM System Card 2.0 (J)" }
|
|
- { crc32: "283B74E0", name: "CD-ROM System Card 2.1 (J)" }
|
|
- { crc32: "6D9A73EF", name: "Super CD-ROM System 3.0 (J)" }
|
|
- { crc32: "FF2A5EC3", name: "TurboGrafx CD System Card 2.0 (USA)" }
|
|
- { crc32: "2B5B75FE", name: "TurboGrafx CD Super System 3.0 (USA)" }
|
|
game_express:
|
|
- { crc32: "51A12D90", name: "Game Express Card Blue Version (J)" }
|
|
- { crc32: "16AAF05A", name: "Game Express Card Green Version (J)" }
|