ATO Doors Demo lobby open
NODE 1 :: ATO DOORSFREEDOS · COM1 · 80x25 · CP437

The door games, without the board.

No BBS to run, no telnet client to hunt down, no server to keep alive. LORD, TradeWars, Usurper or any other 16-bit DOS door runs unchanged in the browser, sharing one world on ordinary PHP hosting.

Free · MIT licensed · download coming soon. Or just press the key

What a player sees

Pick a door. Press Play.

A lobby with a card for each door, who is in it right now and how many may play. Press Play and a terminal opens in the page, the modem does its little ceremony, and the game comes up in its own colors and its own font, with the keyboard doing what it did in 1995.

The ATO Doors demo lobby: a card for each door with its title art, who is playing now and how many may play at once.
The lobby. Every door, who is in it now, and how many may play at once.
Usurper's page on the demo: title art, a description, notes from the sysop, the house rules and recent players.
A door's page. The sysop's own notes, the house rules, and who has been in lately.
Legend of the Red Dragon running in the browser: the forest, with one gem found.
The forest. You find one gem. The Red Dragon can wait.
Legend of the Red Dragon's town square, with a messenger announcing that another player has entered the realm.
Company. Rithiel walks into the realm while you stand in the town square.
The TradeWars 2002 title screen in blue block letters.
TradeWars 2002. The title screen, block for block.
TradeWars 2002 in play: warping from sector 287 to sector 364.
Sector 287. No port here. Warp to 364, with an hour on the clock.

This is the demo's look.

Yours can be anything. The landing page and every door page are configurable in the admin console, down to the text, the colors and the ANSI art, so no two ATO sites need look alike.

▙▟▙

Nothing to install

An account, a current desktop browser and a keyboard. No DOSBox, no telnet client, nothing to download.

▓▒░

Your character waits

Between visits, and so does everyone else's. Come back tomorrow and the world has moved on without you, the way it always did.

▞▚▞

Other people are in there

In the doors built for it, several players share a world at the same moment. They see each other, duel, trade and chat.


The doors

Any 16-bit DOS door.

There are hundreds of door programs for 16-bit DOS, and they should all run here. ATO Doors ships no games: you bring the ones you own, or that their authors released, as you always did.

  • From scratch, the sysop way. Give the door its own folder under doors/ with a short manifest in ATDT's format that says how it starts, and press Scan. Its own installer and configuration program run on the Machine page, at a real DOS prompt.
  • Or start from a package. ATDT's ready-made DOS door packages install here as is. They save setup time; they are never required.
  • As many players as the door allows. A door written for several nodes gets several players at once. How many is yours to set, door by door.

How it works

The PC is in the browser. The server is the shared drive.

Press Play and the page starts a small emulated PC, boots FreeDOS from a floppy image, and wires its serial port to the terminal on your screen. The game runs on your own computer. Its world lives on the server, which reads and writes it the way a BBS node once read a file server.

The player's browserOne per player
Terminal80x25 · CP437
COM1serial port
The doorUSURPER.EXE
FreeDOSfrom a floppy image
An emulated PCinside the page

A big door's files take about half a minute the first time. After that it starts in seconds.

Your PHP hostOne, shared
Usurper's worldthe live game drive
Record locksarbitrated here
Write logevery write, every player
Snapshotsand a Reset, per door
PHP 8.1 · SQLitea $5 host

As many players in a door as you allow, and the game sees them all.

▀▄▀

Nothing DOS on the server

Plain PHP and a SQLite database. No daemon to keep alive and no emulator to install, on the host or on anyone's computer.

░▒▓

The files stay consistent

The server arbitrates record locks, so two players writing the same world at the same moment get the result the game expects.

▌▐▌

The games are unchanged

The 16-bit programs their authors shipped, not ports. Bugs, balance and humor included.


Maintenance

The daily chores are still daily.

Door games were written for boards that ran a maintenance program once a day, at night. ATO Doors keeps the habit.

  • Short sweeps run in the first caller's browser, on the way in.
  • Long ones, TradeWars' universe and Usurper's half hour, take the sysop road: the Night page runs them in your browser, one door at a time, never while a player is in the door.
  • Or leave it on Night watch, and it runs each door's maintenance as its day turns.
  • A snapshot comes first. If a run doesn't finish, the snapshot goes back.
  • A door that goes a day without its maintenance is flagged, and you get a letter if you want one.
