For my own part, I found Program Writer to be a large improvement over the Applesoft BASIC editing facility. Unlike the Commodore 64 or HP-85, both of which have rudimentary “screen” editing in ROM, or the TRS-80 Color Computer, which has some line editor features (including copying, insertion, and deletion), Applesoft BASIC is limited essentially to re-typing program lines that require changes. There are also very limited facilities for renumbering lines; DOS 3.3 includes a RENUMBER program that can perform some renumbering, but ProDOS does not. These limitations make development of Applesoft BASIC programs a more trying exercise than even other, more or less contemporary, 8-bit BASICs.
Program Writer is a RAM-resident screen editor specifically for BASIC programs — in fact, it is not capable of editing non-BASIC text, as far as I can tell. It appears to use the Applesoft BASIC tokenizer and memory reporesentation of BASIC statements to store the working program, and has no native concept of opening or saving a “file”. However, for BASIC programming it provides a simple yet quite usable full screen editor with language-specific features such as renumbering, variable listings, and line splitting. It also has normal editing features such as search and search-and-replace.
Using Program Writer is most similar to using a rudimentary single-file command-line editor on DOS or Unix; think of something like GNU Nano or MS-DOS EDIT.COM
with only one file open. You enter the editor with the command &&
at the Applesoft ]
prompt, then edit your BASIC program, quitting the editor to run it. The arrow keys can be used for simple navigation, and more complex navigation and editing facilities use the open-Apple key as a modifier. Loading a new file is accomplished with the BASIC LOAD
command before opening the editor, and saving entails quitting the editor and running SAVE
in BASIC.
Because Program Writer uses the BASIC program representation as its program store, edits made at the BASIC REPL are reflected the next time you enter the editor. This tight integration with Applesoft BASIC makes it feel a little bit like an IDE; editing, testing, examining, and debugging all flow relatively naturally into one another, with simple edits and examinations at the BASIC prompt and more complex program creation in the editor.
Some of the nicer polished touches of Program Writer include excellent 80 column support, with a keybinding (open-Apple X) to toggle between 40- and 8-column modes, and Language Card support for placing the resident editor in Language Card RAM to leave more room for BASIC code in the main RAM. There is also a “small” version of the editor, with more limited features, for writing larger BASIC programs on machines that do not have a Language Card. Program Writer runs normally under both DOS 3.3 and ProDOS, and provides the same interface in both cases.