os8088 / Programs and Features

Spotlight

A closer look at what's new.

October 2026

WireFleet
The WireFleet window on VGA: two 10 by 10 navy grids, your fleet of grey ships on the left and the enemy waters on the right, marked with red crosses for hits and white dots for misses, over a short chat log.

WireFleet

WireFleet, naval battles between two PCs

Hide five ships, then take turns firing at the other PC's fleet across a serial cable.

Each PC keeps its own fleet secret and judges the shots fired at it. If the cable comes out, the battle waits for it.

PCs
2
over the cable
2,400 baud
each fleet
5 ships
Sticky Apps
The os8088 desktop on VGA with a round blue clock, a yellow sticky note and a white October calendar on it, and a Disk window over part of all three.

Sticky Apps

Sticky Apps, a calendar, notes and a clock that live on the desk

Small programs that sit on the desktop under every window, the way a calendar and a sticky note sit on a real desk.

Desk Calendar keeps appointments, tasks and reminders. Sticky Note shows notes that are plain text files you edit in Note Pad. Desk Clock has nine faces and an alarm. Leave one open and it is back in the same place after a restart.

a clock check on an XT
0.4 ms
memory, all three open
49KB
all three on the disk
28KB
WireChat
The WireChat window in colour on VGA: four rooms and a private conversation with a red unread badge on the left, the lobby's messages with each nick in its own colour in the middle, and five members with coloured status marks on the right.

WireChat

WireChat, chat rooms for a 1981-class PC

Four public rooms, private messages, @mentions and a list of who is online, reached from a 4.77 MHz PC with a network card.

It talks to a server on os8088.com in plain HTTP, one short request at a time, because encryption is out of reach of an 8088. The server holds each question open until there is something to say.

rooms
4, plus private messages
a quiet window asks
once every 50 seconds
memory
48,875 bytes
Kernel in ROM and the HMA
The os8088 Task Manager on a CGA screen of a 128KB IBM PC with the kernel ROM installed. Its memory line reads RAM 69 of 128K, HEAP 10 of 69K.

Kernel in ROM and the HMA

Part of the kernel in ROM, or above 1MB

37KB of the kernel can run from a ROM in the IBM PC's five spare sockets, or from the memory just above 1MB on a 286 or later.

Programs get that memory back. On a 128KB IBM PC the free memory goes from 32KB to 69KB. A ROM is built for one exact kernel, and any other kernel ignores it and boots as if it were not there.

free memory, 128KB PC
32KB to 69KB
ROM space used
40KB in 5 sockets
286 or later
37KB, from a file
isoTron
The isoTron window on VGA: a raised slab in 3D with a magenta rim and a blue floor, a short cyan wall rising at the front and a magenta wall with a corner near the back.

isoTron

isoTron, a light-wall duel on a 4.77 MHz PC

You and the computer on a raised slab, each leaving a wall the other cannot cross, after a 1982 IBM PC game.

Win two rounds in a row and the next arena is stacked one slab higher. It plays in a window or full screen in colour, and a step costs about half a millisecond on a 4.77 MHz PC.

tallest tower
4 slabs
a step on an XT
about 0.5 ms
memory
about 118KB
WireBall
The WireBall window on VGA: the WIREBALL title over two drawn monitors joined by a cable, and buttons for Serial Match, Practice, How to Play and Sound.

WireBall

WireBall, Pong across two PCs and a serial cable

One Pong court stretched across two monitors: the ball leaves one PC and arrives on the other.

The two games find each other over a null modem cable and pick sides by themselves. On a 4.77 MHz PC the court draws 46 to 59 frames a second.

PCs
2
over the cable
2,400 baud
first to
11 points
PiXEL
The PiXEL window on VGA showing a sunflower JPEG dithered to sixteen colours, with a toolbar, a column of tools, and Navigator, Histogram and file information panels on the right.

PiXEL

PiXEL, an image viewer and editor for a 4.77 MHz PC

Opens JPEG, PNG, GIF and nine more formats on an IBM PC from 1981, and shows them on whatever screen it has.

It dithers each picture to the desktop's colours, goes full screen in up to 256 colours on a VGA, and can crop, turn, adjust and save. On a 4.77 MHz PC a 320 by 240 PNG opens in 15 seconds.

formats it reads
12
colours full screen
256
size
112KB
Covox
The MIDIRack window on VGA starting a song, its Now Playing display reading output Covox (LPT DAC) and its status line Covox at 378h, 8-bit DAC synth at 16,124 Hz.

