******************************************************************************
1999-04-18:

Frank:
------
dosfile.c, dosfile.h, dos.c:
	- added two new systemcalls: Ffchown() and Ffchmod()
	  to change uig/gid and mode bits on open files
	
dosdir.c:
	- removed Fchown() workaround; must be handled by
	  MiNT-Lib (or the xfs)
	
fatfs.c:
	- fix some bugs (rename, rmdir, xdd)
	
detect.h, detect.spp, main.c:
	- removed required defines for CPU and FPU detection
	- MiNT now always detect itself the CPU and FPU type

Ralph:
------
cnf.c:
	- fix bug in include mechanism

Joerg:
------
detect.spp:
	- fixed ST-ESCC detection

Guido:
------
random.h, random.c (new):
	- new random device
	- minor changes for this also in biosfs.c, block_IO.c and some other
	
xbios.c, xbios.h, kernel.spp, kernel.h:
	- new & better XBIOS random generator
	- removed old routine

******************************************************************************
******************************************************************************
******************************************************************************
1999-04-13:

FreeMiNT 1.15.1
---------------

revision 1.5 - final release

Frank:
------
main.c:
	- added MILAN check
fatfs.c:
	- fix bug in symlink

Gryf:
-----
cpu.spp:
	- fix bug cpush060
mprot040.c:
	- fix bug in read_tables
Draco:
------
	- fix small bug in detect.h (missing clr)
Guido:
------
biosfs.c:
	- added /dev/zero

******************************************************************************
1999-04-13:

revision 1.4:

Gryf:
-----
mprot040.c:
	- enhancements and optimizations
block_IO.c:
	- fix 0 division bug
intr.spp:
	- on Milan old VBL vector was inactive

Frank:
------
fatfs.c:
	- fix little bug in free cluster calculation (32bit FAT)
main.h, main.c, welcome.h, welcome.c, cnf.c, syscall.spp:
	- removed latest changes
filesys.c:
	- removed initial FILEPTRs;  FILEPTRs will now always kmalloced/kfreed

******************************************************************************
1999-04-13:

revision 1.3:

Frank:
------
dos.c, dosdir.c:
	- unmount support for xfs (Shutdown(), Dlock())
include/file.h:
	- new extensions for xfs interface
intr.spp:
	- readded 040 MMU exception handling
main.h, main.c, welcome.h, welcome.c:
	- clean up startup messages
	  until init_intr() we must use Trap #1 calls
	  after init_intr() we call directly our own functions

Joerg:
------
sycall.h (new), syscall.c (from syscall.h.new)
	- changes related to reentrant trap handler
	- prototypes for Trap #1 emulation
	  and some needed ROM-GEMDOS functions
biosfs.c, tosfs.c:
	- changed Trap #1 GEMDOS calls to
	  ROM-GEMDOS calls through Trap #1 emulation

******************************************************************************
1999-04-13:

revision 1.2:

Draco:
------
intr.spp, main.c:
	- clean up Milan VBL emulation

Frank:
------
cnf.c:
	- new CNF keyword to support write protection at startup
include/proc.h:
	- increased super stack
dma.c (new):
	- new file for nonblocking DMA support (in development)
tosfs.c:
	- fixed bug in root for drives >= P:
	  access is only rejected if it's a XHDI drive
	- better executable_extension() for x-bit emulation
fatfs.c
	- added configurable write protection (soft/hard)
block_IO.c:
	- some changes related to write protection support

Gryf:
-----
mprot030.c:
	- bugfix in init_tables (missing braces)

******************************************************************************
1999-03-15:

revision 1.1:

Frank:
------
renamed memprot.c to mprot030.c:
	- more consistent now
memory.c:
	fixed typo in s_realloc introduced in beta 1.0
include/fsting.h:
	added _STRNCP_F; same as _mint_strncpy_f
string.c, string.h:
	added _mint_strncpy_f
	- fast strncpy with always NULL termination
	  (copy (n - 1) character maximum, add always '\0')

Gryf:
-----
memory protection support for 040/060 (060 not tested yet):

mprot040.c, mmu040.spp:
	- new files
intr.spp, main.c, include/mint.h, include/sproto.h, include/proc.h:
	- minor changes to reflect this 
cpu.spp:
	- added missing cpushas/cinvas in ccw_set
	- added log2phys (not needed yet)

Draco:
------
welcome.c:
	unused notice commented out (waste of memory)

memory.c:
	O_DENYNONE changed to O_DENYW in load_region() as the comment 
	there suggested. MultiTOS still works as it did, do we 
	support SingleTOS GEM forever?

main.c, detect.spp, detect.h:
	small blurp added to be displayed on boot (notice on whether 
	the memprot is enabled or not). Similar blurp on ST-ESCC.

intr.spp:
	corrected a comment.

