v1.00	17 July 2005
	Not on general release
v1.10	28th July 2005
	Corrected INPUT statements to LINE INPUT, allowing film titles containing commas to be entered from the keyboard as well as loaded from file(!)
	Implemented big/small display modes:   if more than 92 lines of output are generated, the program will redraw in 'big' mode, switching back to 'small' mode if it later becomes possible (e.g. a new data file is loaded, films are abandoned)
	Abandoning all performances of a given film (with consequent data loss) now triggers the "unsaved data" warning on exit
	Now defaults to timetable screen after saving data as well as after loading
v1.11	31st August 2005
	Allowed pressing of ESCAPE key to abort film entry, deselection and exclusion (rather than quitting program with consequent loss of data!)
v1.12	7th November 2005
	Added 'R' option to remove a single performance, due to making a number of mistakes during data entry!
	As a result, remapped the 'Re-enable' function to Y and renamed it as 'Restore excluded day'
	Blanking an area of the screen now automatically resets the text colour to white;  removed inconsistent attempts to ensure this elsewhere.
	Films selected on days otherwise manually excluded (e.g. because you know you're not going to attend later performances even if it would be technically possible) now actually do appear in summary output text!   As a side-effect of this, *all* films picked for attendance (displayed in green) now appear in summary output, instead of only those still in the future.
v1.13	11th February 2006
	Added F3 'quicksave' option (not displayed on menu).
	Created full set of desktop application sprites.
	Directory listings no longer appear in odd colours after an alert!
	Now uses ColourTrans to set text colours in case 16-colour modes are not available(!)
v1.14	25th February 2006
	Changed 'Performance clashes with another event' error to 'Performance not available', which makes more sense in the case of events excluded simply through having already taken place (i.e via use of the 'catch up to today' function).
v1.15	30th June 2006
	Extended trapping of ESCAPE usage to cover file load routine.
	Corrected bug whereby saving a file of freshly-typed data (i.e. not loaded from disc) would always default to the month name, even if a non-default name had been entered on the previous save.
	When a different performance for a given film is picked, any performances of other films that previously clashed with the old selection are re-enabled.
	Bugfix:   where a selected performance already exists for a given day/time, any other performances subsequently entered which clash with that selection will be correctly displayed as disabled (unless and until that selection is changed, of course....)
	Editing an individual entry ('I') now redraws the timetable display.
v1.20	8th December 2006
	Bugfix of bugfix above:   checking for date clashes now works properly!   Extended to cover editing (in case edited date/time now clashes with an existing selection) and to apply to 'excluded' days:   any performances added/edited to occur on days already excluded will be correctly shown in dark blue.
	Major revision of date handling:   this now includes year values (thus breaking compatibility with all previously saved data....)  This solves the old 'January problem' where the program would get the days of the week wrong when entering data during December for the forthcoming months.   It also makes it possible to have dates straddling the year-end divide (e.g. 30 Dec-14 Jan) sorted and displayed in the proper order, and, theoretically, to have dates more than a year apart stored in the same file (e.g. 3 Dec 2006 and 3 Dec 2007 are two distinct days, and all dates in 2007 will be sorted in between them).
	To avoid adding vast numbers of extra keypresses to the user interface, year values are calculated automatically during data entry on the assumption that any month that would normally *precede* the current one must be a date in the following year, e.g. '12 Jan' in October 2006 will be taken as '12 Jan 2007'.   The correction dialogue now has an extra stage which allows you to edit the year data for a specific performance.   If there is more than one possible match for a date you have entered (e.g. when specifying days to exclude from consideration), you will be prompted to supply the year when necessary.
	Pressing 'C' now brings up for editing the last performance for which data was entered, rather than the last performance according to current sort order - which nowadays tends to be by date rather than order of entry!   Corrections are now automatically followed by an updated timetable display.
	Fixed serious bugs in FNfind_date (which could result in dates being falsely reported as non-existent) and the 'catch up' feature (which would fail whenever there were no films scheduled on today's date!)
	Using the 'catch up to today' feature now triggers the 'unsaved data' warning on exit... provided any performances are actually affected!
	Answering 'n' to the 'unsaved data' warning now restores (or draws) the timetable screen.
	Made calculation of 'clashes' slightly more sophisticated, as it now operates a window of +/- one hour, instead of a straight string comparison.   This doesn't cover extreme cases (films that overlap the standard slots by a long way), but it covers most of the old false negative cases, i.e. 5.55pm now correctly clashes with 6.00pm.
	Bugfix:   the month prompt on the 'Date to exclude/restore' feature is now displayed as intended, instead of being partially overwritten.
	Trailing spaces are stripped from input at various places, especially where there is any likelihood of copy-cursor usage (i.e. during file load/title correction)
	Allowed all performances of a given film to be 'A'bandoned by specifying a (partial) performance code, as well as by title;  retained latter facility merely for user-friendliness (since "No available performances" warning flashes up title not code)
	Program now saves its data/output files to Choices structure if available.   It checks for the presence of 'data' and 'Output' directories and will try (silently) to create them if not present, instead of crashing...!
	Ordinary error trapping was not working for failed BPUT;  added specific test for "unable to write to file" errors (e.g. read-only archive, locked Choices)
	v1.21	12th July 2007
	Altered program taking into account new NFT programme features, namely 24-hour clock and cheap films on Tuesdays.
	As a result of the new time handling, it is now possible to extend the 'clash' window to 90 minutes in place of an hour - a more realistic minimum programme length - and I have done so.   Obviously, this still doesn't take into account four-hour epics....
	Created a more general error handling routine to distinguish ESCAPE presses from genuine errors, removing the need to keep all local error blocks as short as possible.   Added yet more trapping of ESCAPE usage, this time during editing of individual performance details.
	Fixed a very obscure bug whereby altering the time/date of a film that clashed with another one (which in practice can only sensibly be done in the case of a typing error!) failed to clear the reported 'clash'.
	v122	1st January 2008
	Entering times is now done via LINE INPUT instead of INPUT, meaning that the statement in the manual that *any* separator (e.g. "18-10") may be used is now literally true, including for commas....
	v123	13th April 2008
	Slight tweak to force the !Films.Output directory to be displayed in date order on return to the desktop, i.e. with the output file you just saved listed first.   This does not affect the computer's configured default Filer display options.
	v124	1st December 2008
	Altered 'cheap' flag to reflect new ticket pricing, namely matinee reductions on early afternoon films only.
	v125	3rd March 2011
	Fixed bug whereby doing a 'T' catch-up would *always* exclude the first entry if the current day happened to be the first day for which performances were available.   In the process, refined the catch-up routine so that it now takes into account the current time as well as date and will exclude all ineligible films for today's date ('ineligible' defined as 'starting at any time up to the next hour', rather than bothering with precise intervals, e.g. at 19.07 all films up to 20.00 will be excluded). This is of little practical use, but as I had to do most of the work anyway it seemed to reflect what the user might reasonably expect.