@@ -585,6 +585,43 @@ website](http://pascal.hansotten.com/px-descendants/pascal-m/pascal-m-2k1/).
585585However, do not report bugs on the CP/M-65 port to him --- [file bug reports
586586here](https://github.com/davidgiven/cpm65/issues/new) instead.
587587
588+ ### The Forth
589+
590+ lbForth is a minimal Forth implementation but still contains a fair amount of
591+ built in words. It is currently not included on the disks for the C64, VIC20
592+ or BBC Micro due to lack of disk space.
593+
594+ The original source code is available [here](https://gist.github.com/lbruder/10007431).
595+
596+ It has been extended with the possibility to load a script from file at
597+ startup if the filename is given as a command line argument, and a small
598+ example file (`TRIANGLE.FRT`) is included:
599+ ```
600+ : STAR 42 EMIT ;
601+ : STARS 0 DO STAR LOOP ;
602+ : TRIANGLE 1 + 1 DO I STARS CR LOOP ;
603+ CR 10 TRIANGLE CR
604+ ```
605+ When run from the command line it produces the following output:
606+ ```
607+ A> LBFORTH TRIANGLE.FRT
608+ lbForth for CP/M-65. Use BYE to exit.
609+
610+ *
611+ **
612+ ***
613+ ****
614+ *****
615+ ******
616+ *******
617+ ********
618+ *********
619+ **********
620+
621+ END OF FILE
622+ OK
623+ ```
624+
588625### Utilities
589626
590627`bin/cpmemu` contains a basic CP/M-65 user mode emulator and debugger. It'll run
@@ -645,3 +682,6 @@ and is available under the terms of the BSD 2-Clause License. See
645682`third_party/zmalloc` contains a copy of zmalloc, which is © 2024 by Ivo van
646683Poorten and is available under the terms of the 0BSD License. See
647684`third_party/zmalloc/LICENSE` for the full text.
685+
686+ `third_party/lbforth` contains a port of lbForth, which is © 2014 by Leif Bruder
687+ and is released as Public Domain.
0 commit comments