Loading…
TS-SYS-03B // DOS · 386 · VGA MODE 13h

Castalia 92

Castalia 92 is the Windows 95 every 386 owner dreamed of in 1992: a complete graphical desktop — overlapping windows, a taskbar and Start button, thirty-plus built-in programs, eighteen colour themes, a demoscene screensaver — that boots from DOS and flies on 4 MB of RAM. It is free, MIT-licensed, and written in period-correct C89.

← BACK TO SYSTEMS
The Windows 95 your 386 never got.
v0.52 · IN DEVELOPMENTDOS 3.3+ · 386VS Windows 95
120RESIDENT KB
30+PROGRAMS
18THEMES
16DEMOSCENE FX
FREE · OPEN SOURCE (MIT)
IBM5153
DESKTOP · GRAMOPHONEPlaying a MIDI on the classic teal desktop · LCD, spectrum, playlist
SWITCH CHANNELS TO SEE MORE
01 // WHAT IT IS
The system, no marketing
386 · VGA 13h

The constraint is the point. Castalia 92 targets a real-mode 386 with VGA and 4 MB of RAM, and it is built almost entirely with the tools and rules of that era: no DOS extender, no protected mode, no floating point, no external libraries. If a 1992 machine cannot run it, it does not ship.

"Everyone who owned a 386 remembers the day Windows 95 arrived and their machine could not run it," said Dave Abellan, creator of Castalia 92. "Castalia 92 is for that machine. It is the desktop 1992 deserved: the whole Windows 95 feeling — the taskbar, the themes, the little startup chime — running happily in the memory footprint of a device driver."

The trick is VGA Mode 13h (320×200, 256 colours): a full off-screen back buffer composited in system memory and presented with partial blits — the compositor tracks damage, so a click repaints a window, not the screen. Title bars sweep a reserved 32-entry DAC gradient ramp, the iconic navy-to-sky bloom. The resident shell stays around 120 KB so DOS programs launch comfortably, and a free-memory mode unloads it entirely to give a big game every last kilobyte.

The Windows 95 your 386 was promised and never got — three years early and 120 KB small.
02 // WHAT IT DOES
What you can do with it
8 CAPACIDADES
/01

OVERLAPPING WINDOWS

Drag, resize, minimize, maximize and shade (roll-up). Double-click a title bar to maximize, right where your muscle memory expects it. Cascade included.

/02

TASKBAR + START BUTTON

A taskbar with one button per window, a tray speaker icon, a live clock and the Start button (yes, "Inicio": the studio is Spanish, and so is the castle on the crest). A cascading Start menu with flyouts and per-item icons.

/03

GRAMOPHONE

The media player: WAV as real digital audio on a Sound Blaster, a Covox Speech Thing or a Disney Sound Source on the printer port (or PWM tricks on the bare PC speaker), plus polyphonic MIDI with General-MIDI voices on an AdLib/OPL2 FM chip. LCD strip, spectrum analyzer with peak caps, playlists.

/04

SYSTEM INSPECTOR

A live animated dashboard: a hardware readout with status LEDs, an oscilloscope, an LED clock, charging memory/disk gauges and a BIOS equipment strip.

/05

BENCHMARK · CASTALIA SCORE

A six-test suite (integer, memory, video kernels) indexed against a 386SX/16, with a composite CASTALIA SCORE and a machine-class verdict, drawn as animated bars.

/06

EIGHTEEN THEMES

Eighteen complete schemes restyling every pixel of chrome — classic, moncloa, matrix, redmond, hotdog, sunset, sakura, dos… — live-previewed in Settings and cross-faded via a DAC ramp when applied.

/07

THIRTEEN GAMES

Minesweeper, klondike with a winning cascade, Reversi, snake, breakout, falling blocks, ten-floor sokoban, sound memory, Lights Out, fifteen, tic-tac-toe, Pong and 2048. All with sound effects and persistent high scores.

/08

FREE-MEMORY LAUNCH

Mark a shortcut freemem=true and Castalia unloads itself completely to give a big DOS game every last kilobyte, then returns when the game exits.

03 // REAL SCREENSHOTS · 320×200 · MODE 13h
The full mid-90s liturgy, pixel by pixel
Rendered at the native 320×200 by the shell's own drawing routines
04 // ARCHITECTURE
How it's built inside
INTERNALS
01

MODE 13h COMPOSITOR

VGA 320×200×256 with a full back buffer in system memory, presented with partial blits: the compositor tracks damage, so a click repaints a window, not the screen. Mode 12h (640×480×16) fully supported with planar drawing.

02

SCENE-CACHED DESKTOP

The scene is cached: uncovering a window restores pixels from cache instead of recomputing the wallpaper. Cross-fades (themes, screensaver, shutdown) are DAC ramps — free at 320×200.

03

Q8 FIXED-POINT MATHS

Everything animated is fixed-point integer arithmetic on one shared 256-entry sine table. The voxel uses a per-column y-buffer; the corridor is a DDA raycaster with a 16×16 bit-packed map (the whole level costs 32 bytes).

04

REAL-MODE BUDGET

