Retrobasic 0.1.0 - A BASIC interpreter in Rust

retrobasic is a BASIC interpreter that makes it easy to play some of the classic BASIC games from the days of yore. It is a fairly complete implementation of the original '64 BASIC, with additions for sufficient compatibility with other BASICs to allow running programs from David Ahl's Classic BASIC Games. It can retrieve those programs directly from Internet archives, and of course, can also run BASIC programs that are stored locally.

An example from the README:

% retrobasic play hammurabi
                               HAMURABI
              CREATIVE COMPUTING  MORRISTOWN, NEW JERSEY



TRY YOUR HAND AT GOVERNING ANCIENT SUMERIA
FOR A TEN-YEAR TERM OF OFFICE.



HAMURABI:  I BEG TO REPORT TO YOU,
IN YEAR 1 , 0 PEOPLE STARVED, 5 CAME TO THE CITY,
POPULATION IS NOW 100
THE CITY NOW OWNS  1000 ACRES.
YOU HARVESTED 3 BUSHELS PER ACRE.
THE RATS ATE 200 BUSHELS.
YOU NOW HAVE  2800 BUSHELS IN STORE.

LAND IS TRADING AT 21 BUSHELS PER ACRE.
HOW MANY ACRES DO YOU WISH TO BUY?

The repo is at : https://github.com/seasalim/retrobasic

Enjoy!

3 Likes

This takes me back! :heart:

The project code is quite readable and straightforward too.

Nice work @seasalim