Fred's Home Page

About me
csh is bad
Help out
KRoC/Linux (old)
occam upgrades
occam tutorial
Projects (PhD)
Quick gdb
UNIX crashcourse
WG / WGBuilder

KRoC/Linux 1.4

[ about | download | release-notes | news | compiling | md5sums | bugs | changelog ]

latest is 1.5.0-pre4

About KRoC/Linux

KRoC, the Kent Retargettable occam-pi Compiler, is a collection of programs/libraries which facilitates the execution of occam-pi programs on various platforms. The version on this page is only for i386 compatible processors running Linux (although it has been reported to work on FreeBSD systems too). The main components are:

  • occ21, the Inmos occam compiler
  • tranx86, a translator from extended transputer code (ETC) to intel i386 object code
  • CCSP, the run-time kernel, providing the virtual transputer

As well as these are various libraries, example programs, fun animations, etc.

This page is not the official KRoC home page. I'm merely parking stuff here for the sake of convienience.

If you're looking for a list of extensions to occam, etc., check the occ21-extensions.html file.


Here are the various tarballs:

and the patches:


  • 1.5.0-pre4: A variety of library and tool updates and bug-fixes. Some demo programs still crash, but the majority of code is stable. Still lacking fixes for user-defined channels and dynamic loadable code, but pony (network) support should now be available again.
  • 1.5.0-pre3: The multi-processor branch has been made the default, and the subversion repository re-arranged to be in a single tree (faster updates and easier branching). This release has not been extensively tested. In particular, support for features such as user-defined channels, dynamic loadable processes and the pony network infrastructure are broken -- on the todo list.
  • 1.5.0-pre2: This version will build a multi-process enabled KRoC if supported (linux and Darwin). This release has not been extensively tested.
  • 1.5.0-pre1: This version incorporates some fairly substantial changes. This release has not been extensively tested. Note that this is not a multiprocessor capable release.
  • 1.4.1-pre6: This version includes various new libraries and demo programs (including occam-pi space-invaders!). Also some bug-fixes to existing packages, and a new module mechanism. This release has not been extensively tested.
  • 1.4.1-pre5: Made less reliant on specific gcc versions, assuming the compiler is a known good one, things should be ok.
  • 1.4.1-pre4: This version changes the run-time interface significantly. Things work fine when built with gcc-4.0.3; if you get the opportunity, please report success or failure with other gcc versions so that they may be incorporated into the configuration.
  • 1.4.1-pre1: The subversion update may destroy auto-generated files that are included in the tarball -- use the 1.4.1-pre1 tarball to start afresh (or use the autotools to re-generate files).
  • 1.4.0-pre3: "./build distclean" fails to clean the 'doc/' sources, so these are actually configured for my system in the release. To fix, either "make distclean" in the 'doc/' directory, or run the build script as "./build --force-configure". Sorry about that.. -- fixed for the next release. Note: this has been fixed in the interim 1.4.0-pre3-2 release.


new to 1.5.0:

  • multi-processor support
  • restructured source tree

