mirror of
https://github.com/Abdess/retroarch_system.git
synced 2026-10-10 21:43:23 -05:00
Upstream moved under 145 profiles: 679 refs shifted and 452 followed a renamed file, against 6,483 that still anchor where they were written. The recale rewrites the located ranges only, keeping the annotations and the sentences that carry them, and 106 pins advance in the same commit because refs and source_commit name one revision or the profile describes two at once. Nothing here was guessed. The 183 refs that are CHANGED, GONE or AMBIGUOUS are untouched, and the 57 profiles holding them keep their old pin until someone reads the diff: profile_sync refuses to recale a profile while any of its refs needs a re-read. trident kept its pin too, its annotated ref being one the writer will not rewrite.
92 lines
3.8 KiB
YAML
92 lines
3.8 KiB
YAML
emulator: galaksija
|
|
type: libretro
|
|
core_classification: official_port
|
|
source: "https://github.com/libretro/galaxy-libretro"
|
|
upstream: "https://github.com/nikp123/Galaksija-Emulator"
|
|
profiled_date: "2026-03-23"
|
|
source_commit: "185758296c17f59cba832511139381a197986474"
|
|
core_version: "v0.1"
|
|
display_name: "Elektronika Inženjering - Galaksija (Galaksija)"
|
|
cores:
|
|
- galaksija
|
|
systems:
|
|
- galaksija
|
|
|
|
# Galaksija is a Yugoslav home computer (1983, designed by Voja Antonic) emulator.
|
|
# Z80-based at 3.072 MHz, PAL 50fps, character-mode display (32x16 chars, 256x208 px).
|
|
#
|
|
# The core embeds all three firmware files compressed in rom.c (LoadCHRGENBIN,
|
|
# LoadROM1BIN, LoadROM2BIN). External files are optional overrides -- if ANY of
|
|
# CHRGEN.BIN or ROM1.BIN is missing from <system_dir>/galaksija/, the core sets
|
|
# firmware_ignore=true and loads all ROMs from the embedded copies instead.
|
|
#
|
|
# Firmware loading (src/libretro.c:93-135):
|
|
# 1. retro_init() checks for galaksija/CHRGEN.BIN and galaksija/ROM1.BIN
|
|
# 2. If either is missing: firmware_ignore=true, load embedded compressed ROMs
|
|
# 3. If both present: galaxy_init() reads files from disk (init.c:46-105)
|
|
# 4. ROM2.BIN missing is a warning only, not fatal (init.c:84-85)
|
|
#
|
|
# Memory map:
|
|
# 0x0000-0x0FFF: ROM1 (4096 bytes) - BASIC interpreter
|
|
# 0x1000-0x1FFF: ROM2 (4096 bytes) - math extension (optional)
|
|
# 0x2000-0x27FF: keyboard memory-mapped I/O
|
|
# 0x2800-0x29FF: screen RAM (32x16 characters)
|
|
# 0x2A00-0x3FFF: free RAM
|
|
# chargen: 2048-byte character generator ROM (separate, not memory-mapped)
|
|
#
|
|
# The included firmware is public domain per README.
|
|
|
|
files:
|
|
- name: "CHRGEN.BIN"
|
|
path: "galaksija/CHRGEN.BIN"
|
|
size: 2048
|
|
required: false
|
|
hle_fallback: true
|
|
validation: [size]
|
|
note: >
|
|
Character generator ROM. Defines the 128-character bitmap font (8x13 pixels
|
|
each). The core has this embedded compressed in rom.c and only loads the
|
|
external file if all firmware files are present in the system directory.
|
|
source_ref: "src/rom.h:5, src/libretro.c:95-99, src/external/galaksija-emulator/src/init.c:55-67"
|
|
|
|
- name: "ROM1.BIN"
|
|
path: "galaksija/ROM1.BIN"
|
|
size: 4096
|
|
required: false
|
|
hle_fallback: true
|
|
validation: [size]
|
|
note: >
|
|
System ROM / BASIC interpreter. Mapped at 0x0000-0x0FFF. Contains the
|
|
Galaksija BASIC language and boot routines. Embedded in rom.c as fallback.
|
|
source_ref: "src/rom.h:8, src/libretro.c:101-105, src/external/galaksija-emulator/src/init.c:69-81"
|
|
|
|
- name: "ROM2.BIN"
|
|
path: "galaksija/ROM2.BIN"
|
|
size: 4096
|
|
required: false
|
|
hle_fallback: true
|
|
validation: [size]
|
|
note: >
|
|
Math extension ROM. Mapped at 0x1000-0x1FFF. Adds floating-point math
|
|
functions (SIN, COS, TG, SQR, LN, EXP, POW, etc). Optional even when
|
|
loading from disk -- missing ROM2 only triggers a warning. Embedded in
|
|
rom.c as fallback.
|
|
source_ref: "src/rom.h:11, src/libretro.c:107-110, src/external/galaksija-emulator/src/init.c:83-92"
|
|
|
|
notes:
|
|
embedded_firmware: >
|
|
All three ROMs (CHRGEN.BIN, ROM1.BIN, ROM2.BIN) are embedded as compressed
|
|
blobs in src/rom.c using RLE compression. The core works out of the box
|
|
without any external firmware files. External files only serve as overrides
|
|
for users who want alternative ROM versions (e.g. different BASIC revisions
|
|
or character sets).
|
|
firmware_override_logic: >
|
|
The override is all-or-nothing for CHRGEN.BIN and ROM1.BIN. If either file
|
|
is missing from galaksija/, the core ignores all external firmware and uses
|
|
embedded copies. ROM2.BIN is handled separately and can be absent even when
|
|
loading from disk.
|
|
license: >
|
|
The emulator code and included firmware are public domain. External
|
|
dependencies (libz80, libretro-common, tinyfiledialogs) have separate
|
|
licenses (GPL2, MIT).
|