syscall.spp.new:
	trap #1 handler no longer wraps to ROM. This makes TOSFS no 
	longer valid. Underlying functions not supported by MiNT are 
	still called via wrapper trap_1_emu(). Also similar wrappers 
	are done for BIOS and XBIOS (now commented out for future 
	usage). This also causes a (very small) reduction of GEMDOS 
	call overhead.

	To still be able to use old TOSFS XFS, one will have to 
	change TOS bindings so that they do jsr _tos_1_emu instead of 
	trap #1.

******************************************************************************
1999-03-15:

revision 1.0:

Frank:
------
fatfs.c:
	fix new bug (typo)
cnf.c:
	better message if NEWFATFS is default FS
	VFAT drives implies NEWFATFS now

Draco:
------
welcome.c:
	removed compiler options from the initial welcome
	text (pure waste of memory)

proc.c, intr.spp:
	uptime & uptimetick stuff removed from calc_load_average()
	and inlined directly into intr.spp. Thanks Frank for
	pointing this out, I liked the gcc's way of calculating the
	remainder (i.e. the code was funny :-))

main.c, kernel.spp, kernel.h:
	removed the reset handler movement stuff (no work, sorry).
	On reset problems please run MiNT from ST-RAM (applies to
	Afterburner040 and BlowUp FX, probably).

******************************************************************************
1999-03-10:

revision 0.9:

Gryf:
-----
intr.spp:
	added VBL Milan kludge to reactivate preemptive
	Multitasking on Milans
cdef.sh:
	changed to sh syntax
memory.c:
	fix bad bug in MMU table initialization for MP
fatfs.c:
	high speed ffree32 (enabled by default)
	some optimizations

Frank:
------
kmemory.c:
	disabled default debug mode, some optimizations & corrections
fatfs.c:
	updating (FAT32 info sector stuff), bugfixes
block_IO.c, fatfs.c, time.c:
	fix some PureC warnings

******************************************************************************
1999-02-26:

revision 0.8:

Frank:
------
fatfs.c:
	fix in lookup
info.h, info.c, cdef.h & cdef.sh:
	new files (experimental); compiler informations
	info.c replace build.c
ssystem.h, ssystem.c:
	new opcodes for compiler informations
block_IO.c:
	optimizations
dosmem.c:
	replace if else if construct with switch statement

Thomas:
-------
block_IO.c:
	additional caching strategie; new CNF keyword for customization
	(CNF keyword is experimental for the moment)

Draco:
------

1999-02-25:
-----------
detect.h, detect.spp, main.c:
	some changes in detect_fpu()

kernel.spp:
	nothing, I am just not sure if the previous file I sent was correct...

memory.c:
	Srealloc() fixed to do proper screen pads on Falcons. It it now so, that
	the screen size is rounded up to a 256 byte boundary (= like TOS). Previous
	code just blindly added 256 bytes, so the screen pad was always 512 bytes,
	thus 800x608/mono under Videl Inside II was a bit of mess. Fixed now and I
	hope it won't make any problems. It shouldn't unless a screen enhancer has
	a fix against that MiNT's Srealloc() "feature".

1999-02-17:
-----------
main.c, detect.spp:
	final (I hope) changes in FPU detection code,
	a cookie for a memory mapped FPU is copied to the
	new Cookie Jar, but MiNT doesn't consider such FPU
	"true".

ssystem.c, ssystem.h, cpu.spp, cpu.h (new file):
	new cache control mode ($0017) for Ssystem() call.
	See included examples, more documentation soon.

ssystem.c, ssystem.h, xhdi.c:
	"improved" names of Ssystem() modes.

bios.c:
	Setexc() called in secure mode now raises SIGSYS
	rather than explicitly terminates the caller.

dos.c:
	Super() at securelevel == 2 now raises SIGSYS.

xbios.c:
	so does Supexec()

main.c, syscall.spp:
	unused traps (except for trap #15, see comments in main.c)
	now sell the caller SIGSYS rather than draw 32 bombs on
	the console.

system.c:
	slight changes related to debug info.
	S_FLUSHCACHE mode added (guess, what does it do :))

intr.spp, kernel.spp, kernel.h, main.c:
	reset routine relocated to ST-RAM if MiNT runs in fast RAM.
	This is to prevent "black crashes" on AB040 et consortes.

main.c, kernel.h, kernel.spp:
	experimental replacement routine for Random(). Uses similar 
	algorithm as TOS does, but is supposedly faster.

