GenX‑DOSWIKI SearchPromptArticle↩ Site

Attribution

GenX-DOS bundles third-party emulators, libraries, system ROMs, and visual assets. This file is the canonical record of those components and the terms under which they are redistributed.

The live site, genx-dos.fun, carries all of it. This repository and the release zip carry no game ROMs, BIOS or firmware beyond what each emulator's own maintainer shipped with it. Rows below for files that are absent here describe the site's copy; ROMS.txt lists them.

It is maintained alongside CHANGELOG.md: whenever a new emulator, BIOS, ROM, bezel, font, or other asset is added or replaced, an entry is added here.

The summary list in README.md is a quick-reference; this file is the authoritative version.


Removal upon request

If you hold rights in anything bundled here, or legally represent someone who does, and you raise an identified copyright or intellectual-property concern, the material in question will be removed immediately. Not debated, not defended, not delayed pending a formal process.

This applies to everything on the site and in this repository, not only games: software titles, system ROMs and BIOS images, emulator code, artwork, fonts, sound, documentation, trade marks and names. Note that the games and the firmware we supplied are served by genx-dos.fun and are not in the repository at all — see ROMS.txt.

What a request must contain. Three things, so that nothing is pulled on an anonymous say-so:

  1. Who you are — a name, and the company or firm if you act for one.
  2. Your standing — that you hold the rights, or who you represent and in what capacity.
  3. What and why — the specific title, file or asset, and the basis of the concern.

That is the whole bar. No notice format, no particular form of words, and no registration certificates, chain-of-title documents or legal citations — a few sentences covering those three points will be taken in good faith and acted on.

Where to send it - Email admin@genx-dos.fun — the shortest route, and it needs no account anywhere - Or open an issue, if you would rather it were public: https://github.com/Retro-Jack/GenX-DOS/issues (there is a "Content removal request" template, but a plain issue is fine)

The same procedure is published on its own page — REMOVAL.md — for anyone who would rather not read it inside an attribution file. It adds what we can and cannot reach: our site and repository, but not other people's copies or third-party archives.

Removal will happen as soon as such a request reaches me. GenX-DOS is a non-commercial preservation project run by one person; nothing here is worth anyone's legal costs, mine included, and no title in it matters more than a rights holder's wishes about their own work.


Site code


Emulators

Each bundle directory contains the upstream LICENSE or COPYING file where one was provided. Build recipes for self-compiled WASM bundles live with their bundle (systems/odyssey2/build.sh, systems/cpc/BUILDING-WASM.md); atari800's build-wasm.sh lives in the Retro-Jack/atari800 fork rather than the bundle.

