docs: cite a7800 fork paths in full

Bare a7800.cpp and xm.cpp resolved in mainline MAME once upstream_commit moved. Each citation now names its path in the fork, read at 7a2afdc. upstream_commit to mamedev 9d8a672, where the PAL BIOS is still c300558-001b.u7 and the 7800 ROMs carry no ROM_OPTIONAL.
This commit is contained in:
Abdessamad Derraz committed 2026-10-24 04:07:43 +02:00
1 parent 71306d1fda
commit fc9c6d232e
1 file changed
+30 -27
+30 -27
View File
@@ -5,7 +5,7 @@ source: "https://github.com/7800-devtools/a7800"
upstream: "https://github.com/mamedev/mame"
profiled_date: "2026-08-08"
source_commit: "7a2afdc1ea08fc331b16b750d8c1f02d4ef62fc8"
upstream_commit: "61a222977fd29f22ce11fbea3f7c290fd7ced091"
upstream_commit: "9d8a6727a206fc822b8b69d67a51e6fd7dbf4d4b"
core_version: "5.2"
display_name: "Atari - 7800 (A7800)"
cores:
@@ -17,46 +17,49 @@ mode: standalone
notes: |
MAME fork by 7800.8bitdev.org built with the Atari 7800 driver alone. The
released binary carries eight machines, all declaring a7800 as parent: NTSC
and PAL at three palette temperatures, plus a developer mode showing DMA
usage per scanline (a7800.cpp:1837-1844). The temperature variants were
renamed after 5.2, from a7800u1/a7800u2/a7800pu1/a7800pu2 to
and PAL at three palette temperatures, plus a developer mode showing DMA usage
per scanline (src/mame/drivers/a7800.cpp:1837-1844). The temperature variants
were renamed after 5.2, from a7800u1/a7800u2/a7800pu1/a7800pu2 to
a7800a1/a7800a2/a7800pa1/a7800pa2. ROM definitions are identical in both.
Console BIOS is optional. Every entry carries ROM_OPTIONAL, so absence
yields a warning rather than the fatal "Required files are missing" exit
(romload.cpp:373-379, 488-493). The region is ERASEFF, and machine_reset
reads the reset vector: when 0xfffe and 0xffff both hold 0xff, m_ctrl_reg is
set to 4 and the console starts the cartridge (a7800.cpp:1529-1532). No code
substitutes for the BIOS when it is absent.
Console BIOS is optional. Every entry carries ROM_OPTIONAL, so absence yields
a warning rather than the fatal "Required files are missing" exit
(src/emu/romload.cpp:373-379, 488-493). The region is ERASEFF, and
machine_reset reads the reset vector: when 0xfffe and 0xffff both hold 0xff,
m_ctrl_reg is set to 4 and the console starts the cartridge
(src/mame/drivers/a7800.cpp:1529-1532). No code substitutes for the BIOS when
it is absent.
Lookup runs under rompath, which the shipped a7800.ini sets to "bios;roms".
open_rom_file walks the parent chain (romload.cpp:567-572), so all eight
machines fall back to the a7800 set, and the manual documents one merged
open_rom_file walks the parent chain (src/emu/romload.cpp:567-572), so all
eight machines fall back to the a7800 set, and the manual documents one merged
archive at bios/a7800.zip. Inside an archive the search tries name with CRC,
then CRC alone, then name (fileio.cpp:692-701), so a ROM whose filename
differs from the driver still resolves. Loose files under rompath/a7800/
match by name only. Loaded ROMs are checked for exact length and against the
declared CRC32 and SHA1, and a mismatch is a warning (romload.cpp:417-455).
then CRC alone, then name (src/emu/fileio.cpp:692-701), so a ROM whose
filename differs from the driver still resolves. Loose files under
rompath/a7800/ match by name only. Loaded ROMs are checked for exact length
and against the declared CRC32 and SHA1, and a mismatch is a warning
(src/emu/romload.cpp:417-455).
The PAL BIOS keeps the filename 7800pal.rom, which mainline MAME has since
renamed to c300558-001b.u7 for the same dump. Mainline also marks the 7800
ROMs mandatory.
Software list a7800 (hash/a7800.xml), attached by every machine
(a7800.cpp:1577, 1608, 1654, 1684), holds add-on hardware rather than games:
the High Score Cartridge and the XM Expansion Module, both backed by the
same 4KB highscre.bin served as the pass-through cart ROM
(hiscore.cpp:49-52, xm.cpp:177-183). Software list ROMs resolve as
a7800/<setname> then <setname> under rompath (romload.cpp:628-650) and carry
no optional flag, so selecting either configuration without the image exits
with EMU_ERR_MISSING_FILES.
(src/mame/drivers/a7800.cpp:1577, 1608, 1654, 1684), holds add-on hardware
rather than games: the High Score Cartridge and the XM Expansion Module, both
backed by the same 4KB highscre.bin served as the pass-through cart ROM
(src/devices/bus/a7800/hiscore.cpp:49-52,
src/devices/bus/a7800/xm.cpp:177-183). Software list ROMs resolve as
a7800/<setname> then <setname> under rompath (src/emu/romload.cpp:628-650) and
carry no optional flag, so selecting either configuration without the image
exits with EMU_ERR_MISSING_FILES.
The release ships the binary, a7800.ini, the manual, hash/a7800.xml, cfg
defaults, bgfx shaders and artwork masks, and no roms, samples, plugins or
language directory. The driver adds no samples device and no external
layout. Crosshair bitmaps fall back to a compiled-in shape
(crsshair.cpp:180-214) and the UI font to compiled-in data
(rendfont.cpp:587-600).
language directory. The driver adds no samples device and no external layout.
Crosshair bitmaps fall back to a compiled-in shape
(src/emu/crsshair.cpp:180-214) and the UI font to compiled-in data
(src/emu/rendfont.cpp:587-600).
files:
- name: a7800.zip