Lander
Lander v1.1 by George Moromisato, © 1990 TMA. A Windows 3.0 game: you fly a Lunar Excursion Module on its final approach and try to set it down in one piece.
How to play
Press any key or click to start. Land on the flat stretch of ground, moving sideways at less than 1 m/s and down at less than 10 m/s.
Hold ↓ for the main engine, ← and → for the side thrusters, or hold the three buttons on the screen. As the manual says, the right thruster pushes the lander to the left; Options in the Game menu can swap them, and also sets gravity, fuel and engine thrust. New makes new ground, Restart tries the same ground again.
On a touch screen, hold the on-screen buttons. You can hold more than one at a time.
Speed: the original runs ten times faster than real time, so a fall from 1,000 meters takes about three seconds. It times its frames in milliseconds but divides by 100 where seconds need 1,000, and its manual is written in meters and seconds, so this port plays it in real time. To play it the way it ran in 1990, tick Original speed (10x) in Game, Options. That box is the only thing this port adds to the game.
About this port
This is the original LANDER.EXE (57,504 bytes, June 1990), not a remake and not an emulator. Its 16-bit code was translated instruction by instruction into C and compiled to WebAssembly. It runs on a small re-creation of the parts of Windows 3.1 it uses: windows, the menu bar, dialog boxes, buttons and scroll bars, and the drawing calls.
To check the translation, the untouched original code was run in a CPU emulator against the same Windows re-creation and compared with the translated version: game memory and every pixel on screen matched, frame after frame, over hundreds of landings and crashes.
The screen text uses the System and MS Sans Serif bitmap fonts from the Wine project (LGPL 2.1 or later, source and license), not Microsoft's. Windows is a trademark of Microsoft. Lander © 1990 TMA, all rights reserved.