cc65

cc65

Basisdaten

EntwicklerUllrich von Bassewitz
Erscheinungsjahr1998[1]
Aktuelle Version2.19[2]
(20. November 2020)
BetriebssystemMultiplattform
Programmier­spracheANSI C
KategorieCross-Compiler
Lizenzzlib-Lizenz/weitere
deutschsprachignein
cc65.github.io

Der cc65 ist ein Cross-Compiler-Paket für alte (und neue) 6502-basierte Computerarchitekturen. Es umfasst einen Compiler für die Programmiersprache C, einen Makro-Assembler, Linker, Archiver und einige andere Tools. Das Compiler-Paket ermöglicht u. a. die Entwicklung von Programmen für den C64, C128, Apple II und Atari Heimcomputer/Handheld. Durch eine gute Programmbibliothek ist es u. a. mit dem cc65 sehr einfach möglich, Programme für die grafische Benutzeroberfläche GEOS (C64/128 Versionen) zu entwickeln.

Der Compiler unterstützt beinahe die ganze C-Programmiersprache. Das wichtigste noch fehlende Element der Sprache sind Gleitkommazahlen, daher sind Berechnungen nur mit ganzen Zahlen möglich. Die Funktionen der C-Standardbibliothek werden unterstützt, soweit sie auf den Zielsystemen sinnvoll umsetzbar sind.

Systemübergreifende Programmierschnittstellen

Statisch

  • conio – Direkte Ein- und Ausgabe über Tastatur und Bildschirm
  • dio – Direkter Datenträgerzugriff auf Blockebene

Dynamisch

  • em – Unterstützt diverse Arten von Speichererweiterungen auf einheitliche Weise, ähnlich EMS
  • joystick – relatives Eingabegerät
  • mouse – absolutes Eingabegerät
  • serial – Unterstützt die Ein- und Ausgabe über RS-232 und ähnliche Schnittstellen
  • tgi – einheitliche Schnittstelle für diverse Grafikmodi, ähnlich BGI
Verfügbarkeit von APIs bzw. Anzahl der Treiber
 statischdynamisch
 coniodioemdjoymousertgi
apple2✓✓11112
apple2enh✓✓11112
atari✓✓ 2   
atari2600       
atari5200✓  1   
atmos✓     2
c16✓ 11   
c64✓ 64311
c128✓ 52312
cbm510✓ 11 1 
cbm610✓ 1  1 
creativision✓  1   
gamate✓  1   
geos✓✓11  1
lynx   1 11
nes✓  1   
osic1p✓      
pce✓  1   
pet✓  1   
plus4✓  1 1 
supervision   1   
telestrat✓     2
vic20✓  2   
Übersicht über die definierten Namensräume

Beispielhafte Projekte

Einzelnachweise

  1. ↑ http://unusedino.de/ec64/technical/c=hacking/ch17.html
  2. ↑ Release 2.19. 20. November 2020 (abgerufen am 8. Dezember 2020).

Auf dieser Seite verwendete Medien

Defines.svg
(c) Polluks, CC BY 3.0
Target-Defines des cc65-Compilers
Cc65-logo.png
Logo for the cross development package w:cc65.