PC Basic Course, command list list compendium commands instructions functions Basic V2 Commodore 64

Commodore 64 Basic V2 Command List

Here is the complete list of Commodore 64 Basic V2 commands, functions and reserved variables, with a simple explanation. This is a simple compendium to remember all the commands, instructions and functions, when you already know how to use them! The Commodore 64's Basic V2 has far fewer instructions than the Commodore 16, 116, Plus/4 Basic V3.5 and compared to Commodore 128 Basic V7.

Subscribe my YouTube channel ValorosoIT. Retro technology, vintage audio, retro computers, experiments and tests. Retroprogramming, Basic. Commodore, IBM, Atari, Apple, Texas Instruments, Amstrad, MSX.

InstructionDescriptionType
ABSReturns the absolute value of a numberFunction, numerical
ANDReturns true if both conditions are trueOperator, logical
ASCReturns the numerical value of a charFunction, numerical
ATNReturns the arctangent of a numberFunction, numerical
CHR$Returns the character corresponding to the numberFunction, string
CLOSECloses a fileInstruction/command
CLRDelete variables arrays, data, …Instruction/command
CMDChanges the data output to other peripheralInstruction/command
CONTResumes execution of a BASIC programCommand
COSReturns the cosine of an angle (rad)Function, numerical
DATAStores constant information in the program codeInstruction/command
DEF FNDefines a user-defined functionInstruction
DIMAllocates space in array memory for a new arrayInstruction/command
ENDEnds the processing of the current programInstruction/command

EXP“e” with the power given by the argumentFunction, numerical
FNExecutes a function defined by DEF FNFunction, numerical, special
FORProgram loop start (FOR … TO … STEP … NEXT)Instruction/command
FREReturns the number of unused bytes of BASIC RAMFunction, numerical, special
GETReads one or more chars from the keyboardInstruction
GET#Reads single characters from the specified deviceInstruction/command, special
GO TOJumps to a line numberInstruction/command
GOSUBJumps to a subroutine … RETURNInstruction/command
GOTOJumps to a line numberInstruction/command
IFTests a condition IF … THEN or IF … GOTOInstruction/command
INPUTReads data from the keyboardInstruction
INPUT#Reads data from a file stored on peripheral deviceInstruction
INTRounds a numberFunction, numerical
LEFT$Left chars of a stringFunction, string
LENReturns the number of characters in a stringFunction, numerical

LETAssigns values in a variableInstruction/command
LISTDisplays the BASIC program in memoryInstruction/command
LOADLoads a programInstruction/command
LOGNatural logarithm with the basis eFunction, numerical
MID$Inner chars of a stringFunction, string
NEWClears RAM and programInstruction/command
NEXTProgram loop end (FOR … TO … STEP … NEXT)Instruction/command
NOTReverses true to falseOperator, logical
ONContruct ON … GOTO, ON … GOSUBInstruction/command
OPENOpens a file or a channelInstruction/command
ORReturns true if one or both conditions are trueOperator, logical
PEEKReturns the memory contentFunction, numerical
POKEChanges the content of any memory addressInstruction/command
POSDetermines the actual position of the cursorFunction, numerical, special
PRINTPrints data to the current output deviceInstruction/command
Follow me on Instagram channel. Retro technology, Commodore, vintage audio, retro computers, experiments and tests. Retroprogramming, Basic. Commodore, IBM, Atari, Apple, Texas Instruments, Amstrad, MSX.

PRINT#Stores data in a fileInstruction/command
READReads constant values from DATAInstruction
REMCommentsInstruction/command
RESTOREClears the pointer of the next data valueInstruction/command
RETURNFinishes a subroutine: GOSUB … RETURNInstruction/command
RIGHT$Right chars of a stringFunction, string
RNDGenerates a random floating point numberFunction, numerical
RUNStarts a programInstruction/command
SAVESaves a programInstruction/command
SGNReturns the sign of a number (-1, 0, 1)Function, numerical
SINReturns the sine of an angle (rad)Function, numerical
SPC(Sets a number of spacesFunction, PRINT (Carry = 0!)
SQRCalculates square root of a numberFunction, numerical
STGets I/O status byteReserved variable
STEPProgram loop increment/decrement (FOR … TO … STEP … NEXT)Instruction/command, special

STOPBreaks a programInstruction/command
STR$Converts numerical values or variables into a stringFunction, string
SYSCalls an assembly language subroutineInstruction/command
TAB(Sets the cursor columnFunction, PRINT (Carry = 1!)
TANReturns the tangent for a given angle (rad)Function, numerical
THENTests a condition IF … THENInstruction/command, special
OFGets the system time (seconds/60)Reserved variable
TI$Gets or Sets the system time (HHMMSS)Reserved variable
TOProgram loop target (FOR … TO … STEP … NEXT)Instruction/command, special
USRCalls an assembly language subroutine with argumentFunction, numerical/string
VALReturns the numerical value of a stringFunction, numerical
VERIFYVerifies a saved programInstruction/command
WAITWaits for a memory location to assume specific valuesInstruction/command
+SumOperator, numerical/string
SubtractionOperator, numerical

*MultiplicationOperator, numerical
/DivisionOperator, numerical
^ExponentOperator, numerical
>GreaterOperator, logical
=EqualOperator, logical
<LessOperator, logical
π (pi)3.1415926…Function, numerical, special

On the website www.valoroso.it and on the ValorosoIT YouTube channel, I am publishing several episodes to learn how to program in Basic, with the Comodore 64, Commodore 128, GwBasic, QuickBasic, QB64, Atari, etc...

YouTube: https://www.youtube.com/c/ValorosoIT
Instagram: https://www.instagram.com/valorosoit/

Subscribe my YouTube channel ValorosoIT. Retro technology, vintage audio, retro computers, experiments and tests. Retroprogramming, Basic. Commodore, IBM, Atari, Apple, Texas Instruments, Amstrad, MSX.

Do you like this page? Share it:

Posted in Retro Computer, Retro Technology and Vintage Electronics, All articles.

12 Comments

  1. This is vегy interesting, You’re a very skilled blogger.
    I’ve joined your fеed and look forwarԁ to seeking more of your wonderful post.
    Also, I have shared your website in my social networks!

  2. I’ve learn some excellent stuff here. Definitely bookmarking for revisiting.
    I surprise how so much effort you place to make one of these great informative website.

  3. I admit that it is very interesting and I would like to write a project from scratch with your help mostly because I am completely new to any type of programming. Your courses are interesting but often leave me with gaps that I struggle to fill. For a few days I've been trying to write a game but without success and I'd like to have your help or some advice.

    In the meantime, I thank you for all your precious legacy

  4. Learning programming is not easy, especially at the beginning. Then, when you understand the logic behind it, everything becomes simpler. Unfortunately, due to lack of time, I am unable to follow individual projects. I advise you to start from listings that already exist online, then modify something, just to understand how to intervene on the listing. Only later could you start with a new project.

Leave a Reply

Your email address will not be published. Required fields are marked *