This directory contains sample programs for the cc65 compiler. Below is a short description for each of the programs, together with a list of the supported platforms. Please note: * The supplied makefile needs GNU make. It works out of the box on Linux and similar systems. If you're using Windows, then consider installing Cygwin or MSys2. * The makefile specifies the C64 as the default target system because all but three of the programs run on that platform. When compiling for another system, you will have to change the line that specifies the target system at the top of the makefile, specify the system with SYS= on the make command line, or set a SYS environment variable. * Use "make disk" to build a disk image with all sample programs. * All programs in the root of the "samples" directory have been written to be portable and work on more than one target. Programs that are specific to a certain target live in a subdirectory with the name of the target. List of supplied sample programs: ----------------------------------------------------------------------------- Name: ascii Description: Shows the ASCII (or ATASCII, PETSCII) codes of typed characters. Written and contributed by Greg King . Platforms: All platforms with conio or stdio (compile time configurable). ----------------------------------------------------------------------------- Name: atari2600hello Description: A "Hello world" type program. Platforms: Runs on only the Atari 2600 Video Console System. ----------------------------------------------------------------------------- Name: diodemo Description: A disc copy program written and contributed by Oliver Schmidt, . Supports single or dual disc copy. Platforms: The program does depend on conio and dio (direct disk i/o), so it currently does compile for only the Atari and Apple ][ machines. ----------------------------------------------------------------------------- Name: enumdevdir Description: Enumerates all devices, directories, and files. Written and contributed by Oliver Schmidt, . Platforms: All systems with device enumeration and directory access (currently the Commodore machines, the Commander X16, and the Apple ][). ----------------------------------------------------------------------------- Name: fire Description: Another graphics demo written by groepaz/hitmen. Platforms: The program currently is running on only the C64, but should be portable to the C128 and CBM510 (and maybe more machines). ----------------------------------------------------------------------------- Name: gunzip65 Description: A gunzip utility for 6502-based machines, written by Piotr Fusik . Platforms: Runs on all platforms with file I/O (currently the Atari, the Apple ][, Commodore machines, and the Commander X16). ----------------------------------------------------------------------------- Name: hello Description: A nice "Hello world" type program that uses the conio console I/O library for output. Platforms: Runs on all platforms that support conio, which means: Apple ][, Atari, Commodore machines, Commander X16, Creativision, Gamate, NES. ----------------------------------------------------------------------------- Name: mandelbrot Description: A mandelbrot demo using integer arithmetic. The demo was written by groepaz/hitmen, and converted to cc65 using TGI graphics by Stephan Haubenthal. Platforms: Runs on all platforms that have TGI support: Apple ][, Atari, C64, C128, Oric Atmos and Telestrat, GEOS, NES, and Lynx. ----------------------------------------------------------------------------- Name: mousedemo Description: Shows how to use the mouse. Platforms: All systems with mouse and conio support: C64, C128, CBM510, Atari, Apple ][. ----------------------------------------------------------------------------- Name: multidemo Description: Shows how to combine multiple cc65 features incl. overlays and extended memory drivers. Written and contributed by Oliver Schmidt, . Platforms: All systems with an overlay linker config., disk directory access, and EMD support (currently the C64, the C128, the Atari, and the Apple ][). ----------------------------------------------------------------------------- Name: nachtm Description: Plays "Eine kleine Nachtmusik" by Wolfgang Amadeus Mozart. Platforms: All systems that have the Commodore SID (Sound Interface Device): C64, C128, CBM510, CBM610. ----------------------------------------------------------------------------- Name: overlaydemo Description: Shows how to load overlay files from disk. Written and contributed by Oliver Schmidt, . Platforms: All systems with an overlay linker config. (currently the C64, the C128, the Atari, and the Apple ][). ----------------------------------------------------------------------------- Name: plasma Description: A fancy graphics demo written by groepaz/hitmen. Platforms: The program needs a VIC-II or a TED, so it runs on the following systems: C64, C128, CBM510, Plus/4. ----------------------------------------------------------------------------- Name: sieve Description: Implements the "Sieve of Eratosthenes" as a way to find all prime numbers in a specific number interval. Often used as a benchmark program. Platforms: All systems with conio and clock support: Atari, Commodore machines (VIC-20 needs memory expansion), Commander X16, Apple ][ (without timing due to missing clock support). ----------------------------------------------------------------------------- Name: supervisionhello Description: A "Hello world" type program. Platforms: Runs on only the Watara Supervision game console. ----------------------------------------------------------------------------- Name: tgidemo Description: Shows some of the graphics capabilities of the "Tiny Graphics Interface". Platforms: Runs on all platforms that have TGI support: Apple ][, Atari, C64, C128, Oric Atmos and Telestrat, GEOS, NES, and Lynx.