bios.c, dosmem.h, dossig.c, dossig.h, intr.spp, main.c:

	The code behind Psigintr() cleaned up, assembler part 
	rewritten, the call now actually works, isn't so hopelessly 
	limited and shouldn't cause system freezes anymore. Changes 
	in behaviour are:

	- the registered interrupt is now passed over to the original 
	interrupt service, once a signal has been posted.

	- Psigintr(0,0) does cancel all interrupts previously 
	registered by the caller.

	- ERANGE is now returned when signal number bigger than 30 
	was specified to be registered.

	- also ERANGE is returned if vector number other than for 
	autovectors, traps and user specified interrupts was 
	specified. Other vectors either already generate own signals 
	or are of no interest.

	- also, the call now returns E_OK on success rather than the 
	old value of the interrupt vector (what a cleanly written 
	program is supposed to do with that number, eh?).

	Unless I miss something, it seems to be now guaranteed, that 
	all interrupts will be still serviced as before a Psigintr() 
	call was made (previous implementation was just stealing a 
	vector to point to new_intr(), then that last was doing 
	rte... of course, the proper service routine was ignored, 
	until the process terminated, yet the sig_usr() hacked the 
	MFP to pretend the interrupt to be serviced... urg,...).

	Multiple processes are still allowed to register same 
	interrupt, or different interrupts or whatever. There are no 
	special limits, except for common sense. If two processes 
	registered same interrupt, both receive requested signals, 
	when the interrupt occurs.

	However, it is not guaranteed that all interrupts will result 
	in signal delivery. A single interrupt results in 1 signal 
	posted, but 1000 interrupts also may result in 1 turn of 
	posting signals (1 turn means that there will be 1 signal 
	posted per signal registered per proces :)).

	UNFORTUNATELY, all this has two side effects:

	a) the kernel takes 1k more memory (yes, interrupt vectors 
	shadow)
	b) all this doesn't work on a 68000 anymore (did it any time, 
	though?), at least 68020 is needed, because only 68020 and up 
	save all necessary information in the stack frame.

	On a 68000 machine the Psigintr() call doesn't work simply 
	returning EINVFN.

	Psigintr() may be useful to create for example a system clean 
	screen saver.

detect.h, detect.spp, main.c:
	detect_fpu() now directly returns the _FPU cookie value instead
	of cryptic codes, what allowed to simplify the relevant part of main.c.
	Only an FPU in coprocessor mode ( >= 68020 ) is considered a `true' FPU.

Guido:
------
time.c:
 	- Duplicate line removed (typo).
	- Mysterious clock leap for localtime kernel clocks should now be	
	  fixed.  Forgot to change the kernel clock when timezone
	  information was applied via Tsettimeofday.

******************************************************************************
1999-02-04

revision 0.7:

Frank:
------
kmemory.c:
	moved block free pointer into system area
fatfs.c:
	changed short datatypes to ushort
block_IO.c, include/block_IO.h:
	added new functionality - revision level 1
	changed short datatypes to ushort

Thomas:
-------
unifs.c:
	better behaviour for removable drives with no media at bootup
filesys.c:
	fix possible bug in PATH2COOKIE
fatfs.c:
	small upper/lowercase correction in dirread

Guido:
------
time.c:
	- Consistency check for timezone argument to Tsettimeofday
	  removed.  It was previously assumed that the maximum allowed
	  offset to UTC was 12 hours which was not enough for DST in
	  Auckland/New Zealand.  What is a reasonable value?  13 hours may
	  not be enough.  14 hours?  (TODO!)

Draco:
------
xbios.c, syscall.spp:
	removed Vsetscreen() patch, conflict with Centurbo 2 (grrr...)

dosfile.c:
	old GEM (MTOS) kludge commented out, watch out, might be 
	necessary anyways...

******************************************************************************
1999-01-20

revision 0.6:

Frank:
------
include/dcntl.h:
	- added new FS number for STonXfs4MiNT
ssystem.c:
	- added support for debug device and level
block_IO.c, fatfs.c:
	- updates, bugfixes
	- implement missing functionality

Ralph:
------
cnf.c:
	- complete new enhanced CNF parser

Draco:
------
detect.spp:
	added a routine for hardware CPU detection.
	began a routine for hardware FPU detection.

main.c, detect.h:
	changes reflecting the detect_cpu() and detect_fpu().
	the loop that copies the TOS Cookie Jar into new location
	is simplified (though may look more complex =))

cpu.spp:
	init_cache() rewritten.

Makefile:
	added $(DEFAULTDEFS) for asm module compiling,
	this is *necessary* there!

dossig.c:
	Psigintr(0,0) now removes user handlers installed by process.

There are two new definitions:

`CPU_TEST' causes the TOS _CPU cookie to be ignored and enables own
hardware test for CPU type. The result of this test is later written
to the MiNT Cookie Jar. The routine should automatically detect
68000, 68010, 68020, 68030, 68040 and 68060.

