diff --git a/C.Read.Me b/C.Read.Me new file mode 100644 index 0000000..40c3255 --- /dev/null +++ b/C.Read.Me @@ -0,0 +1,42 @@ +Welcome to ORCA/C 2.2.0! This is a release containing updates from +community members (Stephen Heumann and Kelvin Sherlock). + +ORCA/C 2.2.0 adds support for almost all of the new language and library +features required by the C17 standard. It also has several other new +features, such as additional lint checks to help identify bugs and +portability problems. In addition to these new features, ORCA/C 2.2.0 +includes hundreds of bug fixes in the compiler and libraries. + +The ORCA/C manual has been fully updated to cover ORCA/C 2.2.0, so new +users should simply refer to that. Users familiar with older versions +of ORCA/C can refer to the cc.notes file in the Release.Notes directory +for a description of the changes between ORCA/C 2.0 and ORCA/C 2.2.0. + +ORCA/C 2.2.0 requires a real or emulated Apple IIGS with at least the +following specifications: + +* 2 MB of RAM (3 MB or more recommended) +* a hard drive or SSD +* System 6.0.1 or later + +ORCA/C can also be run on modern Mac, Windows, or Linux systems as a +cross compiler by using Golden Gate, a specialized emulation tool by +Kelvin Sherlock. It is available separately from Juiced.GS: +https://juiced.gs/store/golden-gate/ + +If you have any questions, or if you want to get involved in ORCA/C +development, please get in touch. The ORCA/C development project is +hosted on GitHub, and bug reports or patches can be submitted there: +https://github.com/byteworksinc/ORCA-C + +Thanks to: +* Mike Westerfield, for writing ORCA/C, releasing the source code, + and permitting it to be updated by the community. +* Kelvin Sherlock, for providing several patches and bug reports, and + for writing several useful tools for modern Apple II development. +* Soenke Behrens, for compiling a list of ORCA/C bug reports and test + cases, which has helped me to identify and fix a number of bugs. +* The developers of Csmith (http://embed.cs.utah.edu/csmith/), an + automated compiler testing tool that has helped to find several bugs. + +--Stephen Heumann (stephenheumann@gmail.com) diff --git a/C.Update.ReadMe b/C.Update.ReadMe index a5580dd..0d695df 100644 --- a/C.Update.ReadMe +++ b/C.Update.ReadMe @@ -1,15 +1,25 @@ -Welcome to ORCA/C 2.2.0 B7! This is an update release containing -patches from community members (Stephen Heumann and Kelvin Sherlock), -which add new features and fix bugs. For details on these changes, -see the cc.notes file in the Release.Notes directory. +This is an update package that can be used to update ORCA/C 2.1.0 to +ORCA/C 2.2.0. You must have an existing copy of ORCA/C 2.1.0 in order +to use this update. If you do not already have a copy, you can get it +as part of Opus ][: The Software, a collection of Byte Works software +which is sold by Juiced.GS: +https://juiced.gs/store/opus-ii-software/ -This package is designed to be applied as an update to an existing -ORCA installation containing ORCA/C 2.1.0 or later (including the one -provided on Opus ][: The Software). To apply the update, simply copy +This update must be applied to an existing ORCA installation containing +ORCA/C 2.1.0 or an ORCA/C 2.2.0 beta (including the one provided on +Opus ][: The Software). To apply the update, you just need to copy the files from this distribution into the corresponding locations in -your ORCA installation, replacing any older versions. (One easy way -to do this is to extract the archive containing this update directly -on top of your ORCA installation, overwriting all modified files.) +your ORCA installation, replacing any older versions. + +If you received this update as a SHK file, you can simply extract the +the files from it directly on top of your ORCA installation. + +If you received this update as a disk image, you can apply the update +by copying the files into place using the Finder, or by running the +following command within the root directory of your ORCA installation +using the text-based ORCA shell: + +COPY -C :ORCAC.220:= In addition to the ORCA shell environment, this update can also be used under other environments that are compatible with ORCA/C, such as @@ -18,20 +28,3 @@ into the directory containing files from a standard ORCA installation (normally /lang/orca for GNO). An updated version of ORCALib suitable for use under GNO is available as a separate download at: https://github.com/byteworksinc/ORCALib/releases - -If you have any questions, or if you want to get involved in ORCA/C -development, please get in touch. The ORCA/C development project is -hosted on GitHub, and bug reports or patches can be submitted there: -https://github.com/byteworksinc/ORCA-C - -Thanks to: -* Mike Westerfield, for writing ORCA/C, releasing the source code, - and permitting it to be updated by the community. -* Kelvin Sherlock, for providing several patches and bug reports, and - for writing several useful tools for modern Apple II development. -* Soenke Behrens, for compiling a list of ORCA/C bug reports and test - cases, which has helped me to identify and fix a number of bugs. -* The developers of Csmith (http://embed.cs.utah.edu/csmith/), an - automated compiler testing tool that has helped to find several bugs. - ---Stephen Heumann (stephenheumann@gmail.com) diff --git a/Manual.docx b/Manual.docx index b5c7066..9b7e8aa 100644 Binary files a/Manual.docx and b/Manual.docx differ diff --git a/Tech.Support b/Tech.Support new file mode 100644 index 0000000..2f1d831 --- /dev/null +++ b/Tech.Support @@ -0,0 +1,12 @@ + As with all Byte Works programs, if you have questions or are +experiencing problems, we want to hear from you. You can contact us +through the channels below. + +E-mail: support@byteworks.us + +Web Site: https://www.byteworks.us + +ORCA/C is now maintained on GitHub by community members. Bug reports +or support requests can be submitted on its issues page: + +https://github.com/byteworksinc/ORCA-C/issues diff --git a/cc.notes b/cc.notes index 646b273..688d79e 100644 --- a/cc.notes +++ b/cc.notes @@ -1,10 +1,12 @@ -ORCA/C 2.2.0 B8 +ORCA/C 2.2.0 Copyright 1997, Byte Works Inc. Updated by Stephen Heumann and Kelvin Sherlock, 2017-2023 +These release notes document the changes between ORCA/C 2.0 and ORCA/C 2.2.0. They are intended mainly for users familiar with earlier versions of ORCA/C. New users should simply refer to the ORCA/C 2.2 manual, which has been fully updated to document the new features and other changes in ORCA/C 2.2.0. + -- Change List -------------------------------------------------------------- -2.2.0 B8 1. Bugs squashed. See bug notes, below. +2.2.0 1. Bugs squashed. See bug notes, below. 2. New language features added (mainly features from C99 and C11). See "New Language Features," below. @@ -84,7 +86,9 @@ Updated by Stephen Heumann and Kelvin Sherlock, 2017-2023 2.0.1 1. Bugs squashed. See bug notes, below. --- Manual Errata ------------------------------------------------------------ +-- Manual Errata in the ORCA/C 2.0 Manual ----------------------------------- + +(These errata have been corrected in the ORCA/C 2.2 manual.) p. 40 @@ -199,7 +203,7 @@ If precompiled headers are being used, #pragma expand will not print the tokens p. 258 -The slot parameter to #pragma float is now used to set the FPE slot. See "Changes to #pragma float," below. +The slot parameter to #pragma float is now optional, and if present is used to set the FPE slot. See "Changes to #pragma float," below. The #pragma ignore directive supports several new bits. @@ -2191,7 +2195,7 @@ int foo(int[42]); 241. When using the large memory model, functions registered with atexit() (or at_quick_exit(), in ORCA/C 2.2 betas) might be called with the data bank set incorrectly, potentially causing memory corruption or other incorrect behavior. -(Bug fixes below here were added in ORCA/C 2.2.0 B8.) +(Bug fixes below here were added in the final release of ORCA/C 2.2.0.) 242. In the fprintf() family of functions, the '0' flag should be ignored if '-' was also specified.