Real mode gives one 64 KB near-data segment (DGROUP) and it fills fast. Large tables — sine LUTs, textures, the MIDI buffer — live in far memory by design. The resident shell stays around 120 KB.

// HOW A 2026 TEAM SHIPS 1992 SOFTWARE
A screenshot pipeline for a machine that cannot take screenshots
Every visual change is verified in DOSBox before a real 386 ever exists to look at it, and every build is compiled with the era's toolchain.
01

Screenshots of the real binary

CI boots the compiled .EXE in DOSBox over Xvfb and captures the screen with ImageMagick: the images come from the same build that ships, not from a reimplementation.

02

16-bit Open Watcom build

GitHub Actions builds the real 16-bit binaries with Open Watcom (wcc, medium model) on every push.

03

Style lint + consistency

A lint script enforces the house C89 style; another keeps the Makefile, BUILD.BAT and linker script in lock-step and the version honest.

04

Release packaging

The pipeline packages the release folder. The screenshots in this press kit come from that same pipeline, at the native 320×200.

SPECIFICATIONS · Full spec sheet
CPU
Intel 386SX or better (486 recommended)
RAM
4 MB · ~120 KB resident · free-memory mode
VIDEO
VGA 320×200×256 (Mode 13h) or 640×480×16
INPUT
Keyboard · Microsoft-compatible mouse
AUDIO
PC Speaker · Sound Blaster · AdLib/OPL2 · Covox · Disney
OS
DOS 3.3+ · real mode, no extenders
CODEBASE
22,611 lines across 60 C files · pure C89, no dependencies
DEPENDENCIES
None. Not one library.
TOOLCHAIN
Open Watcom C (wcc) · 16-bit real-mode
LICENSE
MIT · source included
// PERIOD-CORRECT, BY DESIGN
Constraints are a forcing function for craft
Every feature in Castalia 92 — the compositor, the FM synth, the raycaster — had to be rethought until it fit in 16-bit integers and kilobytes of RAM. The result is software with the snap of the machines it loves.
CODEMIT

Pure C89 across 60 files, without a single vendored external library. Source included; redistribute it with your coverage, cover-mount CDs included.

DEPENDENCIESZero

Not one external library. No extender, no protected mode, no floating point. Just C89 and direct VGA.

THE RULEThe era

If a 1992 machine cannot run it, it does not ship. The constraint is the point, not an obstacle.

CREATED BYDave Abellan

Tombatossals Softworks LLC. Small, frequent releases on the way to 1.0.

CREATED BY · Dave Abellán · Claudio di Castello◆ github.com/Tombatossals-Softworks-LLC/CastaliaOS-92
05 // STATUS & ROADMAP
Where it is and where it goes
4 EDICIONES
v0.52TODAYThe version the code itself declares (CAST_VERSION in src/castalia.h). A desktop feature-complete for daily retro use: the window manager, 30+ programs, 13 games, audio on three devices, 18 themes, the 16-effect screensaver, the installer and the documented INI format. Four of the five items on the repository's own v1.0 checklist are closed.
v0.51PreviousCovox Speech Thing and Disney Sound Source (lptdac= in the INI): a 386 laptop with no ISA slots is now a music machine. Localised Start button (startlabel=).
ROAD TO 1.0TargetHardening on real iron: a torture lap across 386SX, 386DX and 486 machines and the popular mouse drivers, plus the emulator matrix. A final memory diet and stability pass.
AFTERThe dreamCommunity theme and icon packs (formats already frozen and documented), more demoscene effects and more speakers of the era. Gravis Ultrasound remains on the list.
// AVAILABILITY
READY RELEASE (FREE)INSTALL.EXE INSTALLERSOURCE ON GITHUBCOVER-MOUNT CD ✓
06 // QUESTIONS
Reasonable doubts
5 PREGUNTAS

It is a graphical operating environment: a desktop shell that runs on top of DOS. It does not replace DOS; it puts windows, a taskbar, themes and thirty programs on top, and steps aside when you launch a game that needs the memory.

// SIGUIENTE SISTEMACastaliaOS 98 PEDESKTOP · FREEDOS · VS Windows 98 SE
CHANNEL #0x4C7A · ON AIRREC ● TC 02:47:18SIGNAL ▮▮▮▮▮ 100% · AES-256
TRANSMISSION · ENCRYPTED// SUBSCRIBE

Subscribe to the encrypted channel.

Devlogs, patches and internal leaks. Zero spam, zero analytics. Just what matters, when it matters.

9DEVLOGS PUBLISHEDSINCE 2025
2LANGUAGESES · EN
0SPAM · TRACKINGEVER
// AGENT_INTAKEv3.07
JOIN DISCORD
OPENING YOUR MAIL CLIENT · confirm the send
CIFRADO100%
PRIVACIDAD100%
FRECUENCIA2-3/MES
// AES-256// 0 ANALYTICS// REPLY TO LEAVE// HOSTED IN VIRGINIA
// SIGNED · PRINCETON · ILLINOIS · 2025▮ ▮ ▮ ▮ ▮ ▮ ▮ ▮ ▮ ▮ ▮ ▮ ▮ ▮ ▮ ▮ ▮ ▮ ▮ ▮ ▮ ▮END_OF_TRANSMISSION_◆