Files
libretro/emulators/bsnes2014.yml
2026-03-25 12:23:32 +01:00

130 lines
3.7 KiB
YAML

emulator: bsnes 2014
type: libretro
core_classification: frozen_snapshot
source: "https://github.com/libretro/bsnes2014"
upstream: "https://github.com/bsnes-emu/bsnes"
profiled_date: "2026-03-25"
core_version: "v094"
display_name: "Nintendo - SNES / SFC (bsnes 2014)"
cores: [bsnes2014_accuracy, bsnes2014_balanced, bsnes2014_performance]
systems:
- nintendo-snes
- nintendo-sgb
- nintendo-satellaview
- nintendo-sufami-turbo
notes: |
Frozen at bsnes v094. Three build profiles: accuracy (dot-based PPU),
balanced, performance (scanline PPU). All 3 share the same 16 firmware
files. Profiles only differ in PPU (sfc/profile-*.hpp), not coprocessors.
SPC700 IPL ROM (64 bytes) embedded in target-libretro/libretro.cpp:31.
No HLE fallback for any coprocessor in v094.
Firmware loaded from system_dir via file::exists() + mmapstream.
No hash or size validation on any firmware file.
Libretro build uses heuristics only (ananke/heuristics/), not the SHA256
database (ananke/database/). All DSP1 games use DSP1B filenames via
heuristic fallback. The database dsp1.program.rom / dsp1.data.rom names
are only in the standalone build (target-ethos via ananke).
.info accuracy/balanced: firmware_count=18 (overcounts by 2, includes
phantom dsp1.* from unused database). Performance .info: firmware_count=17
(also missing cx4.data.rom).
Upstream v094 source is contained within the libretro repo (sfc/, ananke/).
bsnes-emu/bsnes is the modern rewrite (v115+).
files:
- name: dsp1b.program.rom
system: nintendo-snes
required: false
size: 6144
source_ref: "ananke/heuristics/super-famicom.hpp:381"
- name: dsp1b.data.rom
system: nintendo-snes
required: false
size: 2048
source_ref: "ananke/heuristics/super-famicom.hpp:382"
- name: dsp2.program.rom
system: nintendo-snes
required: false
size: 6144
source_ref: "ananke/heuristics/super-famicom.hpp:403"
- name: dsp2.data.rom
system: nintendo-snes
required: false
size: 2048
source_ref: "ananke/heuristics/super-famicom.hpp:404"
- name: dsp3.program.rom
system: nintendo-snes
required: false
size: 6144
source_ref: "ananke/heuristics/super-famicom.hpp:417"
- name: dsp3.data.rom
system: nintendo-snes
required: false
size: 2048
source_ref: "ananke/heuristics/super-famicom.hpp:418"
- name: dsp4.program.rom
system: nintendo-snes
required: false
size: 6144
source_ref: "ananke/heuristics/super-famicom.hpp:431"
- name: dsp4.data.rom
system: nintendo-snes
required: false
size: 2048
source_ref: "ananke/heuristics/super-famicom.hpp:432"
- name: cx4.data.rom
system: nintendo-snes
required: false
size: 3072
source_ref: "ananke/heuristics/super-famicom.hpp:146"
- name: st010.program.rom
system: nintendo-snes
required: false
size: 49152
source_ref: "ananke/heuristics/super-famicom.hpp:445"
- name: st010.data.rom
system: nintendo-snes
required: false
size: 4096
source_ref: "ananke/heuristics/super-famicom.hpp:446"
- name: st011.program.rom
system: nintendo-snes
required: false
size: 49152
source_ref: "ananke/heuristics/super-famicom.hpp:460"
- name: st011.data.rom
system: nintendo-snes
required: false
size: 4096
source_ref: "ananke/heuristics/super-famicom.hpp:461"
- name: st018.program.rom
system: nintendo-snes
required: false
size: 131072
source_ref: "ananke/heuristics/super-famicom.hpp:475"
- name: st018.data.rom
system: nintendo-snes
required: false
size: 32768
source_ref: "ananke/heuristics/super-famicom.hpp:476"
- name: sgb.boot.rom
system: nintendo-sgb
required: false
size: 256
source_ref: "ananke/heuristics/super-famicom.hpp:133"