mirror of
https://github.com/Abdess/retroarch_system.git
synced 2026-10-21 03:09:08 -05:00
Profiles that read two repositories, a libretro port and its upstream, now prefix each citation with source or upstream, decided by which tree carries the cited value at its pin. The emulator pages use the word to tell libretro glue, emulator code as the port carries it, and the upstream emulator apart.
70 lines
2.6 KiB
YAML
70 lines
2.6 KiB
YAML
emulator: GAM4980
|
|
type: libretro
|
|
core_classification: pure_libretro
|
|
source: "https://github.com/ThisBoringWorld/gam4980"
|
|
upstream: "https://codeberg.org/iyzsong/gam4980"
|
|
profiled_date: "2026-03-23"
|
|
source_commit: "eeaa531b55e7127ab4b5e0bdc5ceba686df59c6a"
|
|
core_version: "0.2"
|
|
display_name: "GAM4980"
|
|
cores:
|
|
- gam4980
|
|
systems:
|
|
- bbk-longman-4980
|
|
|
|
# GAM4980 emulates the BBK Longman 4980 (A4980/A4988) electronic dictionary.
|
|
# Original code from https://codeberg.org/iyzsong/gam4980, based on the
|
|
# BA4988 BBK simulator by Wuyun. Uses a 6502-based CPU with banked ROM access.
|
|
#
|
|
# ROM loading (src/libretro.c:707-746, sys_init):
|
|
# Opens romdir/8.BIN and reads 0x200000 bytes (2 MB) into sys.rom_8 (font ROM).
|
|
# Opens romdir/E.BIN and reads 0x200000 bytes (2 MB) into sys.rom_e (OS ROM).
|
|
# A missing file shows "GAM4980: Missing 8.BIN" (or E.BIN) and the core
|
|
# shuts down through RETRO_ENVIRONMENT_SHUTDOWN.
|
|
#
|
|
# Memory map (src/libretro.c:109-110, 302-305):
|
|
# 0x800000-0x9FFFFF rom_8 (font ROM, 8.BIN)
|
|
# 0xE00000-0xFFFFFF rom_e (OS ROM, E.BIN)
|
|
#
|
|
# No hash validation. No size validation. The .info declares firmware_count=0.
|
|
|
|
notes: |
|
|
Place 8.BIN and E.BIN in the RetroArch system/gam4980/ subdirectory.
|
|
Both files must be 2 MB dumps from a BBK Longman 4980 dictionary:
|
|
8.BIN - font ROM, dumped from address range 0x800000-0x9FFFFF
|
|
E.BIN - OS ROM, dumped from address range 0xE00000-0xFFFFFF
|
|
Game files use the .gam extension.
|
|
|
|
files:
|
|
- name: "gam4980/8.BIN"
|
|
size: 2097152
|
|
required: true
|
|
system: bbk-longman-4980
|
|
note: "Font ROM (2 MB). Loaded at 0x800000."
|
|
source_ref: "source src/libretro.c:730-737"
|
|
|
|
- name: "gam4980/E.BIN"
|
|
size: 2097152
|
|
required: true
|
|
system: bbk-longman-4980
|
|
note: "OS ROM (2 MB). Loaded at 0xE00000."
|
|
source_ref: "source src/libretro.c:739-746"
|
|
|
|
platform_details:
|
|
bios_mapping:
|
|
target: "0x800000-0x9FFFFF (font), 0xE00000-0xFFFFFF (OS) in banked address space"
|
|
source_ref: "src/libretro.c:109-110, 302-305"
|
|
note: |
|
|
sys.rom_8 and sys.rom_e are flat 2 MB arrays. The CPU accesses them
|
|
through bank-switched memory (PA() macro resolves virtual to physical
|
|
address). rom_8_vread and rom_e_vread handle indirect reads via
|
|
the banking system.
|
|
|
|
load_path:
|
|
source_ref: "src/libretro.c:1193-1197"
|
|
note: |
|
|
retro_init() builds the path as {system_directory}/gam4980/ and
|
|
passes it to sys_init(). Files must be named exactly 8.BIN and
|
|
E.BIN (case sensitive on Linux). No .info firmware declarations
|
|
exist, so RetroArch won't warn about missing files at scan time.
|