Building a Basic Interpreter, '80s Style, Part 2
able.bio
able.bio
Microsoft 8080 BASIC interpreter [0] is a commented disassembly. An improved version is at [1]. The book Programmers at Work also has notes on the design.
[2] is a z80 BBC BASIC interpreter.
You have the original ASM disassembled, ROM, kernal and comments at https://www.pagetable.com/c64ref/c64disasm/
My references (35 years) ago were some books published by Data Becker GmbH.
Note also that there were basic extensions to address the limitations of CBM basic like the Simon basic cartridge.
That Simon basic was a wonder in their own. Written by a gifted teenager and extending by mapping addresses in the ROM. It was possible to write sprites and graph in basic without pokes (no ASM needed).
Edit: I missed the comment downthread that says that some of that code was released a couple of years ago.
Or, although not what you asked: https://github.com/microsoft/GW-BASIC
I've used pagetable.com quite a lot for reference to see how things were done in CBM BASIC. I didn't always follow that direction (also looked at GW-BASIC, and others), but it has proven very useful to either set me on a well-trod direction or to validate ideas I'd already had.
Or, although not what you asked: https://github.com/microsoft/GW-BASIC
I've definitely been looking a some implementations, but I don't think I directly looked at these. (Instead, pagetable.com and gw-basic and the like have proven invaluable as well.) I should write a quick post summarizing all the resources that I've been using -- that might prove useful.
I am just guessing here, but in the really old days many computers only had capital letters and languages with names that were words ended up spelled as FORTH and PASCAL when they shouldn't have been. When lower case characters became common this was corrected and it could be that the acronym based language names came along for the ride.
The only language name that really matters is Smalltalk. The name is actually used in expressions so if someone spells it as SmallTalk their program won't work.