Hello all! Here's a nice project. Now go and help Ullrich e.g. with the VIC-20 port. I'll update the stuff on http://www.funet.fi/pub/cbm/crossplatform/programming/cc65/ to this new version, so you can soon download it also from there. Marko ------- Start of forwarded message ------- From: Ullrich von Bassewitz <uz@musoftware.de> Newsgroups: comp.sys.cbm Subject: Annoucement: CC65 V 2.0 Date: 4 Oct 1998 15:56:37 +0200 Organization: MU Softwareentwicklung Message-ID: <6v7uql$8tv$1@wuschel.musoftware.de> Reply-To: uz@musoftware.de I'm proud to announce version 2.0 of CC65, a C crosscompiler for 6502 systems. There are many changes between this release and the last one. To highlight some: * Completely new set of binary utilities that include - A one pass macroassembler that outputs relocative modules, has segment support, is switchable between 6502, 65SC02 and 65SC816 CPUs... - A new linker with a highly configurable output. The linker is able to support ROMable code (separate load and run addresses for data), multi-ROM environments (relocate into multiple memory areas) and more. - An all new archiver for the new object file format. Even if you don't need a C compiler, the new binutils are definitely worth a look! The new tools have a less restrictive copyright (no GPL!). There are no restrictions for use. You may even sell the tools or use the code in your projects without fear of "GPL infecting" your own code. See the doc files for details. * Better code for the compiler. The code is still far from being optimal, but you may expect speed improvements up to a factor of three. * The compiler is now much more standard conform. Many sources from other platforms should compile without changes. * Better support for the standard C libary. A very large subset of the standard ISO C library is available. * Conio library for direct console I/O is available on *all* supported systems. Text mode programs using conio are portable between all platforms! * Joystick support for the C64/C128 and Plus/4. * Supported systems: Because of lack of time, I had to drop the ACE libraries (anyone willing to help me here?). Support for c64 c128 plus/4 cbm 600/700 family (aka B series) is now equally available. The implementation for the 600/700 series is rather nice, since the 6509 runs with 2MHz on these systems, and programs compiled with cc65 use a separate memory bank, so you have almost FULL 64K of memory! * Completely new documentation. I've written new docs for the binutils and the compiler. More than 120K of text files are available and should help you to get started. * Updated sample programs. One of the samples plays the complete "Eine kleine Nachtmusik" (J.S.Bach) on platforms that have a SID chip (C64, C128 and the 600/700 series). It shows how easy it is to write programs that are portable between several platforms. * Easy hardware access. Writing to the SID on a C64 looks like SID.v1.freq = 0x2345; SID.v1.ctrl = 041; * The linker is able to create label files that may be read by VICE (I'm not sure if label support works in the current VICE version, I've used a beta). This allows you to debug your programs with VICE using the builtin machine language monitor, having symbolic names for subroutines available! * Special "fastcall" calling convention reduces the overhead when calling assembler functions. * A new optimizer for improved code. Some more features that were already available in version 1.9 but have been extended: * Support for all integer data types (char, int and a 32 bit long, of course all in signed and unsigned form). * Easy to use fullscreen debugger. Step through your code using a Turbo-Debugger like interface. See http://www.von-bassewitz.de/uz/cc65/debug1.gif for a screenshot. Roadmap: With the release of version 2.0, I will split development: I have some ideas how to produce better code with the existing compiler. However, for even greater improvement in the generated code, major parts of the compiler need a rewrite. Because of this, and to get rid of the (somewhat restrictive) compiler copyright, I will no longer put my ideas and work into the current version, but start a complete new project. So expect a "performance release" some time in the future, and then (hopefully) an all new version with additional features. More information: For your convenience, I've put all doc files also on the web server: http://www.von-bassewitz.de/uz/cc65/doc/ The cc65 main page http://www.von-bassewitz.de/uz/cc65/ will get updated to reflect the new version in the next few days. Help: Any help is appreciated! There are still areas, where the package is incomplete, expecially when it comes to the libraries. If you think about investing some time, here's a todo list: * File routines for the CBM systems are still missing. The C library uses a layered approach, so there are only 4 routines needed to get most of the higher level stuff up and running. All that is needed are C compatible open/close/read/write functions. * Support for the 80 column mode on the C128. * Support for ACE or other systems (VIC20, PET, even an Apple or Atari version shouldn't be too difficult). * A graphics library. The Plus/4 has a 320*200 mode that is very compatible the C64 and C128. With some clever programming it should be possible to write something that translates for all three platforms without changes. Available packages: As usual I will provide the complete sources and several binary packages. This time, I've also prepared binary and source RPMs for RedHat and SuSE Linux. So if you're using SuSE 5.x or RH 5.0/5.1, you will have the fastest start by using the apropriate binary RPM. Binaries for DOS and OS/2 will follow or may already be available at the time you read this. NOTE: I planned to link the DOS version with the PMODE/W DOS extender instead of DOS4G/W, but when testing this combination, I experienced problems under Windows NT, so I abandoned this idea. The paragraph in the announce.txt file that accompanies the packages is wrong in this respect! I've decided to compile the versions in order of operating system importance, so the Windows version will be the last one available (take that, Bill! :-) Download: For more information and links to the FTP server, see http://www.von-bassewitz.de/uz/cc65/ For direct download, use ftp://ftp.musoftware.de/pub/uz/cc65/ Credits: I would like to thank Keith W. Gerdes (kwg@freebird.ghofn.org) for his really great help with this release. Keith did a real project using the compiler, tested the daily snapshots and supplied me almost daily with bug reports, fixes and suggestions. With his help, I was able to remove many bugs and improve the overall quality greatly. If the compiler and the tools work for you, this is not at least due to his great work. While not being perfect, VICE was a great help when debugging parts of the runtime libraries. The CBM610 support would not have been possible without the work of the VICE team, especially Andre Fachat, who wrote the VICE x610 emulator (currently in beta). Thanks! -- Ullrich von Bassewitz uz@musoftware.de ------- End of forwarded message ------- - This message was sent through the cbm-hackers mailing list. To unsubscribe: echo unsubscribe | mail cbm-hackers-request@dot.tcm.hut.fi.
Archive generated by hypermail 2.1.1.