1
0
mirror of https://github.com/cc65/cc65.git synced 2024-11-19 21:32:19 +00:00
cc65 - a freeware C compiler for 6502 based systems
Go to file
Jesse Rosenstock 060417b0dc Adjust type of int constants that fit in char
When there is an integral constant like `3` in an expression, it has
type `int` according to the C spec, even though it can be represented
as an `unsigned char`.  Change codegen (`hie_internal` and `typeadjust`)
to treat it as `unsigned char` instead of `int` so that faster,
unsigned operations can be used.

For the test case in #1298, reduces the cycles per iteration from
4311 to 1884.  This is a great improvement, but still much worse than
the 1053 cycles/iter from `c4698df~`, so more work remains to be done.

Further partial fix for #1298 and #1308.
2020-11-16 00:56:19 +01:00
asminc add c64dtv support 2020-11-15 16:35:55 +01:00
cfg vic20.cfg: add missing comma 2020-11-11 17:20:25 +01:00
doc Fix typo 2020-11-15 16:35:55 +01:00
include atari.h, atari5200.h: style fixes 2020-10-28 21:12:32 +01:00
libsrc Added the cputdirect entry point to the cputc() functions in the two Oric libraries. 2020-11-15 11:44:12 -05:00
samples Adjusted to recent change in time.h 2020-10-25 21:33:08 +01:00
src Adjust type of int constants that fit in char 2020-11-16 00:56:19 +01:00
targettest makefile cleanup 2020-10-16 15:50:18 +02:00
test Add test case for #1332 2020-11-15 21:32:45 +01:00
util Removed unnecessary tool. 2020-07-19 13:16:29 +02:00
.gitattributes Added .gitattributes to force LF line endings on commit. 2017-03-12 18:13:18 +01:00
.gitignore
.travis.yml Fixed Windows path notation. 2020-08-02 17:49:18 +02:00
LICENSE
Makefile Added test target. 2020-07-22 23:27:04 +02:00
Makefile.travis The doc now lives in the 'master' branch of the 'doc' project. 2018-09-18 23:39:11 +02:00
README.md Normalized Atari naming. 2020-02-17 11:07:52 +01:00

Windows Snapshot

Documentation

Wiki

Build Status

cc65 is a complete cross development package for 65(C)02 systems, including a powerful macro assembler, a C compiler, linker, librarian and several other tools.

cc65 has C and runtime library support for many of the old 6502 machines, including

  • the following Commodore machines:
    • VIC20
    • C16/C116 and Plus/4
    • C64
    • C128
    • CBM 510 (aka P500)
    • the 600/700 family
    • newer PET machines (not 2001).
  • the Apple ][+ and successors.
  • the Atari 8-bit machines.
  • the Atari 2600 console.
  • the Atari 5200 console.
  • GEOS for the C64, C128 and Apple //e.
  • the Bit Corporation Gamate console.
  • the NEC PC-Engine (aka TurboGrafx-16) console.
  • the Nintendo Entertainment System (NES) console.
  • the Watara Supervision console.
  • the VTech Creativision console.
  • the Oric Atmos.
  • the Oric Telestrat.
  • the Lynx console.
  • the Ohio Scientific Challenger 1P.

The libraries are fairly portable, so creating a version for other 6502s shouldn't be too much work.