`FPU_TEST' (valid only if CPU_TEST is defined!) enables own hardware
test for FPU type. In this case the TOS _FPU cookie is ignored completely
and if own test indicates a true coprocessor, MiNT establishes entirely
new _FPU cookie.

The CPU_TEST routine should be considered already completed and fully working
unless it contains a bug. In other words, it needs only testing, and if
tests succeed, there's nothing against enabling it permanently. The routine
should be tested "against" =) various CPU types, as well as new install_cookies()
code should be tested on a machine where TOS didn't establish the Cookie Jar.

The FPU_TEST is not finished. However, I am very interested about results
generated on various machines. So my proposal is to enable it in next beta,
then observe reactions =) An alternative is to distribute both tests in a form
of separate program, which users could try on their machines and give results
back to us.

For now I can only prove that both tests work perfectly on a 68030/68882.

******************************************************************************
1998-12-22

revision 0.5:

Frank:
------

fatfs.c:
	- bugfix in rename
	- bugfix for read with negative bytecount (suggestion from Draco)
time.c, intr.spp:
	- deactivated get_time from hardware clock (bootproblem)

Draco:
------
syscall.spp:
	- bugfix

Joerg:
------

detect.spp, detect.h:
	- automatic detection of Harun Sheutzows ST-ESCC
	- removed defines in include/mint.h

******************************************************************************
1998-12-11

revision 0.4:

Frank:
------

fatfs.c:
	- bugfixes and updates
	- rewritten readlabel/writelabel
	- position save renaming on non VFAT partitions
string.c, string.h (new):
	- moved all string functions in this file
	  (from util.c)
include/kctype.h, include/fstring.h:
	- some name changes related to the string functions
time.c, intr.spp

Draco:
------
intr.spp:
	- fixed a possible bug in mint_timer().
main.c, intr.spp, syscall.spp:
	- new way of linking some vectors using new_xbra_install() 
	  function. Not all for now, but this will change.
main.c, cpu.spp:
	- inserted a NOP into cpush() to sync pipelines.
	- new way of cache type selection, now proper cache
	  handling is selected by a vector initialized at
	  startup.
main.c:
	- variable gemdos_version and a call to Sversion() commented out
          if OLDTOSFS is not used. 

syscall.spp, xbios.c:
	- byzantine construction to patch the syncbug in Vsetscreen()
	  on Falcons (so far only Vsetmode() was patched). But guys,
	  please note that it only patches programs making system calls to
	  change resolutions! If a proggy switches it by hardware directly
	  (e.g. some versions of vconsd), the syncbug will still occur!

******************************************************************************
1998-11-24

revision 0.3:

Frank:
------
fatfs.c:
	fix bug in fat12 access routines
block_IO.c:
	some fixes in initalization
	fix for logical Rwabs mode
include/file.h, *fs.c:
	remove DP_MAXREQ definition, correct all
	internal filesystems
main.c:
	add cpush after xbra chain manipulation (Michael)

******************************************************************************
1998-11-03

revision 0.2:

Frank:
------
include/fstring.h, include/block_IO.h, include/default.h,
fatfs.c, unicode.h:
	removed all USE_INLINE_FUNCS stuff
	removed all unused makros
	cleanup, small corrections
block_IO.c:
	cleanup, corrections, some bugfixes
kmemory.c:
	cleanup, alignment fixes
xhdi.c:
	add XHDrvMap to drvmap()
unifs.c, dosdir.c:
	remove "| PSEUDORVS" to drvmap (always done at boottime in main.c)
	
Julian:
-------
include/file.h:
	add new Spin FS_INFO types
include/dcntl.h:
	new Dpathconf (DP_VOLNAMEMAX)
	updated man2/Dpathconf.2

******************************************************************************
1998-10-26

revision 0.1:

Frank:
------
dos.c:
	return our own GEMDOS version if OLDTOSFS is disabled

Draco:
------
contex.spp, intr.spp:
	update & bugfixes

******************************************************************************
1998-10-22

revision 0.0:

Frank:
------
fatfs.c:
	added uid/guid/mode for the root cookie for every drive
	(same method as in TOSFS)
block_IO.c:
	some fixes, fix a bug in bio_res_di
memory.c, memory.h:
	removed new_region/dispose_region
	-> replaced by kmr_get/kmr_free in kmemory
	-> some replacements and adjustments for this change
kmemory.c, kmemory.h:
	new files, handles the complete internal small block
	memory management, three different strategies
main.c:
	added patch for centek2 user, TOS is reported as 7.0x
	(falcontos detection)

******************************************************************************
******************************************************************************
******************************************************************************
1998-10-08

FreeMiNT 1.15.0
---------------

revision 3.1: (final)

Frank:
------
fatfs.c, cnf.c:
	added LCASE keyword; force use of lower case FAT names
main.c:
	add pseudodrives before xfs are loaded
bios.c, biosfs.c, xbios.c, main.c, cnf.c:
	replaced st_escc variable with preprocessor defines
	for ESCC support -> new compile time switch
	(old method doesn't work at bootup)
block_IO.c:
	fixed a possible bug
include/block_IO.h:
	cleanup (moved struct cbl definition to ./block_IO.h)
	

******************************************************************************
1998-09-27

revision 3.0:

Frank:
------
ssystem2.c renamed to ssystem.c:
	added new call Ssystem(SYNC_TIME) to set time for
	filesystem sync.
cnf.h, cnf.c (new):
	moved MiNT.CNF parser from main.c here
	added new HIDE_B= keyword to remove drive B: from drive list
fatfs.c, block_IO.c, include/block_IO.h:
	some minor fixes and updates

Draco:
------

Speed optimizations done in order to reduce the total overhead of the
scheduling code and GEMDOS timer.

BTW.: all this somehow fixes the problem with FastCOPY Pro, which was always
very slow formatting and writing floppies under MultiTOS.
Works much much much faster now.

kernel.spp:
	new file with assembler routines enter_gemdos(), enter_bios()
	and leave_kernel() - equivalents for functions removed from main.c.
	changed the way of redirecting system calls to ROM, currently trap
	vectors are not saved/restored at each kernel entrance anymore. This
	significantly reduces the enter/leave procedures.
main.c, main.h:
	enter_kernel() and leave_kernel() removed.
	variables save_dos, save_bios and save_xbios removed as well.
bios.c:
	Setexc() updated for handling trap vectors correctly.
timeout.c, timeout.h:
	timeout() moved to intr.spp.
intr.spp:
	enter_bios() and leave_kernel() inlined into mint_vbl().
	skipped setting IPL 7 before enter_bios() and after preempt() in mint_vbl().
	optimized assembly equivalent of the timeout() inlined into mint_timer().
	removed two movem.l instructions saving/restoring registers in mint_timer().
syscall.spp:
	changes reflecting the removal of enter_kernel().
	subroutine check_priv now inlined into mint_xbios().
context.spp:
	skipping change to IPL 7 in restore_context().
	tiny optimizations (removed maybe four instructions).
genmagic.c:
	update for new indexes needed in assembler modules.

Other changes made at the occasion:

time.c, intr.spp:
	init_time() now seems to read the IKBD time-of-day packets.
	struct ikbd_time simplified. See comments there.
	newcvec() fixed to work.
main.c, dos.c:
	kernel's Sversion() no longer calls the ROM GEMDOS. Small step on a way
	to get rid of the ROM GEMDOS completely.
bios.c, vm5.spp, main.c, intr.spp, ssystem2.c:
	the rest of the VM code ifdef'd out if VM_EXTENSION is not defined.
	this makes the kernel shorter about 3k.

******************************************************************************
1998-09-09

revision 2.9:

Frank:
------
fatfs.c:
	fix a bug in symlink; some additional checks
block_IO.c:
	added XHReserve/XHLock support for removable medias
include/types.h:
	added llong (64bit int) type
include/dcntl.h:
	some updates of Dcntl and data types

******************************************************************************
1998-09-03

revision 2.8:

Frank:
------
bcache.c & hdio.c:
	merged into block_IO.c, buffer cache rewritten (dirty cache units
	are now blocked and written back in sorted order on each drive)
	Medichange bug fixed
dosdir.c:
	f_chown return E_OK if function isn't supported by xfs
	(problems with some GNU tools)
include/ctype.h renamed to include/kctype.h:
	avoid problems with ctype.h from MiNT-Lib

******************************************************************************
1998-08-24

revision 2.7:

Frank:
------
dosdir.c:
	fixed a bug in d_delete and f_delete
	(dupcookie/releasecookie mechanism)
mfp.h (new), time.c, dossig.h, bios.c, xbios.c, biosfs.c:
	replaced MFP hardware adresses by preprocessor define
	(defined in mfp.h)
include/misc.h (new):
	moved all compiler specific stuff from mint.h in this file
fatfs.c:
	fixed a bug in delete_cookie

******************************************************************************
1998-08-06

revision 2.6:

Frank:
------
bios.c, biosfs.c, dossig.c, welcome.c:
	add simple MILAN support for different hardware addresses
	(preprocessor define)
time.c, time.h, dos.c, xbios.c, proc.c:
	disabled new timer from guido (doesn't work on Milan at the moment)
fatfs.c:
	some optimizations

Rainer:
-------
include/dcntl.h:
	Add some opcodes from biosfs.c, MiNTlib's include/ioctl.h and HSMODA.
biosfs.c, fasttext.c, pipefs.c, xbios.c:
	Fcntl(..., TCURS*) work uniq and as documented in The Atari Compendium.
	Cursconf() works at all.
biosfs.c, pipefs.c, procfs.c, shmfs.c, tosfs.c, unifs.c:
	*_getname(), *_readdir() and *_readlabel terminate the name with 0
	if it has the maximum length resp. correctly check the length.
	Also a bit faster (strncpy() clears the complete buffer!).
biosfs.c, shmfs.c:
	*_rename() respects mame truncation.
dosdir.c:
	Dsetpath() recognizes drives "A..Z1..6" and "A..Z[\]^_`".
	Changes on file attribute handling for ISO/IEC 9293 compatibility.
	Fattrib() allows all but changes between file/directory/label type.
