mirror of
https://github.com/Abdess/retroarch_system.git
synced 2026-04-19 15:22:35 -05:00
fix: round 2 audit fixes, updated emulator profiles
Scripts: - fix generate_site nav regex destroying mkdocs.yml content - fix auto_fetch comma-separated MD5 in find_missing - fix verify print_platform_result conflating untested/missing - fix validate_pr path traversal and symlink check - fix batocera_scraper brace counting and escaped quotes in strings - fix emudeck_scraper hash search crossing function boundaries - fix pipeline.py cwd to repo root via Path(__file__) - normalize SHA1 comparison to lowercase in generate_pack Emulator profiles: - emux_gb/nes/sms: reclassify from alias to standalone profiles - ep128emu: remove .info-only files not referenced in source - fbalpha2012 variants: full source-verified profiles - fbneo_cps12: add new profile
This commit is contained in:
+53
-6
@@ -1,8 +1,55 @@
|
||||
emulator: "emux_sms"
|
||||
type: alias
|
||||
alias_of: "gearsystem"
|
||||
profiled_date: "2026-03-18"
|
||||
emulator: "emux (SMS)"
|
||||
type: libretro
|
||||
source: "https://github.com/libretro/emux"
|
||||
profiled_date: "2026-03-19"
|
||||
core_version: "0.1"
|
||||
display_name: "Sega - Master System (Emux SMS)"
|
||||
note: "This core uses the same BIOS/firmware as gearsystem. See emulators/gearsystem.yml for details."
|
||||
files: []
|
||||
cores:
|
||||
- emux_sms
|
||||
systems:
|
||||
- sms
|
||||
|
||||
notes: |
|
||||
emux is a multi-system emulator by Sebastien Ronsse, supporting CHIP-8,
|
||||
Game Boy, NES, and Sega Master System as separate libretro cores.
|
||||
|
||||
NOT an alias of GearSystem. Completely different codebase.
|
||||
|
||||
BIOS loading in controllers/mapper/sms_mapper.c:
|
||||
static char *bios_path = "bios.sms"; (line 33)
|
||||
#define BIOS_SIZE 0x2000 (line 7, 8192 bytes)
|
||||
sms_mapper->bios = file_map(PATH_SYSTEM, bios_path, 0, BIOS_SIZE);
|
||||
If file_map returns NULL, init returns false — core cannot start.
|
||||
No HLE fallback, no skip logic.
|
||||
|
||||
BIOS enable/disable via slot control register port write (lines 74-90):
|
||||
bios_disable bit in control union. Reset clears bios_disable and
|
||||
adds BIOS region to memory map. Writing bios_disable=1 removes
|
||||
the BIOS overlay, exposing cartridge ROM underneath.
|
||||
|
||||
Cartridge loading delegated to sega_mapper controller:
|
||||
ROM mapped via file_map(PATH_DATA, ...), 16 KB banks (BANK_SIZE=0x4000),
|
||||
3 bank slots (NUM_BANKS=3), bank select registers at 0xFFFD-0xFFFF.
|
||||
|
||||
Memory map from mach/sms.c:
|
||||
0x0000-0xBFFF Mapper (BIOS overlay + cartridge ROM banks)
|
||||
0xC000-0xDFFF RAM (8 KB)
|
||||
0xE000-0xFFFF RAM mirror
|
||||
|
||||
The .info declares firmware_count=1, firmware0_opt=false.
|
||||
is_experimental=true. No save states, rewind, or netplay support.
|
||||
Supported extensions: sms, bms, bin, rom.
|
||||
|
||||
system_directory obtained via RETRO_ENVIRONMENT_GET_SYSTEM_DIRECTORY
|
||||
(libretro/libretro.c:23-25), passed as "system-dir" config param.
|
||||
BIOS loaded from this directory via PATH_SYSTEM.
|
||||
|
||||
files:
|
||||
- name: "bios.sms"
|
||||
system: sms
|
||||
description: "Sega Master System BIOS"
|
||||
required: true
|
||||
size: 8192
|
||||
md5: "840481177270d5642a14ca71ee72844c"
|
||||
source_ref: "controllers/mapper/sms_mapper.c:7 (BIOS_SIZE=0x2000), :33 (bios_path), :167-172 (file_map)"
|
||||
note: "Mapped at 0x0000, overlays cartridge ROM until bios_disable bit set in slot control register. No HLE — core fails to init without this file."
|
||||
|
||||
Reference in New Issue
Block a user