The Automatic Proofreader


The Automatic Proofreader is a series of checksum utilities published by COMPUTE! Publications for its COMPUTE! and COMPUTE!'s Gazette magazines, and various books. These programs are designed to allow home computer users to easily detect errors on BASIC type-in programs, and work by displaying a hash value for each line entered that can be compared against the reference value printed in the magazine. Initially published for use with the Commodore 64 and VIC-20 in 1983, the Proofreader was later made available for the Atari 8-bit family, Apple II family, and IBM PC/PCjr as well.
The line-by-line "real-time" feedback feature was something of a novelty at the time and represented a significant improvement over earlier checksum utilities, which were typically run only after a user program had been entered and, due to quite simplistic checksum algorithms, had trouble catching errors like transposed characters.

Commodore versions

The Automatic Proofreader was first introduced in October 1983 for the Commodore 64 and VIC-20. This first version had separate versions for the VIC and 64; the following month, they were combined into a single listing designed to work on both systems. This version of the Proofreader would display a byte-sized numeric value at the top left corner of the screen whenever a program line was entered.
The initial version of the Proofreader, however, had several drawbacks. It was loaded into the cassette buffer, which was overwritten whenever a program was loaded or saved using the Datassette. This caused difficulties if a cassette user had to resume work on a partially completed listing. A complicated method had to be used to get both the Proofreader and the program listing in memory at the same time. Also, the checksum method used was relatively rudimentary, and did not catch transposition errors, nor did it take whitespace into account.
Because of this, the New Automatic Proofreader was introduced in February 1986. This version used a more sophisticated checksum algorithm that could catch transposition errors. It also took spaces into account if they were within quotes, while ignoring them outside of quotes. Also, the decimal display of the checksum was replaced by two letters.
The New Automatic Proofreader was designed to run on any Commodore 8-bit home computer, automatically relocating itself to the bottom of BASIC RAM and moving pointers to hide its presence. It was continuously published until COMPUTE!'s Gazette switched over to a disk-only format after the December 1993 issue.