dosmem.c:
	Pexec() names the drives for the PLOADINFO buffer "A..Z1..6".
fatfs.c:
	getcl12()/fixcl12() work on 68000.
falcon.h, memory.c, xbios.c:
	Renamed Montype() to VgetMonitor(), Vgetsize() to VgetSize(),
	Vsetmode() to VsetMode() and Vsetscreen() to VsetScreen(). Corrected
	Lattice binding for VgetSize().
ssystem2.c:
	Ssystem(TOSHEADER, ...) returns always a complete and corrected
	OSHEADER and works at all.
tosfs.c:
	Fchmod(..., S_ISUID) hides subdirectories as on HP-UX.
	Changes on file attribute handling for ISO/IEC 9293 compatibility.
unifs.c:
	unifs_init() names the drives on U:\ "a..z1..6".
xbios.c, syscall.spp:
	Replaced call_dosound() by Dosound().
diverse:
	Changes for Pure C (not complete).
	Changed the type of date and time variables from short to ushort.
	Replaced error code "0" by "E_OK". Also for some other codes.
	Replaced seekmode numbers by "SEEK_*".
	Changed some mixed space/tabulator use to tabulators. Please use only
	tabulators for indentation.
	Changed some calendar dates in various formats to the format
	YYYY-MM-DD as defined in ISO 8601. Please use only this date format in
	international contexts.
