mirror of
https://github.com/Abdess/retroarch_system.git
synced 2026-10-10 13:33:24 -05:00
82 lines
3.2 KiB
YAML
82 lines
3.2 KiB
YAML
emulator: KEGS
|
|
type: standalone
|
|
core_classification: other
|
|
source: "https://kegs.sourceforge.net/"
|
|
upstream: "https://kegs.sourceforge.net/"
|
|
profiled_date: "2026-08-08"
|
|
core_version: "1.38"
|
|
display_name: "Apple - Apple IIGS (KEGS)"
|
|
cores:
|
|
- kegs
|
|
systems:
|
|
- apple-iigs
|
|
- apple-ii
|
|
mode: standalone
|
|
|
|
notes: |
|
|
Apple IIGS emulator by Kent Dickey, shipped as one zip holding the sources
|
|
and the KEGSMAC, kegswin.exe and xkegs binaries.
|
|
|
|
The system ROM is the only file needed to boot. config_load_roms takes the
|
|
first name that stats across g_kegs_default_paths (config.c:149-151), which
|
|
covers the current directory, $HOME, $HOME/Library/KEGS, the executable
|
|
directory and a Mac bundle Resources directory. g_cfg_rom_path is tried
|
|
first, then the fixed list (config.c:407-410,1105-1109). ROM size selects
|
|
the machine, 32 KB for an Apple //e, 128 KB for a ROM 01 IIGS and 256 KB
|
|
for a ROM 03 IIGS, and any other size is refused (config.c:1136-1153).
|
|
Without a ROM, KEGS raises its config panel instead of starting
|
|
(config.c:1110-1115).
|
|
|
|
Three ROMs are compiled in. Slot 7 gets the SmartPort PROM literal
|
|
g_rom_c700[] (config.c:463,1165-1169). Slot 6 gets a Disk II PROM rebuilt
|
|
at load time, XORed out of the IIGS ROM through g_rom_c600_rom01_diffs[]
|
|
(config.c:428,1177-1183) or copied from offset 0x600 of a //e ROM
|
|
(config.c:1172-1176); the IIGS control panel reaches it by setting slot 6
|
|
to "Your Card". Text uses g_font_array[] from kegsfont.h (video.c:272-273,
|
|
prepared at sim65816.c:667).
|
|
|
|
Slots 1 to 5 and slot 7 carry empty name lists (config.c:413-417,420), so
|
|
slot 6 is the only slot that reads a card ROM from disk.
|
|
|
|
config.kegs carries the disk assignments and the battery RAM, and KEGS
|
|
creates it when none is found (config.c:638-672).
|
|
|
|
files:
|
|
- name: ROM
|
|
aliases: [ROM.01, ROM.03, APPLE2GS.ROM, APPLE2GS.ROM2, xgs.rom, XGS.ROM, Rom03gd, 342-0077-b]
|
|
required: true
|
|
description: "Apple IIGS system ROM"
|
|
validation: [size]
|
|
source_ref: "config.c:135,407-410,1096-1161"
|
|
note: >
|
|
Accepted sizes are 32768 (Apple //e), 131072 (ROM 01) and 262144
|
|
(ROM 03). -rom on the command line and the g_cfg_rom_path config line
|
|
both replace the first search name (config.c:1465-1467). A 32 KB //e
|
|
ROM has to carry the Disk II PROM at offset 0x600, which KEGS reads
|
|
into slot 6.
|
|
|
|
- name: c600.rom
|
|
aliases: [controller.rom, disk.rom, DISK.ROM, diskII.prom]
|
|
required: false
|
|
hle_fallback: true
|
|
min_size: 256
|
|
validation: [size]
|
|
description: "Disk II controller PROM for slot 6"
|
|
source_ref: "config.c:418-419,1192-1224"
|
|
note: >
|
|
Replaces the built-in PROM. The first 256 bytes are read into slot 6
|
|
and a shorter file is rejected.
|
|
|
|
- name: "<charrom>"
|
|
required: false
|
|
hle_fallback: true
|
|
min_size: 4096
|
|
validation: [size]
|
|
description: "ROMX-compatible character ROM"
|
|
source_ref: "config.c:136-137,259-276,1070-1093"
|
|
note: >
|
|
Picked through the F4 config panel, which stores the path in
|
|
g_cfg_charrom_path; there is no default name. KEGS reads 4096 bytes at
|
|
0x1000 times the selected font number and replaces the built-in text
|
|
font with them. The 32 fonts it lists span a 131072-byte image.
|