PROJECT REFERENCE VINTAGE BASIC TRAP: TWO-CHARACTER VARIABLE NAMES Commodore BASIC treats only the first two characters of variable names as significant. That means names that look different to a modern programmer may collide. Example from the earlier generated code: OPX(10) OPY(10) Both begin with OP, so they are effectively the same array name. A DIM statement attempting both can produce a REDIM'D ARRAY ERROR. The repaired program used genuinely distinct prefixes such as: OX() OY() ARCHIVE RULE FOR GENERATED COMMODORE BASIC Before trusting any generated listing, scan every variable and array name by its first two characters. Modern code generators almost never "feel" this constraint unless explicitly reminded.