intr.spp, syscall.spp, vm5.spp:
	Removed some useless code avoiding "clr" for not-hardware on 68000.
	Add some missing ":" after labels.

******************************************************************************
1998-07-23

revision 2.5:

Frank:
------
include/fstring.h: (new)
	introduce new file - fast string - with inline string functions
	for time critical parts, moved string stuff from mint.h
fatfs.c:
	remove string stuff (now in fstring.h)
	some minor fixes (FAT32 detection)

Rainer:
-------
fatfs.c:
	some minor fixes
	(see in fatfs.c for a detailed list of changes)
unicode.*:
	name correction

******************************************************************************
1998-07-13

revision 2.4:

Frank:
------
dosdir.c:
	dlock() now sync the filesystems before a lock is made
filesys.c, include/file.h:
	add new dskchng strategie (new fsflag and a extended dskchng routine)
	if the new flag is set the kernel ask the xfs for a mediachange
	(old: kernel do this itself but this fail on non BIOS devices)
	this introduce a new flag to dskchng: 0 = aks, 1 = force disk change
bcache.c, include/bcache.h:
	extend buffercache interface, add some new useful functions
	(see in bcache.c for a detailed list of changes)
fatfs.c:
	some minor fixes
	(see in fatfs.c for a detailed list of changes)

******************************************************************************
1998-07-10

revision 2.3:

Frank:
------
include/bcache.h, include/hdio.h, file.h:
	extend Kernelinterface for new buffer cache and so, experimental!!!
	(will be removed or will be changed in the next time)
global.*, timeout.c:
	add global 20ms counter
global.*:
	introduce new file that holds global useful data,
	move kernelinfo from main.c to global.c
bcache.*:
	new files, replace hdcache.*
	new, memory optimizing, intelligent buffer caching
fatfs.*, bcache.*, hdio.*, xhdi.*:
	update and bugfixes,
	see in the files itself for a detailed list of changes
unicode.*:
	add new table for Atari ST character set -> Unicode
	(thank to gryf who create this table), add translate function
include/dcntl.h:
	new file with all known opcodes
	(moved from file.h and other places)
include/atarierr.h:
	add some new error codes (Rainer Seitel)
dos.c:
	update security check in super (final I hope)
xbios.c:
	update security check in supexec (final I hope)
*fs.c:
	add Dcntl opcode MX_KER_XFSNAME to all
	filesystems in FreeMiNT

Draco:
------
dos.c:
	Super() now ignored when called by an unprivileged process.
main.c, syscall.spp:
	added a kludge for DSP XBIOS calls, Dsp_LodToBinary() works now.
	all XBIOS calls except Random() and Cursconf() are now restricted
	for root only.
xbios.c:
	most of security code moved to syscall.spp.
ssystem2.c:
	filesystem control removed, use Dcntl() instead.
genmagic.c:
	update.
ssystem2.doc:
	update, clarifications, corrections.

******************************************************************************
1998-06-23

Frank:
------
hdio.c, hdio.h:
	new files.
biosfs.c:
	improved syntax of a conditional in iread()
filesys.c, mint.h, main.c, ssystem.h, ssystem2.c, tosfs.c:
	various changes to reflect -DOLDTOSFS compiler switch.
