AppleSoft Basic Interpreter Project

A place for you to show off what you have made with LiveCode

Moderators: FourthWorld, heatherlaine, Klaus, kevinmiller, robinmiller

Post Reply
Hutchboy
Posts: 127
Joined: Wed Aug 01, 2018 2:57 pm
Contact:

AppleSoft Basic Interpreter Project

Post by Hutchboy » Thu Sep 04, 2025 4:28 am

Hi,

I have been enjoying working on the LOGO parser and it inspired me to look at an AppleSoft Basic interpreter that I started over a year ago without too much success. The attached files include a fairly well-along AppleSoft Basic interpreter and a file of test programs that all work. Most of the explanation of what is going on is in the stack script header.

Once I have the rest of the text-based commands working I will start work on implementing Apple IIe graphic modes (I also want to include SHR modes like on the IIGS and what I think a IIGS+ with a 65832 processor may have been capable...why not?)

It is far enough along I thought it might be of interest.

-Mike

[ 9/6: Updated version v2.4 posted below, see stack script header for version history. Added many test programs and 2 demos.
Attachments
AppleSoft Basic Interpreter v2.4.0_ Build 090525.livecode.zip
(16.23 KiB) Downloaded 1 time
2. Working Demo Programs.zip
(2.89 KiB) Downloaded 1 time
1. Test Programs.zip
(30.88 KiB) Downloaded 1 time
Last edited by Hutchboy on Sun Sep 07, 2025 4:18 am, edited 1 time in total.

dunbarx
VIP Livecode Opensource Backer
VIP Livecode Opensource Backer
Posts: 10360
Joined: Wed May 06, 2009 2:28 pm

Re: AppleSoft Basic Interpreter Project

Post by dunbarx » Thu Sep 04, 2025 2:03 pm

Mike.

Hard for me to understand what this rather hefty stack does. Can you give a short tutorial?

Craig

bobcole
VIP Livecode Opensource Backer
VIP Livecode Opensource Backer
Posts: 168
Joined: Tue Feb 23, 2010 10:53 pm

Re: AppleSoft Basic Interpreter Project

Post by bobcole » Fri Sep 05, 2025 12:15 am

Mike:
Another supreme effort! I enjoyed the test programs.
The answer to Test #3, however, does not seem correct.
It should go to Line 50 but, instead, it goes to Line 30 and prints FAIL.
Otherwise, the test programs were all sucessful.
What a project!
Bob

Hutchboy
Posts: 127
Joined: Wed Aug 01, 2018 2:57 pm
Contact:

Re: AppleSoft Basic Interpreter Project

Post by Hutchboy » Fri Sep 05, 2025 4:45 am

Craig,

The stack is an AppleSoft Basic Interpreter. It will eventually be able to run most AppleSoft Basic programs. When I am to the point where I can run interesting demos I will add those as a kind of tutorial. In the meantime Google "online AppleSoft Basic" and you will see examples of really good interpreters.

Bob,

Thanks. In the test programs I think I need to remove any semi-colon comments at the top line and just run the actual line numbers. Right now I am much farther along and am working onv2.3. Here is my roadmap:

v2.3 — Control-flow enrichments
ON GOTO / ON GOSUB
STOP / CONT scaffolding

v2.4 — INPUT upgrades
Multiple targets: INPUT "Prompt"; A, B$, C(I) with comma parsing & coercion, quoted strings respected.
Array targets allowed; graceful handling of too few/many inputs in one line.
Smoke tests: mixed numeric/string/array, empty input → default, whitespace/quotes, extra commas.

v2.5 — Core functions (minimal but useful)
Numeric: INT, ABS, SGN, SQR, RND (with RND(0), RND(1), RND(n) semantics).
String: LEN, LEFT$, RIGHT$, MID$, ASC, CHR$, VAL, STR$.

v2.6 — PRINT utilities

v2.7 — Polishing & Demo Time

v2.8+ — Graphic Modes, PEEKS & POKES, Kitchen Sink Demos

-Mike

Post Reply