BASIC 65 Keyword Abbreviations
Like other Commodore BASICs, you can enter most BASIC 65 keywords using an abbreviation. With the exception of ?
for PRINT
, the abbreviation takes the form of the first two or more letters of the keyword, with the final letter entered by holding the Shift key. For example, you can enter the BORDER
command by typing BO
then Shift+R
(represented below as “boR
").
Why abbreviations?
Abbreviations can be handy for often-used immediate mode commands. For example, many Commodore programmers are used to typing lO
for LOAD
. (MEGA65 programmers might prefer dL
for DLOAD
.)
Abbreviations allow you to type more than 160 characters on a single program line in the BASIC editor. This is a fun trick, but is usually more trouble than it’s worth in practice. When the LIST
command displays the line, abbreviations will be expanded, and the displayed line may be longer than 160 characters and no longer editable on screen. To modify such a line, you'd have to re-type the entire line with abbreviations.
Abbreviations are a historical artifact of how the original BASIC parser was implemented. Any prefix of a keyword entered in this way (e.g. “borD
") will be interpreted as the first keyword that matches in BASIC's internal keyword list. This list is not intuitively ordered, so we provide the calculated list of shortest abbreviations below.
Are some keywords missing?
Not every BASIC 65 keyword has an abbreviation. This happens when another keyword has claimed all possible abbreviations for a letter prefix that might match another keyword. For example, the INPUT#
command claims all of iN
, inP
, inpU
, and inpuT
as possible abbreviations, so there are no abbreviations remaining for the INPUT
command. Another notable example is SAVE
, which has no abbreviations in BASIC 65 because they're all taken by SAVEIFF
.
Keywords that do not have abbreviations do not appear in the list below.
Abbreviations and compatibility
Commodore did not attempt to maintain backwards compatibility with abbreviations between versions of BASIC. Abbreviations are determined by the complete list of keywords in their internal order, so adding a new keyword earlier in the ordering can break an existing shortest abbreviation. Some abbreviations differ between the Commodore 64 (BASIC 2), Commodore 128 (BASIC 7), and Commodore 65 (BASIC 10).
The MEGA65 (BASIC 65) introduces a few additional keywords, and ergonomic changes to abbreviations. For example, BASIC 10 added a LOADIFF
keyword that interfered with the lO
abbreviation for LOAD
. Because Commodore 64 programmers are so used to using lO
, we added special support for lO
as LOAD
in BASIC 65. The complete list of BASIC 65 abbreviations may not match previous Commodore BASICs.
For more information about abbreviations in previous versions of Commodore BASIC, see C64 Wiki: BASIC keyword abbreviation.
BASIC 65 abbreviation list
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|