mirror of
https://github.com/Abdess/retroarch_system.git
synced 2026-10-20 10:23:16 -05:00
100 emulator names the two platforms run had no profile, so their packs carried nothing for them. Each was read from the platform's own launcher or scriptmodule: the same program as an existing profile takes the name in cores:, a different build gets its own profile read from that version, a launcher or self-contained game goes to remove_cores, and the rest are new profiles written from their source or shipped binary. The files they need that the collection lacked are collected from the upstream distributions. Bungie and splitwolf trees are read by path and stay out of dedup.
154 lines
5.9 KiB
YAML
154 lines
5.9 KiB
YAML
emulator: XM7
|
|
display_name: "Fujitsu - FM-7 (XM7/SDL)"
|
|
type: standalone
|
|
core_classification: other
|
|
source: "https://github.com/nakatamaho/XM7-for-SDL"
|
|
upstream: "http://retropc.net/ryu/xm7/"
|
|
profiled_date: "2026-10-20"
|
|
source_commit: "2a48dceaf8a3a0de92cf369b039ac5fab2bb351a"
|
|
core_version: "V3.4 L61a SDL/Agar 0.3.2pre2"
|
|
cores:
|
|
- xm7
|
|
systems:
|
|
- fm7
|
|
- fm77av
|
|
mode: standalone
|
|
|
|
notes: |
|
|
K.Ohta's SDL and Agar port of PI.'s XM7, an FM-7, FM-77 and FM77AV series
|
|
emulator. The CMake build sets XM7_VERSION 3 (linux-sdl/CMakeLists.txt:23,
|
|
linux-sdl/cmake/config_xm7.cmake:20), the FM77AV40EX/SX level, so every ROM
|
|
path below is the XM7_VER >= 3 branch. RetroPie builds this repository with
|
|
OpenGL and OpenCL off.
|
|
|
|
ROMs are read by file_load (linux-sdl/sdl/sdl_file.c:21-59), which prepends
|
|
ModuleDir and reads a fixed byte count. A file shorter than that count is
|
|
refused and anything past it is ignored. main sets ModuleDir to $HOME/.xm7/,
|
|
or ./.xm7/ when HOME is unset (linux-sdl/sdl/windows_main.cpp:79-94). No hash
|
|
or checksum of any ROM is computed.
|
|
|
|
system_init stops at the first device whose init returns FALSE
|
|
(linux-sdl/vm/system.c:124-127, 171, 203). MainLoop then sets error code 1
|
|
and shows "Error init VM. Please check ROMS and system-memory."
|
|
(linux-sdl/ui-agar/agar_main.cpp:166-168, 546-548), and no machine runs. A
|
|
ROM whose absence makes its init return FALSE is required below.
|
|
|
|
The three drive sound effects are read with SDL_LoadWAV from RSSDIR, which
|
|
defaults to SHAREDIR, /usr/local/share/xm7/ (linux-sdl/sdl/build_config.h:76-86,
|
|
linux-sdl/sdl/api_snd2.cpp:660). The name is appended to that directory
|
|
without a separator, and each name is tried in lower case, upper case,
|
|
capitalized and as written (linux-sdl/sdl/api_snd2.cpp:213-267). A missing
|
|
WAV leaves its slot silent. HEADUP.WAV and HEADDOWN.WAV are compiled out
|
|
(linux-sdl/sdl/api_snd2.cpp:160-163).
|
|
|
|
USERDIC.DAT is the FM77-211 learning RAM. It is filled with 0xFF when absent
|
|
and written back by the emulator (linux-sdl/vm/jcard.c:77-82), so it is not
|
|
listed. JSUBMON.ROM, SUBSYS_8.ROM, SUBSYSL4.ROM, ANKCG16.ROM, the FM-8 and
|
|
FM-7 boot ROMs and FBASIC10.ROM are only read when XM7_VER is 1.
|
|
|
|
files:
|
|
- name: FBASIC30.ROM
|
|
description: "F-BASIC V3.0 ROM"
|
|
required: true
|
|
min_size: 31744
|
|
validation: [size]
|
|
source_ref: "linux-sdl/vm/xm7.h:240, linux-sdl/vm/mainmem.c:211-217"
|
|
|
|
- name: INITIATE.ROM
|
|
description: "FM77AV initiator ROM"
|
|
required: true
|
|
min_size: 8192
|
|
validation: [size]
|
|
source_ref: "linux-sdl/vm/xm7.h:241, linux-sdl/vm/mainmem.c:225-227"
|
|
note: "Patched in memory after loading to skip the boot delay of the old and new boot sequences (linux-sdl/vm/mainmem.c:229-262)."
|
|
|
|
- name: BOOT_MMR.ROM
|
|
description: "FM-77 MMR boot ROM"
|
|
required: false
|
|
min_size: 512
|
|
validation: [size]
|
|
source_ref: "linux-sdl/vm/xm7.h:246, linux-sdl/vm/mainmem.c:287-290, linux-sdl/vm/jcard.c:100-108"
|
|
note: "Without it the hidden boot area of the extended ROM is filled from INITIATE.ROM offset 0x1a00."
|
|
|
|
- name: SUBSYS_C.ROM
|
|
description: "FM-7 sub system ROM"
|
|
required: true
|
|
min_size: 10240
|
|
validation: [size]
|
|
source_ref: "linux-sdl/vm/xm7.h:252, linux-sdl/vm/submem.c:212-218"
|
|
|
|
- name: SUBSYS_A.ROM
|
|
description: "FM77AV type A sub system ROM"
|
|
required: true
|
|
min_size: 8192
|
|
validation: [size]
|
|
source_ref: "linux-sdl/vm/xm7.h:255, linux-sdl/vm/submem.c:220-222"
|
|
|
|
- name: SUBSYS_B.ROM
|
|
description: "FM77AV type B sub system ROM"
|
|
required: true
|
|
min_size: 8192
|
|
validation: [size]
|
|
source_ref: "linux-sdl/vm/xm7.h:256, linux-sdl/vm/submem.c:223-225"
|
|
|
|
- name: SUBSYSCG.ROM
|
|
description: "FM77AV character generator and sub system ROM"
|
|
required: true
|
|
min_size: 8192
|
|
validation: [size]
|
|
source_ref: "linux-sdl/vm/xm7.h:257, linux-sdl/vm/submem.c:226-228"
|
|
|
|
- name: KANJI1.ROM
|
|
description: "JIS83 first standard kanji ROM"
|
|
required: true
|
|
min_size: 131072
|
|
validation: [size]
|
|
source_ref: "linux-sdl/vm/xm7.h:259, linux-sdl/vm/kanji.c:85-87"
|
|
unsourceable: "XM7 checks no hash and its upstream distributes no dump. The KANJI1.ROM the collection holds is the PC-88 kanji ROM, another machine's font."
|
|
|
|
- name: KANJI2.ROM
|
|
description: "JIS83 second standard kanji ROM"
|
|
required: true
|
|
min_size: 131072
|
|
validation: [size]
|
|
source_ref: "linux-sdl/vm/xm7.h:263, linux-sdl/vm/kanji.c:98-102"
|
|
unsourceable: "XM7 checks no hash and its upstream distributes no dump. The KANJI2.ROM the collection holds is the PC-88 second level kanji ROM, another machine's font."
|
|
|
|
- name: KANJI.ROM
|
|
description: "JIS78 first standard kanji ROM"
|
|
required: false
|
|
min_size: 131072
|
|
validation: [size]
|
|
source_ref: "linux-sdl/vm/xm7.h:260, linux-sdl/vm/kanji.c:71-81, 128-133"
|
|
unsourceable: "XM7 checks no hash and its upstream distributes no dump. The KANJI.ROM files the collection holds are MSX and FPseNG fonts, not the Fujitsu ROM."
|
|
note: "Without it a JIS78 table is generated from KANJI1.ROM."
|
|
|
|
- name: DICROM.ROM
|
|
description: "FM77-101/FM77-211 dictionary ROM"
|
|
required: true
|
|
min_size: 262144
|
|
validation: [size]
|
|
source_ref: "linux-sdl/vm/xm7.h:264, linux-sdl/vm/jcard.c:66-68"
|
|
|
|
- name: EXTSUB.ROM
|
|
description: "FM77AV40EX/SX extended sub system ROM"
|
|
required: true
|
|
min_size: 49152
|
|
validation: [size]
|
|
source_ref: "linux-sdl/vm/xm7.h:266, linux-sdl/vm/jcard.c:92-94"
|
|
|
|
- name: relay_on.wav
|
|
description: "Cassette relay on sound"
|
|
required: false
|
|
source_ref: "linux-sdl/sdl/api_snd2.cpp:155-157, 213-267, 660"
|
|
|
|
- name: relayoff.wav
|
|
description: "Cassette relay off sound"
|
|
required: false
|
|
source_ref: "linux-sdl/sdl/api_snd2.cpp:155-158, 213-267, 660"
|
|
|
|
- name: fddseek.wav
|
|
description: "Floppy drive seek sound"
|
|
required: false
|
|
source_ref: "linux-sdl/sdl/api_snd2.cpp:155-159, 213-267, 660"
|