Files
libretro/emulators/jollycv.yml
Abdessamad Derraz ef25f8cebf feat: re-profile 40 emulators from fbalpha2012 to holani
batch re-profiled beetle, holani, kronos, mame variants, mednafen
cores with upstream verification. beetle_pce, mame, mame2010 excluded
(regressions detected, need manual review).
2026-03-24 11:36:58 +01:00

84 lines
2.9 KiB
YAML

emulator: JollyCV
type: libretro
core_classification: official_port
source: "https://github.com/libretro/jollycv"
upstream: "https://gitlab.com/jgemu/jollycv"
profiled_date: "2026-03-24"
core_version: "2.0.0"
display_name: "ColecoVision/CreatiVision/My Vision (JollyCV)"
cores:
- jollycv
systems:
- colecovision
- creativision
- myvision
notes: |
JollyCV is a multi-system emulator by Rupert Carmichael supporting
ColecoVision (with Super Game Module), CreatiVision, and My Vision.
BIOS handling depends on the detected system type (set via core option
or auto-detected from ROM database via jcv_process_hash/jcv_get_dbflags):
- ColecoVision (JCV_SYS_COLECO): loads "coleco.rom" from system dir.
BIOS is mapped at 0x0000-0x1FFF. Size must be exactly 8192 bytes
(SIZE_CVBIOS = SIZE_8K = 0x2000). Load fails if size mismatches.
Without the BIOS, ColecoVision games will not run (load returns false).
- CreatiVision (JCV_SYS_CRVISION): loads "bioscv.rom" from system dir.
BIOS is mapped at 0xF800-0xFFFF. Size must be exactly 2048 bytes
(SIZE_CRVBIOS = SIZE_2K = 0x800). Without the BIOS, CreatiVision
games will not run.
- My Vision (JCV_SYS_MYVISION): no BIOS required.
The libretro port constructs paths via snprintf("%s%c%s", sysdir, pss,
filename) in libretro.c:699-711. jcv_bios_load_file() opens the file,
reads it fully, then delegates to jcv_coleco_bios_load() or
jcv_crvision_bios_load() which validate size before copying.
ColecoVision cartridge header bytes at offset 0x0000-0x0001 control
boot behavior: 0xAA55 shows the BIOS title screen, 0x55AA jumps
directly to the game code vector.
The core includes a built-in ROM database with MD5 hashes (gamedb.h)
for game-specific flags, but this is for game compatibility, not BIOS
verification.
files:
# --- ColecoVision BIOS (required for CV games) ---
- name: "coleco.rom"
system: colecovision
required: true
size: 8192
validation: [size]
source_ref: "libretro/libretro.c:701, src/jcv_coleco.c:402-406"
notes: "Mapped at 0x0000-0x1FFF. Replaced by SGM lower RAM when Super Game Module is active. Must be exactly 8192 bytes."
# --- CreatiVision BIOS (required for CreatiVision games) ---
- name: "bioscv.rom"
system: creativision
description: "VTech CreatiVision BIOS ROM"
required: true
size: 2048
validation: [size]
source_ref: "libretro/libretro.c:711, src/jcv_crvision.c:315-318"
notes: "Mapped at 0xF800-0xFFFF. Must be exactly 2048 bytes."
platform_details:
colecovision:
bios_filename: "coleco.rom"
bios_size: 8192
memory_map: "0x0000-0x1FFF"
source_ref: "src/jcv_coleco.c:269-281"
creativision:
bios_filename: "bioscv.rom"
bios_size: 2048
memory_map: "0xF800-0xFFFF"
source_ref: "src/jcv_crvision.c:315-337, 441"
myvision:
bios_required: false
notes: "No BIOS needed. My Vision games run without any system ROM."