Optimizing Small memory C Compiler Assembler and Runtime for C64
Go to file
drmortalwombat 6ed4adb0ed OPtimize signed+unsigned char arithmetic 2025-06-19 21:54:23 +02:00
autotest Add static_assert 2025-05-25 12:31:15 +02:00
include OPtimize signed+unsigned char arithmetic 2025-06-19 21:54:23 +02:00
make prepare output directory also to build only the compiler 2025-05-27 16:33:36 +02:00
oscar64 OPtimize signed+unsigned char arithmetic 2025-06-19 21:54:23 +02:00
oscar64setup Bump version number 2025-06-15 14:27:49 +02:00
samples Fix double condition propagation 2025-06-15 13:56:11 +02:00
.gitattributes Initial commit 2021-09-06 18:34:52 +02:00
.gitignore Add interleave option for sectors in disk image 2024-06-05 22:21:21 +02:00
CMakeLists.txt Get target_sources through glob'ing instead of explicit filenames 2025-01-24 19:07:18 +01:00
LICENSE Initial commit 2021-09-06 18:34:52 +02:00
README.md Bump version number 2025-06-15 14:27:49 +02:00
makezip.bat Move zero page shift up to previous store 2024-08-01 22:19:16 +02:00
oscar64.md Bump version number 2025-06-15 14:27:49 +02:00
oscar64.sln Bump version number 2025-04-10 08:47:24 +02:00

oscar64

Oscar64 is a C/C++ cross compiler running on a modern system (such as a Windows PC, Mac or Linux machine) and targets the classic 6502 family of processors. It is mainly focused on Commodore systems such as the C64, PET or VIC20. The compiler supports C99 and many C++ features up to variadic templates and lambda functions.

The purpose of this compiler is to eliminate the need to write 6502 assembler code to achieve high code density and fast execution speed. It continues to improve with all the games, demos and tools written by it. It supports disk overlays and banked cartridges for larger projects.

The C64 executes 442 dhrystone V2.2 iteration per second, when compiled with Oscar64 and -O3 (which shows that the ancient dhrystone benchmark is no match to an optimizing compiler).

Full reference manual Additional samples and tutorials

References

This is a list of the games written with Oscar64, have a look if you are not convinced that fast paced action games can be written in C/C++ on a C64 (they are all free).

Ball and Chain

Balls like a Frog

cores4 Corescape

MetalMayhem

Mineshaft Gap

Minotrace

Missile Defence

cl1b Portal Buster

Roguebot

Shallow Domains

Veggies vs Undead