A downloadable Game Engine for Windows

 ██████╗██╗   ██╗██████╗ ███████╗██████╗ ██╗ ██╗ ██████╗  █████╗ 
██╔════╝╚██╗ ██╔╝██╔══██╗██╔════╝██╔══██╗██║ ██║██╔════╝ ██╔══██╗
██║      ╚████╔╝ ██████╔╝█████╗  ██████╔╝██║ ██║██║  ███╗███████║
██║       ╚██╔╝  ██╔══██╗██╔══╝  ██╔══██╗██║ ██║██║   ██║██╔══██║
╚██████╗   ██║   ██████╔╝███████╗██║  ██║╚████╔╝╚██████╔╝██║  ██║
 ╚═════╝   ╚═╝   ╚═════╝ ╚══════╝╚═╝  ╚═╝ ╚═══╝  ╚═════╝ ╚═╝  ╚═╝
                       ENGINE OF THE PAST
                 32-BIT MS-DOS // VGA MODE X PIPELINE

A software 3D engine built for MS-DOS constraints

Software-rendered.

Fixed-point math. 

VGA Mode X. 

Includes the editor and full reference docs.

What CyberVGA is

CyberVGA is a from-scratch 32-bit DOS engine built around late MS-DOS hardware limits.

No GPU pipeline. No modern graphics APIs. Fixed-point arithmetic in performance-critical paths.

Rendering is CPU-side, with:

  • VGA Mode X (320x240 planar memory)
  • Q16.16 fixed-point math
  • C + NASM software raster path

This is not a retro look filter. It is a constraint-driven engine.

Included in this release

  • Windows 64 port of the engine (can be found in CVGAWin64.7z )
  • Runtime binaries (game/viewer targets)
  • CyberEdit (CEDIT) world editor
  • Complete reference docs
  • Asset pipeline tools (including CMS exporter tooling)
  • Demo content/world data

CyberEdit runs in the same rendering environment as the runtime, so what you author is what you see.

Core features

Rendering

  • Software raster pipeline in C + NASM
  • Mode X planar rendering with page-flip workflow
  • Dynamic sky/time-of-day system (sun/moon + stars + gradient)
  • Distance fog via lookup/shade tables
  • Static world rendered through brush-to-octree baking/rendering

World and entities

  • CWR8 world format (current)
  • Brush authoring with baked octree sidecar support (.COC)
  • World meshes, billboards, particle emitters, sound sources
  • Entity authoring pool up to 64 world spawns
  • Runtime entity pool up to 32 active entities
  • Component-style entity flags (mesh/sound/light/physics/gravity/think/etc.)
  • Sphere collision for world/entity interactions

Audio and tools

  • Sound Blaster spatial mixing path (8-source mixer)
  • MPU-401 MIDI path
  • In-engine editor with Play Mode (F12)
  • Undo/redo, snap grid, debug overlays
  • Full engine/editor reference manuals included

Technical snapshot

  • Language: C (DJGPP/MSVC) + NASM
  • Runtime model: 32-bit protected mode on DOS (DPMI)
  • Renderer: software (CPU)
  • Math: Q16.16 fixed-point in critical runtime paths
  • Target class: 486 / early Pentium era constraints (or modern emulation/DPMI hosts)

Most hard limits are compile-time constants documented in the included engine reference.

Reference docs in this build

  • CENGINE.TXT Engine architecture, world format, render path, math model, module limits
  • CEDIT.TXT Editor controls, workflows, key bindings, object editing, play mode, save/load/bake flow

These are the same docs used during development, now included in the package.

Design approach

CyberVGA treats hardware limits as design inputs, not nostalgia props.

  • Explicit memory budgets
  • Explicit arithmetic costs
  • Minimal abstraction over core systems
  • Visible, inspectable behavior from tools through runtime

Goal: not to imitate the past visually, but to work honestly inside its technical envelope.

Licensing

This itch.io release is proprietary. 

Source and assets are not included here unless explicitly stated for a given release.

Follow development

If you’re into software rasterization, fixed-point engines, DOS-era rendering, or low-level graphics engineering, follow the project and check devlogs for updates.

Still C + NASM. Still software render-first. Still built around real constraints.

Updated 22 days ago
StatusReleased
CategoryTool
PlatformsWindows
Release date Aug 22, 2025
AuthorNovus Idea
Tags3D, DOS, Game engine, Level Editor, MS-DOS, Retro, software-rendering, vga
Average sessionAbout a half-hour
LanguagesEnglish
InputsKeyboard, Mouse
ContentNo generative AI was used

Download

Download
CVGA.7z 17 MB
Download
CVGAWin64.7z 2.6 MB

Install instructions

DOSBOX WINDOWS PACKAGE

  1. Download the CVGA.7z archive
  2. Extract contents
  3. Run: RUNCVGAVIEWER.BAT → start runtime + demo (uses ASSTS\WORLD\WORLD.CWR) RUNCEDIT.BAT → start world editor

DOSBox-X is included. No configuration required.

WINDOWS PORT

  1. Download the CVGAWin64.7z archive
  2. Extract contents
  3. Run: RunCvgaViewer.BAT → start runtime + demo (uses ASSTS\WORLD\WORLD.CWR) RunCEDIT.BAT → start world editor

CONTROLS WASD / Mouse — movement & look F12 — toggle Play Mode (editor) ESC — exit

Development log