fatfs.c, fatfs.h, xhdi.h:
	update and bugfixes,
	see in the files itself for a detailed list of changes
unifs.c:
	fixed a warning.

Draco:
------
ssystem2.c:
	added trace & debugging code.
dosfile.c:
	added a check in F_write() against negative block counts.
console.c:
	applied Thomas Binder's patch for C_conrs()
tosfs.c:
	applied Thomas Binder's patch for filtering VFAT entries
	on TOS filesystems.
bios.c:
	inquire part of the Setexc() open for all processes
	(suggestion from the mintlist).

******************************************************************************
1998-05-25

(b4)

Frank:
------
fatfs.c, fatfs.h, hdcache.c, hdcache.h:
	update
Makefile:
	update for 68040 kernels

Draco:
------
cpu.spp, Makefile:
	Mikko's 68060 patch applied.
main.c, ssystem2.c, mint.h, Makefile:
	The switch -DONLY030 is now obligatory for
	all CPUs from 68020 to 68060.

******************************************************************************
1998-05-19

(b3)

Frank:
	Source tree redintegration of Guido's patches.

Draco:
	Final review and textfiles corrections
	util/uname/uname.c: updated.
	util/cjar/clist.c: updated.

******************************************************************************
1998-04-24

Guido:
------
Directory structure has been radically resorted. Manual pages (out of
date) and more docs (also out of date) and an occasional README added
every here and there.  Further:

time.c (new), time.h (new), dos.c,
main.c, mint.h, ssystem.c, ssystem.h, timeout.c, xbios.c:
	New kernel time-keeping model implemented with new
	system calls Tgettimeofday and Tsettimeofday.  Old
	Tgettime, Tgetdate, Tsettime, Tsetdate, Gettime and
	Settime are bypassed by the new routines.

resource.c (new), resource.h (new), dos.c:
	New system calls Pgetpriority and Psetpriority.
	Moved compatibility code for Pnice and Prenice to resource.[ch].

Docs/timezone.doc, Docs/minttime.doc:
	New files describe new time facilities.

Docs/ssystem.doc:
	Updated.
	Changed the meaning of the `beta-tag'.  Every printable
	character that may characterize the current version of
	MiNT is now allowed (not only `b').

bios.c, biosfs.c, dosfile.c, tty.c:
	Added typecasts, initializations to make MiNT compile
	with less warnings.

Makefile, build.c (new):
	Avoid re-compilation of ssystem.o over and over again.
	DEBUG_INFO is now default,  optimization default is -O3.

dosmem.c, proc.c, proc.h, signal.c:
	Pwaitpid now returns the signal numbers for signalled processes
	(as the MiNTLib implementation of wait4 and friends already
	expects).

mkbuild.c:
	Month and week numbers for build.h are now calculated correctly.

ssystem.c:
	Allowed read access to everybody.  Disabled checking of real
	user-id when checking privileges (the super-user needs some
	way to get rid of the privileges).

******************************************************************************
1998-05-10

Frank:
------
fatfs.c, fatfs.h, hdcache.c, hdcache.h, unicode.c, unicode.h, pun.c, pun.h,
xhdi.h (all new):
	new FAT/FAT32/VFAT filesystem integrated with the kernel.
main.c:
	also related cnf commands added: NEWFATFS, VFAT, WB_ENABLE, CACHE
proto.h:
	gone; separate header files introduced instead.

	asm translator moved to ./asm
	top level header moved to ./include
	complete new Makefile, automatic dependencies

Draco:
------
ssystem2.c:
	added modes 20 and 21 to control the new filesystem on the fly.
xbios.c:
	Videl patch modified (should be closer to a 100% fix).
main.c, mem.c, ssystem2.c:
	modified for new FASTLOAD cnf keyword.
mkbuild.c:
	fixed inappropriate month for build date, fixed bogus warnings.
version.h:
	modified
mem.c:
	TOS-4-ramvalid fix #ifdef'd depending on the VM_EXTENSION
	(caused problems with real fastram on all computers (?))
ssystem2.c, intr.spp:
	singlemode abandoned (moved to the future, that is).
ssystem2.c:
	Ssystem(GETCOOKIE) call expanded to be able to return any
	slot value (the previous implementation didn't handle cookies with
	a value of -1). The previous behaviour is still kept however. See
	ssystem.doc for details.
ssystem2.c:
	Ssystem(SYS_SLEVEL) now allows to inquire the security level by
	user processes.
dos.c:
	Super() protection bugfix (it should work now)
bios.c:
	Setexc() now allows user processes to change the critical error
	handler	and the GEMDOS terminate vector (oups!)
bios.c, biosfs.c, xbios.c, main.c:
	ST ESCC support added, controlled by STESCC cnf keyword

******************************************************************************
Draco Sun Apr 05 17:25:16 CET 1998

mint-1.14.7-beta

