cc65


cc65
Utvecklare Ullrich von Bassewitz
Initial release 15 november 1998 ; 24 år sedan ( 1998-11-15 )
Stabil frisättning
2.19 / 20 november 2020 ; 2 år sedan ( 2020-11-20 )
Förvar
Skrivet i ANSI C
Operativ system Multiplattform
Typ Korskompilator
Licens zlib licens
Hemsida cc65 .github .io

cc65 är ett korsutvecklingspaket för 6502- och 65C02 -mål, inklusive en makrosamlare , en C- korskompilator , länkare , bibliotekarie och flera andra verktyg .

Översikt

cc65 är baserad på en inbyggd C-kompilator som ursprungligen anpassades för Atari 8-bitars datorer av John R. Dunning 1989, som har sitt ursprung som en Small C -ättling. Den har flera tillägg, och några av gränserna för den ursprungliga Small C-kompilatorn är borta.

Verktygslådan har till stor del utökats av Ullrich von Bassewitz och andra bidragsgivare. Den faktiska cc65-kompilatorn, en komplett uppsättning binära verktyg (assembler, linker, etc.) och runtime-bibliotek är under en licens som är identisk med zlib 's.

Kompilatorn i sig kommer nära ANSI C- kompatibilitet, medan C-bibliotekets funktioner beror på målplattformens hårdvara. stdio stöds på många plattformar, liksom Borland -stil conio.h skärmhantering. GEOS stöds också på Commodore 64 och till och med Apple II . Biblioteket stöder många av Commodore-plattformarna ( C64 , C128 , C16/116 / Plus/4 , P500 och 600/700-familjen ), Apple II-familjen , Atari 8-bitarsfamiljen , Oric Atmos , Nintendo Entertainment System , Watara Supervision spelkonsol , Synertek Systems SYM-1 och Ohio Scientific Challenger 1P.

Officiellt stödda värdsystem inkluderar Linux , Microsoft Windows , MS-DOS och OS/2 , men själva källkoden har rapporterats [ av vem? ] att fungera nästan oförändrat på många plattformar vid sidan av dessa.

ca65 macro assembler stöder 6502 , 65C02 och 65C816 processorer och kan användas fristående utan C-kompilatorn.

API som stöds

statisk

  • conio (textbaserad konsol I/O icke-rullande)
  • dio (blockorienterad disk I/O som går förbi filsystemet)

dynamisk

  • em (utökat minne, används för alla typer av minne bortom 6502:ans 64K-barriär, liknande EMS )
  • joystick (relativa indataenheter)
  • mus (absoluta inmatningsenheter)
  • seriell (kommunikation)
  • tgi (2D-grafikprimitiver inspirerade av BGI )
conio dio emd glädje mou ser tgi
äpple 2 Ja Ja 1 1 1 1 2
apple2enh Ja Ja 1 1 1 1 2
atari Ja Ja 2 15
atmosfär Ja 1
c16 Ja 1 1
c64 Ja 6 4 3 1 1
c128 Ja 5 2 3 1 2
cbm510 Ja 1 1 1
cbm610 Ja 1 1
geos Ja Ja 1 1 1
lodjur 1 1 1
nes Ja 1 1
osi Ja
sällskapsdjur Ja 1
plus4 Ja 1 1
övervakning
sym1
vic20 Ja 2

Obs: För statiska bibliotek betyder "Ja" att funktionen är tillgänglig. För dynamiska bibliotek visar kolumnerna antalet tillgängliga drivrutiner.


externa länkar