Covox

The Covox: digital sound from a printer port

The 1986 sound plug that is eight resistors on a printer port, now an output for os8088's four players.

MIDIRack, Tracker, Audio and the Video Player play through it once it is picked on the Control Panel's Sound page. On a 4.77 MHz PC, MIDIRack holds 6,214 samples a second through it.

parts in a Covox
8 resistors
printer ports offered
3
players that use it
4
MIDIRack
The MIDIRack window on VGA playing BATTLE1.MID through an AdLib: a playlist of ten songs, a black Now Playing display at 00:10 of 01:29, coloured transport buttons, and a channel rack of sixteen instruments with green level bars.

MIDIRack

MIDIRack, a MIDI player for whatever sound hardware the PC has

A MIDI music player that plays through an FM card, a Sound Blaster, an external sound module or the PC speaker.

It shows a level meter and the instrument for each of a song's sixteen channels, and comes with ten songs. On a 4.77 MHz PC with an AdLib card, the playing costs the computer almost nothing.

ways to play
6
channels shown
16
size
28.8KB
REDLINE
The REDLINE Summary view on VGA, run on an emulated 4.77 MHz IBM PC: a 1.02x headline with separate CPU, RAM and Graphics averages, a system snapshot, and blue, green and red bars each between 1.00x and 1.07x.

REDLINE

REDLINE, a benchmark measured against a 4.77 MHz PC

A CPU and graphics benchmark that scores every machine against the first IBM PC.

It times 25 fixed jobs, from arithmetic and memory copies to a Mandelbrot set and a shaded cube, and you can watch the drawing ones happen. The reference PC was measured on an emulator that keeps the 8088's timing cycle by cycle.

jobs timed
25
the IBM PC scores
1.00x
size
14.9KB
1942
1942 full screen on VGA: a grey fighter at the bottom of a blue sea between green islands fires pairs of shots up at three enemy planes.

1942

1942, an air-combat game for the 8088

A scrolling air-combat game after the 1942 arcade game, in 8086 assembly.

Fly 32 stages up a sea of islands and shoot down the formations, alone or taking turns with a friend. The graphics card's own hardware scrolls the screen, so it plays on VGA or CGA at 4.77 MHz, with music on an AdLib or Sound Blaster.

stages
32
cards
VGA, CGA
crowded sky, 4.77 MHz
6.7 frames/s

September 2026

DrMarco
DrMarco full screen on VGA: a bottle of red, yellow and blue viruses with a landed capsule, the score and level on the left, and the doctor, the next capsule and three germs on the right.

DrMarco

DrMarco, a capsule puzzle for the 8088

A falling-capsule puzzle after Nintendo's Dr. Mario, in 8086 assembly.

Two-coloured capsules fall into a bottle of viruses; line up four of a colour to clear them. It plays full screen on VGA or CGA at 4.77 MHz, with music on an AdLib or Sound Blaster.

levels
0 to 20
cards
VGA, CGA
a move, 4.77 MHz
1.4 ms on CGA
Video Player
The os8088 desktop in black and white: a Video Player window showing a chip labelled os8088 on a circuit board, above a scrub bar and a row of buttons, with a Timer window running below it.

Video Player

Full-motion video on a 4.77 MHz 8088

Video with sound on the IBM PC of 1981, off a floppy or a hard disk.

Videos are prepared on a modern computer into a list of the bytes that change each frame, so the PC only copies them into place. It plays in a window, full screen, or on the desktop while other programs run, on CGA, Hercules and VGA.

frames a second
30
less disk than XDC
21-46%
sound
card or speaker
Gorillas
Gorillas full screen: a yellow sun over a skyline of teal, grey and red buildings on a dark blue sky, an orange gorilla on a roof at each end, and the angle, velocity, wind and score at the top.

Gorillas

Gorillas, without the BASIC

The banana-throwing game that came with QBasic, rewritten in 8086 assembly.

Two gorillas on a random city skyline throw exploding bananas, allowing for gravity and the wind. Play a friend at the same keyboard or the computer, in a window or full screen, on VGA, CGA or Hercules.

players
1 or 2
on the disk
16,206 bytes
cards
VGA, CGA, Hercules
Pixelstein 3D
Pixelstein 3D full screen on VGA: a stone corridor with blue banners on the left, wood panelling on the right, the pistol at the bottom, and a yellow status bar reading FLOOR 1, SCORE 0, LIVES 3, HEALTH 100 and AMMO 8.

Pixelstein 3D

