Skip to content

Releases: byteworksinc/ORCA-C

ORCA/C 2.2.0

30 Jul 16:43
Compare
Choose a tag to compare

ORCA/C 2.2.0 is a new release of the ORCA/C compiler for the Apple IIGS. Major changes since ORCA/C 2.1.0 include:

  • Added support for almost all language and library features required by the C17 standard
  • Improved lint checks and debugging features to help detect errors
  • New command-line options for pre-include files and C standard selection
  • Improvements to generated code
  • Auto-segmenting linker
  • Hundreds of bug fixes
  • And more

The ORCA/C manual has been fully updated to describe the new features. A readme file and detailed release notes are also available.

This is an update package designed to be installed on top of an existing copy of ORCA/C 2.1 or later. Instructions on applying the update are available here. Note that the disk image must be treated as a hard drive image or high-density floppy image. If you need to use an 800KB floppy, place the SHK file on it instead of using the disk image.

If you need a full copy of ORCA/C, you can get it as part of the Opus ][ collection sold by Juiced.GS.

ORCA/C 2.2.0 B7

07 Apr 23:40
Compare
Choose a tag to compare
ORCA/C 2.2.0 B7 Pre-release
Pre-release

This ORCA/C update contains various enhancements and bug fixes. Additions since ORCA/C 2.2.0 B6 include:

  • Support for new language features from C99 and C11
    • Designated initializers
    • Anonymous structures and unions
    • _Pragma preprocessing operator
    • __STDC_VERSION__ macro
    • C99-compliant inline semantics (but no actual inlining)
    • C11-compliant _Thread_local specifier (but no multithreading)
  • Other compiler features
    • C standard selection, including strict conformance modes
    • Debugging option to detect illegal use of null pointers
    • Lint check for unused variables
    • Lint check for implicit conversions that change constant values
    • Small improvements to compiler performance and generated code
  • New library features
    • Optional support for time zone handling using the Time Tool
    • timespec_get function
    • erf, erfc, fma, and tgamma math functions
  • Auto-segmenting linker
  • Various bugs fixed

ORCA/C 2.2.0 B7 supports nearly all the features required by C17, apart from wide character support and some floating-point library features.

For installation instructions, see the readme. For details on what has changed, see the release notes.

This is an update package designed to be installed on top of an existing copy of ORCA/C 2.1 or later. Note that the disk image must be treated as a hard drive image or high-density floppy image. If you need to use an 800KB floppy, place the SHK file on it instead of using the disk image.

ORCA/C 2.2.0 B6

23 Jul 00:20
Compare
Choose a tag to compare
ORCA/C 2.2.0 B6 Pre-release
Pre-release

This ORCA/C update contains various enhancements and bug fixes. Additions since ORCA/C 2.2.0 B5 include:

  • Support for new language features from C99 and C11:
    • Compound literals
    • Hexadecimal floating-point constants
    • Unicode strings and characters in code
    • Type qualifiers or static in the declarations of array parameters
  • Support for new library features, mainly from C99 and C11:
    • Unicode conversion functions
    • Many new <math.h> functions from C99
    • strftime function for formatting date/time strings
    • va_copy macro for copying variable arguments
    • Minimalistic implementation of locale functions (supporting the "C" locale only)
  • Option to use a custom pre-include file
  • Option to print file names in error messages
  • Option to disable non-standard ORCA/C keywords (so they can be used as identifiers)
  • Numerous bugs fixed

For installation instructions, see the readme. For details on what has changed, see the release notes.

This is an update package designed to be installed on top of an existing copy of ORCA/C 2.1 or later.

ORCA/C 2.2.0 B5

15 Sep 00:18
Compare
Choose a tag to compare
ORCA/C 2.2.0 B5 Pre-release
Pre-release

This ORCA/C update contains various enhancements from community members. Changes since ORCA/C 2.2.0 B4 include:

  • Support for new language and library features from C99 and C11:
    • The 64-bit integer types long long and unsigned long long
    • The boolean type _Bool and the <stdbool.h> header
    • Generic selection expressions using the _Generic keyword
    • Predefined identifier __func__ giving the function name
    • Floating-point environment access via <fenv.h>
    • Floating-point classification macros in <math.h>
  • Floating-point constants and constant expressions are now evaluated with extended precision
  • Option for stricter type checking as required by the C standards
  • Numerous bugs fixed

For installation instructions, see the readme. For details on what has changed, see the release notes.

This is an update package designed to be installed on top of an existing copy of ORCA/C 2.1 or later.

ORCA/C 2.2.0 B4

08 Feb 00:29
Compare
Choose a tag to compare
ORCA/C 2.2.0 B4 Pre-release
Pre-release

This ORCA/C update contains various enhancements from community members. Changes since ORCA/C 2.2.0 B3 include:

  • Support for several new language features from C99 and C11:
    • restrict, _Static_assert, _Noreturn, _Alignof, and _Alignas keywords
    • digraphs and universal character names
    • macros that take a variable number of arguments
  • quick_exit(), at_quick_exit(), and aligned_alloc() library functions added (from C11)
  • New lint checks for syntax disallowed by C99 and for non-void functions not returning a value
  • Option for #pragma lint messages to be treated as warnings rather than errors
  • Numerous bugs fixed

For installation instructions, see the readme. For details on what has changed, see the release notes.

This is an update package designed to be installed on top of an existing copy of ORCA/C 2.1 or later.

ORCA/C 2.2.0 B3

18 Sep 23:09
Compare
Choose a tag to compare
ORCA/C 2.2.0 B3 Pre-release
Pre-release

This ORCA/C update contains various enhancements from community members. Changes include:

  • Numerous bugs fixed
  • Several C99 language features supported, including mixed statements and declarations
  • Partial support for the new C99 features in printf() and scanf()
  • New lint checks to catch errors in printf()/scanf() format strings

For installation instructions, see the readme. For details on what has changed, see the release notes.

This is an update package designed to be installed on top of an existing copy of ORCA/C 2.1 or later.

ORCA/C 2.2.0 B2

15 Dec 19:49
Compare
Choose a tag to compare
ORCA/C 2.2.0 B2 Pre-release
Pre-release

This ORCA/C update contains various patches from community members. Changes since ORCA/C 2.1 include:

  • Numerous bugs fixed
  • Several new language features (largely from C99) are supported
  • The <stdint.h>, <inttypes.h>, and <iso646.h> headers are included
  • Can now generate inline function names for use with assembly-level debuggers

Compared to ORCA/C 2.2.0 B1, this beta contains additional bug fixes and adds an option for ignoring extra tokens after #endif directives.

For installation instructions, see the readme. For details on what has changed, see the release notes.

This is an update package designed to be installed on top of an existing copy of ORCA/C 2.1 or later.

ORCA/C 2.2.0 B1

23 Oct 03:43
Compare
Choose a tag to compare
ORCA/C 2.2.0 B1 Pre-release
Pre-release

This ORCA/C update contains various patches from community members. Significant changes include:

  • Numerous bugs fixed
  • Several new language features (largely from C99) are supported
  • The <stdint.h>, <inttypes.h>, and <iso646.h> headers are included
  • Can now generate inline function names for use with assembly-level debuggers

For installation instructions, see the readme. For details on what has changed, see the release notes.

This is an update package designed to be installed on top of an existing copy of ORCA/C 2.1.x.