This document describes FOCL.S, an expanded programming language based on FOCAL/69, designed for 8K PDP-8/12 computers. It was released by the DECUS Program Library in November 1970 as a user-contributed program without quality control or warranty.
FOCL.S is syntactically compatible with FOCAL/69 and functions as a superset, offering numerous enhancements:
Key Features and Improvements:
Expanded Language Capabilities:
DO Command (ON): A three-branch conditional command allowing subroutine calls based on an expression's condition.DO, IF, GOTO, MODIFY, or ON commands can be computed from arithmetic expressions.Control/K (CONT/K) character for continuation, allowing effectively unlimited length for direct command lines.AND: Introduces a logical 'AND' function for expressions (FX(3)).Memory Management & Efficiency:
System Interaction & Debugging:
FX(1) function allows direct reading from and writing to specific core memory locations.FX(2) function enables the execution of machine language instructions, providing direct control over specialized hardware.FX(8) for decimal-to-octal, FX(10) for octal-to-decimal).TDUMP command lists variables in reverse order of their creation, making debugging of recently created variables more convenient.Compatibility Notes:
LIBRARY EXIT command has been removed (though equivalent functionality is available via FX commands), the T $ command now types variables in reverse order, and the error diagnostic list is extended.Overall, FOCL.S aims to provide a more powerful and flexible FOCAL environment for small computers, especially through its memory management improvements, expanded language features, and enhanced system interaction capabilities.
Site structure and layout ©2025 Majenko Technologies