A raycaster on a 4.77 MHz PC

A first-person shooter in the style of Wolfenstein 3D, written in 8086 assembly.

Eight floors of a stone castle, with doors, keys, guards and dogs. It plays in a window or full screen, in 256-colour Mode X on VGA, four colours on CGA, or black and white on Hercules.

floors
8
on a 4.77 MHz XT
8.5 fps
textured game
262KB
DOS
The DOS box open on the os8088 desktop, its console showing os8088 DOS Version 3.31 and the result of a DIR command listing APPS, GAMES, MEDIA, README.TXT and SYSTEM.

DOS box

Run MS-DOS programs on os8088

A program that answers the calls a DOS program makes, so DOS software runs on a system that is not DOS.

A .COM or .EXE on any floppy runs from a double-click. It can run in a window with os8088 still loaded, or take the whole machine and 149 KB more memory with it. Twelve of fifteen real DOS programs tested on a 4.77 MHz 8088 run.

reports as
DOS 3.30
OS stays loaded
437 KB
OS shuts down
586 KB
Dock
A CGA screen with the dock hidden and a file window named APPS zoomed to the bottom edge, listing six files.

Dock

Room to work on a 200-line screen

Put the dock on the left or right edge, or hide it to a single line.

A new page in the Control Panel moves the strip of program tiles. On a CGA screen, where the dock used to take 24 of 200 rows, hiding it lets a zoomed file window list six files instead of four.

rows given back on CGA
23 of 200
edges
bottom, left, right
side dock on CGA
7 tiles
Dot Delirium
Dot Delirium filling the screen: a blue maze on black with white dots, Smiles in yellow at the lower left, four ghosts, and the word PAUSED, with the score, high score, level and lives in a column at the left.

Dot Delirium

A maze chase sized to the screen

Guide Smiles through three mazes, eat the dots, and turn out of sight to escape four ghosts.

Written from scratch for os8088. The ghosts patrol until they see you down a straight row or column. The board is 28 by 31 tiles on every display, and the tiles grow to fill the screen it is given.

boards
3
on a 4.77 MHz XT
16 to 18 frames a second
smallest machine
128KB
Clear Skies
The view from an aeroplane on the runway at Paris-Issy: blue sky, green ground, a grey runway running to the horizon, hangars to the left and the Eiffel Tower in the distance, with an instrument panel below.

Clear Skies

A flight simulator that fills its shapes

Take off from Paris-Issy with the Eiffel Tower on the horizon, fly, and land -- on a machine from 1981.

Nine airfields, five aeroplanes, and ground and buildings drawn solid rather than as outlines. A filled shape costs its height instead of its area, because it is drawn by walking its two edges down the screen and filling the row between them. On a 4.77 MHz IBM PC/XT that is between 5.8 and 6.5 frames a second.

aeroplanes
5
places to fly from
9
on a 4.77 MHz XT
5.8 to 6.5 frames a second
Apple II Plus
An os8088 window titled Apple II Plus Emulator showing APPLE ][ and a flashing cursor at the Applesoft prompt, with a status strip along the bottom.

Apple II Plus

An Apple II Plus in an 8086 window

Applesoft BASIC at its prompt, the real Apple ROMs underneath, and a status line that says how slowly it is going.

A 48K Apple II Plus: the 6502, all four screen modes, the keyboard and the one-bit speaker, with Applesoft and the character shapes carried inside the program file. On a 4.77 MHz XT the emulated Apple runs at 0.54 per cent of a real one, and the status line prints that figure every second rather than leaving anyone to guess.

guest
Apple II Plus, 48K
screen
280 x 192
speed on an XT
0.54% of a real Apple
BBS terminal
A bulletin board's screen filling the display: a red double-line box holding a main menu, a shaded gradient and a strip of coloured blocks.

BBS terminal

The terminal learns to draw

Sixteen colours, the block characters bulletin-board art is made of, and eighty columns by twenty-five rows.

The terminal used to print what arrived and throw the escape codes away. It now acts on them, gives the whole screen to the board when you press Ctrl+], and downloads files: the board starts a Zmodem transfer, the terminal reads the name off the wire and asks which disk to put it on.

screen
80 x 25, colour per cell
colours
16 foreground, 8 background
transfers
Zmodem, receiving
PaccMan
The PaccMan attract screen showing CHARACTER / NICKNAME and the four ghosts drawn beside their names in red, pink, cyan and orange.

PaccMan

The arcade Pac-Man, in C