new to 1.4.1:

  • new module mechanism
  • occamdoc tool
  • Various contributed software packages
  • Pony (previously networked infrastructure

new to 1.4.0:

  • Source-tree updates from the subversion repository
  • Windows support using cygwin
  • Support for Solaris/Sparc (experimental)
  • Support for PowerPC/Linux (experimental)
  • Support for infrastructure
  • Mobile type descriptions
  • SDLRaster, SDL raster graphics
  • Built-in BARRIER and MOBILE BARRIER support
  • Support for mobile process serialisation (experimental)
  • Improved installation layout

new to 1.3.3:

  • Mobile channel types, anonymous channel types. (shared and unshared)
  • Mobile process types (experimental)
  • FORKING/FORK for spawning parallel processes
  • 32-levels of process priority
  • Channel direction specifiers
  • Various ALT enhancements
  • Extended rendezvous
  • User-defined channels
  • C interface
  • A pre-processor
  • Protocol inheritance
  • Pthreads compatability

new to 1.3.2:

  • Use the "./build update" feature to download and apply patches, works with 1.3.2 onwards. You will need the utilities `wget', `patch' and at least one of `md5sum' and `wc'. For FreeBSD, the `fetch' utility seems to do the same job as wget - you'll need to create a symblink called wget (somewhere in your PATH), linked to the `fetch' binary for this to work.


See the KRoC web-page for general information on installing KRoC. There is also a KRoC intallation guide on the systems research group Wiki.

Pre-release build notes:

  • cygwin users: to build KRoC/Linux under cygwin on a Windows machine, you'll need the following cygwin packages: binutils, gcc, gcc-core, glib2-devel, make. I'd also recommend installing these packages too: autoconf, autoconf-devel, autoconf-stable, automake, automake-devel, automake-stable, gdb, patchutils. Use the cygwin setup utility to install packages.

  • SDLRaster support: to use SDLRaster you'll need the X11 development files (e.g. the "xlibs-dev", "libsdl1.2-dev" packages and dependants in Debian GNU/Linux).


Here are the MD5 checksums for the latest versions:

4b71258d87c4f5247e92289a0e0ae1bb  kroc-1.5.0-pre4.tar.bz2
68fb3749e204074d97351bb6a43a051f  kroc-1.5.0-pre4.tar.gz

75e37bac19f024c02b8d64302be2c957  kroc-1.4.0.tar.gz
19201dd8c657ec8e282a22bc98572fbf  kroc-1.4.0.tar.bz2


Here is the bugfile (verbatim) for 1.4.0 (latest stable version):

  *	compiler sometimes generates spurious/excessive undefined variable warnings
  *	inherited protocols sometimes incorrectly adjusted when tag-values are specified
  *	nested mobiles may not always work correctly (not completely fixed -- syptoms will
	usually be unexplained segfaults;  compile with -di to help track these down)
  *	MOBILE.CHANs do not work well as components of other PROTOCOLs

Here is the bugfile for 1.5.0-pre4 (latest development version):

  *	compiler sometimes generates spurious/excessive undefined variable warnings
  *	nested mobiles may not always work correctly (not completely fixed -- syptoms will
	usually be unexplained segfaults;  compile with -di to help track these down)
  *	MOBILE.CHANs do not work well as components of other PROTOCOLs


Here is the KRoC/Linux changelog file (verbatim, current), latest first:

26/03/2008	frmb	version up to 1.5.0-pre4
17/11/2007	cgr	fixes for some mobile process issues
16/11/2007	cgr	various CCSP updates
16/11/2007	ats	various updates to sdlraster, raster and occade
14/11/2007	frmb	tagged and released 1.5.0-pre3
14/11/2007	frmb	version-up to 1.5.0-pre3, added some sdlraster examples (using miniraster)
14/11/2007	frmb	restructured source packages into a single tree
13/11/2007	cgr	various updates, merged MP branch into trunk
31/10/2007	frmb	put 1.5.0-pre2 together (MP version, auto-detected)
31/10/2007	frmb	various build script updates
28/10/2007	frmb	version up to 1.5.0-pre2, added David Wood's robot programs
28/10/2007	frmb	small fix for remembering UDC build option
28/10/2007	frmb	moved source code repository to CSProjects,
23/09/2007	frmb	version-up to 1.5.0 pre-releases
21/09/2007	ats	restructured distribution tree
21/09/2007	cgr	various updates
25/07/2007	ats	various restructuring of the source tree
14/07/2007	cgr	some work towards darwin support (for Mac OS X on Intel)
12/07/2007	frmb	put 1.4.1-pre6 together
11/07/2007	ats	added occSDL library and occade to the distribution
19/06/2007	ats	various package updates for module mechanism
19/06/2007	ats	updates to KRoC wrapper script
18/06/2007	ats	added -C option to tranx86 to dump #PRAGMA COMMENTs
17/06/2007	frmb	minor updates for NOCC
14/04/2007	cgr	CCSP fixes for RMoX
04/04/2007	ats	occam-doc updates and mechanical occam-doc-ifying of inmos libraries
06/03/2007	frmb	added NOCC path to build configuration (passed to kroc script configure)
06/03/2007	frmb	various tranx86 updates
14/02/2007	ats	occamdoc updates
03/02/2007	phw	updates to course sort-pump examples
19/01/2007	frmb	fixed a small bug in occ21 (ack to db99 for spotting it)
18/01/2007	ats	occamdoc updates
28/12/2006	frmb	added MoinMoin Wiki occam-pi parser to the distribution (in doc/)
20/12/2006	frmb	added occam-pi adventure game to the distribution
16/12/2006	frmb	put 1.4.1-pre5 together
01/12/2006	frmb	various updates to occamdoc and some packages
08/09/2006	frmb	partial updates to support building on 64-bit AMD Opteron / Linux machines
02/09/2006	frmb	various updates to tranx86 and CCSP
20/08/2006	frmb	added MySQL occam API (moa) to the contrib area
15/05/2006	ats	occamdoc moved within repository, build script updated
15/05/2006	frmb	put 1.4.1-pre4 together
15/05/2006	frmb	merged in Adam's occamdoc tool
14/05/2006	frmb	fixed some of the interfacing code in CCSP, normalised a bit
09/05/2006	frmb	added some priority-free calls to CCSP
08/05/2006	frmb	more changes to the run-time interface, CIF updates to use it
02/05/2006	frmb	changed the run-time interface mechanism (mostly)
13/04/2006	frmb	added --svn-user option to the build script
11/04/2006	ats	added command-line option handling to the file library
11/04/2006	ats	small fix for a memory leak in blocking sys-calls handling
10/04/2006	frmb	put 1.4.1-pre3 together
10/04/2006	ats	various updates/fixes for pony
10/04/2006	frmb	added the "cluster DX viewer" to contributed software
10/04/2006	frmb	added Adrian Cockcroft's formatted output library to contributed software
10/04/2006	frmb	put in mechanisms to handle contributed software
10/04/2006	frmb	put 1.4.1-pre2 together
09/04/2006	frmb	added the pony/kroc-net infrastructure to the distribution (experimental)
09/04/2006	frmb	follow-up fix for a related bug
08/04/2006	frmb	fixed a PLACED array bug in occ21, ack to Sergiu Dumitriu for spotting it
06/04/2006	frmb	more interface changes, more multi-processor code
06/04/2006	frmb	fixed a small bug in occ21 (dynamic mobile arrays)
04/04/2006	frmb	changed interface mechanism for some run-time kernel calls
04/04/2006	frmb	fixed a small register colouring problem in tranx86
02/04/2006	frmb	some tidy-ups, more multi-processor code
02/04/2006	frmb	separated out top-level interface processes into libkrocif
02/04/2006	frmb	changed bug-reporting address to (RT queue)
29/03/2006	frmb	various CCSP tidy-ups, removed old keyboard support
28/03/2006	frmb	started adding some support for multi-processor machines
27/03/2006	frmb	started removing support for scheduler-structures (for a better way)
26/03/2006	frmb	a couple more fixes for pony
25/03/2006	frmb	added some checks in CCSP for invalid mobile processes
25/03/2006	frmb	various updates for pony
22/03/2006	frmb	small fix for compiler crash with missing parameter types, ack to Christian/CO631-students for spotting it
22/03/2006	frmb	fix for a missing check in mobile channel-end communication, ack to Adam for spotting it
21/03/2006	frmb	fixed some more bugs in the usage checker and undefinedness checker
19/03/2006	frmb	fixed a small bug in the undefinedness checker, ack to Adam for finding it
18/03/2006	frmb	put 1.4.1-pre1 together
18/03/2006	frmb	fixed some UDO bugs in the compiler, tidied up other code
18/03/2006	frmb	minor compiler fixes/updates in error paths
18/03/2006	frmb	fixed a type-check bug with anonymous channel-types and protocol inheritance
14/03/2006	frmb	added --linkcc option to kroc wrapper
14/03/2006	frmb	small fix to mixed input/output in arrays of mobile channel-ends passed as parameters
14/03/2006	frmb	small fix to CIF assembler code (.string to .asciz)
13/03/2006	frmb	small fix for -X6 option (extended single-tag inputs)
26/02/2006	frmb	compiler fix disallowing PROTOCOLs to be used as variable types
08/02/2006	frmb	small fix for network CLAIMs
05/02/2006	frmb	various fixes for channel-type type descriptions
01/02/2006	frmb	fixed a small memory-leak in non-freeing of dynamic channel types
22/01/2006	frmb	multiway sync support in the run-time (not for regular occam-pi yet)
14/01/2006	frmb	support for ENROLL instead of BARRIER for doing PAR barrier extension
14/01/2006	frmb	added checks for null mobile barriers on sync/enroll/resign
14/01/2006	frmb	put 1.4.0 together
14/01/2006	frmb	minor updates to the compiler and translator
13/01/2006	frmb	various updates to SDLRaster
12/01/2006	frmb	fix to FORKed mobilespace, ack to Carl Ritson for spotting it
04/01/2006	frmb	some small MOBILE.CHAN fixes
30/12/2005	frmb	added kroc configuration options to extra build config, kroc manpage update
30/12/2005	frmb	put 1.4.0-final2 together
30/12/2005	frmb	various manpage updates, added kroc.conf manpage
29/12/2005	frmb	rolled versions over to 1.4.0-final2, various minor updates for cygwin
29/12/2005	frmb	churned out 1.4.0-final
29/12/2005	frmb	minor SDLRaster examples fix for FreeBSD
29/12/2005	frmb	put 1.4.0-final together (first cut)
23/12/2005	frmb	various updates for NOCC
20/12/2005	frmb	more updates to SDLRaster to support control-keys
19/12/2005	frmb	added support in CCSP for outputting ALTs (used by CIF)
19/12/2005	frmb	modified SDLRaster to use CIF instead of user-defined channels
14/12/2005	frmb	moved occ21 version to 1.4.0
14/12/2005	frmb	fixed a small problem with -o argument to occ21 w/ ETC output (ack to Carl Ritson
			for spotting it)
07/12/2005	frmb	various small changes to support RMoX
07/12/2005	frmb	fixed a small bug with empty arrays in channel-parameter checking, ack to Adam for spotting it
06/12/2005	frmb	small change to the build script so it skips the config menu
			if --prefix/--install-dir is given, --reconf overrides
06/12/2005	frmb	fixed missing distclean action on doc/ sub-dir (configured stuff escaped in 1.4.0-pre3)
06/12/2005	frmb	fixed FPU initialisation problem on i386 (still more to do possibly)
06/12/2005	frmb	updated tranx86 and KRoC to 1.4.0 versions in the source tree
05/12/2005	frmb	rolled over to 1.4.0-final (next to 1.4.0-final2)
05/12/2005	frmb	tidied up AUTHORS file, copied old stuff to OLD-AUTHORS
05/12/2005	frmb	put 1.4.0-pre3 together
05/12/2005	frmb	removed DXRaster from the distribution (superseded by SDLRaster)
05/12/2005	frmb	restructured install layout for KRoC 1.4.0, moved manpages into source packages
04/12/2005	frmb	added a kroc run-time configuration file, "kroc.conf"
02/12/2005	frmb	did a bit more support for floating-point on PowerPC
01/12/2005	frmb	added support for sin/cos instructions where the hardware supports it
29/11/2005	frmb	added entry-points for deep mobile type handling (under construction)
27/11/2005	frmb	fixed a small bug in the ProcFork() code
25/11/2005	frmb	added some mobile process support to CIF
20/11/2005	frmb	added more support for process groups, including a couple of builtins
17/11/2005	frmb	initial support for mobile process library loading and unloading
14/11/2005	frmb	small bug fix for non-PAR mobile processes, support for serialising flat dynamic mobile arrays
14/11/2005	frmb	initial support for object-space in serialised mobile processes
13/11/2005	frmb	fixed a small bug with small constant constructors assigned to mobiles (ack
			to Carl Ritson for spotting it)
13/11/2005	frmb	additional checking in mobile process deserialisation
12/11/2005	frmb	updated support for process groups, made mobile-process code more RMoX friendly
12/11/2005	frmb	more MOBILE.PROC support in the compiler (comms and assignment)
12/11/2005	frmb	mostly working support for mobile-process serialise and deserialise
12/11/2005	frmb	small bug-fix with hidden-types in compiler back-end
10/11/2005	frmb	more updates to mobile-process serialisation
09/11/2005	frmb	updated SUSPEND implementation with workspace and code mapping information
08/11/2005	frmb	disabled CC-checks in tranx86 when debugging is enabled (checks get complex)
08/11/2005	frmb	fixed a small bug with CC-related code in tranx86 (ack to Mario for spotting it)
07/11/2005	frmb	compiler updates for code-map generation and corresponding tranx86 support
06/11/2005	frmb	various updates for mobile processes
04/11/2005	frmb	more PowerPC code, simple programs now work ok (libraries wonky, cgtests bust)
02/11/2005	frmb	small fix to new control split/join handling in tranx86
01/11/2005	ats	fixed a couple of small bugs in CCSP (related to broken debugging)
31/10/2005	frmb	fixed a small bug in occ21 preventing variable constructor assignment to dynamic mobile
			arrays (ack to Adam for spotting it)
31/10/2005	frmb	fixed CONTRJOIN/CONTRSPLIT handling in tranx86, was a bit broken.  Ack to Adam
			for pinning the bug down.
30/10/2005	frmb	various compiler updates for
30/10/2005	frmb	made tranx86 more condition-code aware, needed for correct PowerPC code-gen (and Sparc too really)
29/10/2005	frmb	small fix for broken CHAN of MOBILE proc-type checking (ack to Allan McInnes for spotting it)
25/10/2005	frmb	fixed a small bug related to FORKed process parameter checking (ack to Adam for finding it)
25/10/2005	frmb	some minor Sparc updates
25/10/2005	frmb	fixed a small bug in FIXED handling for separate compilation
25/10/2005	frmb	initial framework for PowerPC target in CCSP and tranx86
25/10/2005	frmb	improved support for getting code from the subversion repository
24/10/2005	frmb	put 1.4.0-pre2 together
24/10/2005	frmb	updated the build script to support live-updates from the subversion repository
23/10/2005	frmb	support for CLAIM-ing mobile arrays of mobile channel-ends
23/10/2005	frmb	added manpage for SDLRaster
19/10/2005	frmb	some small updates to the SDLRaster library (also on-line documentation)
10/10/2005	frmb	fixed a small bug related to type-checks on forward-declared channel-types
10/10/2005	frmb	fixed DEFINED operator bug with MOBILE.CHANs (ack to Mario for finding)
10/10/2005	frmb	fixed a small bug with allocation of zero-sized dynamic arrays of mobile
			channels (ack to Mario for finding it)
30/09/2005	frmb	put 1.4.0-pre1 together
30/09/2005	frmb	fixed one or C mishaps in occ21 (old gcc fails to compile them, ack
			to Sourav Guchhait for spotting it)
30/09/2005	frmb	semi-fixed small bug in back-end related to CASE generation (ack to clj)
16/09/2005	frmb	more tranx86 updates for NOCC (arithmetic instructions)
06/09/2005	frmb	changed default path separator to ':' (OCSEARCH + ISEARCH environment vars)
04/09/2005	frmb	more tranx86 updates for NOCC
12/07/2005	frmb	kroc wrapper option for NOCC (--nocc), experimental
11/07/2005	frmb	tranx86 updates for NOCC
09/07/2005	frmb	put 1.4.0-pre0 together
08/07/2005	frmb	added SDLRaster to the distribution (very much like DXRaster)
08/07/2005	frmb	small compiler fix for counted-array protocols inside CHAN TYPEs
08/07/2005	frmb	made pthreads the default for Linux  (may break on older systems)
07/07/2005	frmb	various CIF fixes
06/07/2005	frmb	added a direct-to-malloc allocator to assist valgrind'ing of code
06/07/2005	frmb	small fix in pthreads blocking sys-call code
06/07/2005	frmb	small change to tranx86 i386 FPU initialisation
03/07/2005	frmb	minor scheduler fixes
02/06/2005	frmb	more CIF updates, fixed small bug in occ21 code-gen (type-descs for CLONE'd params)
30/05/2005	frmb	small fix in type-check
02/05/2005	frmb	some CIF updates
22/04/2005	frmb	more MOBILE.CHAN handling when channel-type descriptions are enabled
21/04/2005	frmb	channel-type descriptions used for MOBILE.CHAN hashes (when enabled)
17/04/2005	frmb	better type-check for MOBILE.CHANs
17/04/2005	frmb	fixed a couple of separate compilation bugs with MOBILE.CHANs and BARRIERs
14/04/2005	frmb	fixed a missing type-check in some inner MOBILE types
13/04/2005	frmb	made "kroc --cflags" produce something a bit more useful
04/04/2005	frmb	minor Makefile updates
04/04/2005	frmb	put 1.3.4-pre8 together
04/04/2005	frmb	fix for anonymous channel-type type descriptions
04/04/2005	frmb	added -zctknsf flag for channel-type state field and semaphore
03/04/2005	frmb	minor updates to specific code
03/04/2005	frmb	undefinedness checker fix for DEFINED operator
02/04/2005	frmb	fixed a problem with RESULT SHARED channel-type parameters
02/04/2005	frmb	updated support for channel-type type descriptions and hooks
02/04/2005	frmb	minor fix to MOBILE BARRIER FORK parameter-passing
31/03/2005	frmb	initial support for channel-type type descriptions and hooks
24/03/2005	frmb	fixed PROTOCOL.HASH() for MOBILE.CHANs
21/03/2005	frmb	documentation updates
21/03/2005	frmb	updates to the game in the better-bar demo
20/03/2005	frmb	support for MOBILE.CHAN assignment
20/03/2005	frmb	MOBILE.CHAN updates
19/03/2005	frmb	various updates to the better-bar demo
18/03/2005	frmb	initial support for MOBILE.CHAN parameter passing
16/03/2005	frmb	added Jonathan Whiting's dining philosophers to the distribution
14/03/2005	frmb	put 1.3.4-pre7 together
14/03/2005	frmb	small fix in type-check for constant folding
13/03/2005	frmb	added basic mobile channel-type support to CIF (incl. shared claim/release)
13/03/2005	frmb	added dynamic mobile communication and extended input support to CIF
13/03/2005	frmb	updated barrier documentation (incorporating mobile barriers)
13/03/2005	frmb	made resign before PAR end (-zrpe) default operation for barriers
13/03/2005	frmb	BARRIER and MOBILE BARRIER tidy-ups, extra checks
12/03/2005	frmb	modified BARRIER handling slightly: BARRIER decls and "PAR BARRIER" extends
12/03/2005	frmb	various updates in type/usage checks for MOBILE BARRIERs
10/03/2005	frmb	initial MOBILE BARRIER support
09/03/2005	frmb	small fix to SHARED top-level channels (after change to chan-type structure)
06/03/2005	frmb	fixed type-check bug for mobile process allocation (ack to Dyke Stiles)
06/03/2005	frmb	support for BARRIER resign before PAR end (-zrpe flag)
05/03/2005	frmb	support for MOBILE.CHAN declarations and channel i/o
05/03/2005	frmb	moved mobile-channel ref-count field to bottom of structure
04/03/2005	frmb	minor update to preconfigure in build
28/02/2005	frmb	usage-check fixes for barriers
28/02/2005	frmb	combined BARRIER declaration/extension, repl-PAR barrier fixes
27/02/2005	frmb	minor compiler bug-fixes (ack to Adam Sampson)
27/02/2005	frmb	multiple barrier declaration/extension support
26/02/2005	frmb	keyboard handler updates
26/02/2005	frmb	various fixes for scheduler-structure support (enabled in the
			presence of a known good gcc, 3.3.4 and 3.3.5 so far)
24/02/2005	frmb	put 1.3.4-pre6 together
24/02/2005	frmb	output cursor-visible VT220 escape sequence before exiting
24/02/2005	frmb	fixed a small bug signal handling bug for posix threads (resulting in a non-sane tty state when terminated)
24/02/2005	frmb	small fix to mobile process codemap support (ack to Dyke Stiles)
24/02/2005	frmb	disabled scheduler-structure support temporarily
20/02/2005	frmb	support for replicated PAR barriers
20/02/2005	frmb	updated BARRIER support, parameters, RESIGN, PAR EXTENDs
19/02/2005	frmb	various course examples updates (ack to Peter Welch)
19/02/2005	frmb	small compiler fix for gcc 2.95 (ack to Peter Welch)
17/02/2005	frmb	initial BARRIER support
13/02/2005	frmb	compiler support for parse-tree output in XML
12/02/2005	frmb	option'd variable indentation support (-vi or #OPTION "I")
12/02/2005	ats	variable indentation support
11/02/2005	frmb	small type-check fix in compiler (ack to Adam Sampson)
09/02/2005	frmb	small compiler fix
07/02/2005	frmb	tidied up failing DXRaster building
07/02/2005	frmb	put 1.3.4-pre5 together
07/02/2005	frmb	various scheduler tidyings
07/02/2005	frmb	various fixes to nested mobile handling
06/02/2005	frmb	some parser fixes for nested mobile protocols (ack to Mario Schweigler)
06/02/2005	frmb	minor fixes to the undefinedness checker (nested state)
06/02/2005	frmb	integrated DXRaster into the distribution (moderately experimental)
05/02/2005	frmb	fixed a small bug in the user-defined BARRIER and SEMAPHORE code
03/02/2005	frmb	fixed a register colouring bug in tranx86 (ack to Carl Ritson)
31/01/2005	frmb	various MOBILE.CHAN updates (partial support for variables)
30/01/2005	ats	various RMoX related fixes in CCSP (memory allocator)
29/01/2005	frmb	fixed a small bug with nested constructor checking (ack to Carl Ritson)
22/01/2005	frmb	fixed a bug with segments taken from nested mobile arrays (ack to Alan Grover)
21/01/2005	frmb	changed "ANY CHAN TYPE" to "MOBILE.CHAN", added support for restrictions
19/01/2005	frmb	fixed CHANs of nested MOBILE types as parameters
19/01/2005	frmb	minor documentation updates
19/01/2005	frmb	support for CHAN ANY CHAN TYPE with variant inputs
17/01/2005	frmb	small fix to FIXED analysis
17/01/2005	frmb	fixed type-check bug with nested mobile declarations
15/01/2005	frmb	fixed small bug in the build script (ack to Adam Sampson)
14/01/2005	frmb	put 1.3.4-pre4 together
10/01/2005	frmb	improved PLACED [..]PORT handling and allowance for INT16 addresses
09/01/2005	frmb	minor updates, automake update (from 1.6 to 1.9)
09/01/2005	frmb	put 1.3.4-pre3 together
09/01/2005	frmb	small fixes to pthreads and new timer code
09/01/2005	frmb	fixed small FORKed mobilespace allocation bug (in light of new run-time allocator)
09/01/2005	frmb	minor fixes to the undefinedness checker and type checker
08/01/2005	frmb	more pthreads updates to the run-time system
07/01/2005	frmb	minor documentation updates
06/01/2005	frmb	small fix to blocking-syscalls termination code when using pthreads
06/01/2005	frmb	updates to memory debugger and timer code, more RMoX updates
05/01/2005	frmb	update to FORKING usage check
04/01/2005	frmb	various autoconf fixes (arg enabling/disabling)
04/01/2005	frmb	integrated new dmem allocator into runtime kernel
03/01/2005	frmb	various RMoX updates
01/01/2005	frmb	timer optimisation
30/12/2004	frmb	better MOBILE abbreviation handling
23/12/2004	frmb	documentation updates
23/12/2004	frmb	added initial analysis for mobile movement
23/12/2004	frmb	fixed parsing of mobile channel abbreviations
22/12/2004	frmb	inmoslibs updates
22/12/2004	frmb	put 1.3.4-pre2 together
22/12/2004	frmb	added checks for fixed tag-values in nested/inherited protocols
21/12/2004	frmb	various fixes for compiling on FreeBSD (bug-report ack to Ian Bugeja)
21/12/2004	frmb	compiler now outputs type-hash for named types in DESCRIPTOR lines
20/12/2004	frmb	added compiler flags to indicate complex DIV/REM code-gen
20/12/2004	frmb	minor tranx86 update for code-maps
20/12/2004	frmb	fixed various separate compilation bugs (bug-report ack to Dyke Stiles)
19/12/2004	frmb	fixed anonymous channel-types in PROC TYPE declarations bug
14/11/2004	frmb	minor random updates
31/10/2004	frmb	minor fix in tranx86 for mobile process code-map output
30/10/2004	frmb	small compiler type-check fix (ack to azz for finding it)
23/10/2004	ats	reading /proc/cpuinfo for clock speed + minor fix
10/10/2004	frmb	cygwin fix for text-mounts (ack to Roman Belenov)
30/09/2004	frmb	minor updates
13/09/2004	frmb	added support for specifying tag values
12/09/2004	frmb	basic parser support for TRACES on channel-types
04/09/2004	frmb	put 1.3.4-pre1 together
03/09/2004	frmb	fixed SHARED chan-type type-checking
01/09/2004	frmb	more PROC TYPE updates (tranx86 / run-time)
29/08/2004	frmb	"big-endian transputer" support in the compiler
28/08/2004	frmb	initial Solaris/Sparc support
28/08/2004	frmb	various PROC TYPE updates and fixes
22/08/2004	frmb	array-constructor segment bug fixed
20/08/2004	frmb	more compiler fixes (type-checker, tran, back-end)
19/08/2004	frmb	various minor occ21 bug fixes
15/08/2004	frmb	more cygwin updates, build script updates
14/08/2004	frmb	more support for posix threads and cygwin
13/08/2004	frmb	various minor bug-fixes
13/08/2004	frmb	support for external name prefixing
12/08/2004	frmb	initial cygwin support
10/08/2004	frmb	more support for mobile processes
30/07/2004	frmb	released KRoC/Linux 1.3.3 (final)
30/07/2004	frmb	minor last minute fixes (CIF examples)
30/07/2004	frmb	demos/ directory left out of distribution tarball
30/07/2004	frmb	put 1.3.3-pre99 together (slightly artificial release)
30/07/2004	frmb	minor updates to the undefinedness checker
30/07/2004	frmb	added blocking syscalls interface to CIF
29/07/2004	frmb	fixed CIF external-call code (and examples) to work with pthreads
22/07/2004	frmb	some updates to the build script
21/07/2004	frmb	fixed minor compilation problem in CCSP
19/07/2004	frmb	added fairly bare manpages for blocking sys-calls libraries
18/07/2004	frmb	various additions for mobile processes
17/07/2004	frmb	added some manual pages for the INMOS libraries
16/07/2004	frmb	added better-bar animation to the distribution
16/07/2004	frmb	put 1.3.3-pre27 together
16/07/2004	frmb	updates to the undefinedness checker for deep state
15/07/2004	frmb	various minor bugfixes
11/07/2004	frmb	more support for mobile process CLONE
10/07/2004	frmb	various mobile process fixes
01/07/2004	frmb	miscellaneous minor bugfixes
01/07/2004	frmb	fixed a small bug in the socket library
30/06/2004	frmb	initial support for POSIX threads
29/06/2004	frmb	various CCSP code cleanups
27/06/2004	frmb	initial support for mobile process CLONE
26/06/2004	frmb	initial support for recovering "dead" process resources
22/06/2004	frmb	initial support for workspace-maps
12/06/2004	frmb	fixed a fairly serious mobile-space bug introduced in pre26
09/06/2004	frmb	documentation updates
06/06/2004	frmb	added mkoccdeps to the distribution
05/06/2004	frmb	fixed a small channel type type-check bug
05/06/2004	frmb	documentation updates
31/05/2004	frmb	put 1.3.3-pre26 together
31/05/2004	frmb	run-time memory stats now selected with -ds to tranx86
31/05/2004	frmb	replicated PAR fixes for FORK-barrier / mobile-processes
31/05/2004	frmb	fixed FORK barrier bug
30/05/2004	frmb	fixed occ21 to compile under gcc-2.95
29/05/2004	frmb	more minor fixes, cleaned up CCSP compilation under gcc-3.3
22/05/2004	frmb	some parser fixes
20/05/2004	frmb	fixed support for 16-bit code-gen
03/05/2004	frmb	put 1.3.3-pre25 together
03/05/2004	frmb	more mobile process support (parallel SUSPENDs)
01/05/2004	frmb	indirection support for channel parameters (mobile processes)
26/04/2004	frmb	minor changes to PROTOCOL.HASH
26/04/2004	frmb	make mobile process support experimental (-X7 to kroc)
26/04/2004	frmb	more undefinedness checker fixes
22/04/2004	frmb	various compiler fixes (back-end, undefinedness checking)
21/04/2004	frmb	tranx86/CCSP updates for global FORK barrier
20/04/2004	frmb	added FORKING barrier hidden parameter, various SC updates/fixes
19/04/2004	frmb	initial SUSPEND support for MOBILE PROCs
18/04/2004	frmb	initial support for PROC TYPEs and MOBILE processes
16/04/2004	frmb	updates to the undefinedness checker for subscripts/segments
15/04/2004	frmb	various fixes for nested MOBILEs
14/04/2004	frmb	fixes to nested MOBILE array subscripting
13/04/2004	frmb	fixes to nested MOBILE channel-types
10/04/2004	frmb	minor bug-fixes to code in the socket library ( related)
10/04/2004	frmb	modified kroc script to abort on file-not-found
09/04/2004	frmb	various compiler front-end bug-fixes for bad syntax
09/04/2004	frmb	more undefinedness checking for RECORD types
05/04/2004	frmb	put 1.3.3-pre24 together
05/04/2004	frmb	initial support for `go' channel to DECODE.CHANNEL
04/04/2004	frmb	BYTESIN fix for dynamic mobiles
04/04/2004	frmb	better support for DECODE.DATA
04/04/2004	frmb	updates/fixes for partially defined RECORDs
30/03/2004	frmb	basic implementation of DECODE.DATA added
30/03/2004	frmb	fixed a small bug in nested dynamic mobile array handling
29/03/2004	frmb	some fixes to multi-dimensional dynamic array handling
23/03/2004	frmb	put 1.3.3-pre23 together
23/03/2004	frmb	added compiler test suite (cgtests) to the distribution
22/03/2004	frmb	improved undefinedness checker support for RECORD types
13/03/2004	frmb	small fix to REALRESULT handling in tranx86
11/03/2004	frmb	undefindness checker support for RECORD types
08/03/2004	frmb	put 1.3.3-pre22 together
08/03/2004	frmb	added some more example dining-philosopher solutions
08/03/2004	frmb	small fix to DECODE.CHANNEL for multi-dim dynamic mobile arrays
07/03/2004	frmb	added related PROCs to the (blocking syscall) socket library
23/02/2004	frmb	slight change to the type/protocol hash algorithm to ignore names
05/01/2004	frmb	added support for tag-less inherited protocols
05/01/2004	frmb	put 1.3.3-pre21 together
05/01/2004	frmb	minor documentation updates
04/01/2004	frmb	more protocol inheritance support
04/01/2004	frmb	added a working implementation of protocol inheritance
03/01/2004	frmb	put 1.3.3-pre20 together
02/01/2004	frmb	fixed minor nested-mobile FORK bug
01/01/2004	frmb	fixed some minor pre-processing and type-check bugs
30/12/2003	frmb	added support for forward declarations of channel-types
29/12/2003	frmb	various nested-mobile fixes
28/12/2003	frmb	fixed some channel-type abbreviation problems
27/12/2003	frmb	fixed small bug in dynamic mobile array CLONE
19/12/2003	frmb	put 1.3.3-pre19 together
19/12/2003	frmb	merged in more MIPS code from Christian
19/12/2003	frmb	fixed minor problem with PROC renaming and FORK
18/12/2003	frmb	fixed RESCHEDULE() bug, enhanced ALT enabling and
			ALT pre-enabling now enabled by default.  (all cgtests pass)
18/12/2003	frmb	updated occ21-extensions.html file
17/12/2003	frmb	fixed some nested MOBILE problems, various compiler tidyings
17/12/2003	frmb	added ELF load support to the run-time debugger
16/12/2003	frmb	added load checking to the run-time memory debugger
14/12/2003	frmb	put 1.3.3-pre18 together
14/12/2003	frmb	found and fixed FORK bug
14/12/2003	frmb	added a minimal run-time memory debugging capability
13/12/2003	frmb	updated the dynamic memory allocator
07/12/2003	frmb	put 1.3.3-pre17 together
25/10/2003	frmb	merged in MIPS port so far (experimental)
25/10/2003	frmb	fixed a small bug in the socket library (fullread, etc.)
19/10/2003	frmb	some MOBILE bug fixes
19/10/2003	frmb	tty state now fixed when kroc_clock not found
15/08/2003	frmb	fixed some parsing bugs
09/08/2003	frmb	some more support for nested MOBILEs
05/08/2003	frmb	fixed a small bug with reversing replicators
04/08/2003	frmb	fixed various PORT related bugs
22/07/2003	frmb	put 1.3.3-pre16 together
21/07/2003	frmb	minor other bug-fixes
21/07/2003	frmb	fixed various MOBILE related bugs
20/07/2003	frmb	more ENCODE/DECODE support
15/07/2003	frmb	temporarily disabled enhanced ALT-enabling (pending bugfix)
13/07/2003	frmb	fixed nested replicated ALT pre-enabling bug
13/07/2003	frmb	more things in the socket library (and updated docs)
12/07/2003	frmb	more bits for the C interface.  basic CIF commstime ~217ns (p3-800)
07/06/2003	frmb	fixed PROTOCOL.HASH() deficiencies
15/04/2003	frmb	sorted STOP error mode out.  -S switch to KRoC to enable.
04/04/2003	frmb	optimised RESCHEDULE handling
23/03/2003	frmb	some minor INITIAL bug-fixes (found by clj)
22/03/2003	frmb	various ENCODE/DECODE fixes
21/03/2003	frmb	minor kroc script bug fixed
20/03/2003	frmb	put 1.3.3-pre15 together
20/03/2003	frmb	tidied up pre-processor some more (added comparisons to #IF/#ELIF)
20/03/2003	frmb	added DEFINED operator support for dynamic MOBILE types
19/03/2003	frmb	better MOBILE []CHAN.TYPE! support
18/03/2003	frmb	optimised SHARED handling somewhat (for mobile chan-types)
17/03/2003	frmb	fixed use of recursive parameters in the undefinedness checker
16/03/2003	frmb	added more run-time checks for mobile chan-types
11/03/2003	frmb	tidied up the pre-processor
10/03/2003	frmb	more ENCODE.CHANNEL/DECODE.CHANNEL fiddling
09/03/2003	frmb	some minor (gcc 2.95 breaking) fixes (gen10.c blowout)
08/03/2003	frmb	put 1.3.3-pre14 together
08/03/2003	frmb	various bugs fixed, more chan-type array support (incomplete)
07/03/2003	frmb	fixed n-replicated PAR bug
06/03/2003	frmb	tidied up kroc script a bit, pre-enabling + extended rendevous now default
06/03/2003	frmb	fixed bug causing loss of temporaries in occ21
06/03/2003	frmb	preliminary support for dynamic arrays of channel-types added
06/03/2003	frmb	fixed one or two tranx86 bugs
04/03/2003	frmb	added various compiler pre-defines to the pre-processor
03/03/2003	frmb	added support for priority run-queue manipulation (SAVEH, STHF, STHF)
02/03/2003	frmb	added file.num.args and file.nth.args to the (bsyscall) filelib
01/03/2003	frmb	fixed one or two bugs in tranx86
28/02/2003	frmb	fixed CIF to work with gcc-3.2 (and 3.0)
22/02/2003	frmb	fixed a minor replicated ALT bug
19/02/2003	frmb	fixed minor anonymous CHAN TYPE bug
17/02/2003	frmb	added ALT pre-enabling sequence, fixed some new ALTy bugs
13/02/2003	frmb	added empty array support: []
10/02/2003	frmb	unused variable loopend optimisation
01/02/2003	frmb	fixed small MOBILE output bug for CLONE'd outputs
28/01/2003	frmb	added check (error) for RETYPES/RESHAPES to MOBILE
28/01/2003	frmb	some more minor INITIAL fixes, mobile-size-field bug fix
28/01/2003	frmb	finished off, mostly, ENCODE.CHANNEL and DECODE.CHANNEL
27/01/2003	frmb	added support for SHARED! and SHARED? anon chan-types
27/01/2003	frmb	some channel-direction specifier / mobile channel-type fixes
20/01/2003	frmb	added auto-mobilisation for non-mobile/mobile outputs
20/01/2003	frmb	fixed a MOBILE type-checker bug (didn't check comms correctly)
20/01/2003	frmb	fixed longstanding problem with (a,b) = 2 type expressions
20/01/2003	frmb	added support for non-local and free FORKs
19/01/2003	frmb	some more FORK and undefinedness checker fixes
18/01/2003	frmb	fixed bug with FORKed/recursive access to free vars
17/01/2003	frmb	put 1.3.3-pre13 together
17/01/2003	frmb	fixed some compiler bugs, found some others
16/01/2003	frmb	fixed minor bug in INITIAL declarations
14/01/2003	frmb	merged in another filelib patch (for lstat)
04/01/2003	frmb	merged in Christian's filelib patches (directory handling, etc.)
10/12/2002	frmb	put 1.3.3-pre12 together
07/12/2002	frmb	fixed some more missing channel direction-specifier checks
29/11/2002	frmb	put 1.3.3-pre11 together
29/11/2002	frmb	ENCODE.CHANNEL and DECODE.CHANNEL partially working, along with some others
23/11/2002	frmb	some compiler changes and fixes
22/11/2002	frmb	fixed minor bug in course library (out.hex)
20/11/2002	frmb	put 1.3.3-pre10 together
19/11/2002	frmb	merged in the C interface (CIF) stuff
16/11/2002	frmb	fixed bug when PROC renaming happens on external C., B., BX., or KR. calls
07/11/2002	frmb	fixed range-error causing bug in keyboard handler (when suspending/resuming)
28/10/2002	frmb	minor undefinedness-checker fix
27/10/2002	frmb	put 1.3.3-pre9 together
27/10/2002	frmb	fixed FORK bug with separately compiled PROCs
24/10/2002	frmb	more things for the pre-processor, fixed freebsd preconfigure problem
24/10/2002	frmb	put 1.3.3-pre8 together
24/10/2002	frmb	added pretty basic pre-processing capability
23/10/2002	frmb	some dynamic MOBILE channel undefined checking fixes (incomplete)
22/10/2002	frmb	fixed some MOBILE and RESULT checking bugs, found by Adam Sampson
19/10/2002	frmb	corrected ALT rescheduling for enhanced ALT enabling
18/10/2002	frmb	added GUY/ASM checking to the undefined checker
17/10/2002	frmb	fixed I64TOREAL translation and various compiler bugs
14/10/2002	frmb	added -es output to tranx86 (assembler and object)
13/10/2002	frmb	put 1.3.3-pre7 together
13/10/2002	frmb	various bug-fixes in tranx86 -- all CG-tests working again now
12/10/2002	frmb	tidying up in some parts of the usage-checker
12/10/2002	frmb	added enhanced ALT enabling sequence (ENBC3, ENBT3, ENBS3 instructions)
07/10/2002	frmb	put 1.3.3-pre6 together
07/10/2002	frmb	various fixes/updates to undefinedness checker and external descs
06/10/2002	frmb	fixed FORK related mobilespace bug
02/10/2002	frmb	put 1.3.3-pre5 together
01/10/2002	frmb	fixed some channel-type bugs in occ21
30/09/2002	frmb	put 1.3.3-pre4 together
29/09/2002	frmb	fixed various FORK-related bugs and some minor dynamic mobile bugs
23/09/2002	frmb	fixed bug with multi-dim dynamic mobile input/output (ccsp)
04/09/2002	frmb	put 1.3.3-pre3 together
03/09/2002	frmb	bug fixed in dynamic MOBILE array declarations.  RECURSIVE channel-types.
03/09/2002	frmb	lexer update, various fixes to parsing channel-types
01/09/2002	frmb	fixed FORK bug causing mysterious crashes
31/08/2002	frmb	fixed various chan-type bugs (PROTOCOL components, output CLONEs)
29/08/2002	frmb	put 1.3.3-pre2 together
29/08/2002	frmb	fixed bug preventing sensible anonymous channel-type use, minor others
29/08/2002	frmb	put 1.3.3-pre1 together (slowly stabilising)
28/08/2002	frmb	other minor fixes, multi-decl anon chan-types
27/08/2002	frmb	large VAL parameters for FORKed PROCs
26/08/2002	frmb	anonymous (shared) channel types sorted out
21/08/2002	frmb	bug fixes for CHAN TYPEs (RETYPE problems)
05/08/2002	frmb	highly experimental 1.3.3-pre0 released (local only)
30/07/2002	frmb	added unary plus operator
15/07/2002	frmb	more bug fixes, version number updated to 1.3.3-pre0 (no release yet)
06/07/2002	frmb	fixed bug in channel RETYPE direction specifying
05/07/2002	frmb	finished implementing -xtag flag in compiler to do extended input on
			CASE/tagged inputs where empty tags aren't handled
04/07/2002	frmb	added pragas.txt to doc/ sub-directory and Adam Sampson's dining-phils
			solution to the course/answers.  Various bug-fixes and updates
30/06/2002	frmb	CHAN TYPEs mostly all there now, FORKING and FORK well on the way
22/05/2002	frmb	some fixes to multi-dimensional dynamic MOBILEs
20/05/2002	frmb	updated autoconf/automake files (was breaking on some RH 7.1)
13/05/2002	frmb	basic channel types (experimental)
21/04/2002	frmb	some minor bug fixes and put 1.3.2-3 together
20/04/2002	frmb	inline ENBC fix in tranx86, MOBILE parameter fix in occ21 object writer
19/04/2002	frmb	added interrupt support to CCSP (OOS builds only)
18/04/2002	frmb	more dynamic MOBILE fixes, removed various bits of cruft
14/04/2002	frmb	fixed compiler-bug for non-cpu-timer platforms.  Spotted by Peter Silvester.
08/04/2002	frmb	changed default handling for external channels (UDC) to disabled, enabled
			with the "-e" flag to KRoC.
07/04/2002	frmb	various updates/fixes to code and documentation
07/04/2002	frmb	change to semaphore handling in blocking sys-calls
06/04/2002	frmb	added support for mobile-size-fields and implemented MOBILE UDC handling
03/04/2002	frmb	initial support for multi-dimensional dynamic MOBILE arrays
31/03/2002	frmb	changed allocation syntax for dynamic MOBILEs (now requires MOBILE keyword)
28/03/2002	frmb	refactored some more stuff, updated tranx86/occ21 a bit
25/03/2002	frmb	support for alternate-endian constant generation in occ21 (-be flag)
20/03/2002	frmb	put 1.3.2-2 together
20/03/2002	frmb	turned off vectorspace in a bit of hostsp (time.occ), updated hostio.txt
			in the doc/ directory.  Thanks to Kazuto Matsui for pointing this bug out.
19/03/2002	frmb	improved crash-handling of dynamic processes
09/03/2002	frmb	put 1.3.2-1 together
08/03/2002	frmb	fixed dynamic process fault handling (doesn't kill whole thing anymore)
08/03/2002	frmb	fixed bug with scoping for array-constructors, screen flush fixes
07/03/2002	frmb	top-level proc interface check fixes + command-line force option
06/03/2002	frmb	various documentation updates
04/03/2002	frmb	put 1.3.2 together
02/03/2002	frmb	various BSD fixes, priority tidying, added manpage installation
01/03/2002	frmb	put 1.3.2-pre9 together
28/02/2002	frmb	fixed single-PROC recursion and added mobile-space support
26/02/2002	frmb	added kroc manual page to doc/ directory
26/02/2002	frmb	updated strict usage checking, fixed top-level-process interface checking,
			fixed channel direction specifier bugs (mostly in array slice handling)
25/02/2002	frmb	fixed various MOBILE bugs in occ21 (dynamic array handling, dynamic
			channel array handling, N-replicated PAR mobilespace initialisation)
23/02/2002	frmb	fixed various bugs in tranx86 (rescheduling, resched-on-jump)
21/02/2002	frmb	fixed bug in replicated-PAR undefined checking (broken merge, thanks
			to Brian d'Auriol for pointing it out)
20/02/2002	frmb	added very primitive IOSPACE support (for i386 port access from occam)
14/02/2002	frmb	added better reschedule-on-loopend handling (-P, --pause flags to kroc)
09/02/2002	frmb	fixes/updates to bits and bobs, some dynamic process work
04/02/2002	frmb	added priority handling to CCSP.  Fixed various bugs here and there
03/02/2002	frmb	PLACED array types at run-time computed addresses
28/01/2002	frmb	priority/info slot added to process workspace
27/01/2002	frmb	added OOS build support to ccsp
23/01/2002	frmb	fixed usage-checker errors with dynamic replicated PARs, now warns
23/01/2002	frmb	experimental support for linux cspdriver added
22/01/2002	frmb	refactored the ccsp layout and moved to version 1.6
21/01/2002	frmb	fixed problem causing redhat users grief.  Thanks to Matthew Slowe for
			providing an account on a machine with the problem.  GCC optimisation
			problem causing stack underflow.
16/01/2002	frmb	fixed screen-flush on exit

14/01/2002	frmb	put 1.3.2-pre2 together
14/01/2002	frmb	udc sub-directory built into distribution proper, with working examples
13/01/2002	frmb	updated occ21-extensions.html with reversed ALT stuff
11/01/2002	frmb	put ALT support into user-defined channels
10/01/2002	frmb	fixed up reversed ALT, some minor, but serious, bugs
07/01/2002	frmb	more work on user-defined channels, built into source tree
06/01/2002	frmb	put 1.3.2-pre1 together, testing update mechanism
06/01/2002	frmb	minor fix to XMIN64, reversed ALT disable now enabled per default
06/01/2002	frmb	added -nd (no dynamic memory) flag to kroc
05/01/2002	frmb	fixed problems which were breaking cgtest19
04/01/2002	frmb	put 1.3.2-pre0 together, still needs some work
03/01/2002	frmb	added update support to build script
02/01/2002	frmb	added basic user-defined channels
22/12/2001	frmb	NDISC, NDIST and NDISS instructions added
20/12/2001	frmb	minor fix for SKIP-in-ALT checking, nested tagged protocols
19/12/2001	frmb	fixed (silly) bug with RESULT parameters
18/12/2001	frmb	added extended rendezvous to the compiler
10/12/2001	frmb	added UNDEFINED pragma, tidied up some stuff
08/12/2001	frmb	added Richard Braun's dining philosophers
30/11/2001	frmb	basic RECURSIVE PROCs/FUNCTIONs working
30/11/2001	frmb	channel direction specifiers in actual channel parameters
29/11/2001	frmb	renamed some conversion routines in course.lib (conflict with convert.lib)
28/11/2001	frmb	empty SEQ, PAR, IF and ALT warnings
22/11/2001	frmb	dynamic MOBILE []CHAN arrays implemented
19/11/2001	frmb	checking for SKIP as last guard in PRI ALT, emits warning (error with -s)
17/11/2001	frmb	SKIP guards in ALTs without "TRUE &", emits warning (error with -s)
15/11/2001	frmb	better dynamic MOBILE handling
09/11/2001	frmb	added --strict compiler option (-s to kroc script)
08/11/2001	frmb	added basic RESULT parameters (and relevant stuff in undefined parameters)
08/11/2001	frmb	added check for correct top-level PROC in tranx86
07/11/2001	frmb	added channel direction specifies to TCOFF output
06/11/2001	frmb	fixed bug in tranx86 (bad assumption in optimiser)
31/10/2001	frmb	put 1.3.1 together
31/10/2001	frmb	channel direction specifiers in channel abbreviations
29/10/2001	frmb	fixed some problems with the hostio library and build script
23/10/2001	frmb	added channel direction specifiers and optional OFs
09/10/2001	frmb	delayed timer input undefined check fix
08/10/2001	frmb	fixed array constructor problems
07/10/2001	frmb	check for sys/sendfile.h in bsclib
05/10/2001	frmb	sorted out basic array constructors
01/10/2001	frmb	put 1.3.0 together
30/09/2001	frmb	fixed some replicated PAR mobilespace allocation bugs
25/09/2001	frmb	added dynamic (count) replicated parallel processes
19/09/2001	frmb	put 1.3.0-pre9 together (close to a non-pre release now)
08/09/2001	frmb	added -X5 flag to enable MOBILEs, and -mobiles occ21 flag
07/09/2001	frmb	more undefinedness cures to occ21, added DEFINED pragma
02/09/2001	frmb	cured some oddities in the socket library, updated
21/08/2001	frmb	more Fptr/Bptr fixes and some experimental inlining (-E1 -E2 to tranx86)
13/08/2001	frmb	clobbered 1.3.0-pre8 together
12/08/2001	frmb	turned Fptr/Bptr into registers and changed various associated stuffs
11/08/2001	frmb	clobbered 1.3.0-pre7 together
10/08/2001	frmb	sorted dynamic _static_ mobilespace allocation
08/08/2001	frmb	various tidyings up in places
03/08/2001	frmb	clobbered 1.3.0-pre6 together
03/08/2001	frmb	fixed problem with mobilespace mapping during replicated PARs
01/08/2001	frmb	fixed various undiscovered bugs
27/05/2001	frmb	clobbered 1.3.0-pre5 together
26/05/2001	frmb	MOBILEs working in the basic sense (include dynamic MOBILEs)
05/05/2001	frmb	fixed register allocation bug in tranx86
03/04/2001	frmb	fixed some undiscovered STEP usage-checking bugs
31/03/2001	frmb	MOBILEs coming along nicely (still lots to do..)
10/03/2001	frmb	put 1.3.0-pre4 together
06/03/2001	frmb	fixed bug in screen output code
06/03/2001	frmb	added warnings about missing escapes on ' and "
05/03/2001	frmb	fixed NORMALISE()
05/03/2001	frmb	put 1.3.0-pre3 together
04/03/2001	frmb	number of bug-fixed: FMUL instruction now works, workspace
			initialised to MINT, some translation bugs fixed, floating-
			point debugging now works properly.
02/03/2001	frmb	change to crew_test.occ
01/03/2001	frmb	changes to course library (*.number -> *.int)
11/02/2001	frmb	put 1.3.0-pre2 together
10/02/2001	frmb	fixed various bugs (dangling references, input reading,
			systems where -ldl doesn't exist, tranx86 niggles)
04/02/2001	frmb	put 1.3.0-pre1 together
03/02/2001	frmb	fixed CPU speed calculation for non /proc/cpuinfo setups
02/02/2001	frmb	singular dynamic procs now suspend/resume/save/restore OK
01/02/2001	frmb	removed FUNCTIONs from dynamic procs
30/01/2001	frmb	fixed comments in macros in occ21 (const1.c)
26/01/2001	frmb	released 1.3.0-pre0
20/01/2001	frmb	adjusted Makefiles to generate .so libraries rather than .a
18/01/2001	frmb	fixed memory leaks (from stack) and dynamic processes
10/12/2000	frmb	started putting KRoC/Linux 1.2.0-pre0 together
17/12/2000	frmb	more bug-fixes (dynamic proc problems, plus B/BX/KR inlining
			bug in tranx86)
17/12/2000	frmb	added HTTP lib (basic)
16/12/2000	frmb	got dynamic procs working :) -- libraries on the way to .so
13/12/2000	frmb	various optimisations (few more ns off commstime)
12/12/2000	frmb	fixed various bugs: deadlock detection problem; dubious
			gcc optimisation in sched.c; stub-import inlining problem.
10/12/2000	frmb	changed screen and error channel handling, along with
			a new keyboard process when blocking-syscalls is enabled
15/11/2000	frmb	sorted out optimisation in tranx86 (passes cgtests)
12/11/2000	frmb	inlined DISC, ALTWT, STLF and STLB instructions
05/11/2000	frmb	inlined ENBC instruction in tranx86
04/11/2000	frmb	added MNEW, MFREE, MALLOC and MRELEASE instructions
			for dynamic memory management from occam
16/10/2000	frmb	added STEP to replicators in occ21 (and 2 new
			loop-end instructions)
28/08/2000	frmb	tranx86 passes cgtest suite :)
10/08/2000	frmb	inlined LDTIMER in tranx86 (needs CPU timers)
28/07/2000	frmb	sorted post-mortem debugging in tranx86
21/07/2000	frmb	fixed various things in tranx86
19/06/2000	frmb	CPU timer support for pentium machines done
19/06/2000	frmb	fixed bugs (static_tranpc + #define problem in sched.c)
			bug-find credit to Nayef Baker
14/06/2000	frmb	dynamic processes interface changed
10/06/2000	frmb	release 1.2.3 put together
09/06/2000	frmb	updated various documentation, put together bsclib
06/06/2000	frmb	split run-time kernel() into little bits
05/06/2000	frmb	fixed nasty bug in blocking-system-calls (possibility
			for a "kill -9 -1" type thing)
25/05/2000	frmb	started work on the CPU timer handling
Last modified: 2013-04-12 01:34:46.000000000 +0100 by Fred Barnes [ds] [plain]
Page generated: Sun Apr 28 11:39:33 2013
Valid XHTML 1.0! Valid CSS!