Hasty Briefsbeta

Completing a new BASIC interpreter in 2025 (strings, math funcs, cassette)

5 hours ago
  • #Intellivision
  • #RetroComputing
  • #BASIC
  • Completion of a BASIC language interpreter for the 1983 Mattel ECS add-on for Intellivision in 2025.
  • Implementation of string support with variables A$ and B$, including functions like ASC, CHR$, LEN, LEFT$, RIGHT$, MID$, INSTR, VAL, and STR$.
  • Development of a garbage collection system for strings to manage memory efficiently on the slow CP1610 processor.
  • Addition of mathematical functions (SIN, COS, ATN, TAN, LOG, EXP, SQR, and power operator) with fixes for precision issues.
  • Graphics support with PLOT, PRINT AT, and TIMER commands, leveraging the Intellivision's limited graphics capabilities.
  • Cassette and printer support added, including LOAD, SAVE, VERIFY, LLIST, and LPRINT commands, with challenges in hardware interfacing.
  • Testing and adaptation of a Reversi game from Tim Hartnell's book to validate the interpreter's functionality.
  • Final additions like DRAW, CIRCLE, POINT, POS, LPOS, SPC, TAB, and HEX$ functions to enhance usability.
  • Release of the source code on GitHub, totaling 7370 lines of assembler code written over about a month.