Source to mint/changes.mac
**********************************************************************************
This file attempts to document changes to the mint portion of macmint
**********************************************************************************
Brad Pickering made most of the changes for such things as:
* Changing low memory global reference from absolute addresses
to variable names (locore.h) and creating a sysvar structure
so they don't in fact have to be in low memory. A notable
exception is the cookie jar, which is written right on top of the
dispatch table entry for some handle manipulation! Don't worry, this
is saved and restored by JET before any mac operation that might use
it could be harmed.
* Added a mac "IDLE" processes to allow for a macintosh event loop
inside JET.
* wrote most of the file system code to mount the whole mac
file system within mint.
* probably some other major stuff that I'm forgetting. (Of course he also
wrote most of JET itself, and the library processing code which
makes the whole system capable of self-compiling)
**********************************************************************************
harry eaton made several enhancements:
* (hace) Made changes to tty.c that allowed console writting to happen a string
at a time in order to significantly speed up the console
* (hace) Added support for virtual memory by holding and unholding the memory of
supervisor stacks may point to (mem.c), and also changed the fork()
code (proc.c, dosmem.c) to accept a proc argument so that there is no unnecessary
holding and un-holding of memory. Changed the sysvar structure (locore.h)
to reference MAC_ENV and MINT_ENV (routines in JET which harry also wrote)
so the file system could make mac calls while virtual memory is on.
* (hace) fixed routines in tty.c that caused orphaned processes to have their
terminal privileges blocked. fixed an error in procfs.c that prevented the root
proc basepage from being readable.
* (hace 10/12/96) wrote an xfs capable of replacing the built-in filesystem.
Removed the built-in fs. Modified unifs.c to allow mounting of xfs's at unused
drive points. Removed the mac library linking so that resulting mint program is
significantly smaller. Added support for power-pc emulated cach flushing in
cpu.spp. Fixed a few abolute address references that had sneaked through
(criticerr in main.c, LC_FRAME in intr.spp).
* (hace 10/25/96) added code in filesys.c's changdrv routine so the
searches linked list is terminated as it is traveled. This routine is
called by Pterm. If the linked list has a bogus link - which I've seen
happen (the user process has control of the file handles) then a bus
error can happen following the list which resulted in an infinite loop
since the bus error will call pterm which will call changedrv which will
cause a bus error.... But no longer!
I'm sure others have made signficant contributions too - it's just that I don't
know about them. Feel free to update this Changes document as necessary.