Bundle directory Upstream project Author(s) Licence
systems/apple1/ apple1js, built from the Retro-Jack/apple1js fork (local changes in the fork's GENX-CHANGES.md) Will Scullin (whscullin) MIT
systems/apple2/ apple2js whscullin MIT
systems/bbcmicro/, systems/bbcmaster/ jsbeeb, built from the Retro-Jack/jsbeeb fork (same engine in two bundles — the Micro bundle boots Model B, the Master bundle boots model=Master; local changes in the fork's GENX-CHANGES.md) Matt Godbolt GPL-3.0-or-later
systems/electron/ ElkJS Darren Coles (6502 core ported from Tom Walker's Elkulator) © Darren Coles 2013 (no SPDX header in source)
systems/jsnes/ EmulatorJS + FCEUmm libretro core EmulatorJS team; libretro/libretro-fceumm GPL-3.0 (EmulatorJS), GPL-2.0 (FCEUmm)
systems/stella/ EmulatorJS + Stella (stella2014) libretro core EmulatorJS team; stella-emu / libretro GPL-3.0 (EmulatorJS), GPL-2.0 (Stella)
systems/js7800/ EmulatorJS + ProSystem (prosystem) libretro core EmulatorJS team; libretro/prosystem GPL-3.0 (EmulatorJS), GPL-2.0 (ProSystem)
systems/arcade/ EmulatorJS + MAME 2003-Plus (mame2003_plus) libretro core EmulatorJS team; Nicola Salmoria and the MAME Team; the Libretro MAME 2003-Plus team GPL-3.0 (EmulatorJS), classic MAME non-commercial licence (MAME 0.78)
systems/arcade/games/*.zip Arcade romsets — 100 cabinets, 1976-1989, ten manufacturers (Atari, Capcom, Irem, Konami, Midway, Namco, Nintendo, Sega, Taito, Williams) the original manufacturers, or whoever holds those rights now Served by the live site for historical preservation; the boards have been out of production for 30+ years. The core's own licence is non-commercial, as this project is
systems/msx1/, systems/msx2/ WebMSX (same engine in two bundles — the MSX1 bundle boots M=MSX1, the MSX2 bundle boots M=MSX2) Paulo Peccin MIT
systems/jsspeccy/ JSSpeccy 3.2 Matt Westcott (gasman) GPL-3.0
systems/jsvecx/ JSVecX (fork of raz0red's port of Valavan Manohararajah's VecX), with the speech DAC added Retro-Jack fork of DrSnuggles GPL-3.0
systems/jtyone/ JtyOne (port of Mike Wynne's EightyOne) Simon Holdsworth GPL-2.0
systems/xroar/ XRoar (WASM) Ciaran Anscomb GPL-3.0-or-later
systems/trs80/ sdltrs (SDL2 TRS-80 emulator), built from source to WASM Mark Grebe / Jens Guenther (gitlab.com/jengun/sdltrs) BSD-2-Clause
systems/trs80/model3.rom TRS-80 Model III ROM (14 KB) © Tandy / Microsoft Bundled for emulator-only use; fetched by the page and written into the emulator's in-memory filesystem at boot
systems/js99er/ Js99'er (vanilla-JS build) Rasmus Moustgaard GPL-2.0
systems/dos/jsdos/ js-dos 8.4.1 — the emulators layer only (emulators.js, wdosbox.js, wdosbox.wasm), wrapping DOSBox compiled to WASM. The js-dos player itself is not used. Alexander Guryanov (caiiiycuk), on DOSBox by the DOSBox team GPL-2.0 — declared in the package's own package.json and on npm; note the upstream 8.xx branch ships no LICENSE file, while 7.xx carries the full GPL-2 text
systems/js99er/carts/*.rpk TI-99/4A cartridge ROMs (10 commercial titles, 1980-1983) Texas Instruments / Imagic / Sega — original publishers Distributed for retro-preservation; carts are 40+ years out of commerce.
systems/atari800/, systems/atari400/ atari800 v5.2.0, built from source to WASM (same core shipped in two bundles — the 400 bundle boots OS-B, the 800XL bundle boots OS-XL) atari800 project GPL-2.0+
systems/atari400/roms/atariosb.rom Atari OS-B (400/800) Atari, Inc. © 1980 Atari. The genuine ROM, assembled from its three chips. Replaced Avery Lee's AltirraOS on 02/09/2026
systems/atari800/roms/atarixl.rom Atari XL/XE OS Rev 2 (800XL) Atari, Inc. © 1983 Atari. Genuine ROM
systems/atari400/roms/ataribas.rom, systems/atari800/roms/ataribas.rom Atari BASIC Rev C Atari, Inc. © 1983 Atari. Genuine ROM, one copy per bundle
systems/intv/ jzIntv (WASM build) Joe Zbiciak Free for personal/non-commercial use. WASM build mirrored from mholzinger/intellivision-overlay-editor
systems/odyssey2/ libretro-o2em, custom SDL2/emscripten frontend original o2em by Daniel Boris + Andre de la Rocha; libretro fork by libretro authors; frontend by Retro-Jack Artistic-2.0 (libretro-o2em, verified against upstream); frontend bundled under repo terms
systems/cpc/ floooh's tiny8bit CPC WASM — locally rebuilt from floooh/chips-test (status bar + muted-speaker icon patched out, plus gx_state_* save-state wrappers; see systems/cpc/BUILDING-WASM.md) Andre Weissflog MIT
systems/pet/pet2001/ pet2001 (vanilla-JS PET 2001 emulator), from the Retro-Jack/pet2001 fork (local changes in the fork's GENX-CHANGES.md) Thomas Skibo BSD-2-Clause
systems/_shared-ejs/ EmulatorJS framework EmulatorJS team GPL-3.0
systems/_shared-ejs/ejs/data/cores/ VICE libretro cores (x64, xvic, xplus4) vice-emu.sourceforge.net GPL-2.0
systems/_shared-ejs/ejs/data/cores/ gearcoleco libretro core (ColecoVision) Drhelius GPL-3.0
systems/_shared-ejs/ejs/data/cores/ FCEUmm libretro core (NES) libretro/libretro-fceumm GPL-2.0
systems/_shared-ejs/ejs/data/cores/ Stella libretro core (stella2014, Atari 2600) stella-emu / libretro GPL-2.0
systems/_shared-ejs/ejs/data/cores/ gambatte libretro core (Game Boy / Game Boy Color) libretro/gambatte (sinamas) GPL-2.0
systems/_shared-ejs/ejs/data/cores/ handy libretro core (Atari Lynx) libretro/libretro-handy (K. Wilkins) zlib / GPL-compatible
systems/_shared-ejs/ejs/data/cores/ genesis_plus_gx libretro core (Sega Game Gear / Master System / Mega Drive) libretro/Genesis-Plus-GX (Eke-Eke) non-commercial redistribution licence (see core)
systems/_shared-ejs/ejs/data/cores/ prosystem libretro core (Atari 7800) libretro/prosystem (Greg Stanton, libretro port) GPL-2.0
systems/_shared-ejs/ejs/data/cores/ mame2003_plus libretro core (the arcade section) Nicola Salmoria and the MAME Team; the Libretro MAME 2003 and MAME 2003-Plus teams classic MAME non-commercial licence (MAME 0.78)

Corresponding source for the engine binaries

The GPL asks whoever distributes a binary to also make its source available, and the Artistic License asks the same of modified versions. The engines below ship here as compiled binaries, so this is where their source lives. None of it is fetched at runtime — these are links for anyone wanting to rebuild or inspect what we ship.

Binary we ship Corresponding source
_shared-ejs/ejs/ — EmulatorJS runtime (GPL-3.0) https://github.com/EmulatorJS/EmulatorJS
vice_x64, vice_xvic, vice_xplus4 (GPL-2.0) https://sourceforge.net/projects/vice-emu/ — libretro packaging: https://github.com/libretro/vice-libretro
fceumm (GPL-2.0) https://github.com/libretro/libretro-fceumm
gearcoleco (GPL-3.0) https://github.com/drhelius/Gearcoleco
stella2014 (GPL-2.0) https://github.com/libretro/stella2014-libretro
gambatte (GPL-2.0) https://github.com/libretro/gambatte-libretro
handy (zlib) https://github.com/libretro/libretro-handy
genesis_plus_gx (non-commercial redistribution licence) https://github.com/libretro/Genesis-Plus-GX
prosystem (GPL-2.0) https://github.com/libretro/prosystem-libretro
mame2003_plus (MAME non-commercial licence) https://github.com/libretro/mame2003-plus-libretro
atari400/, atari800/ — atari800.wasm (GPL-2.0+) built by us: https://github.com/Retro-Jack/atari800 (build-wasm.sh, BUILDING-WASM.md)
odyssey2/ — o2em core built by us from https://github.com/libretro/libretro-o2em via systems/odyssey2/build.sh; our SDL2 frontend (frontend.c) sits beside it
apple1/ — Will Scullin's apple1js (MIT) our fork, genx branch, changes and build steps in GENX-CHANGES.md: https://github.com/Retro-Jack/apple1js
bbcmicro/, bbcmaster/ — jsbeeb (GPL-3.0+) our fork, changes in GENX-CHANGES.md: https://github.com/Retro-Jack/jsbeeb
pet/ — Thomas Skibo's pet2001 (BSD-2-Clause) our fork of https://github.com/skibo/skibo.github.io, genx branch, changes in GENX-CHANGES.md: https://github.com/Retro-Jack/pet2001
m100/ — VirtualT (BSD) systems/m100/src/ in this repo
trs80/ — sdltrs (BSD-2-Clause) https://gitlab.com/jengun/sdltrs

o2em is Artistic-2.0, not GPL (checked upstream 17/08/2026). This entry used to read GPL-2.0+, which looks to have been an assumption from most libretro cores being GPL. libretro/libretro-o2em carries a COPYING that is the Artistic License 2.0, our bundled copy is byte-identical to it, and no source file in the core carries a GPL header. The original O2EM was Artistic-licensed and the libretro port kept those terms.

How the cores are mirrored

EmulatorJS-flavoured libretro cores (FCEUmm, VICE family, gearcoleco, Stella, gambatte, handy, genesis_plus_gx, prosystem) are mirrored from cdn.emulatorjs.org/stable/ rather than rebuilt locally. The upstream CDN serves the same .data archives EmulatorJS itself loads from.

Exception — gambatte (Game Boy): the current stable build is broken — it renders a blank white panel (no ROM ever displays). Verified June 2026. We mirror the nightly build instead (cdn.emulatorjs.org/nightly/), which works. All other cores stay on stable. (vice_x128 was a second exception for the same reason until the C128 was dropped on 03/09/2026.)

Self-compiled WASM builds


BIOS and system ROMs

Bundled for emulator-only use. These remain the property of their copyright holders.

File System Copyright
systems/coleco/colecovision.rom ColecoVision © 1982 Coleco Industries
systems/lynx/lynxboot.img Atari Lynx boot ROM (512 bytes) © 1989 Atari Corp. (required by the handy core to start games)
systems/intv/exec.bin, grom.bin Intellivision EXEC + GROM © 1979 Mattel Electronics
systems/odyssey2/o2rom.bin Magnavox Odyssey² (MD5 562d5ebf…) © 1978 Magnavox/Philips.
embedded in systems/jsvecx/js/seamless.js GCE Vectrex boot ROM, 8 KB — base64 in the engine rather than a file, so a file-level audit will not find it © 1982 Smith Engineering. Covered by the non-commercial permission described under Game ROMs; Mine Storm lives in this ROM, which is why it needs no cartridge

Disk operating systems

The TRS-80 Model III has BASIC in ROM, but a diskless machine stops at the boot ROM's Diskette? prompt, so the menu's System disks entry boots one of two period disk operating systems instead.

File System Copyright and permission
systems/trs80/disks/trsdos13.dmk TRSDOS 1.3, Model III (Jul 1, 1981) © 1980 Tandy Corporation. Radio Shack's own DOS, shipped with disk-equipped Model IIIs. No public distribution grant exists, and it is included on the same footing as systems/trs80/model3.rom.
systems/trs80/disks/ld3-531.dsk LDOS 5.3.1, Model I/III (1991) © 1991 MISOSYS, Inc. Commercial third-party DOS sold for the TRS-80 through the 1980s, many owners preferring it to TRSDOS. Roy Soltoff grants free permission to everyone to download and use this software and documentation and to redistribute it to others, provided this notice is retained. That notice is retained here, and this row is the retention.

Game ROMs

The live site bundles several hundred 8-bit-era game ROMs across all platforms, plus the hundred arcade romsets of the ARCADE section (the repo and release zip keep only those an emulator's maintainer shipped with it — see ROMS.txt). These remain the copyright of their original publishers and are included for historical preservation, emulator integration, and educational use.

Notable inclusions where the rights holder has explicitly released the software under permissive terms:

For every other commercial title, redistribution on the live site is on a preservation / personal-use basis, and will be withdrawn the moment a rights holder asks — see Removal upon request at the top of this file.


IBM PC (systems/dos/games/)

Ten DOS games, 1982–1990, and the operating system they ran on. Their standing differs entry by entry, and the differences matter more here than on most shelves:

Game Year Author / publisher Standing
Paratrooper 1982 Greg Kuperberg / Orion Software Commercial; long out of commerce
Digger 1983 Windmill Software Commercial; the original documentation grants no redistribution, and Windmill is long gone
Beast 1984 Dan Baker, Alan Brown, Mark Hamilton, Derrick Shadel Free to copy and give away — stated on the game's own title screen, with a $20 contribution requested
Alley Cat 1984 Bill Williams / Synapse, published by IBM Commercial; a port of the 1983 Atari 8-bit original
Sopwith 1984 David L. Clark / BMB Compuscience; reverse-engineered source by Andrew Jenner GNU GPL v2 — the author released the source and latterly relicensed it under the GPL. The binary here is our own build of that source with twelve lines changed, so the plane can be flown from the cursor keys. The modified source, the change notices and the build recipe are at Retro-Jack/sopwith-genx, forked from the GPL source kept by Simon Howard at fragglet/sdl-sopwith, where Clark's own release is preserved
Rogue 1986 Michael C. Toy, Kenneth C.R.C. Arnold; PC port by Jon Lane, design by Glenn Wichman Binary identifies itself as the public domain version; the title screen still carries the 1983 A.I. Design copyright
Round 42 1986 Elven Software Company Shareware — the program's own notice grants a limited licence to copy it on a non-commercial basis, provided no fee is charged and the notice is not removed
Kingdom of Kroz 1987 Scott Miller / Apogee Software Freeware since Apogee's release of March 2009; Apogee explicitly retained all rights
The Adventures of Captain Comic 1988 Michael A. Denio Shareware, complete
Commander Keen: Marooned on Mars 1990 id Software / Apogee Software Shareware, episode one — the freely distributable one
MS-DOS 4.00 1988 Microsoft Corporation, jointly developed with IBM MIT licence — Microsoft released the MS-DOS 4.00 source in 2024 at microsoft/MS-DOS. The disk here is our own build of that source: the boot sector, IO.SYS, MSDOS.SYS, COMMAND.COM and the thirty utilities on it were all compiled from it with the period tools the release includes. CONFIG.SYS is ours, and there is deliberately no AUTOEXEC.BAT, so it boots the way a 1988 floppy did. Building it needed two repairs to the published source, both described in the wiki

Where a game states its own terms on screen or in its own documentation, those terms are what is recorded above rather than a third party's summary of them.

None of these files are in this repository or in the release zip, in keeping with the rule that the repo carries the emulators and not the games we added. ROMS.txt lists every filename and the folder it belongs in. Each game's dosbox.conf is here, because we wrote it. Sopwith and MS-DOS 4.00 are the two that could be — both are our own builds of released source, and we publish that source — but they are held out with the rest so the rule stays one rule rather than a rule with two exceptions.

Research and reference sources

Reference works — not bundled code — consulted to get the per-game gamedocs right (control schemes and in-game behaviour). The project leans on them and is glad to say so.


Bezel artwork

systems/_shared/bezels/ holds the transparent PNG monitor/console frames used by the CRT-bezel overlays. Every platform is now wired to a bezel (the per-emulator integration pass is complete).

Per maintainer policy, bezel / wallpaper / texture artwork is not provenance-tracked — these are anonymous hardware shots or generic CRT frames sourced from public web archives where the original photographer is no longer reachable, then processed locally (alpha-keying, screen cutout) in GIMP. Source-code dependencies stay fully tracked (above). Wired bezels ship without credit comments.

Exception — Amstrad.png is properly source-cleared and carries a binding obligation: cropped from File:Amstrad_CPC464.jpg (Wikimedia Commons) by Bill Bertram (username Pixel8), 7 May 2005, CC-BY-SA 2.5. Modifications inherit share-alike; systems/cpc/play.html carries the author + licence as an attribution comment.

(Note: jsbeeb's CUB monitor frame lives inside systems/bbcmicro/dist/ and systems/bbcmaster/dist/ as part of the upstream build, not this shared set.)


Sound effects

File What it is Source
systems/arcade/coin-drop.mp3 A coin dropping through a slot mechanism, played when a coin goes in through the arcade coin door's slot or the 5 key. Converted from the original WAV to MP3; otherwise unaltered. Licensed for this project — the sound was bought from the vendor below, so it is used here by right rather than on any preservation basis. On the web host only (genx-dos.fun and its staging copy): it is not in this repository or the release zip, and the coin works silently without it. Foley Sound Library (FSL05_07), published by Hollywood Edge; vendor SoundDogs.com

Fonts


CSS / JS dependencies bundled per-emulator

Other emulator bundles vendor their upstream dependencies; where a bundle's runtime is locally modified (e.g. ElkJS above, the atari800 / CPC / o2em WASM rebuilds) the change is recorded here or in the CHANGELOG.

On upstream licence files. Every GPL binary we ship now has the licence text beside it, which is what the GPL asks for:

File Covers
systems/_shared-ejs/COPYING (GPL-3.0) the EmulatorJS runtime, and with it all 14 bundles that share it — none of them carries its own core binary
systems/_shared-ejs/ejs/data/cores/COPYING (GPL-2.0) the libretro cores sitting in that directory
systems/jsspeccy/COPYING, systems/xroar/COPYING (GPL-3.0) those engines
systems/jtyone/COPYING, systems/js99er/COPYING (GPL-2.0) those engines
atari400/, atari800/ (GPL-2.0), bbcmicro/, bbcmaster/ (GPL-3.0), odyssey2/ shipped with the builds we compiled ourselves
m100/src/LICENSE VirtualT, BSD

apple1/ carries apple1js's MIT notice as systems/apple1/LICENSE, taken from the fork, and every pet2001 source file in systems/pet/pet2001/ carries Thomas Skibo's BSD notice in its header. The other permissively-licensed bundles — apple2/, msx1/, msx2/, cpc/ (MIT), trs80/ (BSD-2-Clause) — do not carry their notice files. Those licences do ask for the copyright notice to travel with the code, and the notice includes a per-project copyright line that cannot be reconstructed from here, so it has to come from upstream rather than be written locally. Until it does, the table above and its upstream links are the record. electron/ is a separate case: the ElkJS source carries a copyright line (© Darren Coles 2013) but no licence grant at all, so there is nothing to reproduce.

Do not read the absence of a licence file in a bundle as an unlicensed component — check the table first.


How to add a new attribution entry

When adding code or assets to the repo:

  1. Identify the upstream source and licence. If the licence is unclear, ask before bundling.
  2. Place the upstream LICENSE / COPYING file in the bundle directory alongside the binary or source it covers.
  3. Add a row to the relevant table above.
  4. Add a parallel entry in CHANGELOG.md under ## [Unreleased].
  5. If the licence is one of the BY-SA family, note in the table that modifications inherit share-alike — this affects what we can do with derived work.