Targets supported by ugBASIC

Commodore 16 (c16)

The c16 is supported by ugBASIC on the beta version only. The compiler can produce executable files in "prg" format.

How to start

A good starting point to learn ugBASIC for the c16 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 c16 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.

Games written for Commodore 16 (more...)

At the moment there are no complete games for this target,
or the games are in the testing phase.

Examples for Commodore 16 (more...)



















Plotting and graphic modes


The ugBASIC language provides access to all documented graphics modes of the VIC-II chipset, that can be selected using the SCREEN # command, and used with graphics primitives. This is the value of the various constants in the various versions:

MODEDESCRIPTIONWIDTHxHEIGHTxCOLORS
0Standard Character Mode40x25x16
2Standard Bitmap Mode320x200x2
3Multicolor Bitmap Mode160x200x4
4Extended Multicolor Character Mode40x25x20

Blitting images

Blitting operations are supported.

Calling and inlining assembly code

With the c16 target you can include assembly code for the MOS 6502 processor. The code will be placed within the code bank.

Supported video standard

The ugBASIC compiler supports both the Commodore PLUS/4 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:

VERSIONENTSCPALTICKS PER SECOND
Commodore 16 PAL0 (FALSE)-1 (TRUE)50
Commodore 16 NTSC-1 (TRUE)0 (FALSE)60

Audio support

The c16 target supports audio commands, as described on the documentation page.

Joystick and keyboard support

The ugBASIC language supports up to 2 joysticks, using the JOY(n) statement, and the keyboard.