c64
)
The c64
target has been supported by ugBASIC
since version 1.0. The compiler can produce executable files in "prg"
format and entire "d64" disks, including files that can be loaded using
the language's primitives.
You can use the SANDBOX to try the ugBASIC compiler, without download
anything. This tool has been designed to quickly test whether the code
you are writing compiles correctly and determines the desired results.
Since the source is compiled thanks to dedicated servers, separate from the
browser you are using, some commands are not available: for example, you
cannot load external files or resources by using the LOAD
command.
If you need to develop a program with a complete tool, we recommend installing the
command line executables (see below) or UGBASIC-IDE.
To write the source code you can use a simply text editor. You can save
the program in a text file and then to call the compiler, in order to convert it into an
form that your Commodore 64 will
be able to execute.
Otherwise you can download and use command line compilers. Here are the direct links to the
compilers for the various operating systems. Select the most suitable one for your configuration:
In addition to compiling with the IDE, if you are using Linux or the command line version for
Microsoft Windows, you can compile the BASIC source "source.bas" into an executable file using the following command:
ugbc.c64 -o executable.prg -O prg source.bas
ugbc.c64 -o disk.d64 -O d64 source.bas
It is therefore possible to run everything with an emulator,
such as
VICE
,
or to create a phisical storage, as well.
A good starting point to learn ugBASIC
for the c64
platform is the examples page.
The examples provide insight into the syntax and usage of many of the commands
and statements available for the
language.
Since ugBASIC is an isomorphic language, which does not provide abstractions, it
is possible that not all examples work on all targets: those labeled c64 can
be compiled to generate executable files.
If you need help and support, the best place is the official forum, where you can
find answers to your questions and receive help.
SCREEN #
command, and used with graphics primitives. This is the value of the various constants in the various versions:MODE | DESCRIPTION | WIDTHxHEIGHTxCOLORS |
---|---|---|
0 | Standard Character Mode | 40x25x16 |
1 | Multicolor Character Mode | 40x25x32 |
2 | Standard Bitmap Mode | 320x200x2 |
3 | Multicolor Bitmap Mode | 160x200x4 |
4 | Extended Multicolor Character Mode | 40x25x20 |
With the c64
target you can include assembly code
for the MOS 6502 processor. The code will be placed within the code bank.
The ugBASIC compiler supports both the Commodore 64 PAL
(working frequency: 50 Hz) and NTSC
(working frequency: 60 Hz)
versions, and automatically detects the working frequency to calibrate the
delays. In particular, it defines two constants with the same name, and
initializes the constant TICKS PER SECOND
.
This is the value of the various constants in the various versions:
VERSIONE | NTSC | PAL | TICKS PER SECOND |
---|---|---|---|
c64 PAL | 0 (FALSE ) | -1 (TRUE ) | 50 |
c64D PAL | 0 (FALSE ) | -1 (TRUE ) | 50 |
c64DR PAL | 0 (FALSE ) | -1 (TRUE ) | 50 |
c64 NTSC | -1 (TRUE ) | 0 (FALSE ) | 60 |
c64D NTSC | -1 (TRUE ) | 0 (FALSE ) | 60 |
c64DR NTSC | -1 (TRUE ) | 0 (FALSE ) | 60 |
The c64
target supports audio commands, as described on the
documentation page.
C | C# | D | D# | E | F | F# | G | G# | A | A# | B |
---|
0 |