HexIDE

Alpha

Demos

Five small programs, and two of them aren't demos.

Three of these are demoscene intros — the sort of thing that used to arrive on a floppy with a scroller and a chiptune. Two were written end to end by AI agents driving the running IDE through its automation tools; the six-part one was authored by a fan-out of agents and integrated live through the IDE the same way. All three were then compiled, unmodified, by the real VB6 compiler — the six-part one clean on the first attempt.

The other two are not intros. battleship is the reason to trust the first three: the same source, running identically on this interpreter and on the real 1998 compiler. bill-of-fare is the reason to distrust a green test suite — every part of it shipped broken at some point, and every one of those defects was found by a person opening the menu and looking.

Every one of them is plain VB6 source in the repository. The built executables are deliberately not committed: the tree-hygiene guard rejects a build artefact and CI enforces it, so each ships as source you rebuild rather than a binary you trust.

A cluster of glowing purple and cyan spheres over neon horizontal beams, with magenta text scrolling across.

neon-aurora

A six-part Amiga-style intro: raster plasma, copper bars, a 3D starfield, a glenz vector, vector balls and a sine-scroller — with real MIDI chiptune music underneath.

The plasma is computed per pixel into a 32-bit device-independent bitmap and blitted with StretchBlt; the music goes out through midiOutShort. Both of those are Windows API work, in VB6, written by an agent. It reflows when you resize the window.

6 classes · 2 modules · 1 form

A rotating sphere made of glowing vector balls, shaded from magenta through to blue.

neon-vertigo

130 vector balls distributed over a sphere on a Fibonacci lattice, spun on two axes through a pair of rotation matrices, projected with perspective, depth-shaded from magenta to blue and painted back to front.

It is a painter's-algorithm sort and a lot of trigonometry, which is exactly what this sort of thing was in 1996.

1 form

The word HEXIDE rippling on per-letter sine waves in cycling colours.

wild-ecstasy

“HEXIDE” on a per-character sine wave with the colours cycling through the spectrum. The smallest thing here — a form and a class, about a hundred lines together — and the best one to read first if you want to see what the interpreter handles.

1 class · 1 form

Firing...
(0,0) HIT
(0,1) SUNK
(5,5) MISS
(2,0) HIT
(2,1) HIT
(2,2) SUNK
AllSunk=False

battleship

Not an intro. An object-oriented Battleship engine — four classes, properties, an object array holding the fleet, and WithEvents raising the hits — written as ordinary VB6 with no graphics at all.

It exists to be run twice. The engine — those four classes, unchanged — runs on HexIDE's interpreter as a regression test, and inside a native executable built by the real 1998 compiler. That trace is what both of them produce, line for line. Only the driver around it differs: the archived project writes to a file, which needs file I/O the interpreter does not have, so the test harness prints to Debug instead.

That is the whole claim, and it is deliberately narrow. A tree-walking interpreter written in 2026 and a compiler shipped in 1998 agreeing exactly — on classes, events and object arrays — is the difference between “we implemented VB6” and “we checked”.

4 classes · 1 module · no forms

A VB6 form with its File menu open, showing separators, right-aligned keyboard shortcuts and a greyed-out item.

bill-of-fare

Also not an intro. A tour of the VB6 menu surface — a menu bar, submenus nested two deep, separators, shortcuts that fire from anywhere, access keys, a disabled item, and click dispatch to the event procedure. Bill of fare is the old term for a menu, which is the joke and the whole subject.

Every element in that one screenshot was broken at some point. The bar was empty; then the separators drew nothing; then a two-pixel dot; then near-black. Each of those shipped under a green test suite, and each was found by a person opening the menu and looking at it.

That is why it is archived rather than deleted. The assertions that passed throughout were true and useless — the item exists, the background is not null — and a picture of an open menu is the only artefact that would have caught any of it.

1 form · 16 menu items · 3 separators · 5 shortcuts

Read the source

All five are in the repository.

Each lives in its own folder with the complete, self-contained VB6 source and a README explaining how the effect works. If you have VB6 installed you can rebuild any of them with VB6.EXE /make.

Browse the demos on GitHub