Skip to main content

Module dsp1

Module dsp1 

Source
Expand description

The DSP-1 board — the µPD77C25 wired into a LoROM/HiROM cartridge.

DSP-1 (NEC µPD77C25, the uPD7725 revision of the shared engine) is the Mode-7 3D-math coprocessor in 15+ titles (Super Mario Kart, Pilotwings, Super Bases Loaded 2). It exposes exactly two memory-mapped ports — the data register (DR) and the status register (SR) — at a board-dependent bus window. There is no canonical per-game window table; this board picks the de-facto window from the map mode + ROM size, the heuristic snes9x/bsnes use when no cartridge database is present, which coincides with every ares DSP-1 board definition:

Map mode / sizeDSP window (banks : addr)DR / SR split
HiROM$00–$1F,$80–$9F : $6000–$7FFFDR $6xxx, SR $7xxx
LoROM, ROM ≤ 1 MiB$30–$3F,$B0–$BF : $8000–$FFFFDR $8–$Bxxx, SR $C–$F
LoROM, ROM > 1 MiB$60–$6F,$E0–$EF : $0000–$7FFFDR $0–$3xxx, SR $4–$7

ROM and SRAM decode is delegated to the wrapped base board; only the DSP window is intercepted. The board is functional only once the user supplies the dsp1.rom / dsp1b.rom firmware dump (docs/adr/0003 — a chip-ROM-dump coprocessor is never silently degraded).

Structs§

Dsp1Board
A LoROM/HiROM cartridge carrying a DSP-1 (µPD77C25).