The Night page in the sysop panel: Usurper and TradeWars 2002 on the sysop road, both done for today, with Run everything due now and Night watch.
The Night page. Usurper and TradeWars 2002, both done for today.

For the sysop

A panel, not a server.

No server to administer. After the upload, everything happens in a web page, including the parts that used to need a DOS prompt.

The Machine page: LORDCFG.EXE typed as the boot command, and LORD's own configuration program running on the machine's screen.
Machine

The door's own setup programs, in your browser

Type LORDCFG.EXE, press Boot, and the door's own configuration program comes up against the live world, with the screen and keyboard facing you. Registration codes go in here. Or play-test as node 0 without taking a player's seat.

Doors

Drop a folder, press Scan

Any 16-bit DOS door, set up by hand or from one of ATDT's packages, which install here as is.

Limits

Who, how many, how long

For each door: who may play, how many at once, how many minutes a day, and which road its maintenance takes. The demo runs most doors at four players; set your own.

Files

Quick edits without FTP

Open a door's text files from the panel and fix the line that needs fixing.

Pages

A page for every door

You write it: a blurb, a picture, credits, and a note to players.

Safety

Snapshots and a Reset

Any door can be put back. A log records what every player's machine wrote, and when.

Look

No two sites alike

The landing page and every door page are yours to change: the wording, the colors, the ANSI art. All of it from the admin console.


Installing

Four steps. Then bring the doors.

When the download ships, installing is a four-step wizard. Updates are the new package laid over the old one; the site migrates itself.

01

Upload the folder

Put the package in your web space and open it in a browser.

02

Environment check

The wizard checks PHP and SQLite and says plainly what your host is missing.

03

Site and sysop

Name the site and make your sysop account.

04

Outgoing mail

New players confirm their address by email, so the site needs a mail account to send from.

PHP 8.1 or newer, with SQLite Mail an outgoing mail account Cron every five minutes (any cPanel host offers it) Doors any 16-bit DOS door you own, or that its author released Players a current desktop browser and a keyboard

Two honest limits

The game runs on the player's computer, so a player can write to a door's shared files whatever the game itself can write. Program and configuration files stay out of reach, every write is logged, and a snapshot or a Reset puts a door back. It is the same trust a BBS placed in its callers, made explicit.

The doors are their authors' own, limits included. An unregistered copy of a 1996 shareware door stops where it stopped in 1996. Phones are not a target either: a door wants eighty columns and real keys.


Download

Coming soon. The demo is open now.

ATO Doors will be free and MIT licensed, with no account and no telemetry: the launcher and a test door, no games. While the download is finished, the demo lobby is open. Make an account and play.

Play the demo Download coming soon
DownloadComing soon
DemoOpen now
LicenseMIT
RequiresPHP 8.1, SQLite
CronEvery five minutes
In the boxLauncher, test door

Why ATO

ATDT dials. ATA answers. ATO goes back online.

Each project is named for the Hayes modem command that does its job. ATDT dials out, and ATA answers the ring. ATO is what you typed after +++ to put a call back on line without dialing again, picking up right where you left off. ATO Doors does that for the doors: ATDT's door machine, back on line on its own.

AT
attention: every Hayes command starts with it
ATDT
dial, touch-tone
ATA
answer the ringing line
+++
escape mid-call: the modem listens, the call stays up
ATO
back on line, no redial
▚▚▚

ATDT

A new board, built the old way.

A modern bulletin board for shared hosting, with message bases, ANSI art, live chat and the same DOS door machine.

Available now · atdtbbs.com

▓▒░

ATA

The original boards, answering again.

A whole classic DOS board, installed in one click and callable from any browser.

Alpha · atabbs.com

▄▀▄

ATO

Just the doors.

A lobby, an account and the games, for a club, a classroom, or a Discord full of old callers.

◄ You are here

All three are free, MIT licensed, and built by one sysop who never quite hung up. Part of the BBS Preservation Project.