A second Pac-Man that shares nothing with the first: the Namco maze, the four real ghosts, and the arcade's own timings.

The tall 28 by 36 arcade field, the board's own tile and colour tables, the ghost personalities and the attract screen that introduces them one at a time. It was meant to be the faster Pac-Man on an old machine and measured out slower: 2.18 frames a second against the hand-written assembly one's 4.14 on a 4.77 MHz XT. That assembly port has since been retired, so this is the Pac-Man that ships.

field
28 x 36 tiles
written in
2,050 lines of C
on a 4.77 MHz XT
2.18 frames a second
Scribe
Scribe with a document open, a bitmap picture of a chip reading os8088 placed at the top of the page.

Scribe

A word processor that takes pictures

The Word work-alike, forked into a program of its own so that one thing could be added: a picture in a document.

It reads BMP, PCX and PIX files, decodes all three into one sixteen-colour form and puts the picture in the text. A plain save writes RTF, where the picture travels inside the document at the depth it arrived at; saving as a Word .DOC converts it down to one bit, because that is what a 1985 Word file holds.

reads
BMP, PCX, PIX
keeps
16 colours
saves
RTF, or .DOC
Hibernate
The os8088 desktop with a Hibernate window asking whether to save everything in memory to drive C and stop the machine.

Hibernate

Stop the machine, and come back to it

Every byte of memory written to the hard disk, so the next start puts the same windows and the same running programs back.

Pick Hibernate and os8088 copies its whole memory to a file, then stops with a line saying it is safe to switch the power off. Start it again and it offers to put you back where you were, down to what was on the clipboard. What stays in the machine while you are not using it is 259 bytes.

saves
all 640KB of memory
always in the kernel
259 bytes
disk operations
about 80 each way
Loom
Loom editing the Pong project on the os8088 desktop, with a sidebar listing the project's files and the markup for the game in the editor pane.

Weave and Loom

Write a program on the machine

Markup, script and formulas, compiled into one file by an editor running on the 8088 itself.

Describe the window in markup, write the code that runs when a button is pressed, and put formulas in the cells. Loom turns those files into a program you double-click to run -- and produces the identical bytes the compiler on a modern computer would. Three examples come with it, including a game of Pong with a computer opponent.

build it on
a 4.77 MHz 8088
Pong runs at
17.7 frames a second
Pong is
1,008 bytes
Sheet
Sheet running on os8088 with a small budget in it, showing a total of 22.75 and an average of 7.583333333 worked out by formulas.

Sheet and Chart

A spreadsheet, and something to chart it with

Four worksheets, 25 functions, decimals worked out in software, and seven kinds of chart.

Sheet is a workbook with formulas, formats, sorting and a macro language, built to look and behave like Microsoft Excel 2.1. It reads and writes the spreadsheet formats of the period, so a file goes to a modern Excel and back. Chart draws the numbers and saves the picture.

each worksheet
256 x 16,384 cells
functions
25
chart types
7
Tank Attack
Tank Attack in play: a wireframe horizon, a centred gunsight, a radar circle and an obstacle, filling the whole screen.

Tank Attack

A wireframe tank duel

About a hundred lines a frame, on three graphics cards, without ever clearing the screen.

Drive across a plain, dodge cubes and pyramids, and shoot enemy tanks that turn toward you and shoot back. Clearing the screen would cost a whole frame on an 8088, so each frame erases only the rows the last one drew into. Forty measured frames contained no uneven frame.

lines a frame
about 100
graphics cards
3
screen clears
none
Control
The os8088 desktop on an EGA card at 640x350 in the colour theme, with a teal desktop and a Control Panel window open.

EGA

The fourth graphics card

os8088 mistook every EGA for a VGA and drew a screen a third taller than the monitor could show.

An EGA is IBM's 1984 card, between CGA and VGA. The bottom 130 lines of the desktop, part of the dock included, were off the tube. os8088 now recognises an EGA and drives it at 640 by 350 in sixteen colours. Reported by someone running it on a real IBM 5160.

screen
640 x 350
colours
16
new drawing code
none

August 2026

Disk
Drive C open on the os8088 desktop after booting from a USB stick, listing every program folder and 31,024K free.

No floppy drive needed

Boot os8088 from a USB stick or a CD

One 32MB drive C with every program on it, and nothing to install.

os8088 has always shipped as floppy disk images, and hardly anything still has a floppy drive. Write one new file to a USB stick, or burn the other to a CD, and a real PC starts straight into the desktop -- both word processors, the story reader, the CP/M emulator, the Commodore 64 and every game already on drive C, with about 30MB free to save into.