pipefs.c:
	pipe_write() and pipe_read() now wake process sleeping
	on the corresponding pipe conditions immediately.
	Bi-directional IPC should now work better (Guido).
intr.spp:
	scheduler modified for single mode.
system2.c:
	added definitions for SET/GET_SMODE, RUN_LEVEL, T_SLICE.
falcon.h:
	added.
xbios.c:
	Videl patch applied for Vsetscreen() and Vsetmode()
	(no more sync errors in mono res on Falcons).
	Vsetscreen(), Vsetmode(), Rsconf(), Midiws(), Dosound(),
	Iorec(), Bconmap() restricted for euid root at level 1.
cpu.spp:
	line 67 modified for 68060 machines.
mem.c:
	fix for ramvalid under TOS 4 incorporated to init_mem().
nottram.prg:
	no longer needed.
dosdir.c:
	Dsetpath() no longer needs +r for the directory (as in Unix).
main.c:
	SINGLEMODE keyword added to MINT.CNF.
version.h:
	modified
proto.h:
	int in the Ssystem() prototype changed to short.
mkbuild.c: new file by Guido (replacement for my hack known as
	makebuildtime.c ;))
ssystem.h:
	modified.

**************************************
Draco Thu Dec 07 03:01:26 CET 1997

mint-1.14.6-beta

version.h, dos.c, proto.h, makefile:
	modified.
ssystem2.c, ssystem.h (all new):
	New system call, Ssystem(), is introduced into the kernel. See
	ssystem2.c and included examples for details and use. The code is
	based on that developed by Jerry Geiger (jerry@zedat.fu-berlin.de)
	by Draco (draco@mi.com.pl).
main.c:
	the SECURITY command removed from the kernel,
	SECURELEVEL introduced instead as more flexible. See MINT.CNF.
mem.c, mem.h:
	ST_LEFT_AFTER_VM removed.
mem.c, makefile:
	VERBOSE_BOOT option added.
bios.c:
	Setexc() protected for euid root at level 1.
dos.c:
	Super() restricted for euid root at level 2.
xbios.c:
	Supexec() restricted for euid root at level 2.

**************************************
Draco Sun Sep 14 06:14:22 CET 1997

mint-1.14.5-beta:

version.h:
	patchlevel number modified
mint.h:
	#undef VM_EXTENSION if ONLY030 is not defined
main.c:
	PMMU cookie will be set if VM is active.
	Cookie Jar size increased - now 8 entries more.
	New command, SECURITY, introduced to the MINT.CNF
	(see readme.1st for details). New global symbol,
	secure_mode, defined (set to 1 if SECURITY=YES).
bios.c:
	if SECURITY=YES, Rwabs() is not available for anyone
	but superuser.
dosdir.c:
	if SECURITY=YES, Dwritelabel() is available for
	superuser only.
procfs.c:
	fixed a bug so that regular users are no longer able
	to remove processes those aren't their own.
vm5.spp:
	"Falcon cold start bombing problem" fixed.
	VM stability improved noticeably.
nottram.s, nottram.prg:
	added to the binary distribution
	(see nottram.doc for details and use).

**************************************
Draco Mon Aug 25 00:52:44 CET 1997

mint-1.14.4:

mem.c:
	Harry Eaton's pexec() patch applied.
mem.h:
	#define ST_LEFT_AFTER_VM only if VM_EXTENSION is defined.
version.h:
	patchlevel number modified.
mint.h:
	-DMULTITOS, -DONLY030, -DDIRSEP_SLASH, -DVM_EXTENSION,
	-DVM_DEBUGGING moved to the makefile.
makefile:
	see above + new kernel version definition (030 with the VM)
vm5.spp:
	some testcode (accidentally left in 1.14.3) removed.
	physical disk access changed to BIOS logical mode.

Three binaries are included/will be produced:
mintvmx.prg - 68030 with VM extension
mint030.prg - 68030 without VM extension
mint.prg    - 68000 (without VM extension, of course)

All binaries compiled with gcc 2.7.2.

**************************************
Draco Wed Jun 11 00:55:40 CET 1997

mint-1.14.3:

tty.c:
	Torsten Lang's serial patch applied.
vm5.spp:
	modified to run VM on Falcon IDE (still not stable).
quickmov.spp:
	skipping some 68000 junk while compiling for 68030.
welcome.c:
	modified.
version.h:
	patchlevel number modified.

Kernel compiled with gcc 2.7.2.

**************************************

mint-1-14(.0):

**************************************
Sven Karlsson Sat Sep 21 20:15:00 GMT 1996

makefile, mem.c, mem.h, intr.spp, version.h, welcome.c:
	modified.
vm5.spp (new):
	VM is introduced in the kernel.

True lattice projectfile added.
doswap utility is added. se doswap/read.me for details on usage.

mint-1.13 is skipped
