mirror of
https://github.com/Abdess/retroarch_system.git
synced 2026-04-13 04:12:33 -05:00
batch re-profiled nekop2 through pokemini. mupen64plus renamed to mupen64plus_next. new profiles: nes, mupen64plus_next. validation functions (_build_validation_index, check_file_validation) consolidated in common.py — single source of truth for verify.py and generate_pack.py. pipeline 100% consistent on all 6 platforms.
200 lines
6.9 KiB
YAML
200 lines
6.9 KiB
YAML
emulator: PicoDrive
|
|
type: libretro
|
|
core_classification: official_port
|
|
source: "https://github.com/libretro/picodrive"
|
|
upstream: "https://github.com/irixxxx/picodrive"
|
|
profiled_date: "2026-03-24"
|
|
core_version: "1.99"
|
|
display_name: "Sega - MS/GG/MD/CD/32X (PicoDrive)"
|
|
cores: [picodrive]
|
|
systems:
|
|
- sega-megadrive
|
|
- sega-genesis
|
|
- sega-megacd
|
|
- sega-segacd
|
|
- sega-32x
|
|
- sega-mastersystem
|
|
- sega-gamegear
|
|
- sega-sg1000
|
|
- sega-sc3000
|
|
- sega-pico
|
|
|
|
notes: |
|
|
PicoDrive is a fast Mega Drive / Genesis emulator with Mega CD, 32X, Master
|
|
System, Game Gear, SG-1000, SC-3000 and Sega Pico support. The libretro port
|
|
is part of the PicoDrive source tree (platform/libretro/).
|
|
|
|
Mega CD / Sega CD games require a region-matching BIOS file. The core searches
|
|
the system directory for each name in order, trying .bin then .zip extension,
|
|
and uses the first file found. If no BIOS is found, CD games fail to load with
|
|
PM_BAD_CD_NO_BIOS. MSU-MD games can run without BIOS.
|
|
|
|
BIOS filename search order (platform/libretro/libretro.c:1264-1328):
|
|
US: us_scd2_9306, SegaCDBIOS9303, us_scd1_9210, bios_CD_U
|
|
EU: eu_mcd2_9306, eu_mcd2_9303, eu_mcd1_9210, bios_CD_E
|
|
JP: jp_mcd2_921222, jp_mcd1_9112, jp_mcd1_9111, bios_CD_J
|
|
|
|
32X BIOS files (m68k, master SH2, slave SH2) are fully optional. The engine
|
|
has built-in HLE that generates replacement code at startup when the BIOS
|
|
pointers are NULL (pico/32x/memory.c:2199 get_bios(), pico/32x/32x.c:172).
|
|
No current frontend (libretro or standalone) loads these files; the standalone
|
|
loading code is disabled (#if 0 in platform/common/emu.c:1529).
|
|
|
|
carthw.cfg is a cartridge hardware database loaded from the system directory.
|
|
A built-in version is compiled into the core (pico/carthw_cfg.c). The external
|
|
file supplements or overrides game-specific hardware detection (SVP, EEPROM
|
|
types, special mappers, copy protection).
|
|
|
|
Master System, Game Gear, SG-1000, SC-3000: no BIOS file loaded. The core
|
|
initializes VDP registers and RAM to simulate post-BIOS state
|
|
(pico/sms.c:1080-1097).
|
|
|
|
files:
|
|
# -------------------------------------------------------
|
|
# Cartridge hardware database
|
|
# -------------------------------------------------------
|
|
- name: "carthw.cfg"
|
|
required: false
|
|
note: "Cartridge hardware database for special mapper and EEPROM detection. Built-in fallback compiled into the core."
|
|
source_ref: "platform/libretro/libretro.c:1619, pico/cart.c:1020-1022"
|
|
|
|
# -------------------------------------------------------
|
|
# Mega CD / Sega CD - US region
|
|
# -------------------------------------------------------
|
|
- name: "us_scd2_9306.bin"
|
|
system: sega-segacd
|
|
required: true
|
|
size: 131072 # 128 KB (0x20000)
|
|
note: "US Sega CD Model 2 BIOS (September 1993). First in US search order."
|
|
source_ref: "platform/libretro/libretro.c:1265"
|
|
|
|
- name: "SegaCDBIOS9303.bin"
|
|
system: sega-segacd
|
|
required: false
|
|
size: 131072
|
|
note: "US Sega CD BIOS (March 1993). Second in US search order."
|
|
source_ref: "platform/libretro/libretro.c:1265"
|
|
|
|
- name: "us_scd1_9210.bin"
|
|
system: sega-segacd
|
|
required: false
|
|
size: 131072
|
|
note: "US Sega CD Model 1 BIOS (October 1992). Third in US search order."
|
|
source_ref: "platform/libretro/libretro.c:1265"
|
|
|
|
- name: "bios_CD_U.bin"
|
|
system: sega-segacd
|
|
required: false
|
|
size: 131072
|
|
note: "US Sega CD BIOS (generic name). Last in US search order."
|
|
source_ref: "platform/libretro/libretro.c:1265"
|
|
|
|
# -------------------------------------------------------
|
|
# Mega CD / Sega CD - EU region
|
|
# -------------------------------------------------------
|
|
- name: "eu_mcd2_9306.bin"
|
|
system: sega-megacd
|
|
required: true
|
|
size: 131072
|
|
note: "EU Mega CD Model 2 BIOS (June 1993). First in EU search order."
|
|
source_ref: "platform/libretro/libretro.c:1268"
|
|
|
|
- name: "eu_mcd2_9303.bin"
|
|
system: sega-megacd
|
|
required: false
|
|
size: 131072
|
|
note: "EU Mega CD Model 2 BIOS (March 1993). Second in EU search order."
|
|
source_ref: "platform/libretro/libretro.c:1268"
|
|
|
|
- name: "eu_mcd1_9210.bin"
|
|
system: sega-megacd
|
|
required: false
|
|
size: 131072
|
|
note: "EU Mega CD Model 1 BIOS (October 1992). Third in EU search order."
|
|
source_ref: "platform/libretro/libretro.c:1268"
|
|
|
|
- name: "bios_CD_E.bin"
|
|
system: sega-megacd
|
|
required: false
|
|
size: 131072
|
|
note: "EU Mega CD BIOS (generic name). Last in EU search order."
|
|
source_ref: "platform/libretro/libretro.c:1268"
|
|
|
|
# -------------------------------------------------------
|
|
# Mega CD / Sega CD - JP region
|
|
# -------------------------------------------------------
|
|
- name: "jp_mcd2_921222.bin"
|
|
system: sega-megacd
|
|
required: true
|
|
size: 131072
|
|
note: "JP Mega CD Model 2 BIOS (December 1992). First in JP search order."
|
|
source_ref: "platform/libretro/libretro.c:1271"
|
|
|
|
- name: "jp_mcd1_9112.bin"
|
|
system: sega-megacd
|
|
required: false
|
|
size: 131072
|
|
note: "JP Mega CD Model 1 BIOS (December 1991). Second in JP search order."
|
|
source_ref: "platform/libretro/libretro.c:1271"
|
|
|
|
- name: "jp_mcd1_9111.bin"
|
|
system: sega-megacd
|
|
required: false
|
|
size: 131072
|
|
note: "JP Mega CD Model 1 BIOS (November 1991). Third in JP search order."
|
|
source_ref: "platform/libretro/libretro.c:1271"
|
|
|
|
- name: "bios_CD_J.bin"
|
|
system: sega-megacd
|
|
required: false
|
|
size: 131072
|
|
note: "JP Mega CD BIOS (generic name). Last in JP search order."
|
|
source_ref: "platform/libretro/libretro.c:1271"
|
|
|
|
# -------------------------------------------------------
|
|
# Sega 32X - HLE available, no frontend loads these
|
|
# -------------------------------------------------------
|
|
- name: "32X_G_BIOS.BIN"
|
|
system: sega-32x
|
|
required: false
|
|
hle_fallback: true
|
|
size: 256 # 0x100
|
|
note: "32X 68K (Genesis-side) BIOS. HLE replacement generated when NULL."
|
|
source_ref: "pico/32x/memory.c:2206-2243"
|
|
|
|
- name: "32X_M_BIOS.BIN"
|
|
system: sega-32x
|
|
required: false
|
|
hle_fallback: true
|
|
size: 2048 # 0x800
|
|
note: "32X Master SH2 BIOS. HLE replacement generated when NULL."
|
|
source_ref: "pico/32x/memory.c:2249-2276"
|
|
|
|
- name: "32X_S_BIOS.BIN"
|
|
system: sega-32x
|
|
required: false
|
|
hle_fallback: true
|
|
size: 1024 # 0x400
|
|
note: "32X Slave SH2 BIOS. HLE replacement generated when NULL."
|
|
source_ref: "pico/32x/memory.c:2279-2297"
|
|
|
|
platform_details:
|
|
megacd:
|
|
bios_size: 131072 # 128 KB
|
|
hle_available: false
|
|
region_specific: true
|
|
extensions_tried: [".bin", ".zip"]
|
|
source_ref: "pico/pico_int.h:559, platform/libretro/libretro.c:1309-1317"
|
|
|
|
32x:
|
|
m68k_bios_size: 256 # 0x100
|
|
master_sh2_bios_size: 2048 # 0x800
|
|
slave_sh2_bios_size: 1024 # 0x400
|
|
hle_available: true
|
|
source_ref: "pico/pico.h:54-55, pico/pico_int.h:679-693"
|
|
|
|
sms:
|
|
hle_available: true
|
|
note: "No BIOS file loaded. VDP/RAM initialized to post-BIOS state."
|
|
source_ref: "pico/sms.c:1080-1097"
|