Skip to content

Project Overview

Retro Jack edited this page May 11, 2026 · 49 revisions

Project Overview

GenX-DOS is a static page that recreates a 1990s DOS prompt in the browser. Visitors land at a fake AMIBIOS POST screen, get dropped into a C:\> prompt, and navigate numbered menus to launch emulated games — all running locally in the page.

Boot flow

  1. index.html — instant <meta refresh> to prompt/. The actual POST animation lives inside the prompt page.
  2. prompt/index.html — the DOS terminal. On load, init():
    • renders the AMIBIOS POST (AMI logo, Tseng video BIOS line, CPU/coprocessor/memory test with animated 0000 → 8064 KB count, six device-detection lines streamed at 500 ms each, footer with BIOS ID),
    • pauses 5 s with the full POST on screen,
    • clears, renders the System Configuration table,
    • prints Starting GenX-DOS . . . and Type "help" <enter> for assistance.,
    • calls initTerminal() which wires up the keyboard and runs AUTOEXEC.BAT.
  3. AUTOEXEC.BAT runs menu — the root menu.bat does cd emulators\nmenu, dropping the user straight into the EMULATOR LAUNCHER.
  4. The user types a number (or a command name) to navigate.
  5. Selecting a game opens the emulator in a new tab via window.open.

Technology

  • Pure HTML + JavaScript. No build step, no frameworks, no dependencies.
  • Each visible character is its own <div> styled with a CSS background-position into a 12×12 CP437 sprite sheet.
  • The virtual filesystem is a JS object tree (prompt/javascript/fs.js).
  • 13 copied emulators live under emulators/ with bundled local ROMs/discs/cartridges — BBC Micro, Acorn Archimedes, NES, Sega Genesis, Atari 2600, Atari 7800, MS-DOS, MSX (MSX1/MSX2/MSX2+), GCE Vectrex, Atari ST, Sinclair Spectrum, Sinclair ZX81, and Tandy CoCo. See Emulators.

Clone this wiki locally