drive C holds
every program
free space
about 30MB
needs
legacy BIOS boot
FTP Server
The os8088 FTP server window, showing a log of the commands it has answered for a client that has just uploaded, downloaded and listed files.

The machine answers

An FTP server on a 1981 IBM PC

Drop a file onto the machine from a laptop, while it is running.

Every earlier network program reached out -- a web browser, a Telnet client. This one answers. Another computer on the same network connects, asks the questions, and gets its answers off this machine's own floppies. On a real IBM 5150 the transfer rate went from 7 KB a second to 30 KB a second over one working session.

clients
one at a time
measured on iron
30 KB/s
encryption
none, by nature
VICE (C64)
An os8088 window containing a Commodore 64 startup screen, ending in READY and a cursor.

First impressions

VICE brings the Commodore 64 to os8088

Commodore BASIC and VIC-II graphics -- with a 386 or faster required.

VICE 3.10 supplies the model of the 6510 processor, screen chip and both timer chips. os8088 puts them behind Commodore's own ROMs in a window. An XT or 286 can start the emulator, but neither runs it at a useful speed. The port was developed with assistance from Claude Code and Codex by OpenAI.

software
VICE 3.10
guest
MOS 6510, 64KB RAM
required host
386 or faster
Browser
The os8088 browser showing the Wikipedia article on the IBM PC XT, its infobox drawn as a bordered table.

A new program

A web browser for the IBM PC XT

os8088 now fetches real web pages and lays them out as text and tables, over an Ethernet card or a parallel cable to a DOS machine standing next to it. The network is not the slow part: drawing a window full of text takes longer than fetching the page.

the browser
13,889 bytes
the stack
ARP to TCP
machine
4.77 MHz 8088
RunCPM
An os8088 window with a CP/M boot banner in it, ending in an A greater-than prompt.

CP/M, in a window

CP/M was the operating system small computers ran before the IBM PC existed, on a processor the PC does not have. os8088 now emulates that processor, so CP/M software runs here: the 1979 command processor at the prompt, Microsoft BASIC, an assembler and an editor, in a window you can drag around like any other.

emulates
a Zilog Z80
written in
4,679 lines of C
machine
4.77 MHz 8088
Written in C
A word processor open on the os8088 desktop showing a welcome document with a bold heading and bold, italic and underlined words in the text.

A new program

A word processor written in C

Everything in os8088 up to now was written in assembly language, one processor instruction at a time. There is now a C compiler for it, which is a far quicker way to write a program. To find out whether it could carry something real, I wrote a second word processor with it -- and it turned out too big for the memory a program gets, so it comes in two pieces.

written in
8,350 lines of C
the program
54,450 bytes
machine
4.77 MHz 8088
Microsoft Word
Microsoft Word open on the os8088 desktop, showing a welcome document with a centred heading, bold and italic text and an indented paragraph.

A new program

Microsoft Word, on an 8086

I have added something I have wanted to see for a while: my own os8088 version of Microsoft Word 1.1a. It has the familiar 1990 menus, uses the same clever tricks to show bold and italics on a plain old PC screen, and saves Word .DOC files. The whole program fits in 47KB.

the program
47,212 bytes
saves
Word .DOC files
machine
4.77 MHz 8088
Two monitors
Two period PC monitors side by side, a green monochrome one and a colour one, both showing parts of the same os8088 desktop.

A new feature

Two monitors, one desktop

A PC of this era could hold a monochrome card and a colour card at once, because their picture memory sat at different addresses. Almost nothing used both together. os8088 now spans one desktop across the pair -- 1,360 pixels wide, on a 4.77 MHz machine -- and a window that lands over the join is drawn on both screens.

monitors
2
one desktop
1,360 x 348
machine
4.77 MHz 8088
Frotz
Mini-Zork I running in a window on the os8088 desktop, with a status line reading West of House and two typed commands in the transcript below it.

A new program

os8088 plays Infocom games now

A Z-machine interpreter in 23,722 bytes of 8086 assembly. The Z-machine is the pretend computer Infocom invented in 1979 so one game could be sold for every machine at once -- which is why a story file from 1982 is still a plain file that still runs. Mini-Zork, Colossal Cave Adventure, Zork: The Undiscovered Underground and Photopia all play, off a floppy of their own.

the interpreter
23,722 bytes
story formats
v1 to v8
games it fetches
15

Everything else