Ladder on a Modern PC
One of my favorite home computer games from early childhood is Ladder for the Kaypro, an action platformer rendered entirely in text characters. Here’s how to play it on your modern PC.
Ladder by Yahoo Software was bundled with the early Kaypro computers of the 1980’s, bulky “luggable” portable computers with green monochrome screens optimized for text. The Kaypro ran the CP/M operating system. My father used his Kaypro primarily for writing in WordStar. When he wasn’t using it, I used it for Microsoft BASIC and Ladder.
Ladder is an action platform game drawn entirely in ASCII characters. You are the lad, represented by a p
or q
depending on which way you’re facing, or g
if you’re sitting still. You walk on platforms =
, climb ladders H
, and jump over falling boulders o
, to collect minor treasures &
and reach the main treasure $
. Some levels feature spike hazards ^
. Touching a hazard or boulder loses and life and restarts the level. Trampolines .
send you jumping in a random direction if you land on them. The upward motion of the character and downward motion of the boulders remind some of Donkey Kong, though there is no gorilla or any real other characters other than the lad. (Boulders emanate periodically from hanging V
and are absorbed by sitting *
.)
The game can be quite difficult, but it remains addictive thanks to surprisingly precise and fluid controls. Jumps have predictable arcs along the character grid, and you can change direction in mid-air or stop to wait. Clever tricks like hovering over a boulder can rack up points, and several of the single-screen levels have multiple paths and additional challenges. The original game only included seven levels, though to progress you had to loop back to level 1 multiple times, so later levels were difficult to reach.
The source code to the original Ladder is lost to time, but the binary .COM
files are easy to find (though not necessarily the complete set). There have been several attempts to recreate Ladder from memory and folk knowledge: Ladder written in Java by Stephen Ostermiller, Ladder in Go by Mats Engstrom, and Ladder in Turbo Pascal by Github user mecparts. I assume at least one of these extracted the original level data from the Ladder .COM
file, if only because it’s not that difficult to do.
I’ve always kept it in the back of my mind to periodically try to figure out ways to run the original Ladder program, but I’ve never really done a deep dive on CP/M. For no reason in particular, last night I was inspired to poke around again, and I found a comp.sys.cpm Usenet post from 2020 (!) with a lovely tip: use two layers of emulation, a CP/M emulator written for MS-DOS, running in DOSBox. Minutes later I was playing Ladder on my MacBook Pro.
Things you’ll need:
- DOSBox for your modern computer (Windows, macOS, Linux).
- 22NICE, a CP/M emulator for MS-DOS. 22NICE was released as Shareware by Sydex but is no longer distributed. I found it on Gaby’s Homepage for CP/M and Computer History.
- LADDER.ZIP. There might be more complete versions of the Ladder files out there—this one is missing the config utility—but this is plenty to play it. I found this one on RetroArchive.org.
To set everything up:
- Unzip
22nce132.zip
into an empty folder. The macOS Finder refused to open this, but I was able to use theunzip
command in a Terminal:mkdir 22nice; cd 22nice; unzip ../22nce132.zip
- Unzip
LADDER.ZIP
into the same folder. This provides a file namedLADDER.COM
. This is a CP/M command file, not an MS-DOS command file. - Open DOSBox. Run all following commands in DOSBox.
- Mount the
22nice
folder as drive C:mount c ~/Downloads/22nice
where the path is whatever it is on your system. Switch to drive C:c:
- Rename
ladder.com
toladder.cpm
:ren ladder.com ladder.cpm
- Use 22NICE’s
gencom
to wrap the CP/M program as a DOS program, using the Kaypro display mode:gencom ladder.cpm dis=kay
This produces a newladder.com
DOS command.
You can now run ladder
at the DOS prompt to start the game.
Controls:
,
and.
move left and righta
andz
move up and down when on a ladder- Space to jump
b
to stop (useful!)- Escape to pause
Of course, you can use 22NICE and DOSBox to run other CP/M software this way. If you do, check out the 22NICE manual (22NICE.DOC
) for information about some handy features like keyboard mapping.
Hooka! Hooka! Hooka!