Situational awareness is very important in colorForth! The meaning of pressing a given button on the keyboard varies as your actions change the system from one state to another. With this economy of motion comes the requirement that you maintain a heightened awareness of system state from keystroke to keystroke. With only a very few exceptions, the system state and the meanings of the keyboard buttons are apparent from a glance at the screen once you are familiar with colorForth. Until you are, however, use caution as you would when learning any other new psychomotor skill! For example, quickly drumming the keys in frustration would yield only
laksjdf on a plain old text editor which could easily be un-done with backspaces. However, in the colorForth editor such non-deliberate use of keys can have truly amazing, unintended consequences, and by the time the actions have been taken you may have to audit your whole disk to find out what you have wrought! We recommend that you keep cats and small children away from your keyboard when colorForth is running.
Most people find that once they have mastered this new skill it works well for them, and that with the simple but powerful set of tools in colorForth it's a pleasingly productive environment. Take your time getting accustomed to it, and it should serve you very well.
We'll start with the Interpreter interface since it's the first thing you encounter and contains good examples of the common display elements. Here is what you see on booting arrayForth:
The above display is composed of two major elements: The logo, with the "arrayforth" label, and the interpreter's feedback which is shown in the black areas at the bottom of the screen. The annunciator reading "qwer" is part of this feedback. The feedback is comprised of several distinct components that may be used in other applications' interfaces; these components are discussed below.
The first of the two major elements, the logo, may be replaced during use of the system by other things such as the listing of a block. The interpreter simply displays this element, whatever it is, with the interpreter's feedback superimposed over it. The entire screen is refreshed, from whatever raw data each part is based on, each time you strike a key; thus, the effects of interpreter interaction may be seen right away when they occur.
The annunciators "qwer" and "text" are part of a keyboard / control panel hint rectangle at the lower right corner of the screen. The word "png" is feedback showing the word most recently typed; it changes as you key additional characters. The number 50389 shows the stack content; it is presently the only item on the stack. While you are typing a word or number, the binary value of that number or values(s) of the word are shown at the top of the stack (top is on the right.)
Here is what you see if you have pushed five numbers, one through five, onto the stack and then typed png to capture the screen:
Caution: The stack display presently shows the entire content of the stack, no matter how large. If the stack doesn't fit on one line, the display wraps and another line is shown. If the stack is deep enough, the system will trap while displaying the stack.
If you type a word that the interpreter cannot find in the dictionary, a question mark is appended to the display of the most recently typed work. Here is an example resulting from trying to interpret an unknown word "poobah":
In text entry mode, one of two possible keyboard behaviors is active: QWERTY, or dvorak. Anything colorForth understands may be typed using either keyboard, but each his its own meanings for the keyboard buttons, each has a different protocol for indicating whether a word or a number is being entered, and each makes different use of the keyboard hint area of the display.
The QWERTY keyboard is as close as practical to the behavior of a conventional typewriter keyboard and will be most familiar to those who have been trained as touch typists in that system.
The dvorak keyboard is a special keyboard developed by Chuck Moore to minimize the number of buttons and amount of hand movement required. Character assignments were made to facilitate the efficient typing of common words. With 24 character and three mode shift / control keys, typing of certain characters or digits requires multiple keystrokes. We call this keyboard dvorak but it differs from the commonly used Dvorak keyboard.
648 editand begin editing block 648. Scroll down using the keys for right and down to place the cursor just after the word
qwertyand press the key labeled "c" for color change. Make the phrase white instead of yellow to disable the qwerty keyboard setup at startup. Exit the editor with the spacebar and type
saveto save the system setup to default to dvorak keyboard use and/or type
warmto restart using the dvorak keyboard setup.