2008-05-16  Christoph Reichenbach  <reichenb@colorado.edu>

	* src/engine/vm.c (run_vm): Eliminated special-case VM hacks for
	unsigned ops that treated numbers of 1000 specially

2008-05-09  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/engine/kpathing.c: Use heuristic to detect reg_ts.

2008-05-08  Christoph Reichenbach  <reichenb@colorado.edu>

	* src/gfx/operations.c: Eliminated some warnings
	(_gfxop_set_pic): Defer scaling of index data until after the
	index data has been copied over to the unscaled auxiliary buffers
	(cf. #2848)

2008-05-05  Alex Angas  <arangas@internode.on.net>

	* src/engine/kmovement.c (kSetJump):
	* src/win32/msvc71-2003/fsci_dll/fsci_dll.vcproj:
	* src/win32/msvc80-2005/fsci_dll/fsci_dll.vcproj:
	* src/win32/msvc90-2008/fsci_dll/fsci_dll.vcproj: Win32 build fixes.

2008-05-04  Christoph Reichenbach  <reichenb@colorado.edu>

	* src/sfx/seq/gm.c (midi_gm_open): Jonathan Gray's patch for
	dealing with a lack of MIDI output devices

2008-05-04  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/dc/config.h.in, src/dc/Makefile: Build fix.

2008-05-02  Christoph Reichenbach  <reichenb@colorado.edu>

	* src/sfx/core.c (sfx_send_midi): Bail out on unexpected MIDI
	commands such as 0xff

	* src/include/vm.h (GC_INTERVAL): Re-named GC_DELAY to
	GC_INTERVAL, set back to a `sane' value

2008-05-01  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/gfx/resource/sci_pic_0.c Renamed `amiga' variable due to name
	clash on AmigaOS4.

2008-05-01  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/sfx/softseq/amiga.c: Use file streams.

2008-04-30  Christoph Reichenbach  <reichenb@colorado.edu>

	* NEWS: Updated for 0.6.4

	* src/engine/kmenu.c (_about_freesci_pages): Listed Max Horn as
	contributor

	* src/engine/gc.c (find_all_used_references): Fixed memory leak on
	interfaces table

	* src/sfx/seq/instrument-map.c: Several bugfixes to the instrument
	map

2008-04-21  Lars Skovlund  <lskovlun@image.dk>

	* src/sfx/iterator.c (_sci0_get_pcm_data): Fix signedness bug in
	PCM header decoding.

2008-04-18  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/kmovement.c (kSetJump): New SetJump() implementation
	by Max Horn.

2008-04-14  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/gfx/resource/sci_view_1.c (gfxr_draw_view1): Reverted previous
	commit for x-coordinate. Renamed `amiga' variables due to name clash
	on AmigaOS4.

	* src/engine/kstring.c (kStrCpy): Fixed endianness bug in hack for
	AvoidPath.

2008-04-10  Lars Skovlund  <lskovlun@image.dk>

	* src/gfx/resource/sci_view_1.c (gfxr_draw_view1): Use signed
	types for hotspot.

2008-04-09  Christoph Reichenbach  <reichenb@colorado.edu>

	* src/sfx/instrument-map.c (sfx_instrument_map_load_sci): Added
	SCI instrument map support

	* src/sfx/seq/gm.c (midi_gm_reset_timer): Added General MIDI
	driver

2008-04-06  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/kgraphics.c (_k_make_view_list): Further resilience
	fixes. 

2008-04-06  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/sfx/pcm_device/alsa.c (pcmout_alsa_exit),
	src/sfx/pcm_device/sdl.c (pcmout_sdl_exit): Free audbuf after
	stopping audio.

2008-04-05  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/vm.c:  Use signed math for array index calculation
	and division/modulus.

2008-04-05  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	 * src/sfx/seq/mt32.c: Removed some unused tables.

2008-04-04  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/gfx/gfx_console.c: Forward ported fixes from stable branch.

2008-04-02  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/engine/kstring.c (kFormat): Fixed an alignment bug.

	* src/engine/kmath.c (kGetAngle): New implementation to match SSCI
	semantics more closely.

2008-04-02  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/kgraphics.c (_k_make_view_list): Be more resilient to
	cast list change.

2008-03-29  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/seg_manager.c: Make relocation failures non-fatal.

	* src/engine/kmath.c (get_angle): Take care of OB1 differences
	with SSCI when aiming for multiples of 45 degrees.

2008-03-29  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/engine/kgraphics.c (_k_dirloop): Fixed angles for late SCI0.
	* src/include/versions.h: Use 2nd version of DirLoop semantics
	starting from 0.000.395.

2008-03-25  Lars Skovlund  <lskovlun@image.dk>

	* src/tools/scidisasm.c: Fix decoding of classes when the species
	field is invalid.

	* src/gfx/resource/sci_pal_1.c (gfxr_read_pal1_amiga): Fix
	bitfield decoding.

2008-03-24  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/gfx/resource/sci_pal_1.c (gfxr_read_pal1_amiga): Added
	function for loading Amiga palette file.
	* src/engine/game.c (_reset_graphics_input): Load `spal' file for
	Amiga games.
	* src/gfx/resource/sci_resmgr.c: Pass static palette to view drawing
	functions.
	* src/gfx/resource/sci_view_1.c, src/gfx/resource/sci_pic_0.c,
	src/include/gfx_resource.h: Added support for Amiga SCI1 views.

	* src/sfx/iterator.c (_sci1_song_init): Swapped calls of
	_base_init_channels and _reset_synth_channels on account of
	Valgrind warning.

2008-03-22  Christoph Reichenbach  <reichenb@colorado.edu>

	* src/engine/scriptdebug.c (disassemble): When disassembling,
	print full address
	(c_disasm_addr): Renamed `disasm' to `disasm-addr'
	(c_disasm): Added new `disasm' that operates by object plus method
	name

	* src/engine/scriptconsole.c (con_parse): Fixed broken error
	messages when object name parsing failed

	* TODO: Updated, confirmed that Rune's patch fixes the colour
	depth inconsistency

	* src/scicore/resource_patch.c (process_patch): Refactoring:
	extract function (process_patch) to eliminate duplicity between
	SCI0 and SCI1 patch handling.  This also copies over the
	offset-patch support from SCI0 to SCI1, in the assumption that
	this facility was not removed.

	* src/engine/kgraphics.c (draw_obj_to_control_map): Refactoring:
	extract function (draw_rect_to_control_map) from
	draw_obj_to_control_map, followed by some cleanup permitted by
	this transformation.

2008-03-21  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/engine/kfile.c (kFPuts): Don't write trailing zero.

2008-03-21  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/gfx/drivers/sdl_driver.c: Turned off SDL cursor for AmigaOS4.

	* src/scicore/tools.c (sci_sched_yield): Changed fallback
	implementation to a noop.

	* src/tools/sciunpack.c: AmigaOS4 build fix.

2008-03-21  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/gfx/resource/Makefile.am: Updated EXTRA_DIST.

2008-03-21  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/gfx/drivers/sdl_driver.c: Lock surfaces when accessing pixels
	directly.

2008-03-20  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* doc/sci.tex: Added section on SCI1 MT-32 and GM patch file format.

2008-03-16  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/gfx/drivers/sdl_driver.c, src/gfx/drivers/xlib_driver.c:
	Stop sleeping if mouse moves.

2008-03-15  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/vm.c (execute_method): Remove deletion mark from
	scripts when call[be]ing them. 

2008-03-15  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/gfx/drivers/sdl_driver.c: Fixed cursor handling.

2008-03-14  Christoph Reichenbach  <reichenb@colorado.edu>

	* src/engine/kgraphics.c (_k_view_list_dispose_loop): Fixed silly
	bug that caused assignment to `signal' variable after applying a
	bit mask, rather than before.

	* src/engine/kscripts.c (is_heap_object): Treat objects inlined in
	deallocated scripts as being dead

2008-03-13  Alex Angas  <arangas@internode.on.net>

	* src/win32/msvc60/*: Removed.

	* README.Win32: Removed references to Visual C++ 6.0.

2008-03-09  Christoph Reichenbach  <reichenb@colorado.edu>

	* src/engine/vm.c (run_vm): Zero the stack when using `link' in
	order not to confuse the gc

	* src/include/vm.h (GC_DELAY): Set to 0 by default.  Very slow,
	but better for debugging.

	* src/engine/vm.c (gc_countdown): Properly handle 0/negative gc
	intervals

2008-03-09  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/kernel.c: Relax type signatures for CelHigh and CelWide.

	* src/engine/scriptdebug.c (c_backtrace): Include script numbers
	in backtraces.

2008-03-07  Christoph Reichenbach  <reichenb@colorado.edu>

	* README.Win32 (IMPORTANT NOTE): Updated Docs to reflect the
	directory rename

	* src/include/engine.h (STRLEN_FREESCI_GAMEDIR): Renamed
	savegame/config dir to FreeSCI on Win32

	* src/include/resource.h (sci_rmdir): Win32 updates (suggested
	by Matt)

	* Numerous cleanups copied from or inspired by Matt's proposed
	cleanup patch

	* src/engine/scriptdebug.c (c_restore_game): Fixed command-line
	`restore game' tool

	* src/engine/savegame.cfsml (gamestate_restore): Retain sound
	subsystem initialisation flags across restore

	* src/engine/sys_strings.c (sys_strings_restore): Properly
	post-process system strings (fixes memory block bug and
	(hopefully) incorrect savegame references)

2008-03-07  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/vm.c (validate_variable): Fix !STRICT_READ case.

	* src/engine/kfile.c (test_savegame): Bring back potential
	backwards compatibility lost in yesterday's commit.

	* src/sfx/iterator.c (_sci_parse_midi_command): Expect an argument
	even when PARSE_FLAG_PARAMETRIC_CUE is set, but ignore it.

	* src/engine/kstring.c (kFormat): Fix a segfault occurring with
	the %-3d pattern.

2008-03-06  Christoph Reichenbach  <reichenb@colorado.edu>

	* src/engine/vm.c (validate_variable): Allowed out of bounds reads
	on the stack if compiled without STRICT_READ (which is now
	disabled by default)

	* src/engine/kfile.c: Eliminated some harmless warnings

	* src/engine/kgraphics.c: Eliminated some harmless warnings

	* src/engine/kfile.c (test_savegame): Eliminated magic number
	(direct reference to savegame version)

2008-03-06  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/klists.c (kNodeValue): Forward port relaxation of
	call signature.

2008-03-05  Lars Skovlund  <lskovlun@image.dk>

	* src/tools/ksound.c (kDoSound_SCI0): Generate a cue when fading.

	* src/tools/scidisasm.c (dump_exports): Fix endianness issue.

2008-03-02  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/sfx/softseq/mt32/synth.cpp: Changed tuning to 442Hz.

	* src/sfx/softseq/mt32.cpp: (Temporarily?) lowered volume to reduce
	clipping in MT-32 emulator.

2008-03-01  Christoph Reichenbach  <reichenb@colorado.edu>

	* src/scicore/resource_patch.c (sci0_read_resource_patches):
	Changed semantics of second byte in patch header to denote
	relative file offset

2008-02-29  Christoph Reichenbach  <reichenb@colorado.edu>

	* src/gfx/resmgr.c (gfxr_get_view): Add sanity check for views
	with zero loops

	* src/scicore/resource_patch.c (sci0_read_resource_patches): Made
	patch ID validity check more strict

2008-02-29  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/gfx/resource/sci_pic_0.c, src/gfx/resource/sci_picfill.c,
	src/gfx/resource/sci_picfill_aux.c: Forward ported pic0
	optimizations from stable.

2008-02-26  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/kgraphics.c (kDisplay): Implement version difference
	SCI_VERSION_FTU_DISPLAY_COORDS_FUZZY as described in versions.h

2008-02-26  Christoph Reichenbach  <reichenb@colorado.edu>

	* src/engine/scriptdebug.c: Re-enabled `viewinfo' command

	* src/sfx/test-iterator.c (simple_song): Added unit test for
	running status and 0xf8 song length extension
	(test_iterator_sci0_mark_loop): Added unit test for explicitly
	specified loop points in songs

	* src/sfx/iterator.c (_parse_sci_midi_command): Set loop point to
	right after the loop signal
	(_parse_sci_midi_command): reset state to SI_STATE_DELTA_TIME upon
	looping

2008-02-24  Christoph Reichenbach  <reichenb@colorado.edu>

	* src/sfx/device/camd-midi.c (camd_write): Added CAMD driver

	* README.Win32: Documentation updates: fixed discussion of sound
	support to reflect current state

	* README: Documentation updates: limitations

2008-02-23  Alex Angas  <arangas@internode.on.net>

	* src/include/win32/sci_win32.h: Fixed define for vsnprintf for VS 2005 and
	lower only.

2008-02-23  Christoph Reichenbach  <reichenb@colorado.edu>

	* src/include/Makefile.am (EXTRA_DIST): Added missing
	graphics_directx.h to EXTRA_DIST

	* src/win32/Makefile.am (EXTRA_DIST): Dropped MSVC6 support

2008-02-23  Alex Angas  <arangas@internode.on.net>

	* README.Win32: Updated with current information.

	* src/include/win32/sci_win32.h: Removed define for vsnprintf as already
	defined by MS. Added define for snprintf to _snprintf.

	* src/win32/freesci.def: Added missing functions and cleaned up.

	* src/win32/msvc60/fsci_dll.dsp:
	* src/win32/msvc60/sciv.dsp:
	* src/win32/msvc71-2003/fsci_dll/fsci_dll.vcproj:
	* src/win32/msvc71-2003/sciv/sciv.vcproj:
	* src/win32/msvc80-2005/fsci_dll/fsci_dll.vcproj:
	* src/win32/msvc80-2005/sciv/sciv.vcproj:
	Defined HAVE_UNLINK and HAVE_RMDIR.

	* src/win32/msvc90-2008/freesci.sln:
	* src/win32/msvc90-2008/fsci_dll/fsci_dll.vcproj:
	* src/win32/msvc90-2008/sciv/sciv.vcproj: Added Visual Studio 2008 project
	files.
	
2008-02-23  Christoph Reichenbach  <reichenb@colorado.edu>

	* TODO.GLUTTON: removed.

	* src/gfx/operations.c (simulate_stippled_line_draw): initialise
	length_left
	
2008-02-23  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/kscripts.c (kDisposeScript): Work around QfG1 bug.

2008-02-22  Christoph Reichenbach  <reichenb@colorado.edu>

	* src/gfx/drivers/Makefile.am (EXTRA_DIST): Added missing
	reference to DirectX driver

	* configure.ac: Explicit check for timeBeginPeriod to include
	libwinmm

	* src/scicore/tools.c: Proper condition around gettimeofday code

	* src/gfx/drivers/ggi_driver.c (init_input_ggi): Elim gettimeofday
	dependence

	* configure.ac: Added extra support for additional includes and
	used this to include src/include/win32 on mingw, use host_os
	instead of target_os

2008-02-22  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/kstring.c (kMessage): Return NULL_REG in unhandled
	subfunctions. 

	* src/engine/Makefile.am: Don't include line number directives in
	savegame.c.

	* src/sfx/core.c (sfx_add_song): Also reset loop value.

2008-02-21  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/dc/Makefile, src/dc/config.h.in: Build fix.

2008-02-21  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/savegame.cfsml: Bump savegame version number.

	* src/engine/kfile.c (test_savegame): Implement savegame version
	test here, too.

	* configure.ac: Also change version number here.

	* src/engine/scriptdebug.c (c_restart_game): Port over fix from
	kRestartGame (see 2007-08-03)

2008-02-21  Christoph Reichenbach  <reichenb@colorado.edu>

	* src/tools/Makefile.am (scimusicplayer_LDADD): Added missing
	@LIB_M@, renamed musicplayer to scimusicplayer

	* src/include/versions.h (SCI_VERSION_FTU_NEW_SCRIPT_HEADER):
	Updated to 0.000.395 for one particular version of PQ2.

2008-02-21  Lars Skovlund  <lskovlun@image.dk>

	* src/sfx/core.c (_update_multi_song): Fix non-playing sound
	during some restores in SCI1 (analogous to my 2008-01-23 change
	for SCI0).

2008-02-20  Christoph Reichenbach  <reichenb@colorado.edu>

	* src/gfx/operations.c (simulate_stippled_line_draw): Eliminated
	unneccessary initialisation from uninitialised variable

	* src/gfx/gfx_support.c (gfx_crossblit_pixmap): Fixed alpha
	blending on Alpha/MVI machines

	* src/gfx/operations.c (simulate_stippled_line_draw): Proper
	support for negative deltas.

2008-02-20  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/gfx/drivers/xlib_driver.c (xlib_init): Try 32-bit mode last
	due to it giving a transparent window when compiz is used (possibly
	only occurs with nvidia driver).

2008-02-20  Lars Skovlund  <lskovlun@image.dk>

	* src/sfx/iterator.c (_ff_get_timepos): Implemented.

	* src/sfx/core.c (sfx_add_song): Initialize hold value (only, for now).

2008-02-20  Christoph Reichenbach  <reichenb@colorado.edu>

	* src/scicore/resource_map.c (sci1_read_resource_map): More fully
	initialise the types list

	* src/scicore/resource_patch.c (sci0_read_resource_patches):
	Properly initialised patches' alt_resources
	(sci1_read_resource_patches): Properly initialise alt_sources for
	SCI1, too

	* src/gfx/gfx_pixmap_scale.c (FUNCNAME): Avoid corrupting the
	stack if there is no colour key

2008-02-19  Christoph Reichenbach  <reichenb@colorado.edu>

	* src/gfx/gfx_support.c (gfx_crossblit_pixmap): Fix bug in
	crossblitting that would break crossblitting with reverse alpha,
	minor associated cleanups

        * src/sfx/iterator.c (_parse_sci_midi_command): Loop channels
        irrespectively of whether they have played notes or not.  The
        previous behaviour appears to have been an unneccessary
        optimisation that wound up breaking the cue iterators (since their
        channel mask is 0, they don't play notes, so they were always
        stopped, thereby causing the ``real'' song to be aborted also.)

        * src/engine/ksound.c (kDoSound_SCI0): Initialise songs with their
        own ID as handle (fixes SQ3 intro song breakage)

	* src/gfx/drivers/xlib_driver.c: Cleaned up warnings

2008-02-18  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/savegame.cfsml (read_songlib_tp): Return a result.

2008-02-12  Christoph Reichenbach  <reichenb@colorado.edu>

	* src/gfx/drivers/xlib_driver.c (xlib_init_specific): Replaced
	possibly nonterminating loop with loop whose termination is
	guaranteed (if XMatchVisualInfo() terminates)

2008-02-10  Christoph Reichenbach  <reichenb@colorado.edu>

	* src/engine/kgraphics.c (kWait): Added option for overriding
	wait times (speed up for debugging)
	(_k_view_list_mark_free): Don't null view->signalp so that later
	code (most importantly draw_to_control_map) can still get it.

2008-02-05  Lars Skovlund  <lskovlun@image.dk>

	* src/sfx/player/polled.c (pp_resume): Reset pause flag even when
	there is nothing to resume.

	* src/sfx/player/polled.c (pp_add_iterator): Fix race condition
	with the mixer.

2008-01-26  Christoph Reichenbach  <reichenb@colorado.edu>

	* src/include/resource.h: Added sci_unlink as a wrapper to ``unlink'' 

	* acinclude.m4: Fixed underquoted definitions

	* src/sfx/seq/mt32.c (midi_mt32_allstop): Cut down event parameter
	size to 2, eliminating an unneccessary uninitialised byte that was
	otherwise sent to the MT-32.

2008-01-26  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/kstring.c (kStrAt): Relax heuristics a bit to also
	cover the Memory() emulation in QfG2.

2008-01-25  Alex Angas  <arangas@internode.on.net>

	* README.Win32: Updated documentation.

	* src/config.c:
	* src/config.l:
	* src/include/resource.h:
	* src/include/win32/sci_win32.h: Moved Win32-specific redefines for
	strcasecmp,	strncasecmp, vsnprintf, inline to sci_win32.h.

	* src/main.c: Moved Win32-specific redefine and declaration of cwd for
	successful compilation with Microsoft C compiler.

	* src/engine/kpathing.c: Renamed variables with Win32 used words 'new'
	and 'near' to 'new_point' and 'near_p'.

	* src/gfx/drivers/sdl_driver.c: Moved declaration of reg_surface for
	successful compilation with Microsoft C compiler.

	* src/include/scitypes.h: Added include for sci_win32.h.

	* src/menu/game_select_screen.c: Replaced snprintf with vsnprintf (latter
	doesn't exist under Win32).

	* src/scicore/fnmatch.c: Wrapped #ifdef HAVE_CONFIG_H around include.

	* src/sfx/seq/mt32.c: Wrapped #ifdef HAVE_SYS_TIME_H around include.

	* src/gfx/drivers/gfx_drivers.c:
	* src/gfx/drivers/dx_driver.cpp:
	* src/include/graphics_directx.h: Ported DirectX driver from stable.

	* src/win32/msvc60: Moved Visual Studio 6.0 files here.
	* src/win32/msvc71-2003: Moved Visual Studio 2003 files here.
	* src/win32/msvc80-2005: Created Visual Studio 2005 files here.

2008-01-24  Lars Skovlund  <lskovlun@image.dk>

	* src/gfx/gfx_test.c (gfxr_interpreter_init_pic): Initialize
	pic->internal to NULL.

2008-01-23  Lars Skovlund  <lskovlun@image.dk>

	* src/sfx/core.c (_update_single_song): Fix segfault during
	restore in SCI0 games.

2008-01-21  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/scriptdebug.c: bring back quick-save too.

	* src/sfx/softseq/opl2.c: Downwards pitch bend fix.

	* src/sfx/songlib.c: Duplicate some iterator information for
	saving purposes. Not complete yet.

	* src/engine/savegame.cfsml: Add song library persistence.

2008-01-20  Christoph Reichenbach  <reichenb@colorado.edu>

	* src/engine/scriptconsole.c (con_parse): Eliminated 'r' parameter
	type for console operations

	* src/engine/scriptdebug.c: Made static symbols static that ought
	to be static

2008-01-19  Christoph Reichenbach  <reichenb@colorado.edu>

	* src/sfx/iterator.c (songit_handle_message): extract method,
	move method, inline method refactorings to push ``delegate''
	handling into fast_forward_song_iterator_t->handle_message()
	(_ff_handle_message): first clone self, then recurse-- on the
	clone only-- if we get a clone message.

	* src/include/sfx_iterator.h (_song_iterator): push down field
	refactoring: ``delegate'' now in fast_forward_song_iterator_t

2008-01-19  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/include/resource.h, src/scicore/tools.c (sci_get_homedir):
	Merged AmigaOS4 patch by Hubert Maier.

2008-01-18  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/kgraphics.c (_k_draw_control): Treat lsTop as a
	memory offset instead of as a string offset.

	* src/engine/kstrings.c (kMessage): More sensible dummy message.

	* src/gfx/font.c (gfxr_draw_font): Don't complain about memory
	allocation when all input colors are black.

2008-01-17  Christoph Reichenbach  <reichenb@colorado.edu>

	* Makefile.am (EXTRA_DIST): Removed ``reconf'', thereby fixing
	distcheck

	* src/sfx/iterator.c (_ff_read_next_command): Changed semantics to
	return all events

	* src/sfx/test-iterator.c: Added unit tests for the song iterator

2008-01-17  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/kgraphics.c (kAddToPic): Proper check for NULL arguments.

	* src/engine/vm.c (game_restore): Bring back Quick-restore

2008-01-14  Christoph Reichenbach  <reichenb@colorado.edu>

	* src/gfx/gfx_pixmap_scale.c (FUNCNAME): Workaround for gcc 4.2.3
	bug on EMT64/AMD64

2007-11-07  Lars Skovlund  <lskovlun@image.dk>

	* src/sfx/sfx_player.h: Interface to inject MIDI messages into a
	playing song.

	* src/sfx/core.c: MIDI Send based on the above interface.

	* src/sfx/iterator.c: Reset pitch bend setting when a song
	stops (based on the same interface).

2007-10-28  Lars Skovlund  <lskovlun@image.dk>

	* src/sfx/softseq/opl2.c: Pitch bend support.

	* src/tools/musicplayer.c: New tool.

2007-10-01  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/ksound.c (kDoAudio): Stub added.

	* doc/sci.tex: Added section on message and audio files, written
	but then forgotten.

2007-09-04  Lars Skovlund  <lskovlun@image.dk>

	* src/scicore/resource_map.c (sci1_read_resource_map): Determine
	resource map entry size explicitly in all cases.

2007-08-28  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/dc/Makefile: Dreamcast build fix.

2007-08-27  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* reconf: Removed (autoreconf can be used instead)

	* config.guess, config.sub, depcomp, install-sh, libtool, ltconfig,
	ltmain.sh, missing, mkinstalldirs: Removed (can be installed with
	autoreconf -i).

	* configure.ac: Renamed from configure.in, changed version to
	0.7.0-devel.
	* output.logs, stamp-h, stamp-h.in: Removed.
	* src/graphics, src/sound: Removed empty directories.
	* src/python.tar.gz: Removed.

2007-08-23  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/sfx/softseq/amiga.c: Implemented velocity envelopes.
	* doc/sci.tex: Correction in the Amiga music section.
	* src/include/scitypes.h: Fixed point type fix.

2007-08-03  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/kernel.c: Map IsItSkip() correctly.

	* src/engine/kernel.c (kRestartGame): Preserve savedir across game restarts.

2007-08-01  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/kernel.c (kFlushResources): Let the GC run when
	hitting this kernel function.

2007-07-31  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/scriptdebug.c (script_debug): Prevent endless loop
	when a script error occurs and we have no way of accessing the
	debugger (e.g. SDL without on-screen console). 

2007-07-22  Christoph Reichenbach  <reichenb@colorado.edu>

	* src/engine/ksound.c (kDoSound_SCI0): Disabled the old ``stop
	this song'' command, which is really a ``play next possible song''
	and unneccessary in FreeSCI.

2007-07-21  Christoph Reichenbach  <reichenb@colorado.edu>

	* src/gfx/resmgr.c: Forward-ported bugfix for priority maps when
	using unscaled pics

2007-07-20  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/kgraphics.c (KERNEL_COLOR_PALETTE): Use the resstate
	version of palettes.

	* src/engine/kscripts.c (kLock): Fix interpretation of resource type.

2007-07-18  Christoph Reichenbach  <reichenb@colorado.edu>

	* src/sfx/mixer/soft.c: Eliminated unused variable

	* src/sfx/iterator.c: SCI0 PCM samples that have a delay of 0
	assigned to them (before the terminator) will now instead ``fake''
	a delay that corresponds to the actual time needed until they are
	finished.

	* src/gfx/drivers/xlib_driver.c: Likely fix for spurious
	``RenderBadPicture'' error messages on some X11 setups.  Fix
	originally contributed by Walter, I just applied it.

2007-07-17  Christoph Reichenbach  <reichenb@colorado.edu>

	* src/sfx/mixer/soft.c: Fixed numerous bugs

2007-07-17  Lars Skovlund  <lskovlun@image.dk>

	* Window placement fixes.

	* Win32 cross-compilation work.

	* src/engine/savcgame.cfsml: Also save status bar foreground /
	background. Restore version number properly.

2007-07-16  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* doc/sci.tex: Added info on Amiga Sound velocity envelopes.

2007-07-16  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/savegame.cfsml: Don't store script buffers in
	savegames, but reload them from the resources.

	* More savegame work.

2007-07-14  Lars Skovlund  <lskovlun@image.dk>

	* Savegame support, finally.

2007-07-13  Lars Skovlund  <lskovlun@image.dk>

	* Replace object index resolution mechanism with a hashmap-based
	one. 

2007-07-12  Lars Skovlund  <lskovlun@image.dk>

	* More SCI1.1 script work.

2007-07-11  Lars Skovlund  <lskovlun@image.dk>

	* Beginnings of SCI1.1 support.

	* src/engine/game.c (script_init_engine): Fix autodetection of
	suitable fonts.

2007-07-10  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/sfx/softseq/amiga.c: Now works better with SQ3.
	* src/sfx/seq/dc-amiga.c: Fixed panning.

2007-07-10  Lars Skovlund  <lskovlun@image.dk>

	* src/scicore/resource_map.c (sci1_read_resource_map): Skip over
	padding after resource type index.

	* src/scicore/decompress1.c (decrypt4_hdyn): Fix handling of
	overlapping (length, distance) pairs.

2007-07-10  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/include/games.h: Updated.
	* src/scicore/versions.c: Hash at most 1MB. Later games have very
	large resource files that take too long to hash completely when
	loading from CD.

2007-07-09  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/main.c, src/include/game_select.h,
	src/menu/game_select_screen.c: Added -G command line option to
	recursively search a directory tree for SCI games, and display them
	in the game selection menu.
	* src/include/sci_conf.h, src/include/engine.h, src/config.l: Added
	menu_dir config option (as above).
	* README, doc/man/freesci.6: Updated documentation.

2007-07-07  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/scicore/versions.c: Added executable version scanning for
	Amiga, Atari ST and Mac games.
	* src/main.c (detect_versions): Ignore >=1.000.000 version numbers
	resulting from executable scans (until we have some way to map
	them properly).
	* src/include/games.h: A few updates.

2007-07-06  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/main.c, src/scicore/versions.c, src/include/versions.h,
	src/include/games.h: Added resource version field to games.h.
	Interpreter version data in games.h is now given priority over
	executable scanning. Added several games to the game list.

2007-07-05  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* freesci.spec.in: Updated with information from freesci.spec
	* freesci.spec: Removed from repo (file is automatically generated).

2007-07-05  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* doc/sci.tex: Updated info on Amiga sound.

2007-07-03  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/sfx/softseq/amiga.c: Improved sound quality.
	* doc/sci.tex: Added information on Amiga sound.

2007-07-01  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/kgraphics.c (kGraph): Report 256 colors in all
	supported SCI1 games.

2007-07-01  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/sfx/softseq/amiga.c: Changed sound output to 44100 Hz stereo.

2007-06-30  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/sfx/softseq/amiga.c, src/sfx/softseq/Makefile.am,
	src/sfx/softseq/softsequencers.c: Added work-in-progress Amiga
	softseq.
	* src/main.c (main): Init drivers while in resource dir.
	* src/sfx/player/polled.c (pp_init): Use Amiga softseq when bank
	file exists.
	* src/include/scitypes.h: Added a fixed-point type.

2007-06-30  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/sfx/pcm_device/alsa.c: Fixed two bugs that could cause a
	segfault.

2007-06-27  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/sfx/seq/dc-amiga.c: Added Dreamcast sequencer for Amiga music.
	Generic softseq version to follow after the mixer API has been
	adapted to support multiple feeds coming from one softseq.

2007-06-18  Christoph Reichenbach  <reichenb@colorado.edu>

	* src/sfx/mixer/soft.c: Made the mixer lock volatile

2007-04-25  Christoph Reichenbach  <reichenb@colorado.edu>

	* src/engine/kgraphics.c (kNewWindow): Set bgcolor mask at the
	right point, so that we don't wind up with transparent windows

	* src/include/gfx_driver.h: Pixmap grabbing support is now
	mandatory

	* src/gfx/drivers/sdl_driver.c: Ensured that palettes are set on
	all surfaces before blitting, thereby making the driver work on
	8bpp

	* src/gfx/operations.c (_gfxop_clip): Negative xl, yl are no
	longer allowed now.  Fixed disjunction in return to conjunction,
	to properly indicate whether result is empty in all cases.
	Effectively, the former point fixed gfx_test.

	* src/gfx/gfx_tools.c (gfx_copy_pixmap_box_i): Added sanity check
	to fix segfault during gfx_test

2007-04-24  Christoph Reichenbach  <reichenb@colorado.edu>

	* Applied much of Jordi's other patches, and cleaned up things all
	over the place.

2007-04-23  Christoph Reichenbach  <reichenb@colorado.edu>

	* src/engine/Makefile.am (libsciengine_a_SOURCES): Eliminated
	dependence on savegame.c (no longer used)

	* Applied Patch #3 out of Jordi's patch set

	* src/include/kernel.h (kernel_dereference_char_pointer):
	Implemented Patch #2 out of Jordi's set of patches by using a
	simple preprocessor macro (should keep the code more readable).
	
	* Applied Patch #1 out of Jordi Vilalta's set of nine FreeSCI
	patches, plus minor cleanups of memory operation usage

2007-03-11  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/seg_manager.c: A bit of refactoring work.

2006-12-13  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/kstring.c (kStrAt): Make the SQ4 detection heuristics
	a little less aggressive. 

2006-11-25  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/vm_types.h: Standardize on a single reg_t
	representation on all platforms.

	* src/engine/kstring.c (kStrAt): Implement support for SQ4 using
	this call to handle arrays.

2006-11-24  Lars Skovlund  <lskovlun@image.dk>

	* engine/game.c: Make the picture port selected on startup.

2006-11-11  Lars Skovlund  <lskovlun@image.dk>

	* sfx/gfx/widgets.c (gfxw_make_snapshot): Make sure we include
	widgets whose edges lie along the screen edges.

2006-11-10  Lars Skovlund  <lskovlun@image.dk>

	* src/gfx/sci_widgets.c (sciw_new_window): Sanitize window
	coordinates.

2006-11-06  Lars Skovlund  <lskovlun@image.dk>

	* src/gfx/gfx_tools.c (gfx_pixmap_alloc_index_data): Initialize
	index data properly.

	* src/engine/kgraphics.c (kIsItSkip): New kernel call.

2006-11-02  Lars Skovlund  <lskovlun@image.dk>

	* src/gfx/resource/sci_pic_0.c: Proper support for overlaid pics
	in SCI1.

	* src/tools/scidisasm.c: Fix long-standing name clobbering bug
	caused by LRU resource management.

2006-11-01  Lars Skovlund  <lskovlun@image.dk>

	* src/sfx/iterator.c,
	src/engine/ksound.c: Beginnings of a fade mechanism.

2006-07-17  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/gfx/drivers/sdl_driver.c: Removed double buffering code.

2006-05-22  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/kernel.c, src/engine/vm.c: Added special pointer
	handling for LOCALS blocks in arithmetic opcodes and in Memory().

2006-05-19  Walter van Niftrik <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/engine/kpathing.c, src/scicore/script.c, src/include/vm.h:
	Added pathfinding implementation.
	* src/include/kdebug.h, src/engine/scriptdebug.c: Added debuglog +P
	mode for pathfinding.
	* src/engine/kstring.c (kStrCpy): Added hack for converting reg_t to
	raw for AvoidPath.

	* src/include/list.h, src/include/aatree.h, src/scicore/aatree.c:
	Added to repository.
	* src/include/Makefile.am, src/scicore/Makefile.am: Updated.

2006-03-07  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/kernel.c (kNOP): Check whether the name of the NOPed
	function is actually known.

2006-02-25  Lars Skovlund  <lskovlun@image.dkl>

	* src/engine/game.c (game_exit): Free the sound state (and
	re-allocate it due to brain damage). 

2006-02-20  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/kgraphics.c (kDisplay): Treat width requests of 0 as
	MAX_TEXT_WIDTH_MAGIC_VALUE, same as kTextSize. 

2006-02-12  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* README: Added section on Dreamcast graphics driver.

2006-02-12  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* README.DC: Added.

2006-02-11  Christoph Reichenbach  <reichenb@colorado.edu>

	* src/engine/kgraphics.c (_find_view_priority): Fixed 14 priority
	zone comparisons according to Hugues' recipe

	* src/include/games.h: Forward-"ported" Hugues' list of new game
	IDs

2006-02-01  Christoph Reichenbach  <reichenb@colorado.edu>

	* src/engine/kgraphics.c (_find_priority_band): Treat
	SCI_VERSION_FTU_PRIORITY_14_ZONES consistently with >= rather than >

2006-01-28  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/dc/gamemenu.c (game_menu_render): Make sure the "please wait"
	message remains on-screen during the loading of a game.

	* src/dc/options.h (dc_options): Updated for recent changes.

	* src/dc/Makefile: Build fix.

	* src/sfx/mixer/dc.c (query_timestamp): Streaming is now restarted
	if the PCM buffering is too far ahead. (sfx_pcm_driver_dc): Added
	fake Dreamcast PCM driver.
	* src/sfx/pcm_device/pcm_devices.c: Updated.
	* src/sfx/softseq/opl2.c: Added suitable PCM defaults for Dreamcast.

	* src/sfx/seq/mt32.c: Fixed some #includes.

2006-01-25  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/engine/kernel.c (kfunct_mappers): Applied signature changes
	discussed on IRC a few months ago.

	* src/engine/kfile.c (write_filename_to_mem): Copy 12 bytes instead
	of 11. (kFileIO): Corrected some mixed-up arguments.

	* src/engine/seg_manager.c (sm_dereference): Added a '\n' to the
	error message.

2005-12-22  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/kgraphics.c (kSetCursor_SCI11): Forgot some changes
	here in a previous commit.

2005-12-12  Lars Skovlund  <lskovlun@image.dk>

	* src/gfx/operations.c (gfx_set_pointer_view): Forgot some changes
	here in a previous commit.

	* src/gfx/drivers/sdl_drivers.c (sdl_map_key): Fix Ctrl-Backquote
	on the Macintosh. 
	

2005-12-11  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/kgraphics.c (kTextSize): Fix reporting of text
	widths.

	* src/scicore/resource_map.c (sci0_read_resource_map): Add
	descriptive comment like I promised to ages ago.

	* src/engine/gc.c (run_gc): Fix verbose error output when debug
	define isn't set.

2005-12-10  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/kgraphics.c: Incorporate KQ5/CD cursor fixes.

	* src/engine/ksound.c: Add SCI1 debug printfs.

	* src/engine/kmovement.c: Fix error messages to use PREG and friends.

2005-11-25  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* configure.in, src/Makefile.am: Only link to libm when found.

	* src/engine/game.c, src/engine/vm.c: Removed BeOS check.
	* src/include/scitypes.h: Removed BeOS types.
	* src/scicore/tools.c (sci_sched_yield): Added BeOS implementation.

	* src/engine/scriptdebug.c: Replaced HAVE_FORK with HAVE_SYSV_IPC.
	(script_debug): Fixed mixed declarations and code.

	* src/gfx/drivers/sdl_driver.c, src/sfx/pcm_device/sdl.c: Removed
	path element from SDL include statements.

	* src/sfx/seq/mt32.c (midi_mt32_sysex_delay): Added BeOS
	implemenatation.
	* src/sfx/seq/sequencers.c: Always include MT-32 sequencer.

	* src/tools/bdftofont.c (convert_font): Fixed mixed declarations and
	code.

2005-11-21  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/sfx/device/unixraw-midi.c: Added to repository.
	* src/sfx/device/devices.c, src/sfx/device/Makefile.am: Updated for
	added file.

2005-11-14  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/scicore/resource_map (detect_odd_sci01): Don't try to close
	invalid fd.

2005-11-13  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/scicore/decompress01.c (view_reorder): Fixed bug where last
	color in palette would not be copied.

2005-11-13  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/gfx/resource/sci_view_1.c (gfxr_draw_cel1): Read color key
	from byte 6 of the header.

2005-11-11  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/kernel.c (kGetTime): Scripts that call this regularly
	are not necessarily well-behaved.

	* src/engine/kevent.c (kGetEvent): Fetch the game speed from game
	variables and use it when penalizing CPU-hogging games.

2005-11-10  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/dc/aica.h, src/dc/aica_cmd_iface.h, src/dc/aica_crt0.s,
	src/dc/aica_main.c, src/dc/aica_sup.c, src/dc/snd_stream.c,
	src/dc/stream.h, src/sfx/mixer/dc.c, src/sfx/timer/pthread.c: Added
	to repository.
	* src/sfx/mixer/mixers.c: Added Dreamcast mixer.
	* src/sfx/timers/timers.c: Added Dreamcast timer.
	* src/dc/Makefile: Updated for added files.
	* src/Makefile.am, src/sfx/mixer/Makefile.am,
	src/sfx/timer/Makefile.am: Updated EXTRA_DIST.

2005-11-06  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/dc/bsearch.c, src/dc/dc.c, src/dc/snd_stream.c,
	src/dc/snprintf.c, src/dc/stream.h.: Removed from repository.
	* src/config.l, src/main.c, src/dc/config.h.in, src/dc/dc.h,
	src/engine/game.c, src/engine/vm.c, src/gfx/drivers/dc_driver.c,
	src/dc/Makefile, src/include/resource.h, src/include/scitypes.h,
	src/scicore/tools.c: Adapted Dreamcast port to KOS 1.3.x.

	* src/Makefile.am, src/include/Makefile.am: Updated EXTRA_DIST.

2005-11-01  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/kgraphics.c (kMoveCursor): New kernel call.

	* src/engine/kgraphics.c (kSetCursor): Adapted to KQ5/CD
	semantics.

	* src/engine/kernel.c (script_map_kernel): Differentiate Unknown
	and NOP/unmapped functions.

2005-10-31  Lars Skovlund  <lskovlun@image.dk>

	* src/scicore/resource.c (scir_new_resource_manager): Fix resource
	sorting failure under some circumstances.

2005-10-30  Alex Angas  <arangas@internode.on.net>

	* src/scicore/resource.c (sci_test_view_type): Default init of
	mgr->sci_version if SCI version cannot be detected.

	* src/engine/gc.c: Renamed reserved word 'interface' to interfce.

	* src/engine/gc.c:
	* src/engine/kstring.c:
	* src/engine/scriptdebug.c:
	* src/engine/seg_manager.c:
	* src/engine/vm.c:
	* src/gfx/sci_widgets.c:
	* src/gfx/resource/sci_pic_0.c: Fixed misc compilation errors.

	* src/win32/freesci.sln: removed sciunpack.

	* src/win32/fsci_dll.vcproj:
	* src/win32/sciv.vcproj: Updated build configurations to include SDL
	library reference. Set Release optimization settings as per MSDN.
	Added missing files to project.
	* src/win32/tests/tests.vcproj: Attempted to fix compilation.

2005-10-27  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/scicore/versions.c (scan_file): Pass an unsigned char to
	isalpha() instead of a char.

2005-10-27  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/dc/keyboard.h, src/dc/keyboard.c: Added to repository.
	* src/gfx/drivers/dc_driver.c, Makefile: Forward ported recent
	changes from stable to glutton.

2005-10-27  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/dc/Makefile: Updated.
	* src/dc/dc.c: Temporarily added dummy isatty() and scanf().

2005-10-27  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/kgraphics.c: Chrono-ports are back, with changes.

	* src/engine/kgraphics.c (kDrawCel): Temporarily disable
	chrono-ports. 

	* src/engine/kgraphics.c (kSetPort): Use wm port instead of title
	bar when -1 is given as argument (AGAINST SPECS).

2005-10-26  Lars Skovlund  <lskovlun@image.dk>

	* src/sfx: Add support for SCI_MIDI_HOLD.

	* src/main.c (game_select): Return an index instead of a boolean
	value. 

	* src/scicore: Yet more autodetection improvements.

2005-10-25  Lars Skovlund  <lskovlun@image.dk>

	* src/scicore: Improved autodetection.

2005-10-25  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/scicore/exe_lzexe.c: Removed use of void * arithmetic (GCC
	extension).

2005-10-25  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/vm.c (script_instantiate): Fix typo.

2005-10-24  Christoph Reichenbach  <reichenb@colorado.edu>

	* src/engine/vm.c (script_uninstantiate): Mark script as deleted
	instead of actually deleting it, leave rest up to gc

	* src/engine/seg_manager.c (free_at_address_script): Added freeing
	for scripts

	* src/scicore/resource_map.c: Fixed *sci_version vs. sci_version bug

	* src/engine/gc.c (WORKLIST_CHUNK_SIZE): Chunk size updated to 32

2005-10-24  Lars Skovlund  <lskovlun@image.dk>

	* src/scicore: Implemented autodetection of resource file formats.

	* src/engine/vm.c: Add pointer arithmetic for local variables (preliminary)

	* src/engine/vm.c (run_vm): Fix lofss opcode, for SCI Studio games.
	
2005-10-23  Lars Skovlund  <lskovlun@image.dk>

	* src/scicore/vocab_debug.c (load_knames1): Fixed a list termination
	bug.
	* src/engine/kernel.c (has_kernel_function): Added, for versioning
	purposes.

2005-10-22  Christoph Reichenbach  <reichenb@colorado.edu>

	* src/engine/kgraphics.c (kShow): Added calls to
	gfxop_set_visible_map

	* src/gfx/operations.c: Various changes to draw to the priority
	map and to the static priority map
	(DRAW_LOOP): Bugfix (forgotten increment) when drawing to control
	(and now also priority) map
	(gfxop_set_visible_map): Implemented properly

	* src/include/gfx_operations.h: gfx_state_t now also maintains a
	priority map and a static priority map

2005-10-21  Christoph Reichenbach  <reichenb@colorado.edu>

	* Removed the sciconsole (the stand-alone tool). No-one ever used
	it anyway. Also killed the 'demo' code; I'd be very surprised
	if it even still compiled.

2005-10-21  Lars Skovlund  <lskovlun@image.dk>

	* src/scicore/resource_map.c (sci1_read_resource_map): Add SCI1.1
	support.

2005-10-18  Christoph Reichenbach  <reichenb@colorado.edu>

	* src/engine/gc.c: Added a mark&sweep garbage
	collector. Currently, nodes, lists and clones are handled by it;
	other things emit messages when asked to delete themselves. GC is
	invoked every 32768 kernel calls by default (cf. gc-interval.2 in
	the debugger).

2005-10-16  Christoph Reichenbach  <reichenb@colorado.edu>

	* src/gfx/gfx_pixmap_scale.c (FUNCNAME): Properly set alpha colour
	if we hit an alpha
	(FUNCNAME): Undid previous modification, instead set
	'result_colors' table correctly

	* src/gfx/operations.c (_gfxop_set_pointer): Re-compute 'draw_old'
	to reflect its intended semantics ("we currently have a
	now-obsolete pointer on the screen and need to remove it")

	* src/scicore/resource.c: Set resource number limits to 2048 for
	all versions using SCI0-style resource maps

2005-10-13  Lars Skovlund  <lskovlun@image.dk>

	* src/scicore: Pass SCI version number along when decompressing.

	* src/engine/vm.c (run_vm): Fix &rest adjustment being used
	twice. 

2005-10-06  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/include/versions.h (version_detect_from_executable): Changed
	return code semantics. (version_parse): Return error code.
	* src/config.l, src/main.c (main), src/engine/savegame.cfsml
	(read_sci_version): Updated for changes to semantics listed above.
	* src/scicore/versions.c: Added support for version number scanning
	in lzexe-compressed executables. Changed scanner to also accept
	version strings containing alphabetic characters (these aren't
	handled by version_parse() yet, however). (version_parse): Added
	error checking.
	* src/include/exe.h, src/include/exe_dec.h, src/scicore/exe.c,
	src/scicore/exe_lzexe.c, src/scicore/exe_raw.c: Added to repository.
	* src/scicore/Makefile.am, src/include/Makefile.am: Updated for
	added files.

2005-10-06  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/kgraphics.c (kCanBeHere): Explicitly use the picture
	port for this kernel function.

2005-10-04  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/ksound.c (kDoSound:DISPOSE): Stop songs implicitly
	before removing them.

	* src/engine/ksound.c (kDoSound:INIT): Test for the existence of a
	sound resource before creating the iterator.

	* src/engine/ksound.c (kDoSound:PLAY): Make sure nodePtr and
	handle are non-zero, as the scripts expect them to be.

2005-10-02  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/kgraphics.c (kDrawPic): I thought we had port
	clearing in place already. Kill any chrono ports explicitly here.

	* src/gfx/widgets.c: Fix some ChronoPort-related flag goof-ups.

	* src/engine/operations.c (_gfxop_shiftify): GCC doesn't like
	logical AND. Oh well.

	* src/engine/scriptconsole.c (c_list): Fix resource display to cap
	at the appropriate value (instead of 1000).

2005-09-30  Christoph Reichenbach  <reichenb@colorado.edu>

	* src/gfx/operations.c (gfxop_scan_bitmask): Scanning bitmasks now
	clips at y offset 10 and aborts with 0 if the clipped area is
	empty. This fixes climbing down in the submarine tube in IceMan.

2005-09-28  Lars Skovlund  <lskovlun@image.dk>

	* src/gfx/drivers/sdl_driver.c (sdl_map_key): Add support for
	shifted F-keys.

2005-09-28  Christoph Reichenbach  <reichenb@colorado.edu>

	* src/include/script.h: Added missing 'typedef'

2005-09-27  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/kgraphics.c (kDisposeWindow): Garbage collection.

	* src/engine/widgets.c: Add 'chrono port' code.

	* src/engine/kgraphics.c (kDrawCel): Use chrono ports.

2005-09-24  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/scriptdebug.c (c_mousepos): Added command 'mousepos'.

2005-09-23  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/kgraphics.c (_k_draw_control): Add control type 7 as
	an alias of control type 6.

	* src/engine/kstring.c (kFormat): Fix string formatting.

	* src/gfx/resource/sci_pic_0.c: Properly implement equidistant
	priority tables. Perform embedded view positioning properly.

2005-09-22  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/kgraphics.c (kNewWindow): Add a few checks.

2005-09-22  Christoph Reichenbach  <reichenb@colorado.edu>

	* src/sfx/iterator.c (new_fast_forward_iterator): Copy channel
	mask from encapsulated iterator in fast-forward iterator

	* src/engine/kstring.c (kFormat): Added support for '%=42s' string
	formatting
	
2005-09-21  Christoph Reichenbach  <reichenb@colorado.edu>

	* src/sfx/core.c (sfx_add_song): Slightly changed error reporting
	when overwriting a playing/suspended song to ensure that no
	deallocated memory is touched, reported error more properly

2005-09-15  Lars Skovlund  <lskovlun@image.dk>

	* src/scicore: Add another SCI resource version, special-
	casing Jones256/win (as opposed to Jones256).
	* src/engine/kgraphics.c: Palette code improvements.
	
2005-09-15  Christoph Reichenbach  <reichenb@colorado.edu>

	* src/scicore/resource_map.c (sci1_res_type): Properly bound
	iteration over resource type flags

	* src/gfx/resource/sci_pic_0.c (_gfxr_draw_line): Properly pass
	line end points

2005-09-12  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/kgraphics.c: Beginnings of a palette system.

2005-07-26  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/klists.c: Fix sanity check.

	* src/gfx/resource/sci_pic_0.c: Add sanity check.
	
2005-07-21  Lars Skovlund  <lskovlun@image.dk>

	* src/gfx/resource/sci_pic_0.c: Fix embarassing line draw bug.

	* src/gfx/resource/sci_pic_0.c: Merge sci_pic_1.c in here.

2005-07-20  Lars Skovlund  <lskovlun@image.dk>

	* src/sfx/mixer/soft.c: Build fixes for gcc 4.0 (cast expressions
	as lvalues are now disallowed, formerly being deprecated).

2005-04-28  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/gfx/gfx_console.c (_con_redraw): Build fix.

2005-04-26  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/engine/kgraphics.c (_k_draw_control), src/gfx/sci_widgets.c
	(sciw_new_edit_control), src/include/sci_widgets.h: Determine cursor
	height inside sciw_new_edit_control().

	* src/gfx/sci_widgets.c (sciw_new_list_control): Changed size to
	match SSCI more closely.

2005-04-26  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/gfx/sci_widgets.c (sciw_new_button_control): Slight adjustment
	to text location in buttons.

2005-04-26  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/engine/kgraphics.c (kNewWindow): Moved windows up one pixel.
	* src/gfx/sci_widgets.c: Several changes to match SSCI more closely.
	(sciw_new_window): Draw framed windows without titlebar one pixel less
	in height. Reduced height of title bar by one pixel. Reverted patch
	that moved windows with title bar down 10 pixels.
	(sciw_new_button_control): Increased both width and height by one
	pixel. Changed drawing code to match look of SSCI.
	* src/gfx/sci_widgets.c (sciw_new_edit_control),
	src/include/sci_widgets.h, src/engine/kgraphics.c (_k_draw_control):
	Edit control's cursor height is now based on font height rather than
	control height. Increased both width and height of control by one
	pixel.

2005-04-25  Christoph Reichenbach  <reichenb@colorado.edu>

	* src/gfx/widgets.c (gfxw_new_line): Adapted interface to new structure

2005-04-24  Max Horn  <max@quendi.de>

        * src/scicore/vocab.c: added coments to class_names
        (vocab_get_words): Merged vocab_get_words_sci1 into vocab_get_words
        (vocab_free_words): Fixed GCC warnings

2005-04-24  Christoph Reichenbach  <reichenb@colorado.edu>

	* src/gfx/resource/Makefile.am: Disabled sci_pic_1.c: Too much
	overlap with sci_pic_0.c, needs to be handled in a more clever
	fashion

	* src/include/gfx_system.h: Changed the semantics of rect_t to use
	xl, yl as width, height (rather than width-1, height-1), changed
	line functions to take two points rather than one rect

	* src/engine/seg_manager.c: Added some (currently disabled) code
	and prototypes for automatic memory management

2005-04-02  Christoph Reichenbach  <reichenb@colorado.edu>

	* doc/sci.tex: Misc. formatting improvements, added documentation
	for GetMenu and SetMenu

2005-04-05  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/savegame.cfsml: Remove stuff related to the old VM.
	* src/engine/scriptdebug.c: Re-enable console commands for saving
	and restoring games.

2005-03-18  Christoph Reichenbach  <reichenb@colorado.edu>

	* src/sfx/pcm_device/audiobuf.c: Moved reporting of buffer
	underruns via sciprintf to writing thread
	(sfx_audbuf_write): Improved (fixed?) thread safety of
	sfx_audbuf_write()

2005-02-19  Christoph Reichenbach  <reichenb@colorado.edu>

	* src/include/seg_manager.h: Added a little additional
	documentation

	* src/engine/seg_manager.c: Removed dynamic dispatch from segment
	manager

	* src/engine/scriptconsole.c: Split console into VM-dependent and
	VM independent parts

	* src/scicore/versions.c: Forward-ported "versions.c" from the
	stable branch

2005-01-26  Christoph Reichenbach  <reichenb@colorado.edu>

	* src/gfx/resource/sci_picfill_aux.c (AUXBUF_FILL_HELPER): Added a
	hard filling bound to ensure that no place is filled more than
	once

	* src/scicore/resource_map.c (sci0_read_resource_map): Changed
	SCI1 detection in SCI0 resource.map reader
	(sci_res_read_entry): SCI1 detection now relocated to entry
	reading

2005-01-21  Christoph Reichenbach  <reichenb@colorado.edu>

	* src/gfx/resource/sci_picfill.c (IS_BOUNDARY): Fixed correctness
	for iceman pic.002, where we did not consider the effects of
	dithering for determining fill boundaries.
	(FILL_FUNCTION): Fixed priority/control map bug related to the
	IS_BOUNDARY fix

	* src/gfx/resmgr.c (gfxr_get_pic): Added some #ifdef'd code for
	timing pic drawing

	* src/engine/scriptdebug.c (script_debug): Forward-ported the
	"sleep" command

2005-01-11  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/kpathing.c: Add polygon type constants.

2005-01-06  Christoph Reichenbach  <reichenb@colorado.edu>

	* src/gfx/resource/sci_pic_0.c (gfxr_init_pic): Explicitly unset
	colour key to avoid white being treated as transparent

	* src/gfx/resource/sci_picfill.c: Forward-ported optimised 1x1 pic
	drawer code

2005-01-05  Lars Skovlund  <lskovlun@image.dk>

	* doc/sci.tex: Update palette section.

2004-12-20  Lars Skovlund  <lskovlun@image.dk>

	* src/menu/game_select_init.c
	* src/gfx/operations.c: Change all references to
	state->static_palette into state->resstate->static_palette. This
	completes the move of said data structure.

	* src/gfx/resource: Rudimentary global palette suppor added.
	* src/scicore/resource_map.c: Fix boundary case.

2004-08-15  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* acconfig.h: Removed from repository.
	* acinclude.m4, configure.in: Several small changes in order to
	get rid of the autoconf warnings when reconfiguring.

	* src/main.c (game_select_resource_found): Look for resource.map
	with sci_open(), the filename may contain uppercase characters.

2004-08-02  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/vm.c (validate_property): Prevent segfaults when
	fetching property values from disposed objects.

	* src/engine/klists.c: Make NextNode and NodeValue use the new
	signature options.

	* src/engine/kernel.c (determine_reg_type): Allow a signature to
	ignore invalid pointers. 

2004-08-01  Christoph Reichenbach  <reichenb@colorado.edu>

	* src/scicore/resource.c (scir_find_resource): Modulo-ise bad resource
	numbers

	* src/include/sci_conf.h (FREESCI_DRIVER_SUBSYSTEMS_NR): Limited
	to 1, as we only have one ATM

2004-08-01  Lars Skovlund  <lskovlun@image.dk>

	* doc/scidoc.cls: New document class.

	* doc/sci.tex: Add palette stuff and use the new document class.

2004-07-31  Christoph Reichenbach  <reichenb@colorado.edu>

	* doc/sci.tex (subsection{resource.map}): Updated resource.map
	documentation to discuss changes done to resource.map

	* src/scicore/resource_map.c (sci_res_read_entry): Now handle -r3
	(01-early VGA) resources differently

2004-06-12  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/gfx/drivers/xlib_driver.c: Fixed activation of
	localised_keyboard option.

2004-05-05  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/dc/gamemenu.c (load_options): Small bug fix.

2004-04-27  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/Makefile.am: Updated Dreamcast EXTRA_DIST list.

2004-04-26  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/dc/gamemenu.c, src/dc/options.h: Added version tag to option
	file.

	* src/dc/selectgame.c (choose_game): Updated website URL.

	* src/dc/config.h: Removed from repository.
	* src/dc/config.h.in: Added to repository.
	* src/dc/.cvsignore: Updated.
	* src/dc/Makefile: Include current date in VERSION.

2004-04-26  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/main.c (main), src/dc/Makefile: Minor build fixes for the
	Dreamcast port.

2004-04-24  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/tools/5x8.font: Font updates

	* src/menu/*.c:
	* src/include/game_selection.h: Added Hugues' game selection menu

2004-04-08  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/sound/fmopl.c: Declare inline functions the way we did
	previously.

2004-04-05  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/sfx/core.c: Added initial support for dynamically
	configurable debug flags

2004-04-04  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kernel.c: Added support for situations in which we
	know that the SCI version under consideration has more kernel
	calls than we detected, but don't know the precise mapping yet
	(consider this a prelude to a better default mapping mechanism).

2004-04-04  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/sfx/core.c (sfx_init): Set pcm_device, player, mixer and
	timer to NULL if no timer was found or timer init failed.

2004-04-04  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/main.c: Forward ported the '-f' commandline option from the
	stable branch. Added Dreamcast config file handling.

	* src/dc/.cvsignore, src/dc/stream.h: Added to repository.
	* src/dc/aica_cmd_iface.h: Removed from repository.
	* src/Makefile.am: Updated EXTRA_DIST to include Dreamcast files.

	* src/dc/Makefile, src/dc/config.h, src/dc/dc.h, src/dc/gamemenu.c,
	src/dc/options.h, src/dc/selectgame.c, src/dc/selectgame.h,
	src/dc/snd_stream.c, src/gfx/drivers/dc_driver.c: Forward ported
	latest versions from the stable branch. Added options to Dreamcast
	menu to set version, resource_version and pic_port_bounds.

	* src/include/sfx_core.h: Fixed include of config.h.

2004-04-03  Lars Skovlund  <lskovlun@image.dk>

	* src/gfx/resmgr.c (gfxr_get_font): Remove test code which caused
	GFX_FONT_BUILTIN_6x10 to be used at all times.
	* src/scicore/resource_map.c (sci0_read_resource_map): Add
	detection code for SCI1 resmaps. Currently does not transfer
	control to anything useful.

2004-04-02  Christoph Reichenbach  <reichenb@colorado.edu>

	* src/gfx/resmgr.c (gfxr_get_font): Added support for the two
	new built-in fonts GFX_FONT_BUILTIN_5x8 and GFX_FONT_BUILTIN_6x10.

	* src/gfx/font-6x10.c:
	* src/gfx/font-5x8.c: Added two X11 fonts, converted to c. The 6x10
	font also received some manual treatment for beautification pur-
	poses.

	* src/tools/fonttoc.c: Added 'font' file to FreeSCI source converter.

	* src/tools/bdftofont.c (convert_font): Added bdf -> 'font' file
	converter based on xmbdef source code (X11 licence).

2004-03-28  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/kgraphics.c (kDrawPic): Revert bogus change that was
	not supposed to go into CVS.

	* src/engine/kgraphics.c (kBaseSetter): Add a small note
	describing the wrong fix for the SQ3 rail bug.
	* src/engine/kgraphics.c (kDisposeWindow): Make the window
	manager port active when disposing a window.

2004-03-27  Lars Skovlund  <lskovlun@image.dk>

	* src/gfx/resource/sci_view_1.c (gfxr_draw_view1): Handle (?) the
	case where views don't have palettes.

2004-03-26  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/sfx/iterator.c (_sci1_command_index): Return
	COMMAND_INDEX_NONE if no channel was found. Handle this
	correctly in SCI1 song iterators.

2004-03-25  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/sfx/mixer/soft.c (mix_compute_buf_len): Cap time
	computations at the buffer size, thus assuming that no frames will
	ever have to be skipped. Strangely enough, that seems to sound
	better...

2004-03-19  Lars Skovlund  <lskovlun@image.dk>

	* src/main.c (main): Actually obey a version setting when it
	appears in a config file.
	* src/engine/kgraphics.c (kNewWindow),
	* src/engine/kernel.c: Workaround for extra arguments in PQ3.

2004-03-18  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/game.c (script_init_engine): Add check for SCI1.0
	games with SCI1.1 cursors.

2004-03-17  Lars Skovlund  <lskovlun@image.dk>

	* src/gfx/gfx_support.c (gfx_crossblit_pixmap): Fix alpha sanity
	check.

2004-03-15  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/sfx/mixer/soft.c (mix_compute_input_linear): Defer
	computation on 'fs' until after 'fs' has been updated following a
	lock acquisition

	* src/sfx/core.c (_update_multi_song): Stop, rather than suspend,
	songs in multisong mode when they're no longer around

	* src/sfx/iterator.c (_tee_read_next_command): When playing
	multiple songs and subtacting one song's delay time from another,
	make sure that we don't reach '0' (which has a different, special
	meaning).

	* src/sfx/mixer/soft.c: Implemented locking, fixed bugs related
	to realloc() messing things up when PCM feeds would install
	new feeds

2004-03-14  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/kgraphics.c (kDrawPic): Temporary work-around for
	port problem.

2004-03-14  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/doc/sci.tex: Added a slightly revised version of Johannes
	Manhave's initial translation of our docs into LaTeX

	* src/scicore/vocab.c (vocab_get_words_sci1): Added better checks
	for boundary conditions

	* src/sfx/iterator.c
	* src/sfx/core.c: Support for playing several songs at once

	* src/sfx/iterator.c: Songs now explicitly deallocate channels
	when they're finished, using MIDI 'controller' (Bx) command 7b

	* src/sfx/softseq/SN76496.c
	* src/sfx/softseq/pcspeaker.c: Added Support for MIDI Bx 7b

2004-03-11  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/game.c (script_init_engine): Abort gracefully when
	encountering an SCI1.1 game.
	* src/scicore/resource.c (sci1_res_type): Fix stupid OB1 bug.
	* src/include/sciresource.h: Bump the value of sci1_last_resource.

2004-03-10  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/kevent.c (kGetEvent): In SCI1 games, don't report the
	foolock modifiers.

2004-03-09  Lars Skovlund  <lskovlun@image.dk>

	* src/include/uinput.h: Remove SCI_EVT_NONBLOCK flag from
	SCI_EVT_ANY mask.
	* src/engine/kgraphics.c (kOnControl): Cope with nonstandard port
	izes.

2004-03-06  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kgraphics.c (kDisplay): Now uses default colour
	black, as opposed to "whatever the port specifies"

	* src/gfx/sci_widgets.c (sciw_new_window): Changed titlebar size
	to 9

	* src/engine/kgraphics.c (kNewWindow): Removed magic -1 to y

2004-03-06  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/seg_manager.c (sm_script_relocate): Fix OB1 bug.

2004-03-04  Lars Skovlund  <lskovlun@image.dk>

	* src/gfx/operations.c (gfxop_get_event): Add support for
	SCI_EVT_NONBLOCK flag.

	* src/engine/kevent.c (kGetEvent): Fix bug so the 'se' command
	also breaks on mouse clicks.

2004-03-03  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/kgraphics.c (kDisplay): Fix kernel signature to
	handle the simplest case (Display "Foo"), and an argument
	parsing bug which would bite in the same case.

2004-03-01  Lars Skovlund  <lskovlun@image.dk>

	* src/config.l: Add configuration option 'pic_port_bounds'.
	* src/engine/kgraphics.c (kSetPort): Add special logic to change
	the pic port bounds at run-time.
	* src/gfx/resource/sci_pic_1.c: Make pic1 drawing (partially)
	aware of pic port bounds.

2004-02-29  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/iterator.c (_sci1_sample_init): Fix signedness issue,
	similar to the one from yesterday.

2004-02-28  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/iterator.c (_sci1_init): Change default hardware ID
	for cue computation to 0x00.
	* src/engine/iterator.c (_sci1_song_init): Fix offset signedness
	issue.

2004-02-26  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/ksound.c (kDoSound_SCI1): Fix subfunction constants,
	copy code from SCI01 implementation.

2004-02-25  Lars Skovlund  <lskovlun@image.dk>

	* src/gfx/resource/sci_view_1.c (gfxr_draw_cel1): Fix hotspot
	retrieval for SCI1 views. 

	* src/engine/ksound.c (kDoSound_SCI01): One-liner fix for KQ5
	intro: When song ends, set signal to 0xffff, not 0xff.

2004-02-22  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/sfx/iterator.c: Fixed memory leak when generating PCM feeds
	(using the new/untested refcounting memory facilities)

2004-02-21  Christoph Reichenbach  <jameson@linuxgames.com>

	* configure.in: Made dependence on libxft optional.

	* src/gfx/drivers/xlib_driver.c: Made RENDER not depend on Xft,
	although the includes are still used if available.

2004-02-16  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/sfx/iterator.c: Lots of changes and bug fixes in song
	iterator code.

	* src/engine/ksound.c: Support for SCI(0)1 sound cues

2004-02-15  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/include/sfx_iterator.h (SI_RELATIVE_CUE): Split cues into
	relative and absolute cues

2004-02-06  Christoph Reichenbach  <jameson@linuxgames.com>

	* doc/sci.sgml: Added game information contributed by Jonathan
	Gray

	* src/scicore/vocab.c (vocab_get_words_sci1): Added more error
	checking to avoid out-of-bounds reads

	* src/engine/kpathing.c (kAvoidPath): Added default handler

	* src/sfx/mixer/soft.c: Added 'additional_frames' write-ahead
	indicator variable

2004-02-05  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/sfx/iterator.c (_sci1_handle_message): memcpy'd cloned PCM
	samples
	(_sci1_get_pcm): Fixed dumb bug when freeing sample
	(_sci1_resume_all_channels_from_waiting_to_loop): Now, looping
	only occurs after all streams have finished.

	* src/sfx/doc/sound01.txt: Added information from Lars' e-mail.

2004-02-03  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/ksound.c (kDoSound_SCI01): Misc. fixes: Command
	no. 12 and 14 were wrong, a bit of pseudocode added, UPDATE_CUES
	fixed, references to state selector removed (obsolete in SCI01).

2004-02-02  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/ksound.c (kDoSound_SCI0): Added support for SCI1 song
	playing

	* src/sfx/iterator.c: Added SCI1 song iterators

	* src/sfx/player/polled.c (play_song): Added PCM playing support

	* src/sfx/player/realtime.c (play_song): Added PCM playing support

	* src/sfx/core.c (sfx_play_iterator_pcm): PCM playing has now been
	deferred to song players, to allow for more than one sample to be
	embedded in a song.

2004-01-06  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/sfx/iterator.c (_sci0_read_next_command): Song iterators now
	loop one less time, as in Sierra SCI

	* src/sfx/core.c (sfx_all_stop): Implemented 'allstop' command

2004-01-04  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kernel.c (script_map_kernel): Unknown kernel calls
	are now correctly mapped to k_Unknown (rather than kstub)

2004-01-04  Lars Skovlund  <lskovlun@image.dk>

	* src/sfx/pcm_device/alsa.c: Build fix for older versions of ALSA.

2004-01-04  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/sfx/pcm_device/alsa.c, src/sfx/pcm_device/pcm_devices.c,
	src/sfx/pcm_device/Makefile.am: Added an alsa PCM driver based on
	alsa-lib's pcm.c example.

2004-01-01  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/sfx/softseq/opl2.c (opl2_init): Forward-ported Solomon's
	OPL/2 sequencer

	* src/include/sfx_softseq.h: Extended API a bit with an 'allstop'
	command

	* src/sfx/softseq/SN76496.c: Added SN76496 (Tandy/PCJr 3-voice)
	playback support

	* src/sfx/softseq/pcspeaker.c: Added new implementation of the PC
	speaker driver, using the 'polled' song player. This replaces the
	earlier software sequencer stuff.

	* src/sfx/player/polled.c: Added 'polled' song player,
	which is polled by a PCM feed instead of being directly timer
	driven (still uses the same API).

	* src/engine/scriptdebug.c (c_is_sample): Addsd 'is-sample'
	console command

	* src/sfx/mixer/soft.c (mix_compute_input_linear): Fixed an error
	whereby an insufficient number of samples was requested from a PCM
	feed

2003-12-31  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/sfx/mixer/soft.c (mix_compute_input_linear): Fixed incorrect
	offset in memmove() causing cracking sound

	* src/sfx/seq/sequencers.c: Added compile-time support for heap
	poisoning

	* src/config.l (config_init): Fixed missing initialisation for
	'res_version' in the config structurex

2003-12-30  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/sfx/pcm_device/audiobuf.c (sfx_audbuf_write): Minor fix to
	fix

	* src/engine/kfile.c (kFileIO): Fixed parameters for FileIO
	reading

2003-12-29  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/sfx/mixer/soft.c (mix_compute_input_linear): Fixed cracking
	more completely by also considering skipped samples when computing
	the actual number of samples gotten vs. the number of samples
	expected

	* src/sfx/pcm-iterator.c:  Added support for PCM sound effects in
	song iterators

	* src/sfx/mixer/soft.c (mix_compute_input_linear): Cancelled
	pending stream review after previous review was successful
	(getting rid of some crackling noises caused by continuous
	re-positioning baed on minor timing inaccuracites)

2003-12-28  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/sfx/mixer/soft.c (mix_compute_input_linear): Fixed some
	smaller bugs

	* src/include/sfx_pcm.h: Changed PCM API to use timestamps,
	allowing better debugging
	Allow streams to suspend output temporarily

2003-12-27  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/scriptdebug.c (script_debug): Do not suspend and
	resume sound repeatedly when stepping more than one step

	* src/sfx/player/realtime.c (rt_pause): Allowed the real time
	player's "pause" function not to segfault in the absence of the
	sequencer's "allstop" function

	* src/sfx/seq/soft-pcspeaker.c (sps_allstop): Added 'allstop'
	implementation

	* src/include/sfx_audiobuf.h: Cleaned up audio buffer API to use
	PCM configuration data directly (causing a dependency on sfx_pcm.h
	but significantly eased its use). Also added time stamping support
	to the API.

2003-12-26  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/sfx/mixer/soft.c (mix_subscribe): Fixed 32 bit overflow in
	buffer size computation

	* src/sfx/iterator.c (_base_handle_message): Fixed too much memory
	being allocated and copied during iterator initialisation

	* src/sfx/songlib.c (song_new): Initialise all songs to 'stopped'
	by default

	* src/sfx/mixer/soft.c (mix_compute_buf_len): Nasty bug in new
	code fixed, thanks to Matt and Walter

2003-12-25  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/sfx/mixer/soft.c (mix_compute_buf_len): Changed soft mixer
	behaviour to handle gaps in the output stream gracefully

	* src/engine/kgraphics.c: Forward-ported Matt's bugfixes to the
	Animate() process
	(kOnControl): Removed ad-hoc OnControl change

	* src/sfx/seq/soft-pcspeaker.c (sps_delay): OB1 bug in PCM
	sequencing fixed

	* src/engine/ksound.c (kDoSound_SCI0): Use the polyphony of the
	active player, instead of a default value

	* src/sfx/pcm_device/audiobuf.c (sfx_audbuf_write): Removed debug
	code that would prevent the re-use of older audio buffers

	* src/sfx/pcm_device: Committed PCM subsystem, fixed various
	mixer bugs, fixed up core.c to initialise PCM subsystem
	
2003-08-28  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

        * src/scicore/tools.c (sci_gettime): Fixed a bug in the win32
        implementation of this function.

2003-08-22  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/drivers/xlib_driver.c (UPDATE_NLS_CAPABILITY): Fixed
	configuration handling for NLS in xlib

	* src/gfx/drivers/gfx_drivers.c (string_truep): Fixed semantics
	not to return the inverse of what it was meant to do
	(string_falsep): ditto

	* src/engine/vm.c, seg_mgr.c: Removed various duplicate handlings
	of old scripts (resulting in breakage).

2003-07-30  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/sfx/player/realtime.c (rt_set_iterator): Reset the output
	driver's timer when starting songs

	* src/sfx/seq/mt32.c (delay_init): Pause program execution if an
	attached MT-32 still needs programming

	* src/include/sfx_sequencer.h: Added sfx_sequencer_t::reset_timer()

	* src/include/sfx_device.h: Added midi_writer_t::reset_timer()

2003-07-26  Lars Skovlund  <lskovlun@image.dk>

	* src/include/hashmap.h: Build fixes for gcc 3.3
	* src/engine/seg_manager.c: Ditto
	* src/engine/kmovement.c: Fixed bug in DoAvoider().

2003-07-09  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/sfx/iterator.c (_sci0_read_next_command): Do not consider
	special-purpose MIDI commands in 0xfx for being subjected to
	per-channel filtering
	Reset last_cmd prior to looping

	* src/sfx/songlib.c (song_lib_add): Fixed OB1 in song library

	* src/sfx/seq/mt32.c (MAGIC_MIDIOUT_DELAY): Slowed down MT-32 MIDI
	output during initialisation to avoid execution buffer overflows in
	KQ1

	* src/gfx/drivers/xlib_driver.c (x_map_key): Allow all printable
	ASCII characters to be returned by the xlib driver

	* src/config.l (push_file): Fixed use of included files to use lex
	buffers instead of hacking around with yyin

2003-07-08  Rune Orsval  <u951663@daimi.au.dk>

	* src/gfx/drivers/xlib_driver.c (x_map_key): Handle the Space key correctly.

2003-07-07  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/sfx/iterator.c (_sci0_read_next_command): Fixed rhythm channel
	support

	* src/include/sfx_iterator.h (SIMSG_SET_RHYTHM): Added support for
	toggling rhythm channel support

	* src/sfx/device/alsa-midi.c: ALSA sequencer support for MIDI output
	(preliminary, not configurable yet)

	* src/gfx/drivers/xlib_driver.c (x_get_event): Fixed keyboard handling
	caused by updated keyboard layer support

2003-07-03  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kevent.c (kGetEvent): Added NumLock support

2003-06-03  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/config.l: Added '%include<>' option for config files

	* src/include/gfx_res_options.h: Added initial implementation of
	per-resource gfx configuration

2003-04-27  Christoph Reichenbach  <jameson@linuxgames.com>

	* configure.in: Added libfontconfig to Xft configuration whenever
	neccessary

	* Misc. -Wall fixes all over the place

2003-04-12  Lars Skovlund  <lskovlun@image.dk>

	* src/scicore/console.c: Added debugcmd type 'r'.
	* src/engine/scriptdebug.c (c_send): Add 'send' debugger command.
	
2003-04-06  Lars Skovlund  <lskovlun@image.dk>

	* src/gfx/drivers/xlib_driver.c (x_map_key): Handle the Delete key correctly.

2003-03-27  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/game.c (script_init_engine): Fixed stupid autodetection
	  bug.
	* src/gfx/resource/sci_view_1.c: Implemented support for mirrored views.

2003-03-26  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/kernel.c: Ignore extra parameter in DisposeWindow and
	  SetPort.

	* src/engine/kgraphics.c,
	  src/engine/kmovement.c,
	  src/scicore/script.c: Added support for inverse CanBeHere semantics.
	* src/engine/game.c (script_init_engine): Autodetect inverse CanBeHere
	  semantics.

2003-03-25  Lars Skovlund  <lskovlun@image.dk>

	* src/scicore/decompress_01.c,
	* src/scicore/decompress_1.c: Implemented view decompression.
	* src/engine/kscripts.c (kDisposeScript): More script locking work.
	
2003-03-25  Lars Skovlund  <lskovlun@image.dk>

	* src/scicore/decompress_01.c: Implemented pic decompression.

2003-03-24  Lars Skovlund  <lskovlun@image.dk>

	* src/gfx/resource/sci_pic_1.c: Added SCI1 pic decoder.
	* src/gfx/resource/sci_resmgr.c: Replaced SCI1 stubs with real code.
	* src/gfx/resource/operations.c (gfxop_init_common): Now knows how to
	load a default palette at startup. Not useful yet.

2003-03-21  Matt Hargett  <matt@use.net>

	* src/gfx/resource/sci_pic_0.c (gfxr_draw_pic0): Add support for 
	embedded views, properly scaling and translation.

	* src/scicore/resource_patch.c (sci1_read_resource_patches):
	Deal with case where filename has no extension.

	* src/win32/freesci.def: Add script_free_breakpoints export.

2003-03-19  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/kscripts.c (kClone): The script of the parent object
	gets locked on each clone.
	* src/engine/game.c (script_init_engine): No longer add stray
	classes that are not in the class table.

2003-03-17  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/vm.c (get_class_address): Requests for classes in the
	running script no longer result in another lock.
	* src/engine/kgraphics.c (kGraph): Reverted my own number-of-colors
	patch (2003-02-05)

2003-03-14  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/kmath.c (kAbs): Fix compiler error.
	* src/engine/seg_manager.c (_sm_deallocate): Taught segmgr to
	deallocate more segment types.
	* src/engine/vm.c (game_run): Make sure VM is completely
	reinitialized on restarts.

2003-03-08  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/kmath.c (kAbs): Remove warning.
	* src/engine/klists.c (kNodeValue): Handle NULL pointers properly.

2003-03-08  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/vm.c: Forward port of VM fixes from the main branch.
	* src/engine/kmath.c (kAbs): Work around a hack in Hoyle1.
	* src/engine/kgraphics.c (kTextSize): Really accept NULL pointers.
	
2003-03-08  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/sfx/seq/sequencers.c: Define sfx_sequencer_oss_adlib and
	sfx_sequencer_mt32 as extern and only use sfx_sequencer_mt32 when
	HAVE_SOUNDCARD_H is defined.

2003-02-25  Lars Skovlund  <lskovlun@image.dk>

	* src/config.l, src/main.c: Added configuration option
	'resource_version'.

2003-02-15  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/sfx/.cvsignore, src/sfx/device/.cvsignore,
	src/sfx/player/.cvsignore, src/sfx/seq/.cvsignore,
	src/sfx/timer/.cvsignore: Added to repository.

2003-02-14  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kscripts.c (invoke_selector): Recover xstack from state
	before using it

	* configure.in: Applied Bas' fix for Debian freetype dirs

	* src/engine/kscripts.c (kDisposeClone): NULL pointers in freed
	global dynview objects

	* src/engine/kgraphics.c (_k_view_list_mark_free): Added function
	to NULL pointers in the global view list per-object

2003-02-13  Lars Skovlund  <lskovlun@image.dk>

	* src/gfx/resource/sci_pic_0.c: Added support for embedded views in pics.

2003-02-12  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/scriptdebug.c (_c_single_seg_info): Added missing break;
	* src/engine/grammar.c (_vocab_build_gnf): Handle broken grammars (better)

2003-02-09  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/game.c (_init_vocabulary): SCI1 games no longer load
	their parser vocabularies even if they are present.
	* src/engine/kgraphics.c (kDisposeWindow): Fixed a segfault.
	* src/engine/script.c (script_adjust_opcode_formats): Added
	functionality to take care of opcode differences between
	interpreters.
	* src/engine/seg_manager.c: Re-inlined some functions.
	* src/engine/script.h: Added opcode format for absolute offsets,
	plus support in various places.
	* src/engine/scidisasm.c (main): Support -r flag.
	* src/scicore/console.c (sciprintf): Incorporated leak fix from
	the stable branch.

2003-02-08  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/kgraphics.c (kNewWindow): Fixed NULL pointer access.

2003-02-08  Lars Skovlund  <lskovlun@image.dk>

	* src/scicore/resource*: Add support for SCI1 resource maps and patches.
	* src/engine/kscripts.c (kScriptID):  Support wide export tables.
	* src/engine/kgraphics.c (kGraph): Color mode is now independent of
	lofs absoluteness.

2003-02-07  Lars Skovlund  <lskovlun@image.dk>

	* src/include/sciresource.h: Added new resmgr version
	number. Generally changed things around to support this.
	* src/gfx/resource/sci_resmgr.c: Made glutton die properly instead
	of looping when the SCI1 games break.
	* src/main.c: Hijacked -r switch to specify the resmgr version
	number.
	* src/tools/sciunpack.c: Ditto.

2003-02-05  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/seg_manager.c: Added support for code relocation and
	"wide" export tables.
	* src/engine/vm.c: Added support for absolute lofs instructions.
	* src/engine/kgraphics.c (kGraph): Now uses a different method of
	distinguishing 16 and 256 color games.

2003-02-03  Lars Skovlund  <lskovlun@image.dk>

	* Ported kernel functions all over the place.
	* Got rid of the emulation layer.
	* Removed some obsolete scriptdebug commands.
	* Reverted Christoph's event patch from 2002-11-29.

2003-02-02  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/kmenu.c: Ported kernel functions.
	* src/gfx/menubar.c: Ditto for the support functions.

2003-01-31  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/kemu_old.c (identify_value): Properly initialize
	return value.
	* src/engine/scriptdebug.c (disassemble): Handle &rest parameters
	correctly.
	* src/engine/kmenu.c (kDrawStatus): Ported to new kernel call system.

2003-01-30  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/engine/kgraphics.c (_find_view_priority): Corrected a typo.
	This should fix many of the priority problems in KQ1.

2003-01-26  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/sfx/timer/sigalrm.c (sigalrm_start): Re-install timer handler
	to make sure we can recover from libreadline destroying it

	* src/sfx/player/realtime.c: Stop the timer when pausing

	* src/include/sfx_timer.h: Separated timer initialization and
	start to allow it to be stopped/resumed easily

2003-01-18  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/kernel.c: Changed the kernel signature for TextSize().
	* src/engine/klists.c (kSort): Fixed memory leak.

2003-01-17  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/resource/sci_resmgr.c (gfxr_interpreter_options_hash): Re-
	applied patch to return correct options hash for palettized views

2002-12-28  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kgraphics.c (_k_make_view_list): Forward-ported view list
	changes

2002-12-14  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/resmgr.c (gfxr_get_view): applied hash to views

	* src/engine/kgraphics.c (_k_draw_control): Added dynamic width
	specifications

	* src/engine/vm.c,kernel.c: Added support for pointers to all kinds of
	places

	* src/engine/kernel.c: Allowed Said to take NULL parameters

2002-12-08  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/kpathing.c (kAvoidPath): Fixed the argument base and
	relaxed the kernel signature a bit.
	* src/scicore/script.c: Fixed another signedness bug in the
	class-related opcodes.

2002-12-07  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/kstring.c (kStrCpy): Implemented support for negative
	string lengths.
	* src/engine/kernel.c (kLoad): Fixed kernel signature.
	* src/engine/klists.c (kSort): Properly implemented.
	* src/engine/scriptdebug.c (objinfo): Now displays the number of
	the owning script.
	* src/engine/vm.c (run_vm): Fixed pointer arithmetic bug in the
	add opcode. 
	* src/engine/kscripts.c (invoke_selector): Fixed invocation with
	parameters.
	
2002-11-29  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kevent.c (kGetEvent): Don't report insert mask on pointer
	events, fixes movement in QfG2 (well, not really, but it seems to fix
	the GetEvent() related part of the problem)

	* src/engine/vm.c (script_uninstantiate): Remove class table entries

	* src/engine/kernel.c (kMemory): Ported

	* src/engine/kpathing.c (kAvoidPath): Ported

	* src/engine/seg_manager.c (mem_obj_allocate): Clear pointers after
	realloc, to prevent segfault during c_segtable

	* src/engine/kstring.c (kStrAt, kStrCpy): Ported
	(kSaid, kParse): Fixed the parser's claim mechanism by porting these
	two

	* src/engine/kernel.c (kMemory): Disabled kMemory()

	* src/engine/scriptdebug.c (script_debug): Added 'sg' debug command
	for stepping until a global variable is changed (does not handle
	indirect changes by writes from kernel functions).

2002-11-26  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/sci_widgets.c (sciw_new_window): Moved titled windows down by
	10 SCI pixels.

	* src/engine/kemu_old.c (resolve_conflicts): Fixed kernel emulation
	to handle overlapping memory chunks

2002-11-23  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/sfx/iterator.c (_sci0_read_next_command): More bugfixes for song
	iterators

	* src/engine/vm.c (_obj_locate_varselector): Handled objects with
	nameless properties

	* src/engine/kgraphics.c (kDisplay): Bugfix in kDisplay

	* src/engine/kstring.c (kFormat): Fixed formatting by porting it

	* src/engine/vm.c (run_vm): Fixed call stack not being set correctly
	for the 'call' opcode.

	* src/engine/kernel.c: Added hunk memory again

	* src/engine/kgraphics.c (kGraph, kDisplay): Ported those

	* src/include/kernel.h (SKPV, UKPV, SKPV_OR_ALT, UKPV_OR_ALT): Added
	new macros for easier access to value parameters

	* src/engine/kgraphics.c (animate_do_animation): Added scrolling up
	and down as transition animations

2002-11-23  Lars Skovlund  <lskovlun@image.dk>

	* src/gfx/resource/sci_resmgr.c (gfxr_interpreter_get_view):
	Fixed palettized views for games that dont support them.

2002-11-23  Lars Skovlund  <lskovlun@image.dk>

	* Added kernel support for palettized views

2002-11-22  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/vm.c (run_vm): Allowed unsigned comparisons between
	pointers (always false if segments don't match)
	(run_vm): Made &rest adjustment signed to fix a couple of bugs
	(_lookup_selector_function): Treat disinterest in address of function
	selector properly (fixes RespondsTo)

	* src/engine/kgraphics.c (_k_draw_control): Ported control drawing
	(and the three related functions) to glutton
	(draw_to_control_map): Don't draw to control map if the object has
	been disposed

2002-11-19  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/klists.c (kFirstNode): Allowed swallowing NULL

	* src/include/kernel_types.h (KSIG_NULL): Introduced "NULL" type for
	arguments, to allow certain references to optionally be 0:0

	* src/engine/kemu_old.c (recover_value): Fix to emulation: We used to
	recover only half the selectors

	* src/engine/vm.c (run_vm): Fixed erroneous fix to dup

	* src/engine/kscripts.c (kClone): Lock and...
	(kDisposeClone): Unlock script

	* src/engine/vm.c (validate_property): Invalid property accesses (QG1)
	turned into warnings
	(get_class_address): Scripts are now locked correctly

	* src/engine/kmovement.c (kInitBresen): Fixed default for step size
	(kDoBresen): Fixed

2002-11-18  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/include/heapmgr.h (alloc_<T>_entry): Fixed a memory
	corruption bug

2002-11-17  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/vm.c: Misc. bugfixes

	* src/engine/kernel.c (kMemoryInfo): Fixed return value to 0xe000 to
	prevent overflows during script computations

	* src/engine/scriptdebug.c (disassemble): Re-implemented additional
	debug information
	
	* src/engine/kgraphics.c: Ported CanBeHere, SetNowSeen, DoBresen,
	BaseSetter, AdToPic, Animate

2002-11-11  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kscripts.c (invoke_selector): Re-enabled selector
	invocation

2002-11-10  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kemu_old.c (write_selector16): 16 bit selector
	reading/writing added

	* src/engine/kscripts.c (kScriptID): Re-implemented
	(kIsObject): Re-implemented
	(kRespondsTo): Re-implemented
	(*_selector): Selector reading and writing re-implemented

	* src/engine/kemu_old.c (kFsciEmu): Improved emulation code to handle
	strings and objects

	* src/include/kernel_types.h: Added kernel runtime typing information,
	code to verify signatures

	* src/engine/scriptdebug.c (c_type): Added test function for type
	detection

2002-11-09  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/vm.c (run_vm): Misc. bugfixes, particularly wrt calls
	(run_vm): Added check to prevent problems when script.000 has no locals

	* src/engine/kernel.c (script_map_kernel): More sophisticated kernel
	function handling

	* src/engine/kemu_old.c (kFsciEmu): Initial implementation of emulator
	(only value arguments ATM)

	* src/engine/scriptdebug.c (c_vmvarlist): Slightly increased
	verbosity

2002-11-08  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/vm.c (run_vm): Added callk again

2002-11-07  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/game.c (script_init_engine): Used dynamically
	allocated stack

	* src/engine/seg_manager.c (mem_obj_allocate): Added support
	for other kinds of segments
	Added separate segment for local variables

	* src/engine/scriptdebug.c (c_codebug): Added "co-debugging"
	(running two versions of FreeSCI concurrently and sharing commands
	between them).

2002-11-04  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/include/vm.h (VM_OBJECT_GET_VARSELECTOR)
	(VM_OBJECT_READ_PROPERTY, VM_OBJECT_GET_FUNCSELECTOR) 
	(VM_OBJECT_READ_FUNCTION): Added a couple of macros for easier
	access to object properties

	* src/engine/scriptdebug.c (c_vo): Initial 32 bit object viewer
	command, "vo"

	* src/scicore/console.c (parse_reg_t): Added support for reg_t
	arguments, including class/object name lookup

	* src/engine/scriptdebug.c (c_segtable, c_seginfo): Added "segtable"
	and "seginfo" functions

	* src/engine/vm.c (run_vm): Various bugfixes and changes to be able
	to run off arbitrary scripts
	(script_instantiate): Various bugfixes

	* src/engine/seg_manager.c: Added script_obj_init, script_relocate,
	script_initialize_locals (two variants), and script_free_unused_objects

2002-11-03  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/scicore/console.c: Major cleanup with many simplifications,
	added support for specifying signatures requiring non-NULL state_ts

2002-11-02  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/vm.c (lookup_selector): Major cleanup, added a couple
	of helpful auxiliary functions

2002-10-29  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/vm.c (game_run): Implemented quick bootstrapping hack
	(lookup_selector): Re-implemented
	(send_selector): Re-implemented

	* src/engine/scriptdebug.c (disassemble): Re-enabled

	* src/include/vm.h: Execution stack now uses a better encoding for
	variable addresses

2002-10-28  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/vm.c (lookup_selector): Initial new selector lookup
	function

	* src/include/vm.h: Misc. convenience macros for newer script
	accessing
	Also clone tables, appropriate mem_obj_t changes

2002-10-25  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/include/vm_types.h: Added separate header for types used
	within the VM
	* src/include/kernel_compat.h: Added compatibility header for old
	kernel macros
	* src/engine/*.c: Millions of type changes all over the place, plus
	changes to accomodate for upcoming VM changes (and VM improvements
	wrt the new design)

2002-10-19  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/kpathing.c: New file.
	* src/engine/klists.c (kSort): New kernel call. Not guaranteed to work.
	* src/engine/kscrits.c (kLock): New kernel call.
	
2002-10-13  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/include/scitypes.h (sci_dir_t): Added Dreamcast definition.
	* src/scicore/tools.c (sci_init_dir, sci_find_first, sci_find_next,
	sci_finish_find, sci_gettime): Added Dreamcast implementation of
	these functions.

2002-10-12  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/include/int_hashmap.h: Added int -> int hashmap interface and
	implementation

	* src/engine/kfile.c (k*Game): Disabled savegames

	* FreeSCI 0.6 branch, code-name Glutton, forked off the main branch

2002-10-10  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/gfx/drivers/dc_driver.c, src/gfx/drivers/gfx_drivers.c: Initial
	revision of Dreamcast framebuffer gfx driver.

2002-10-06  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/scriptdebug.c (c_viewinfo): Changed viewinfo to
	include graphics with its cells when possible
	(c_disasm): Extended function to allow listing bytecode along with
	data

	* src/gfx/gfx_console.c (con_scroll): Fixed misc. bus in scrolling
	the debug console

2002-10-05  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/gfx_console.c: Added initial graphical console

2002-10-03  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/drivers/directfb_driver.c (scidfb_xlate_key): Added support
	for shifted nuber keys

	* src/include/uinput.h: Made sci_toupper() public (also in
	kevent.c)

2002-10-01  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/sci_widgets.c (sciw_new_window): Removed alpha blending
	effect because it did not work quite as intended (text background was
	solid in most drivers, otherwise, alpha would have been added
	cumulatively)

	* src/tools/scipack.c: Initial, experimental SCI resource packer
	program

	* src/engine/game.c (suggested_script): Added support for vocab.996
	not being present

	* src/scicore/resource.c (scir_new_resource_manager): Support running
	without resources

	* src/include/resource.h (SCI_INVALID_FD): Introduced SCI_INVALID_FD
	as a global #define for an invalid file descriptor

	* src/scicore/tools.c (sci_open): Fixed to return SCI_INVALID_FD
	on error

2002-09-28  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/sci_widgets.c (sciw_new_window): Made window title bar
	slightly transparent

	* src/gfx/gfx_tools.c (gfx_clone_pixmap): Implemented pixmap
	cloning

	* src/include/gfx_system.h: Added data_size to ease implementation
	of pixmap cloning

	* src/gfx/drivers/directfb_driver.c: Fixed transparency values not
	being passed, moved back to two-layer model to take advantage of
	double-buffering, fixed line scale bug

2002-09-24  Solomon Peachy <pizza@shaftnet.org>

	* src/sound/pcmout.c, src/sound/midi_adlibemu.c:   Fix a buffer
	overflow when NOT using the adlib emulator but with PCM enabled.
	* src/sound/sound.c:  Fix for missing midi patch.XXX file.
	* src/sound/thread_ss_sdl.c:  Experimental fix for the high cpu
        usage problem.
	
	* src/sound/soundserver.h, src/sound/thread_ss_sdl.c, 
	  src/sound/polled_ss.c, src/sound/soundserver.c,
	  src/sound/sound.c:   Lock sound resources when we're using 'em.

2002-09-23  Solomon Peachy <pizza@shaftnet.org>

	* src/include/games.h:  Added several IDs for QFG2 and KQ1e in
          honor of SCI01 support.

2002-09-23  Alexander R Angas  <wgd@internode.on.net>

	* src/sound/buff_ss.c:
	* src/sound/buff_ss_win32.c:
	* src/sound/midiout_win32_stream.c: Removed files.

	* src/sound/midiout.c:
	* src/sound/sound.c: Updated to reflect above changes.

	* src/win32/freesci.def:
	* src/win32/fsci_dll.dsp:
	* src/config.c: Fixed Win32 build.

2002-09-22  Solomon Peachy <pizza@shaftnet.org>

	* src/sound/pcmout_alsa.c:  Remove unneeded variables.
	* src/sound/midi-mt32.c:  Fix the use of free()ed memory.
	* src/sound/thread_ss_sdl.c:  Removed some redundant code.

2002-09-22  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/drivers/directfb_driver.c: Initial revision of
	the libdirectfb driver.

2002-09-22  Solomon Peachy <pizza@shaftnet.org>

	* src/include/soundserver.h, src/sound/Makefile.am,
	  src/sound/sfx_save.*, src/sound/sound.c,
	  src/sound/thread_ss_sdl.c:  New threaded sound server.

2002-09-22  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/ksound.c (kDoSound): Added stubs for SCI01.
	* src/engine/* (kernel functions): Removed calls to
	CHECK_THIS_KERNEL FUNCTION.

2002-09-22  Solomon Peachy <pizza@shaftnet.org>

	* src/sound/pcmout_*, src/config.l, src/main.c,
        src/include/sci_conf.h, src/include/pcmout.h: Add a run-time
          toggle to operate in stereo or mono.
	* src/sound/midi_adlibemu.c:  Add the guts of the
          pcmout-timer-driven note playback loop.  #ifdef'ed out.

2002-09-16  Solomon Peachy <pizza@shaftnet.org>

	* AUTHORS, src/engine/kmenu.c:   Add my name for blame
          assignment purposes.
	* README:  Minor documentation update.
	* src/sound/pcmout.h:  Return a "full" buffer length even if we
	  don't have the adlib emulator running.  Fixes high CPU
	  utilization in the PCM subsystem.
	* src/sound/fmopl.c, src/sound/fmopl.h:  Write directly to the
	  interleaved output buffer.
	* src/sound/midi_adlibemu.c:  Mangled to use the Sierra SCI
	  volume tables, and implemented Pitch Bend, disabled for now.

2002-09-16  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/include/resource.h (IS_VALID_FD): Macro added for portability.
	  It's use is to check for an error return code of creat(), open() and
	  sci_open().
	* src/main.c, src/engine/kfile.c, src/engine/savegame.cfsml,
	  src/scicore/resource.c, src/scicore/resource_map.c,
	  src/scicore/resource_patch.c, src/scicore/tools.c,
	  src/sfx/midiout_unixraw.c, src/sound/midi_adlib.c,
	  src/sound/midiout_ossopl3.c, src/sound/midiout_ossseq.c,
	  src/sound/midiout_unixraw.c, src/sound/polled_ss.c: Made use of the
	  IS_VALID_FD() macro and fixed some minor bugs in error handling.

2002-09-15  Alexander R Angas  <wgd@internode.on.net>

	* src/include/win32/sci_win32.h: New file (contains sleep() and
	  other Win32 macros).

	* src/sound/pcmout.c: Added NO_PCMOUT compiler directive if ever required.

	* src/gfx/drivers/ggi_driver.c: Removed unnecessary if statement.

	* src/engine/kmovement.c:
	* src/engine/kstring.c:
	* src/engine/scriptdebug.c:
	* src/engine/vm.c:
	* src/gfx/operations.c:
	* src/gfx/resource/sci_pic_0.c:
	* src/scicore/tools.c:
	* src/scicore/vocab_debug.c:
	  Compiler warning fixes on Win32.

	* src/include/engine.h:
	* src/scicore/tools.c:
	* src/sound/buff_ss.c:
	* src/sound/buff_ss_win32.c:
	* src/sound/event_ss_win32.c:
	* src/sound/midiout_win32mci.c:
	* src/sound/polled_ss_sdl.c:
	* src/win32/fsci_dll.dsp:
	* src/win32/sciv.dsp:
	  Updates for move of Win32 sleep().

	* src/gfx/drivers/sdl_driver.c:
	* src/include/kernel.h:
	* src/include/gfx_driver.h:
	* src/include/gfx_operations.h:
	* src/include/gfx_tools.h:
	* src/include/scitypes.h:
	* src/include/script.h:
	  Minor documentation updates.

2002-09-15  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* src/include/beos/.cvsignore, desktop/.cvsignore,
	  conf/.cvsignore: Files added to repository
	* .cvsignore: Added stamp-h1 and autom4te.cache

2002-09-15  Walter van Niftrik  <w.f.b.w.v.niftrik@stud.tue.nl>

	* aclocal.m4, config.h.in, configure: Files removed from repository.
	* reconf: Removed first call to autoheader.
	* .cvsignore: Added config.h.in.

2002-09-14  Solomon Peachy <pizza@shaftnet.org>
	* src/sound/pcmout_oss.c:  Added an OSS pcmout driver.
	* src/sound/pcmout.c, src/sound/pcmout_sdl.c,
	  src/sound/pcmout_alsa.c, src/sound/pcmout_al.c,
	  src/sound/fmopl.h, src/sound/midi_adlibemu.h,
	  src/include/pcmout.h:  Make the pcm system use SIGNED buffers
	to match the output type.  Also use the native endian for output.

2002-09-12  Solomon Peachy <pizza@shaftnet.org>

	* Fixed a pile of compiler warnings in the sound subsystem.
	  src/sound/fmopl.h, src/sound/pcmout_alsa.c,
	  src/sound/pcmout_sdl.c, src/sound/polled_ss.c,
	  src/sound/polled_ss_unix.c, src/sound/polled_ss_sdl.c,
	  src/sound/midi_adlib.c, src/sound/midi_mt32gm.c,
	  src/sound/song_iterator.c, src/sound/midiout_ossopl3.c,
	  src/sound/midiout_ossseq.c
	* src/sound/pcmout_alsa.c: Hopefully fixed the alsa sound driver
	  termination.

2002-09-09  Lars Skovlund  <lskovlun@image.dk>

	* Fixed the implementation of the priority formula.
	* src/engine/game.c (_reset_graphics_input): CoordPri() now also works
	  before DrawPic() is called for the first time.
	* src/engine/game.c (kFGets): Rolled back the file API changes from 07/22.

2002-09-05  Solomon Peachy <pizza@shaftnet.org>
	* src/sound/pcmout_alsa.c:    Trash the async callback model as
	it didn't work correctly with X11.  (SIGIO collisions)  Switch
	instead to a pthreads-oriented backend.  works now!

2002-09-04  Solomon Peachy <pizza@shaftnet.org>

	* src/sound/fmopl.h, src/sound/fmopl.c,
	  src/sound/midi_adlibemu.c:  Bring the OPL2 emulator up to
        v0.60 as contained in the VDMSound sources.
	* src/sound/pcmout_sdl.c:  variable renaming for clarity

2002-08-28  Alexander R Angas  <wgd@internode.on.net>

	* src/engine/game.c: Fix for Win32 SDK detection.

2002-08-04  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/include/vm.h: add vm_handle_fatal_error() for semi-graceful
	error recovery where longjmp is available

	* src/include/versions.h (SCI_VERSION_LTU_PRIORITY_14_ZONES):
	Added suppport for old SCI interpretation of the control map scale

	* doc/scidocbook-html.dsl ($html-body-start$): Added. This formats
	our online docs.

2002-08-02  Solomon Peachy <pizza@shaftnet.org>

	* src/sound/fmopl.c:  Fixes for 12-voice adlib mode.

2002-08-01  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/include/kernel.h, src/engine/kgraphics.c (_find_view_priority):
	Never yield more than 14.

2002-07-30  Alexander R Angas  <wgd@internode.on.net>

	* src/engine/game.c: Win32 SDK checking should work now.

	* src/win32/freesci.def: Win32 link fix.

2002-07-26  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kmovement.c (kDoBresen, initialize_bresen):
	Re-disabled the earlier changes as they broke ego's cycler and
	mover.

	* src/gfx/resource/sci_pic_0.c (_gfxr_fill): Used the original
	drawable value for the call to _gfxr_auxbuf_fill(), since this
	fixed PQ2 screen 15's control map.

	* src/engine/kmovement.c (kDoBresen, initialize_bresen):
	Re-enabled b_movCnt handlers for HQ1 ogre, since I couldn't find
	out where they used to cause problems (if any)

2002-07-23  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/vm.c (script_instantiate): Explicit treatment for
	"terminal" synonym entries

2002-07-22  Christoph Reichenbach  <jameson@linuxgames.com>

	* doc/sci-kernel.sgml: Docs updated wrt FGets(), as pointed out by
	Brian Provinciano

	* src/engine/kfile.c (kFGets): Now returns number of bytes read
	(determined by strlen)

2002-07-14  Lars Skovlund  <lskovlun@image.dk>

	* src/gfx/font.c (gfxr_font_calculate_size): Removed my own
	warning from yesterday (Oops! :-)

2002-07-13  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/said.y: Fixed compiler errors by adding semicolons at
	the end of each rule
	* src/engine/kgraphics.c (kSetCursor): Now handles calls with one
	parameter correctly.
	* src/engine/klists.c (kAddAfter): Removed a warning.
	* src/gfx/font.c (gfxr_font_calculate_size): Changed fragments_nr
	heuristic slightly.

2002-07-02  Solomon Peachy <pizza@shaftnet.org>

	* src/sound/fmopl.c, src/sound/fmopl.h:   Significant update
	to the FM emulator code.  Tracked from the adplug codebase.

2002-06-18  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kernel.c (kHaveMouse): Bugfix: Correctly handle
	mice not being available

2002-06-09  Christoph Reichenbach  <jameson@linuxgames.com>

	* tools.c (sci_gettime): Don't use extra call to time() to get
	the current system time

	* src/gfx/drivers/xlib_driver.c (x_get_event): Use XPending() and
	XNextEvent() to prevent X11 event queue from clogging up

2002-06-06  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/savegame.cfsml (read_PTN): Got rid of sscanf()
	for portability

	* src/scicore/tools.c (memtest): Got rid of vsprintf (which was
	causing problems wrt portability)

	* src/engine/kstring.c (kFormat): Added support for '-' and '0'
	format string prefixes

2002-05-31  Lars Skovlund  <lskovlun@image.dk>

	* sfx/enginf/kstring.c (kFormat): Fixed bug which caused literal %
	to be printed incorrectly.

2002-05-15  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/font.c (gfxr_draw_font): Signedness bug fix in strings:
	correctly derive characted sizes

2002-05-07  Lars Skovlund  <lskovlun@image.dk>

	* src/scicore/resource.c (scir_unlock_resource): Fixed a potential
	segfault.

2002-04-25  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/savegame.cfsml: Made savegame support backwards
	compatible (sorry!)
	* src/engine/scriptdebug.c: The statusbar command now redraws properly.

2002-04-23  Lars Skovlund  <lskovlun@image.dk>

	* Added support for colored title bars, controllable via a kernel call
	DrawStatus(text, fgcolor, bgcolor). A debugger command, statusbar,
	has also been added.

2002-04-08  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kgraphics.c (set_base): Removed obsolete debug messages

	* src/engine/kstring.c (kFormat): Interpret "%x"

	* src/gfx/operations.c (gfxop_get_event): Added typecast to 'char'
	for values retreived from drivers to work around problems with
	drivers reporting unexpected values

2002-04-02  Lars Skovlund  <lskovlun@image.dk>

	* SCI01: Implicitly call moveDone when a Bresenham operation is
	completed.
	* src/include/versions.h: Fixed minor semantic error in the
	description of one version constant.

2002-03-26  Lars Skovlund  <lskovlun@image.dk>

	* Fixed a minor bug in picdrawing related to SCI01

2002-03-21  Solomon Peachy <pizza@shaftnet.org>
	* src/incluce/version.h
	* src/main.c:  Add in automagic game interpreter
        version detection.

2002-03-17  Solomon Peachy <pizza@shaftnet.org>
	* src/sound/sound.c:  Backed out previous special-case for
        ARTHUR.  I think the game is simply buggy.
	* src/sound/pcmout_sdl.c
	* src/sound/pcmout.c
	* src/sound/midi_adlibemu.c: Fix the mess of samples vs bytes
        vs frames -- now all PCM operations work in terms of 'frames',
        and that is fixed at 16-bit stereo. (ie 4bytes)
	* src/include/pcmout.h
	  src/sound/Makefile.am
	  src/sound/pcmout_alsa.c:  Added an ALSA PCM output driver.

	* src/sound/sound.c
	* src/include/version.h:  If the SCI version is older than
        0.000.572 (LSL3) stop all playing songs when we initialize a new
        one.

2002-03-17  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kfile.c (kGetCWD): Used more portable cwd getter
	Fixed incorrect buffer size

	* src/sound/polled_ss_unix.c (sound_unix_get_data): Handle failed
	select()

2002-03-17  Alexander R Angas <wgd@internode.on.net>

	* src/sound/event_ss.c: Fixed an error message that should not appear.

	* src/sound/event_ss_win32.c: Very minor optimisation tweaks.

	* src/sound/midiout_win32mci_stream.c: Code clean ups and preliminary
	support for long MIDI messages.

	* src/engine/game.c: Attempt to detect Win32 Platform SDK version and
	to print information message regardless.

	* src/win32/freesci.def: Added soundserver_dead.

2002-03-16  Solomon Peachy <pizza@shaftnet.org>
	* src/sound/midi_adlibemu.c
	  src/sound/pcmout_sdl.c
	  src/include/pcmout.h:  Now we support the adlib in stereo!

2002-03-16  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/sound/polled_ss_unix.c (sound_unix_get_data): Fixed treatment
	of trivial get_data()s
	(sound_unix_init): Handle failure to init PCM device gracefully

	* src/include/resource.h: Define _Win32 on Win32 to work around
	a problem with some versions of flex

2002-03-16  Solomon Peachy <pizza@shaftnet.org>
       * src/sound/sound.c:  Pass along CC 0x7b (AllStop)
       * src/sound/midi_adlibemu.c:  Handle the AllStop CC, and also fix
       a memory corruption/crash when ADLIB_VOICES was set to 12.

2002-03-15  Solomon Peachy <pizza@shaftnet.org>
        * src/sound/sound.c
          src/main.c:  Set a default master volume as older games do not
        explicitly set the volume on startup.
	* src/sound/soundserver.c:  Fixed a bogus volume set on game
        restores.  Also removed a workaround for the symptom

2002-03-12  Alexander R Angas <wgd@internode.on.net>

	* src/scicore/tools.c: Fixed 100% CPU usage on Win32.

2002-03-10  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/config.l: Lexer now accepts quoted arguments for config options

2002-03-09  Christoph Reichenbach  <jameson@linuxgames.com>

	* configure.in (HAVE_DMEDIA_MIDI_H): Applied IRIX MIDI patch from Rainer
	Canavan

	* src/include/sciresource.h: signed -> unsigned fix

2002-03-09  Alexander R Angas <wgd@internode.on.net>

	* src/sound/buff_ss.c:
	* src/sound/midiout_win32mci_stream.c:
	* src/include/sound.h: Added double-buffering and ability to play more
	than one song to MCI streaming.

	* ./README.Win32: Added some information about the above server/driver.

	* src/win32/sciunpack.dsp: Updated compiler options to match other
	projects, however does not compile.

2002-03-08  Rainer Canavan <rainer@canavan.de>
	* src/sound/Makefile.am
        * src/sound/midiout.c
        * src/sound/midiout_irixmd.c:  Added a driver for the SCI dmedia
        MIDI subsystem.  Needs integration into the autoconf structure.

2002-03-07  Solomon Peachy <pizza@shaftnet.org>
	* src/gfx/driver/xlib_driver.c:  Fix for MIT_SHM prematurely
        detaching segments.

2002-03-06  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/scriptdebug.c: Renamed some variables to prevent clashes
	with IRIX' libc

2002-02-27  Alexander R Angas <wgd@internode.on.net>

	* src/sound/buff_ss.c:
	* src/sound/midiout_win32mci_stream.c:
	* src/sound/soundserver.c: Minor fixes to Win32 MCI streaming driver
	so that it now plays the first song in some games.

2002-02-19  Alexander R Angas <wgd@internode.on.net>

	* src/config.c:
	* src/win32/freesci.def: Fixes to Win32 build.

	* src/sound/buff_ss.c: (new)
	* src/sound/buff_ss_win32.c: (new)
	* src/sound/midiout_win32mci_stream.c: (new)
	* src/include/midiout.h:
	* src/include/sound.h:
	* src/sound/event_ss.c:
	* src/sound/midiout.c:
	* src/sound/sound.c:
	* src/sound/soundserver.c:
	* src/win32/fsci_dll.dsp: Added prototype Win32 MCI stream driver and
	sound server to work with it.

2002-02-13  Solomon Peachy <pizza@shaftnet.org>

	* README, src/config.c, src/config.l, src/main.c,
          src/include/pcmout.h, src/include/sci_conf.h,
	  src/sound/pcmout.c, src/sound/pcmout_sdl.c:
        Sample rate is now configurable.  See README.

2002-02-12  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/main.c (init_gfx): Don't ignore -c when -x or -y isn't used

2002-02-04  Max Horn  <max@quendi.de>

	* src/scicore/tools.c (sci_get_homedir): Fixed compilation on Mac OS X
	when X-Window support is disabled

2002-02-03  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kernel.c (kHaveMouse): Return -1 if we have a mouse

2002-02-01  Christoph Reichenbach  <jameson@linuxgames.com>

	* configure.in: Expect MacOS X on Darwin

	* src/Makefile.am (CFLAGS): Use SDL SFLAGS

	* src/gfx/drivers/xlib_driver.c (xlib_init_specific): Check for slightly
	smaller depths when not checking for 8bpp mode (to allow 15bpp etc.)

2002-02-01  Lars Skovlund  <lskovlun@image.dk>

	* src/main.c: Fixed the new room change parameter. Oops.

2002-01-31  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/scicore/resource_map.c (sci0_read_resource_map): More informative
	messages

2002-01-30  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/scicore/resource.c (scir_new_resource_manager): Abort on error
	if resource.map was not found

2002-01-18  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/scicore/modules.c: Disabled completely

	* src/engine/kernel.c: undefd IsObject and StrCpy for OS X

2002-01-18  Alexander R Angas <wgd@internode.on.net>

	* src/sound/pcmout.c: Fixed Win32 crash on exit.

	* src/sound/event_ss.c:
	* src/sound/soundserver.c: Moved do_sound() to soundserver.c.

	* src/sound/fmopl.c: Disabled most compilation warnings.

	* src/include/midi_device.h:
	* src/include/midiout.h:
	* src/include/soundserver.h:
	* src/sound/midi_adlibemu.c:
	* src/sound/midi_device.c:
	* src/sound/midi_mt32.c:
	* src/sound/midi_mt32gm.c:
	* src/sound/midiout.c:
	* src/sound/midiout_alsaraw.c:
	* src/sound/midiout_ossopl3.c:
	* src/sound/midiout_ossseq.c:
	* src/sound/midiout_unixraw.c:
	* src/sound/midiout_win32mci.c:
	* src/sound/polled_ss.c:
	* src/sound/sound.c: Altered API to allow more data to flow down to
	the MIDI driver.

	* src/include/sound.h: Added running status #define.

	* src/win32/fsci_dll.dsp:
	* src/win32/sciunpack.dsp:
	* src/win32/sciv.dsp: Put HAVE_MEMCHR in all configurations.

2002-01-15  Solomon Peachy <pizza@shaftnet.org>
	* src/sound/midi_mt32gm.c:  Added aftertouch to midi event list.
 	* src/sound/midi_adlib.c, src/sound/midi_adlibemu.c:  Master
        volume.

2002-01-14  Solomon Peachy <pizza@shaftnet.org>
	* src/include/midi_device.h, src/sound/fmopl.c,
	  src/sound/midi_adlibemu.c:  12-channel adlib emulation!
	* src/sound/midi_adlibemu.c, src/sound/midi_adlib.c:
	Turned off the rhythm channel.
	* src/include/pcmout.h:  Bumped up the output buffer size a bit.

2002-01-14  Solomon Peachy <pizza@shaftnet.org>
        * src/include/midi_device.h, src/sound/fmopl.c,
          src/sound/fmopl.h, src/sound/midi_device.c: Misc fixes.
        * src/sound/polled_ss_unix.c:  Move initialization of pcm and
        midi out to after the fork().
        * src/sound/sound.c:  Fix the initialization of song flags.

2002-01-14 Lars Skovlund <lskovlun@image.dk>

	* Now reports room numbers on the game console. This is controllable
	using a debuglog flag and a command line switch.

2002-01-13  Lars Skovlund  <lskovlun@image.dk>

	* src/scicore/console.c (open_console_file): Now screams if the
	open fails.
	* src/tools/scidisasm.c: Fixed a segfault
	* src/engine/kgraphics.c (_k_prepare_view_list): Made sure that
	the priority is only recalculated when we have to.

2002-02-13  Solomon Peachy <pizza@shaftnet.org>
	* src/include/pcmout.h, src/sound/pcmout.c,
          src/sound/polled_ss_unix.c, src/sound/polled_ss_sdl.c,
	  src/sound/polled_ss_win32.c, src/main.c, src/config.c,
          src/config.l, src/sound/Makefile.am, src/sound/pcmout_sdl.c:
        Added the logistical framework for a pcm-out subsystem.
	* src/sound/Makefile.am, src/sound/midi_adlibemu.c,
	  src/sound/midi_adlib.c, src/sound/midi_device.c,
	  src/sound/fmopl.c, src/sound/fmopl.h:  Added an adlib emulator
         midi device.  Still a work in progress.

2002-01-13  Alexander R Angas  <wgd@internode.on.net>

	* src/engine/scriptdebug.c:
	* src/include/resource.h:
	* src/scicore/script.c: Fixes to warnings fixes.

	* src/gfx/operations.c:
	* src/engine/vm.c: Warnings fixes.

	* src/sound/event_ss_win32.c: Attempt to catch unrecognised sound
	signals.

	* src/sound/sfx_save.cfsml: Minor clean ups.

2002-01-11  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/sound/midiout_alsaraw.c: Better detection for ALSA 0.9

2002-01-10  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kgraphics.c (kAddToPic): Respect control value

	* configure.in: Changed version number to 0.3.3-devel

	* src/engine/kgraphics.c (_k_update_signals_in_view_list): Changed
	back to 0.3.3 behaviour.

2002-02-09  Solomon Peachy <pizza@shaftnet.org>
	* src/sound/midi_adlib.c:  Fixed a VERY stupid bug.  Should
        actually produce decent-sounding output now!

2002-01-09  Alexander R Angas  <wgd@internode.on.net>

	* src/sound/event_ss.c: Replaced exit on NULL MIDI commands with fixme
	warning.

2002-01-06  Alexander R Angas  <wgd@internode.on.net>

	* src/engine/kgraphics.c:
	* src/engine/klists.c:
	* src/engine/kscripts.c:
	* src/engine/scriptdebug.c
	* src/engine/vm.c:
	* src/gfx/menubar.c:
	* src/gfx/resource/sci_pic_0.c: Fixes to warnings fixes.

	* src/gfx/drivers/sdl_driver.c:
	* src/sound/midi_mt32.c:
	* src/main.c:
	* src/win32/fsci_dll.dsp: Warnings fixes.

	* src/win32/sciv.dsp: Corrected version number.

2002-01-04  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/main.c (main): Extended Copyright to 2002

	* src/gfx/operations.c (_gfxop_full_pointer_refresh): Update pointer
	position even if no pointer is visible to the operational layer

	* src/gfx/gfx_test.c: Small API fixes to get it to compile again

	* src/include/resource.h (BREAKPOINT): Changed 'call_pal PAL_bpt' on Alpha
	to 'call_pal 0x80.

	* src/engine/kgraphics.c
	* src/engine/kmovement.c: Fixed some typecasts

2002-01-04  Alexander R Angas  <wgd@internode.on.net>

	* src/sound/event_ss.c:
	* src/sound/event_ss_win32.c: Fixed do_sound() not being called due to
	missed use of emap[].

2002-01-02  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/include/resource.h (BREAKPOINT): Changed 'bpt' on Alpha
	to 'call_pal PAL_bpt'.

	* src/engine/kgraphics.c (draw_to_control_map): Treat nsRect of
	things drawn to the control map as mac-like rectangle

	* src/include/resource.h (BREAKPOINT): Changed 'bpt' on Alpha
	to 'call_pal bpt'.

2002-01-02  Alexander R Angas  <wgd@internode.on.net>

	* src/gfx/drivers/sdl_driver.c: Fixed calling Sleep() twice under
	Win32.

	* src/include/engine.h: Explicitly declared millisecond sleep
	resolution for Win32 (sleep).

	* src/include/resource.h:
	* src/sound/midiout_win32mci.c:
	* src/sound/polled_ss_sdl.c:
	* src/scicore/tools.c: Altered sleep code to match above.

	* src/sound/event_ss.c: Clean-ups and warnings fixes.

	* src/sound/polled_ss.c: Included missed fixes to match 1 Nov polled
	ss.

	* src/win32/fsci_dll.dsp:
	* src/win32/sciv.dsp: Proper debugger support under Debug build,
	fixes to Purify build, warnings removals.

2002-01-02  Alexander R Angas  <wgd@internode.on.net>

	* src/main.c:
	* src/engine/kgraphics.c:
	* src/engine/klists.c:
	* src/engine/kmovement.c:
	* src/engine/kscripts.c:
	* src/engine/savegame.c:
	* src/engine/savegame.cfsml:
	* src/engine/scriptdebug.c
	* src/engine/vm.c:
	* src/gfx/menubar.c:
	* src/gfx/widgets.c:
	* src/gfx/resource/sci_pic_0.c:
	* src/include/soundserver.h:
	* src/scicore/resource.c:
	* src/sound/oldmidi.c:
	* src/include/win32/usleep.h: Warnings fixes.

2001-12-30  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/main.c (parse_arguments): Changed no_argument to
	required_argument for --scale-y and --color-depth

	* src/gfx/resource/sci_pic_0.c (_gfxr_plot_aux_pattern): Kicked out
	some complete and utter crap that made the code look like I was drunk
	when I wrote it (OK, some people drink intentionally to dumb down for
	coding, but this doesn't belong into a ChangeLog)

2001-12-29  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kgraphics.c (nsrect_clip): Clipping nsRect: Use priority
	band start +1

	* src/engine/kmovement.c (kDoBresen): Improved finish condition

2001-12-28  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kfile.c (kSaveGame): Correctly search for unused
	savegame slots when instructed to store the game state

	* src/engine/scriptdebug.c (c_sci_version): Added sci_version command
	to debugger

	* src/scicore/resource_patch.c (sci0_read_resource_patches): After
	creating additional entry for patch file, write to the entry, and not
	right behind it

	* src/gfx/widgets.c (gfxw_new_text): Use text flags for calculating
	text size

	* src/include/gfx_operations.h:
	* src/gfx/operations.c (gfxop_draw_cel_static_clipped): Added function
	to allow clipped drawing for static views

	* src/gfx/widgets.c (_gfxwop_pic_view_draw): Use
	gfxop_draw_cel_static_clipped() to draw picviews clipped against the
	current port

	* src/engine/savegame.cfsml (gamestate_restore): Fixed support for
	pre-save_dir_copy_buf savegames by testing for this case and allocating
	the memory automagically

2001-12-27  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/include/kernel.h: Priority band algorithms now support 14 (rather
	than 13) bands
	* src/engine/kgraphics.c (kDrawPic): priority_last now 190
	Net result: The algorithm actually matches observations from Sierra SCI

2001-12-26  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kgraphics.c (_k_update_signals_in_view_list): Delete stop-
	updatification flag upon position change

2001-12-26  Alexander R Angas  <wgd@internode.on.net>

	* src/sound/event_ss.c: Minor (potential) bug fixes.

	* src/sound/polled_ss.c:
	* src/sound/soundserver.c: Revised polled sound server to match
	behaviour from 1 November. Minor bug fixes. #define OUTPUT_SONG_CHANGES
	for debugging info (and #undef DEBUG_SOUND_SERVER).

2001-12-23  Alexander R Angas  <wgd@internode.on.net>

	* src/sound/event_ss.c:
	* src/sound/polled_ss.c: Suspends sound on song decoding error (so can
	play Hoyle).

	* src/sound/soundserver.c (restore_sound_state): Now overrides master
	volume with 100 if it restores as 0.

	* src/win32/freesci.def: Added script_set_gamestate_save_dir.

2001-12-23  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/sound/polled_ss.c (sci0_polled_ss): Re-implemented end-of song
	handling (Reference: CVS from 2 months ago)

2001-12-22  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/include/vm.h: Renamed del back to delete; don't
	add it if compiling with __cplusplus and assume that
	it's not really needed there

2001-12-20  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kgraphics.c (kCanBeHere): Collision checks: Only check
	up to brRight-1 and brBottom-1 (-> Bob Heitman).
	(kCanBeHere): Only collide against the brRect of the target views
	(_k_prepare_view_list): Now add the clipped nsRects of stop-updated
	views to the control map

2001-12-22  Alexander R Angas  <wgd@internode.on.net>

	* src/sound/event_ss.c:
	* src/sound/polled_ss.c:
	* src/sound/soundserver.c:
	* src/include/soundserver.h: Added save_sound_state() and
	restore_sound_state().

	* src/sound/event_ss_win32.c: Clean up.

	* src/sound/midi_device.c: Fixed tabulation.

2001-12-21  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/sound/polled_ss_unix.c (_sound_server_suspension_handler):
	Added signal handler to handle SIGTSTP and SIGCONT in order not to kill
	the sound server upon ^Z

	* src/main.c (main): Set the save_dir to the CWD _after_ changing into
	the game-specific subdirectory

	* src/engine/savegame.cfsml (gamestate_restore): Current interpreter
	version now overrides savegame interpreter version
	(gamestate_restore): Take the current save path from the current
	one when restoring

	* src/include/kernel.h:
	* src/engine/kgraphics.c (_k_prepare_view_list): Introduced
	internal FREESCI_STOPUPD flag to keep track of views that were stop-
	updated.
	(kCanBeHere): Test against stop-updated dynviews

2001-12-21  Christoph Reichenbach  <jameson@rei>

	* src/engine/kgraphics.c (kCanBeHere): Always collide against brRect
	(_k_prepare_view_list): Draw pics with STOP_UPDATE set to the control
	map
	(kCanBeHere): No longer check against the dynviews, all views we should
	check against are passed as parameters explicitly.

2001-12-20  Alexander R Angas  <wgd@internode.on.net>

	* src/sound/event_ss.c:
	* src/sound/polled_ss.c:
	* src/sound/sfx_save.c:
	* src/sound/sfx_save.cfsml:
	* src/sound/sound.c:
	* src/sound/soundserver.c:
	* src/include/sound.h:
	* src/include/soundserver.h: Very minor fixes. Removed
	add_note_playing(). Added more debugging information when
	DEBUG_SOUND_SERVER is defined.

2001-12-18  Alexander R Angas  <wgd@internode.on.net>

	* src/sound/event_ss.c: Fixed end of track problems.

	* src/sound/polled_ss.c: Now uses stop_all() from soundserver.c.

2001-12-17  Alexander R Angas  <wgd@internode.on.net>

	* src/sound/event_ss.c:
	* src/sound/event_ss_win32.c: Removed excess mallocs.

	* src/fsci_dll.dsp:
	* src/sciv.dsp: Fixed to work properly under Quantify.

2001-12-16  Alexander R Angas  <wgd@internode.on.net>

	* src/sound/event_ss.c:
	* src/sound/event_ss_win32.c: Added sound save and restore.

	* src/sound/sfx_save.c:
	* src/sound/sfx_save.cfsml: New save game version that works on both
	types of sound servers. Still reads old saved games. No crashes yet.
	Problems when restoring on occasions.

	* src/sound/sound.c: Added song_lib_count().

	* src/sound/soundserver.c: Clean ups, rearrangements, minor bug fixes.

	* src/include/soundserver.h: Fixed some variable types and added some
	function declarations.

	* src/sound/polled_ss.c: Now uses functions defined in soundserver.c
	for most sound commands.

	* src/sound/polled_ss_win32.c: Minor synchronisation fixes.

	* src/sound/oldmidi.c (map_MIDI_instruments): Commented out creation of
	freesci_instr log file which does nothing.

	* src/scicore/tools.c (sci_find_first): Commented out ENOENT error
	except on debug builds.

	* src/include/resource.h: Fixed type conversion warning.

	* src/config.c:
	* src/config.l: Added SATISFY_PURIFY to fix UMC.

	* src/win32/fsci_dll.dsp:
	* src/win32/sciv.dsp: Added 'Purify' configuration. Removed HAVE_DDRAW
	from Release builds.

	* src/scicore/sci_memory.c: Fixed error that occurred with new Purify
	configuration.

	* ./README.Win32: Added info on above configuration and sound problems.

2001-12-15  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/sound/polled_ss_unix.c (_sound_server_oops_handler): Print to
	stderr on error

2001-12-13  Alexander R Angas  <wgd@internode.on.net>

	* src/include/gfx_options.h:
	* src/include/sci_conf.h: Fixed types and added note. Fixes crash with
	reverse_stereo in config file.

	* src/config.l:
	* src/config.c: Recreated with correct filename specified in #line
	for easier debugging.

2001-12-12  Alexander R Angas  <wgd@internode.on.net>

	* src/include/sci_memory.h:
	* src/scicore/sci_memory.c: Now checks for invalid pointers on memdup,
	strdup, strndup, and free.

	* src/main.c: Added a bit of commenting.

2001-12-12  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/main.c (main): Made 'free' conditional, could be NULL

	* src/include/soundserver.h: signified sound_cue to fix warnings

2001-12-12  Alexander R Angas  <wgd@internode.on.net>

	* src/sound/polled_ss.c: Fixed wrong MIDI patches being used on
	restore.

	* ./README:
	* ./README.Unix:
	* ./README.Win32: Moved platform-specific stuff to corresponding
	README file.

2001-12-11  Alexander R Angas  <wgd@internode.on.net>

	* src/engine/cfsml.pl: Added more error messages.

	* src/include/resource.h:
	* src/engine/savegame.cfsml:
	* src/engine/savegame.c:
	* src/sound/sfx_save.cfsml:
	* src/sound/sfx_save.c: Now processes text files in text mode.

	* src/sound/polled_ss.c:
	* src/sound/soundserver.c:
	* src/include/soundserver.h: Made polled sound server use sound server
	state struct. soundsrv_save_state() and soundsrv_restore_state() now
	take this struct as a parameter.

	* src/win32/fsci_dll.dsp: Added resource_patch.c to project.

2001-12-10  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/scicore/resource_patch.c: Added support for resource patches

2001-12-09  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/sound/sound.c (song_new): Made the memset() dependant on
	SATISFY_PURIFY to provoke warnings on reads on uninitialized members.

	* THANKS
	* src/engine/kmenu.c: Added Robey Pointer

2001-12-08  Alexander R Angas  <wgd@internode.on.net>

	* src/main.c (main): Fixed various memory leaks occurring with command
	line option selection.

	* src/include/engine.h:
	* src/engine/game.c: Added other_libs_exit() so libraries can clean up
	at the end of the program (for want of a better place to put it).

	* src/sound/polled_ss.c:
	* src/include/soundserver.h: Uses MIDI_CHANNELS #define with
	playing_notes. Improved error messages.

	* src/sound/sound.c (song_new): Made SATISFY_PURIFY permanent code.

	* src/sound/soundserver.c: Improved error messages. Fixed
	change_song(NULL) crash.

	* src/sound/event_ss.c: Dumps song if reaches end of song prematurely.

	* src/sound/event_ss_win32.c: Improved error messages.

	* src/win32/freesci.def: Added other_libs_exit.

	* src/win32/sciv.dsp:
	* src/win32/fsci_dll.dsp: Generates map file on debug builds for
	Purify.

2001-12-07  Alexander R Angas  <wgd@internode.on.net>

	* src/sound/sound.c:
	* src/include/sound.h: Numbered #defines correctly.

	* src/sound/event_ss.c:
	* src/include/win32/messages.h: Added SOUND_COMMAND_DO_SOUND for time
	keeping and SOUND_COMMAND_REVERSE_STEREO messages.

	* src/sound/event_ss_win32.c: Now uses callback functions for timer
	by default. (Define NO_CALLBACKS for previous method.) Adds support
	for reverse stereo.

	* ./README.Win32: Added note regarding MIDI device selection.

	* src/win32/fsci_dll.dsp: Added polled_ss_unix.c.

2001-12-03  Alexander R Angas  <wgd@internode.on.net>

	* src/main.c (main): Removed call to register_sound_messages().

	* src/engine/ksound.c (process_sound_events): Changed if/else -> case.

	* src/include/sound.h: Changed sound events back to #defines. Moved
	SCI MIDI command #defines here.

	* src/include/soundserver.h: Removed SCI MIDI #defines as above.

	* src/include/win32/messages.h: Removed macros for declaring messages.

	* src/sound/polled_ss.c:
	* src/sound/event_ss.c: Added song position to MIDI commands for
	better debugging. Changed if/else -> case.

	* src/sound/sound.c: Changed if/else -> case. Removed
	register_sound_messages().

	* src/sound/soundserver.c: Fixed suspend_all() and resume_all().

	* src/sound/event_ss_win32.cpp: Renamed to event_ss_win32.c. Fixed race
	condition with main thread when sound thread starts. Added mapping
	between Windows messages and #defined sound events.

	* src/win32/fsci_dll.dsp: Fixed for file change above.

	* src/win32/freesci.def: Removed reference to register_sound_messages.

	* src/win32/event_ss_win32_qp.c: Deleted.

2001-12-02  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kgraphics.c (_find_view_priority): Support priority map
	OB1 in older SCI versions

	* src/sound/sound.c (sound_command_default): Swapped meanings of
	SOUNDSERVER_FLAG_PIPED (prob'ly intended that way)

	* src/engine/kgraphics.c (kCanBeHere): Added is_object() check to work
	around PQ2 game bug.

2001-11-30  Alexander R Angas  <wgd@internode.on.net>

	* src/sound/event_ss.c (do_sound):
	* src/sound/polled_ss.c (sci0_polled_ss):
	* src/include/sound.h: More MIDI #defines.

	* src/sound/polled_ss_unix.c:
	* src/sound/sound.c:
	* src/include/soundserver.h: Added #define for a piped (UNIX) sound
	driver.

	* src/include/win32/messages.h: Removed #includes.

	* src/sound/event_ss_win32.cpp: Dumped all DirectX stuff for 1ms
	resolution timeSetEvent().

	* src/win32/fsci_dll.dsp: Removed event_ss_win32_qp references.

2001-11-28  Alexander R Angas  <wgd@internode.on.net>

	* src/sound/event_ss_win32.cpp: Fixed race condition for creation of
	semaphore. Attempt to add use of faster clock.

2001-11-26  Alexander R Angas  <wgd@internode.on.net>

	* src/include/engine.h: Made sound_volume and sound_mute unsigned.

	* src/include/sound.h: Removed SOUND_DATA 'command'.

	* src/include/soundserver.h: Added more commenting.

	* src/sound/event_ss.c (sci0_event_ss): Altered way to call
	do_sound(). Fixed memory leak on shutdown.

	* src/sound/event_ss_win32.cpp: Added more checks for returned values
	everywhere. Fixed crash on shutdown. Improved way of checking if data
	is waiting by using event and fixed synchronisation for data_queue.
	Adjusted to match new way to call do_sound() (above).

	* src/sound/event_ss_win32_qp.c: Currently broken.

	* src/sound/sound.c (sound_command_default): Reversed last change made
	by Christoph (temporarily). Added MUTE_ON / MUTE_OFF constants where
	appropriate.
	Removed print_message_map().

	* src/sound/midiout_win32mci.c (midiout_win32mci_open): Fixed Cygwin
	compilation.

2001-11-24  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/sound/sound.c (sound_command_default): Transfer command _before_ data
	when initializing handle

	* src/sound/polled_ss.c (sci0_polled_ss): Fixed master volume guint8 -> int

	* acinclude.m4 (alsa part): Updated for latest libasound

2001-11-23  Alexander R Angas  <wgd@internode.on.net>

	* src/include/win32/messages.h: Removed SOUND_DATA message.

	* src/sound/soundserver.h:
	* src/sound/sound.c: Added MUTE_ON and MUTE_OFF constants.

	* src/sound/polled_ss.c: Improved commenting (slightly).

	* src/sound/event_ss.c (do_sound): Cleaned up code that checks for
	running	status. Fixed SOUND_COMMAND_TEST.

	* src/win32/fsci_dll.dsp:
	* src/sound/event_ss_win32_qp.c: Added fast event ss Win32 sound
	driver (buggy).

	* src/sound/event_ss_win32.c (sci0_event_ss): Fixed memory leak.

	* src/sound/midiout_win32.c (midiout_win32mci_open): Fixed MIDI device
	selection to no longer be arbitrary when a device is not specified in
	the config file (see source for details on device preferences).

2001-11-21  Alexander R Angas  <wgd@internode.on.net>

	* src/engine/grammar.c:
	* src/engine/kgraphics.c:
	* src/engine/kstring.c:
	* src/engine/scriptdebug.c:
	* src/include/vm.h:
	* src/include/vocabulary.h:
	* src/scicore/console.c:
	* src/scicore/script.c:
	* src/scicore/vocab.c: Changed C++ reserved words:
	delete -> del, class -> w_class.

	* src/include/sound.h:
	* src/include/soundserver.h:
	* src/include/win32/messages.h:
	* src/sound/sound.c:
	* src/sound/soundserver.c:
	* src/sound/polled_ss.c:
	* src/sound/polled_ss_win32.c: Updates to allow for event sound
	server.

	* src/sound/event_ss.c:
	* src/sound/event_ss_win32.c: Event sound server with Win32 driver.

	* src/win32/fsci_dll.dsp: Increased warning level for sound server
	files.

	* src/main.c: Added FIXME note for memory that is not being freed.

2001-11-18  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/sound/sound.c (get_msg_value): Fixed strcmpi() -> strcasecmp()

2001-11-17  Alexander R Angas  <wgd@internode.on.net>

	* src/sound/polled_ss.c: Fixed warnings.

	* src/sound/polled_ss_sdl.c:
	* src/sound/polled_ss_unix.c:
	* src/sound/polled_ss_win32.c:
	* src/sound/soundserver.h:
	* src/sound/soundserver.c: Renames of sound_command() to
	sound_command_default(). Slightly different data types for
	queue_event() and queue_command() routines to allow for Windows
	messages. Warnings fixes.

	* src/engine/scriptdebug.c: Rename of calls to sound_command().

	* src/include/sound.h:
	* src/sound/sound.c: Added facility to use Windows messages. Warnings
	fixes.

	* src/include/win32/messages.h: New file.

	* src/engine/ksound.c: Forced to change case statement to if/else.

	* src/main.c: SOUND_COMMAND_TEST gets correct message value.

	* src/win32/freesci.def: Added register_sound_messages and
	get_msg_value that need to be exported.

	* src/win32/fsci_dll.dsp:
	* src/win32/sciv.dsp: Added a couple of header files.

	* src/include/scitypes.h: Changed #if defined(WIN32) to _WIN32.

2001-11-14  Alexander R Angas  <wgd@internode.on.net>

	* src/sound/polled_ss.c: Fixed mute_channel array not being
	initialised properly.

2001-11-13  Alexander R Angas  <wgd@internode.on.net>

	* src/sound/polled_ss.c: New home for sci0_soundserver(), not known as
	sci0_polled_ss().

	* src/sound/soundserver.c: Insert of event sound server functions that
	could be used by polled sound server. Minor cleanups.

	* src/include/soundserver.h: Changes as above. Minor cleanups.

	* src/sound/polled_ss_sdl.c:
	* src/sound/polled_ss_unix.c:
	* src/sound/polled_ss_win32.c: Basically a rename from their
	soundserver_xxx.c equivalents.

	* src/sound/soundserver_sdl.c:
	* src/sound/soundserver_unix.c:
	* src/sound/soundserver_win32.c: Removed.

	* src/sound/Makefile.am:
	* src/win32/fsci_dll.dsp: Fixes for new filenames.

2001-11-12  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/scicore/decompress1.c (decompress1):
	* src/scicore/decompress01.c (decompress01): Removed breakage on
	SATISFY_PURIFY

2001-11-02  Alexander R Angas  <wgd@internode.on.net>

	* src/sound/sound.c:
	* src/sound/soundserver.c:
	* src/sound/soundserver_sdl.c:
	* src/sound/soundserver_unix.c:
	* src/sound/soundserver_win32.c:
	* src/sound/soundserver.h: Code clean up and provision for storage of
	sound server state.

	* src/scicore/tools.c (sci_find_first): More debugging info for ENOENT
	case.

2001-10-30  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/scicore/console.c (c_list_words): Return 0 on success, 1 on error
	(same for list_suffices)

2001-10-29  Christoph Reichenbach  <jameson@linuxgames.com>

	* doc/sci.sgml: Added the missing funcselector offset, fixing a major
	documentation bug

2001-10-24  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/include/kernel.h (SCI0_VIEW_PRIORITY): Augmented by one to test
	a theory

2001-10-23  Christoph Reichenbach  <jameson@linuxgames.com>

	* doc/sci.sgml (temp): Added docs for the font resource

2001-10-16  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/widgets.c (_gfxwop_pic_view_draw): Update the real bounds,
	not the 'draw bounds'

2001-10-15  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/widgets.c (_gfxwop_container_draw_contents): Do not do
	modify area offsets for containers (which have absolute coordinates).

2001-10-14  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/scicore/resource.c (_scir_add_altsource): Fixed a bug in the
	alternative source list

	* doc/sci.sgml: Updated docs to list word types in big endian order
	(as used in FreeSCI), since this appears to make more sense

	* src/include/vocabulary.h (VOCAB_CLASS_NUMBER): Changed vocab class
	for numbers to 1, which seems to be correct after recent doc changes

	* TODO: Removed entries for SCI01 gfx and parser word type swapping

	* src/scicore/console.c (c_list_words): Merged syscall and selector
	listings into the 'list' function. Added 'list words' and 'list
	suffices'.

2001-10-10  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kgraphics.c (kDrawPic): Added support for priority table

	* src/gfx/resource/sci_pic_0.c (gfxr_draw_pic0) and operational layer:
	pics now have 'internal' information that can be retreived from the
	interpreter with gfxop_get_pic_metainfo().

	* Improved passing of 'payload' (interpreter gfx config) info to the
	interpreter gfx functions

2001-10-09  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/sound/midi_mt32.c (midi_mt32_sysex_delay): Fixed to use
	usleep()

	* src/engine/kgraphics.c (kCanBeHere): Check against dynviews
	iff (illegal_bits & 0x8000). Because this is how dynviews are
	marked in Sierra SCI.

2001-10-08  Alexander R Angas  <wgd@internode.on.net>

        * src/win32/sciv.dsp, fsci_dll.dsp: Corrected to use the same run-time
        library.

2001-10-06  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/sound/sfx_save.cfsml (soundsrv_restore_state): Fixed memory
	leak when reading erroneous savegames

	* src/scicore/resource.c (scir_new_resource_manager): Improved
	resource detection to handle KQ1

	* src/gfx/widgets.c (_gfxwop_container_draw_contents): Contained
	widgets have relative coordinates, dirty rectangles have absolute
	ones. Changed the function to reflect this.

2001-09-30  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/drivers/xlib_driver.c (xlib_init_specific): Now
	detects screen resolution and uses 1x1 mode if resolution
	is too low

	* src/engine/scriptdebug.c (c_gfx_propagate_rect): Added
	gfx_propagate rect.
	Improved redraw_screen.

	* src/gfx/resmgr.c (gfxr_add_to_pic): Added picadd
	usage of endianness adjustments

2001-09-29  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/resource/sci_pic_0.c: Added two alternative palettes,
	Amiga/AGI and grayscale
	(_gfxr_draw_pattern): Patterns near the right edge of the screen
	are now moved to the left correctly

	* src/engine/game.c (_reset_graphics_input): Got rid of the EGA
	palette copy, used that of the gfx resources instead

2001-09-26  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/sound/midiout_win32mci.c: Stripped ^Ms, ifdef'd for Win32

2001-09-25  Christoph Reichenbach  <jameson@linuxgames.com>

	* Applied Claudio's CYGWIN patch

2001-09-24  Christoph Reichenbach  <jameson@linuxgames.com>

	* configure.in: Use savegame.c line numbers when building with dmalloc
	Guess type sizes by processor type on some target CPUs when
	cross-compiling

	* src/include/sci_memory.h (sci_strndup): Disabled SCI memory stuff
	on UNIX with dmalloc

	* src/scicore/vocab.c (vocab_get_suffices): Suffix vocabulary is now
	locked in the resource manager during the entire game

	* src/main.c (main): Removed a number of (void *) typecast on non-
	MSVC++ systems

	* configure.in: Added AC_CANONICAL_SYSTEM

2001-09-23  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/said.y: Undid fix for SQ3 problem

	* src/scicore/resource.c (_scir_free_altsources): Fixed memory leak

	* src/config.l: Added new options scale, scale_x, scale_y, color_depth

	* src/include/sci_memory.h: Added DISABLE_SCI_MEMORY flag

	* src/gfx/drivers/sdl_driver.c (sdl_init_specific): Only disable mouse
	movement events if we're not emulating the pointer (Thanks, Matt)
	Fall back to emulation on BeOS

	* Applied BeOS patches from Claudio Matsuoka

2001-09-22  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/drivers/sdl_driver.c (sdl_create_cursor_data): SDL pointer
	is now set to transparent 1x1 pixel image when doing pointer
	emulation

2001-09-22  Matt Hargett  <matt@use.net>

	* main.c (main): Eliminate VC++ warnings by explicity casting
	function pointers as (void *).

	* game.c: Fix signed/unsigned comparison warnings.

	* kgraphics.c: Ditto.

	* script.c: Ditto.

	* vocab.c: Ditto.

	* vocab_debug.c: Ditto.

	* old_objects.c: Ditto. Minor reformatting.

	* midi_mt32.c: Explicitly define function arguments as void to
	eliminate VC++ warnings.

	* midi_mt32gm.c: Ditto.

	* midiout.c: Ditto.

	* midiout_win32mci.c: Ditto. Fix build for default VC++ 6.0
	install. Default to MIDI Mapper as device, if available.

2001-09-21  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/said.y: Updated grammar to support nested brackets

	* src/engine/kgraphics.c (_k_dirloop): DirLoop() now doesn't write back
	unless the object's view has exactly four loops

	* src/engine/kfile.c (_chdir_savedir): Now creates the savedir if it's
	no longer existing

	* src/engine/game.c (script_init_engine): Added the sci_mkpath()
	utility function

2001-09-20  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kgraphics.c (kEditControl):
	* src/engine/kgraphics.c (_k_draw_control):
	* src/engine/include/engine.h:
	* src/engine/kstring.c: Due to a number of utterly evil hacks, SCI
	games now support string lengths greater than the length displayed for
	the savegame directory.

	* src/sound/midi_mt32gm.c (midi_mt32gm_event): Fixed sound volume (broken
	by invalid typecast), as reported by Matt

2001-09-19  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/resource/sci_pic_0.c (_gfxr_fill_recursive): Fixed write over
	right border of picture
	Fixed treatment of lines dithered with white to permit filling over
	(_gfxr_plot_aux_pattern): Box patterns are drawn one pixel wider than
	specified, as in Sierra SCI

2001-09-17  Alex Angas  <wgd@internode.on.net>

        * src/sound/soundserver_win32.c: Changed use of mutexes to use of
        Win32 CRITICAL_SECTIONs.

2001-09-17  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/drivers/sdl_driver.c (sdl_init_specific): Disabled mouse pointer
	on fullscreen

	* src/engine/kfile.c: Saved and restored the cwd to and from the savegame
	dir in savegame kfunctions

2001-09-16  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/include/resource.h (FO_BINARY): Introduced FO_BINARY, which is "b"
	on Win32 and "" everywhere else

	* Changed Matt's last updates to use it instead of "b" everywhere

2001-09-16  Matt Hargett  <matt@use.net>

        * savegame.cfsml: Add ifdef for WIN32 to workaround creat()
        only using "translation" (ASCII) mode. Specify "b" flag
        to fopen() and "O_BINARY" flag to open().

        * kfile.c: Specify "b" flag to fopen().

2001-09-15  Matt Hargett  <matt@use.net>

        * main.c: Fix compiler warning(s).

        * heap.c: Ditto.

        * kgraphics.c: Ditto.

        * kmath.c: Ditto.

        * kstring.c: Ditto.

        * scriptdebug.c: Ditto.

        * vm.c: Ditto.

        * console.c: Ditto.

        * decompress01.c: Ditto.

        * midi_mt32gm.c: Ditto.

        * decompress0.c: Ditto. Remove misapplied SATISFY_PURIFY ifdef.

        * gfx_crossblit.c: Change VC++ optimization pragmas to
        be active ifndef SATISFY_PURIFY.

        * sciunpack.c: Ditto.

        * gfx_pixmap_scale.c: Ditto.

        * gfx_tools.c: Ditto.

        * sci_memory.c: Ditto.

        * kmovement.c: Readability improvements.

        * oldmidi.c: Ditto.

        * resource_map.c: Open resource map as binary.

        * freesci.def: Fix compilation on VC++.

        * fsci_dll.dsp: Add new file. Define SATISFY_PURIFY by default.

        * sciunpack.dsp: Fix compilation.

        * freesci.dsw: Add sciunpack.dsp to workspace.

2001-09-15  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kmovement.c (initialize_bresen): No longer initializes
	b_movCnt
	(kDoBresen): No longer set mover's coordinates to the client's
	coordinates if finishing by collision

	* src/scicore/resource_map.c (sci0_read_resource_map):
	Set O_BINARY for reading file, for Win32

	* src/engine/kmath.c (get_angle): No longer returns negative
	angles.

2001-09-14  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kgraphics.c (kNewWindow): Creating a new window
	now sets "pic_is_new" to inform Animate() that it should
	abort building the dynview list and restart completely.

	* src/engine/game.c (script_init_engine): Savegame directory is
	now preserved during restart.
	(script_init_engine): Locked vocab.996 while using it and allocating
	scripts

	* src/gfx/operations.c (_gfxop_draw_pointer): Fixed parameter to
	correctly grab pixmap on the visual (rather than priority) map,
	fixes emulated mouse pointers

	* Adjusted all files to use new LRU resource manager

	* Adjusted all files for removal of old global variables

	* Adjusted all files for the array name changes

	* src/scicore/resource.c: resource manager theoretically
	functional

2001-09-13  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/include/sciresource.h: array name cleanups

	* src/scicore/resource.c (_scir_free_resources): Resource manager
	updates

	* src/gfx/operations.c (_gfxop_scan_one_bitmask): Bitmask
	scan now compensates for higher-resolution pixmaps

2001-08-29  Matt Hargett  <matt@use.net>

        * README.Win32: Update to reflect current sources.

        * game.c (_reset_graphics_input):  Fixed purify warnings.

        * kgraphics.c (_k_graph_rebuild_port_with_color): Ditto.

        * (draw_to_control_map): Ditto.

        * (kNewWindow): Ditto.

        * vm.c (run_vm): Ditto.

        * (script_detect_early_versions): Ditto.

        * font.c (gfxr_draw_font): Ditto.

        * gfx_tools.c (gfx_new_mode): Ditto.

        * (gfx_new_pixmap): Ditto.

        * (gfx_pixmap_alloc_index_data): Ditto.

        * operations.c (gfxop_set_color): Ditto.

        * (gfxop_free_color): Ditto.

        * (gfxop_draw_box): Ditto.

        * (_gfxop_full_pointer_refresh): Ditto.

        * (gfxop_usleep): Ditto.

        * sci_widgets.c (sciw_new_window): Ditto.

        * (_sciw_add_text_to_list): Ditto.

        * (sciw_new_edit_control): Ditto.

        * sci_pal_1.c (gfxr_read_pal1): Ditto.

        * decompress0.c (decompress0): Ditto.

        * decompress01.c (decompress0): Ditto.

        * decompress1.c (decompress1): Ditto.

        * resource.c (_addResource): Ditto.

        * soundserver.c (sci0_soundserver): Ditto.

        * widgets.c: Ditto. Eliminate signed/unsigned compiler warnings.
        Eliminate redefinition of inline.

        * console.h: Eliminate signed/unsigned compiler warning.

        * console.c : Ditto.

        * sdl_driver.c: Comment out VC++ pragmas for now.

        * sci_view_0.c: Ditto.

        * kstring.c (kFormat): Initialize arguments to prevent
        uninitialized memory read.

        * cfsml.pl: Try to declare variables only if they're going
        to be used. (Eliminates a hundred warnings in VC++.)

        * midiout_win32mci.c: Add include for sci_memory.h.

2001-09-10  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/sound/sfx_save.cfsml: Fixed song_t structure definitions
	to take care of invalid pointer typecasts

2001-09-08  Alex Angas  <wgd@internode.on.net>

	* ./DEBUGGING.Win32: Removed.

	* ./README.Win32: Updated.

	* ./THANKS: Updated to include the old Sierra employees I'm aware of
	that gave us leads or tried to otherwise help.

	* src/sound/soundserver_win32.c: Fixed CreateThread() problem under
	Win9x. Added GetLastError() output on Win32 function failures.

	* src/sound/midiout.c: Moved the null sound driver to be the least
	likely used.

2001-09-06  Alex Angas  <wgd@internode.on.net>

	* src/sound/soundserver.c: Did some very initial commenting.

	* src/include/midiout.h: Added #include <sci_memory.h>.

	* src/win32/sciv.dsp, src/win32/fsci_dll.dsp: Changed SDL directory to
	generic name.

	* src/engine/kernel.c (kGetTime): Added check of return value for
	timeEndPeriod().

	* src/scicore/tools.c (sci_gettime): Removed extra timeBeginPeriod
	call and added check of return value for timeEndPeriod().

	* src/engine/kernel.c; src/gfx/operations.c;
	src/gfx/drivers/xlib_driver.c, sdl_driver.c, dd_driver.cpp,
	ggi_driver.c; src/include/sci_conf.h, resource.h, gfx_operations.h,
	gfx_driver.h, engine.h, soundserver.h; src/scicore/tools.c;
	src/sound/soundserver.c, sound.c, sfx_save.c, sfx_save.cfsml: Made all
	types used for timers consistent (changed from ints to longs).
	Reformatted with indenting.

2001-09-03  Alex Angas  <wgd@internode.on.net>

	* src/sound/soundserver_win32.c: New Win32 sound server.

	* src/sound/sound.c: Added support for Win32 sound server.

	* src/sound/soundserver_sdl.c: Fixed some minor errors with locking
	and unlocking mutices.

2001-08-25  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/include/sci_memory.h: Fixed for C99 inline semantics

2001-08-24  Alex Angas  <wgd@internode.on.net>

	* src/*.c* *.l *.y *.pl *.h: Global search and replace as follows:
	malloc -> sci_malloc, calloc -> sci_calloc, realloc -> sci_realloc,
	free -> sci_free, memdup -> sci_memdup, strdup -> sci_strdup,
	strndup -> sci_strndup.

2001-08-22  Alex Angas  <wgd@internode.on.net>

	* ./acinclude.m4, ./configure.in: Fixed configure script so it actually
	sets #defines now, and added --with-E to give pre-processor output.

	* src/include/kernel.h (INV_SEL): Fixed compiler warnings.

	* src/include/util.h (FLEXARRAY_PANIC): Fixed compiler warnings.

2001-08-19  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/include/sciresource.h: LRU resmanager initial API definition

2001-08-18  Alex Angas  <wgd@internode.on.net>

        * src/scicore/sci_memory.c, src/include/sci_memory.h: Minor
        rearrangement, decent support for configure script.

        * ./acinclude.m4, ./configure.in: Changed support for #defines in
        sci_memory library in the configure script.

2001-08-18  Lars Skovlund  <lskovlun@image.dk>

	* src/gfx/drivers/xlib_driver.c: Now sets the name of the window class.

2001-08-18  Christoph Reichenbach  <jameson@linuxgames.com>

	* configure.in: Added --with-alloc option to set SCI_ALLOC

2001-08-15  Alex Angas  <wgd@adelaide.on.net>

	* src/scicore/sci_memory.c, src/include/sci_memory.h: Library for safe
	allocation of memory and accurate reporting of where calls fail.
	Includes: sci_malloc(), sci_calloc(), sci_realloc(), sci_free(),
	sci_memdup(), sci_strdup(), sci_strndup().

	* src/scicore/tools.c, src/gfx/gfx_test.c, src/scicore/console.c,
	src/include/resource.h, src/scicore/resource.c,	src/include/menubar.h:
	Generally removed various parts and merged into the sci_memory library.

	* src/gfx/menubar.c, src/engine/cfsml.pl, src/engine/savegame.cfsml,
	src/include/console.h, src/gfx/menubar.c, src/sound/sfx_save.cfsml,
	src/sound/sound.c, src/include/sound.h, src/sound/soundserver_sdl.c,
	src/sound/soundserver_unix.c, src/sound/tools.c:
	Removed	redundant code, merged some parts into sci_memory. These files
	were changed to use the sci_memory library.

	* src/scicore/Makefile.am: Now compiling sci_memory.c.

	* src/win32/fsci_dll.dsp, src/win32/sciv.dsp: Now compiling
	sci_memory.c.

	* ./acinclude.m4, ./aclocal.m4: Corrected Web address for dmalloc
	library.

	* src/include/kernel.h (get_nsrect), src/include/sound.h: Fixed Win32
	linkage problem.

	* ./portable_howto.txt: Added message about not using #warning.

2001-08-13  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/drivers/xlib_driver.c (xlib_init): Added listing of
	X11 visuals if initialization fails

	* src/engine/scriptdebug.c (c_vmvars): Fixed vmvars fix

2001-08-11  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/operations.c (gfxdr_add_dirty): Patched visualization bug
	(badly)

	* src/engine/scriptdebug.c (c_gfx_debuglog): Added gfx_debuglog
	function

2001-08-06  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kgraphics.c (collides_with): OB1 fix
	(collides_with): No longer clip outside of screen

	* src/engine/kmovement.c (kDoBresen): No longer set completed flag

2001-08-04  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/sound/soundserver.c (sci0_soundserver): Reversed stereo,
	if requested

	* src/include/gfx_system.h (gfx_rects_overlap): fixed
	(function always returned true)

	* src/config.l: Added reverse_stereo option

	* src/gfx/operations.c (_gfxop_remove_pointer): Removing the
	pointer now updates the operational layer's pointer position

	* src/sound/midi_adlib.c: Now includes sys/time.h for
	struct timeval

2001-08-04  Alex Angas  <wgd@adelaide.on.net>

	* src/win32_profiler.bat: _Remove._ (already present in win32 dir).

	* src/win32/fsci_dll.dsp: Changed to point to SDL 1.2.2.
	Added kmovement.c to project source node.

	* src/win32/sciv.dsp: Changed to point to SDL 1.2.2.

	* src/gfx/gfx_crossblit.c: Added optimization pragmas that
	improve performance under Win32.

	* src/gfx/gfx_pixmap_scale.c: As for gfx_crossblit.c.

	* src/gfx/gfx_tools.c: As for gfx_crossblit.c.

	* src/gfx/resource/sci_view_0.c: As for gfx_crossblit.c.

	* src/gfx/drivers/sdl_driver.c: As for gfx_crossblit.c.

	* src/sound/soundserver.c (sci0_soundserver): Fixed memory leak where
	songs were never freed.

	* src/main.c (parse_arguments): Changed text 'sciv' to 'freesci'.

	* src/main.c (main): Fixed text wrapping and output of FreeSCI
	version number which did not work on Win32 (and maybe other platforms).

2001-08-04  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/scicore/tools.c (sci_fopen): Fixed usage of sci_fopen() to work
	with "w" if destination file is not present

	* src/gfx/operations.c: Line clipping now compensates for scaling

2001-08-03  Christoph Reichenbach  <jameson@linuxgames.com>

	* acinclude.m4 (no_alsa): Fixed some libtool dependancies

2001-08-01  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/sound/midiout_ossopl3.c: Ifdef'd ossopl3 usage dependant on
	sys/soundcard.h

2001-07-29  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/scicore/resource.c (resourceLoader): Resource files
	are now read case-insensitively

	* src/include/resource.h: Made sci_open() and sci_fopen()
	global toolkit functionality

2001-07-28  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kgraphics.c (_k_view_list_dispose_loop): Test objectity of
	view lists before trying to dispose of them

	* src/engine/vm.c (script_instantiate): Older scripts with size zero
	localvar blocks now don't get those allocated

	* configure.in: Got rid of modules

2001-07-27  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/drivers/sdl_driver.c (sdl_draw_line): Fixed bounds

	* src/gfx/operations.c (_gfxop_get_pointer_bounds): Fixed return value
	for !pxm case

	* src/include/gfx_driver.h: Added FINE_LINE capability flag, changed
	and clarified draw_line semantice for non-fine lines

2001-07-26  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/operations.c (line_check_bar): Clipped against size+1

	* src/engine/kgraphics.c (_k_draw_control): Text controls now derive
	their alignment from their 'mode' selector

2001-07-25  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kmovement.c (kDoAvoider): Fixed angle calculation

	* src/engine/kmovement.c (kDoAvoider): Initial DoAvoider()
	implementation

2001-07-23  Matt Hargett  <matt@use.net>

	* kernel.c (kGetTime): Check return value of
        timeBeginPeriod/timeEndPeriod. Properly wrap all time
        calls.

	* tools.c (sci_gettime): Ditto.

	* dd_driver.cpp: Remove Win32_usleep. Call Sleep instead.

	* graphics_ddraw.c: Ditto.

	* sdl_driver.c: Removed winsock2.h include.

	* soundserver_sdl.c (sounds_sdl_get_command): Change Sleep(0)
        to Sleep(1).

	* freesci.def: Get rid of deprecated functions.

2001-07-22  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/resource/sci_pic_0.c (_gfxr_plot_aux_pattern): When drawing
	boxes, we now draw (size << 1) + 1 instead of +2, to avoid segfault

	* src/sound/midi_adlib.c (midi_adlib_open): Silenced a few warnings

	* src/gfx/sci_widgets.c (sciw_new_button_control): Fixed inverse button
	display for good

2001-07-22  Solomon Peachy <pizza@shaftnet.org>

	* src/gfx/drivers/sdl_driver.c:  Finally fixed the line
        clipping code.
	* src/sound/midiout_ossopl3.c:  Patch path is now configuragle.

2001-07-22  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/operations.c (gfxop_get_event): Implemented event queue

2001-07-22  Alex Angas  <wgd@adelaide.on.net>

	* src/win32_profiler.bat: Now profiles fsci.dll (and DLLs in general).
	(NOTE:	RESUBMISSION.)

	* src/sound/sound.c: Added NO_SOUND compiler directive to disable
	sound server. (NOTE: RESUBMISSION.)

	* src/engine/kernel.c (kRestartGame): Fixed crash when sound server
	is disabled.

	* src/engine/scriptdebug.c: Fixed compilation problem on Win32 (Sleep
	define).

	* src/win32/sciv.dsp: Turned debug info back on in release builds.
	Generating map file for profiling in release builds.

	* src/win32/fsci_dll.dsp: As for sciv.dsp.

	* src/win32/freesci.dsw: Removed SDL_gfxPrimitives from compilation
	files.

2001-07-21  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kgraphics.c (kShakeScreen): Fixed ShakeScreen default
	parameter

2001-07-18  Solomon Peachy <pizza@shaftnet.org>
	* src/gfx/driver/sdl_driver.c:  Restored the old sdl linedraw
        code.  Got rid of sdl_gfxPrimitives which was pretty broken,
        and added a bounds check on line draws.

	* src/gfx/gfx_test.c:  compilation fixes.

2001-07-17  Alex Angas  <wgd@adelaide.on.net>

        * src/win32/fsci_dll.dsp: Changed optimizations in release build back
        to 'Minimize Size'.
        Fixed up file list so everything can be found and compiled.

        * src/win32/sciv.dsp: As for fsci_dll.dsp.

2001-07-15  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/sound/midi_adlib.c: Patched to cooperate with Rune's patch

	* src/engine/cfsml.pl: Added several command-line options

2001-07-15  Rune Orsval  <u951663@daimi.au.dk>

	* src/sound/midiout_ossopl3.c: Added

2001-07-14  Solomon Peachy <pizza@shaftnet.org>
        * src/gfx/driver/sdl_driver.c, SDL_gfxPrimitives.c,
          SDL_gfxPrimitives.h, SDL_gfxPrimitives_font.h:  Ripped out the
        sdl line drawing code formerly ripped from the gfxPrimitives
        library, and instead incorporated a much newer version of the
        library into the build.

	* src/sound/midi_adlib.c, src/sound/midi_device.c,
          src/include/midi_device.h:  Many updates to the adlib driver.
          Also it is no longer built when oss is not present.

2001-07-14  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/scicore/vocab.c (vocab_lookup_word): Dashes in words are now
	skipped when looking up the word

	* src/include/vocabulary.h (VOCAB_MAGIC_NUMBER_GROUP): Changed to 0xffd

	* src/gfx/drivers/Makefile.am Silenced some libtool warnings

2001-07-14  Solomon Peachy <pizza@shaftnet.org>

	* src/sound/midi_adlib.c, src/include/midi_device.h,
          src/sound_midi_device.c, src/sound/Makefile.am:  Initial work
          on an adlib (/dev/sequencer for now) sound target.

2001-07-13  Alex Angas  <wgd@adelaide.on.net>

	* src/win32/win32_profiler.bat: Added this file.
        See file for instructions on how to use.

2001-07-13  Christoph Reichenbach  <creichen@rbg.informatik.tu-darmstadt.de>

	* configure.in: Added check for 'inline'

	* src/main.c (init_directories):
	* src/scicore/tools.c (sci_get_homedir): Now assumes that any non-Win32
	is UNIX, to fix builds on some non-gcc UNIX compilers

2001-07-12  Christoph Reichenbach  <jameson@linuxgames.com>

	* configure.in: libreadline is now only checked for if libcurses was
	found

	* acinclude.m4 (CURSHEADER): Fixed (n)curses header file detection

	* src/: Added sciv wrapper script to mark depreciation

	* doc/sci.sgml: Updated sound docs to match Ravi's V9 documentation

2001-07-06  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/main.c (main): Optionalized console file initialization

2001-07-03  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kgraphics.c (reparentize_primary_widget_lists): Better
	checking for cases where s->dyn_views isn't initialized

2001-07-02  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/Makefile.am (freesci_LDFLAGS): Renamed sciv to freesci

2001-07-01  Christoph Reichenbach  <jameson@linuxgames.com>

	* doc/sci.sgml: Updates to NewNode() and ShakeScreen()

	* src/engine/klists.c (kNewNode): Reversed node/value pairs, as in
	Sierra SCI

	* src/engine/kgraphics.c (kShakeScreen): Screen shaking now supports
	horizontal and vertical shaking; also, it no longer shakes upwards
	(same as Sierra SCI).

2001-06-26  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/vm.c (run_vm): Re-fixed an old bug in callk wrt old scripts
	* src/engine/kscripts.c (kScriptID): The second parameter was treated as
	mandatory. Fixed.
	* src/config.l: Fixed "unrecognized keyword" error.

2001-06-24  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/ksound.c (process_sound_events): songs' loop selector is no
	longer written to

	* src/engine/kernel.c (kRestartGame): Sound is now turned off when the
	game is restarted

2001-06-14  Christoph Reichenbach  <jameson@linuxgames.com>

	* conf/freesci-config: Added

	* AUTHORS: Added Rune

	* acinclude.m4 (_ac_curses_libnames): Curses check now tests for
	noecho() rather than initscr() to work around problem on IRIX.

2001-06-13  Sam Neely  <sam@sam.net>

        * tools.c (sci_find_first): Fix savegame listing bug by
	skipping over . and .. directory entries.

2001-06-13  Matt Hargett  <matt@use.net>

        * main.c (main): Remove Sleep that didn't fix anything.

        * kfile.c (fcaseopen): Initialize pointers to NULL.

        * (fcaseopen): Initialize pointers to NULL.
        Add check for Win32 directory separator.

	*(caseopen): Ditto.

        * tools.c (sci_gettime): Add calls to increase timer resolution to
        1ms. This may help with sound problems.

        * (sci_find_first): Add error output for errno values of
        _findfirst.

        * freesci.def: Add definition for sci_sched_yield.

2001-06-06  Matt Hargett  <matt@use.net>

        * Add checks for return values of all SDL calls.
        * Initialize some pointers to NULL upon declaration.

2001-06-05  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/klists.c (kNodeValue): Worked around a bug in
	Codename: Iceman.
	* src/engine/vm.c (run_vm): Disabled warning on excessive
	hunk allocations.
	* BUGS-IN-GAMES: New file.

2001-06-03  Christoph Reichenbach  <jameson@linuxgames.com>

	* configure.in (RPM_VERSION): Replaced '-' with '_' in version numbers
	when generating freesci.spec

2001-06-02  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/savegame.cfsml: Added saving of synonym data

2001-05-31  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/sci_widgets.c (sciw_new_window): Fixed OB1 buglet in
	transparent shadows (shadow overdraw)

	* src/include/gfx_resource.h: Re-arranged data structure for 8 byte
	alignment to avoid unaligned traps on Alpha

	* src/sound/soundserver_sdl.c: Renamed to ev_queue to avoid name
	confusion with sound server

2001-05-30  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/main.c (main): Added Threading workaround for Win32

2001-05-29  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/main.c (main): Added sound server sync by checking polyphony
	before starting vm

	* src/gfx/drivers/gfx_drivers.c (gfx_find_driver): Added support for
	systems without dlopen()/with explicit --without-modules

	* configure.in:
	* src/gfx/drivers/Makefile.am: Added --without-modules option

2001-05-28  Christoph Reichenbach  <jameson@linuxgames.com>

	* doc/sci.sgml: Added documentation for scripts

2001-05-27  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/drivers/xlib_driver.c (xlib_draw_filled_rect_RENDER): Added
	support for translucent windows on X11 (if the RENDER extension is
	present). Right now, we're using Keith Packard's hack to work around
	some XFree86 4.0.3 bugs.

	* src/include/resource.h:
	* src/engine/cfsml.pl (create_string_functions): Fixed several
	places where chars were used instead of ints

2001-05-24  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/vm.c: Squashed a localvar allocation bug in
	the handling code for old interpreter versions.

2001-05-22  Christoph Reichenbach  <jameson@linuxgames.com>

	* ltconfig: Added bogus ltconfig file

	* src/main.c (main): Fixed several config entry references

2001-05-21  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/main.c (lookup_driver): Better error message if no default
	driver was found.

2001-05-20  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/tools/sciunpack.c: added support for gcc-3.0

	* src/scicore/decompress0.c (decrypt1): Fixed bug

	* src/scicore/modules.c: Generic fixes

2001-05-19  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/scicore/modules.c: Added file

	* src/config.l:
	* src/main.c: More sophisticated module and path handling

	* src/sound/*.c: Removed several ^Ms

	* src/gfx/drivers/Makefile.am: Fixed build/installation for
	gfx driver modules

2001-05-19  Matt Hargett  <matt@use.net>

        * sci.sgml: Add some documentation for DoBresen.

        * widgets.c(_gfxw_debug_remove_widget): Change memcpy to memmove.

        * midi_mt32.c(midi_mt32_write_block): Check return value of
        midiout_write_block.

        * (midi_mt32_patch001_type): Add NULL check for song parameter.

        * midi_mt32gm.c(midi_mt32gm_open): Print an error if
        midiout_open() fails.

        * (midi_mt32gm_print_instrument): Add NULL check for file
        parameter.

        * (midi_mt32gm_event): Change volume from long to unsigned long to
        eliminate warnings.

        * midiout_win32mci.c: Change win32mci_lastwrote to unsigned int
        to eliminate warnings.

        * (midiout_win32mci_flush): Add Sleep to try and fix reported
        SysEx loading bugs.

        * (midiout_win32mci_write): Correct usage of count. Get rid of
        unnecessary Sleep.

        * sound.c(_sound_expect_answer): Put length of text into variable
        "count" for clarity. Check return value of sound_send_data().

        * (sound_command): Check return value of sound_send_data().

        * (song_new): Change i to unsigned int to eliminate warnings.

        * (song_lib_add): Initialize pointers to NULL upon delcaration.
        Add NULL pointer check for song parameter.

        * soundserver.c: Minor reformatting.

        * soundserver_sdl.c(sound_sdl_get_data): Minor reformatting.

2001-05-19  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/drivers/gfx_drivers.c (gfx_try_open_module): Added
	tracer bullet dlopen() support

2001-05-17  Matt Hargett <matt@use.net>

        * Fixed usage of "count".

        * Removed Sleep() accidentally left in.

2001-05-17  Christoph Reichenbach  <creichen@rbg.informatik.tu-darmstadt.de>

	* src/gfx/resource/sci_pic_0.c (_gfxr_plot_aux_pattern): Bug fix
	for segfault

2001-05-15  Solomon Peachy <pizza@shaftnet.org>

	* src/gfx/drivers/sdl_driver.c:  renamed ERROR to SDLERROR
	                                 changed sdl_sleep heuristics.

2001-05-15  Matt Hargett  <matt@use.net>

        * kgraphics.c: Get rid of unused variables.

        * vm.c: Ditto.

        * antialias.c: Ditto.

        * gfx_pixmap_scale.c: Ditto.

        * widgets.c: Ditto.

        * sdl_driver.c: Ditto.

        * midi_mt32gm.c: Ditto.

        * soundserver.c: Ditto.

        * tools.c: Add include for windows.h.

        * midi_mt32.c: Add prototype for midi_mt32_all_stop().

        * sciv.dsp: Fix debug build. VERSION is now __TIMESTAMP__.

        * freesci.dsp: Ditto. Build changed to multi-threaded DLL.

2001-05-14  Solomon Peachy <pizza@shaftnet.org>
	* src/config.l:  added a plugin_dir option

	* src/include/sci_conf.h: added a plugin_dir option

	* src/sound/soundserver_sdl.c:  change wait semantics for commands

	* src/scicore/tools.c:  change sched_yield to a usleep(0) on
             non-win32 platforms.  seems to solve SDL speed problems

2001-05-13  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/sound/soundserver_sdl.c: Use more sophisticated (but badly
	granularized) functions for waiting for signals
	(sound_sdl_get_command): Some cleanups (slow down everything)

	* src/main.c: Applied Matt's anti-warning patch

2001-05-12  Matt Hargett  <matt@use.net>

        * main.c: Cleanup to eliminate "unused variable" warnings on
        VC++.

        * sciv.dsp: Update VERSION.

        * freesci.dsp: Update VERSION.

        * soundserver_sdl.c: Another try to fix CPU usage. This time
        using SDL_CondWaitTimeout().

2001-05-12  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/resource/sci_pic_0.c (gfxr_draw_pic0): Now yields to scheduler
	after a certain amount of Fill operations

	* src/engine/kgraphics.c (kDoBresen): Bresenham now counts down b-movCnt

	* src/sound/sound.c (sci_midi_command): We now issue implicit note-offs
	for sounds that have been playing too long.

	* src/scicore/tools.c
	* src/include/resource.h: Added sci_malloc(), sci_calloc(),
	sci_realloc(), sci_free() global API functions

	* src/scicore/tools.c: Added sci_sched_yield() function

	* configure.in: Added --without-sdl and --without-ggi options

	* src/scicore/decompress0.c (decrypt1): Applied Nikita's patch to
	strengthen error detection

2001-05-11  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/drivers/ggi_driver.c (ggi_init): GGI driver now supports
	arbitrary resolutions if it can't get the one it wants

2001-05-10  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/resource/sci_pic_0.c (gfxr_dither_pic0): Fixed dither16 to
	dither "the other way 'round", to match Sierra SCI.

2001-05-09  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/sound/sound.c (sci_midi_command): Muted the 0xd1 command

	* src/engine/vm.c (send_selector): Now allows sends to varselectors
	with more than one parameter, unless STRICT_SEND is defined

2001-05-08  Christoph Reichenbach  <jameson@linuxgames.com>

	* debian/Makefile.am: Added debian/ subdir

	* src/include/resource.h: Define __unix__ on OpenBSD and NetBSD, unless
	defined already

2001-05-07  Christoph Reichenbach  <jameson@theta.darmstadt.gmd.de>

	* src/win32/Makefile.am (EXTRA_DIST): Added various Win32 files to
	this directory's EXTRA_DIST

	* src/sound/midiout_alsaraw.c
	* src/sound/midiout_ossseq.c
	* src/sound/midi_mt32gm.c (midi_mt32gm_event2): Sound drivers' write
	command now returns (and is expected to return) negative on error and
	zero or positive on success (bytes written, actually, but that isn't
	tested for and not returned by ossseq yet).

2001-05-06  Christoph Reichenbach  <jameson@linuxgames.com>

	* 0.3.2 release

05-04-2001  Matt Hargett <matt@use.net>

	* README: Add section for win32mci driver.

2001-05-05  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/resmgr.c (gfxr_add_to_pic): Added anti-aliasing and
	endianness adjustments

	* src/main.c (parse_arguments): Now uses bpp instead of bytespp

	* src/sound/midi_mt32gm.c (midi_mt32gm_event2): Re-enabled fine tuning
	output for GM

2001-05-04  Christoph Reichenbach  <jameson@linuxgames.com>

	* doc/sci.sgml: Updates.

05-03-2001  Matt Hargett  <matt@use.net>

        * midiout_win32mci.c (_win32mci_print_error): New function.

	* (all): Changed error reporting in all functions to use new function.

	* Corrected uninitialized memory read.

	* User can now specify device number in config file.

2001-05-03  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kgraphics.c (kDirLoop): Now returns gracefully on invalid
	loop numbers, as does Sierra SCI

2001-05-02  Christoph Reichenbach  <creichen@rbg.informatik.tu-darmstadt.de>

	* src/gfx/gfx_support.c (gfx_crossblit_pixmap): Correctly calculates
	alpha mask offset for BE architectures now

2001-05-01  Christoph Reichenbach  <jameson@linuxgames.com>

	* doc/man/sciv.6: Finished man page

	* src/config.l (config_init): Pics are now unscaled by default
	(config_init): Pics now use dither256 mode by default. Everything
	should now be optimized towards correctness and then speed.
	Animation granularity now defaults to 4.
	Animation delay is 5, practically disabled.

2001-04-30  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/drivers/sdl_driver.c (sdl_map_key): Fixed ' ' on SDL
	(sdl_init_specific): Initialized key repeat
	(sdl_draw_line): Fixed minor line drawing glitch

	* src/sound/soundserver_sdl.c: New queued bulk data transfer
	implementation

	* src/gfx/resource/sci_pic_0.c (_gfxr_draw_line): Pic line drawing now
	draws to the correct target coordinates

	* src/gfx/resource/sci_pic_0.c (_gfxr_draw_subline): Added extra checks
	for invalid lines

	* src/gfx/antialias.c (gfxr_antialiase): Fixed antialiasing on BE
	systems

2001-04-29  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/sound/soundserver.c (sci0_soundserver): SDL sound server now
	no longer uses chdir() commands (signalled by setting appropriate
	server-specific flags)

	* src/engine/kmenu.c: Increased number of about-pages to 4

	* src/main.c (parse_arguments): Added -S to long options and option
	explanations

2001-04-27  Solomon Peachy <pizza@shaftnet.org>

	* src/engine/vm.c:  Added a workaround to a compiler bug that
                            resulted in massive heap corruption.

2001-04-27  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kgraphics.c (kCanBeHere): Disabled dynview checks
	(kCanBeHere): Clip rectangles are now read as signed values

	* src/engine/kstring.c (kSaid): Reverted to old Said() implementation

2001-04-26  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/antialias.c (antialiase_simple): Fixed bug found by Matt
	(invalid conditions for color values)

2001-04-25  Matt Hargett  <matt@use.net>

	* Fixed some format string problems reported by Insure++.

2001-04-25  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/sound/midi_mt32gm.c (midi_mt32gm_event): Fixed sound mappings
	somewhat

	* Removed various //s

2001-04-25  Matt Hargett  <matt@use.net>

	* src/sound/midiout_win32mci.c: New version

2001-04-24  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/cfsml.pl: Fixed heap corruption caused by staic references
	to string pointers containing strings just read being freed instead
	of the string pointers themselves

2001-04-23  Solomon Peachy <pizza@shaftnet.org>
	* src/sound/soundserver.c, src/sound/soundserver_unix.c,
	  src/sound/soundserver_sdl.c:  Changed exit semantics so that
          we exit at the top level when told to shut down.  This way
          the threaded server can exit cleanly.

2001-04-23  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/scicore/resource.c: Optionalized resource files

	* src/config.l (config_init): Default value for anti-aliasing

	* src/gfx/resource/sci_pic_0.c (gfxr_remove_artifacts_pic0):
	Removing artifacts is now slightly more permissive

2001-04-23  Matt Hargett  <matt@use.net>

	* Updated project/workspace files to define HAVE_USLEEP.

	* Updated win32mci drivers, getting near functional!

	* Updated freesci.def to reflect API changes.


2001-04-23  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/drivers/xlib_driver.c (xlib_init_specific): Added check
	to detect reverse endianness

	* src/gfx/resmgr.c:
	* src/gfx/gfx_resource.c: Added support for reversing endianness

2001-04-22  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/scriptdebug.c (c_sndmap): Added snd and sndmap commands

	* src/gfx/resource/sci_pic_0.c (_gfxr_draw_line): Added 'half' line
	mode

	* src/sound/soundserver.c: Moved soundserver_dead into soundserver.c

	* Added config option and -S parameter to select sound server

	* src/include/soundserver.h: Renamed sfx_driver_t to sound_server_t

	* src/sound/soundserver_unix.c: Renamed soundserver_null to
	soundserver_unix

2001-04-21  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/sound/soundserver_sdl.c (sound_sdl_get_command): Fixed segfault

	* src/sound/soundserver*.c: Removed warnings

2001-04-21  Matt Hargett  <matt@use.net>
	* main.c: Reimplemented ifdef for using win32/getopt.h.

	* soundserver.c: Added include for winsock2.h where fd_get is defined.
	Changed all instances of gettimeofday() to sci_get_current_time().
	Fixed misspelled SCI_MIDI_TIME_EXPANSION_LENGTH macro.

	* midiout_win32mci.c (Win32_usleep): Renamed to usleep and put into a
        common file, usleep.c.

	* usleep.c: New file implements usleep for win32.
        Taken from apache.

	* vocab_debug.c (vocabulary_free_knames): Made loop a bit simpler,
        trying to track down repeatable crashes on Win2k.

	* README.Win32: removed warning about HQ1 not working, added
	recommended pic_antialiasing option.


2001-04-21  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kgraphics.c (animate_do_animation): Removed full update
	after transition animations

	* acinclude.m4 (X_LIBS): Fixed XShm detection for non-gcc C compilers

	* src/engine/kgraphics.c (animate_do_animation): Added left/right
	scrolling

	* src/sound/midiout_ossseq.c (midiout_ossseq_write): Fixed sequencer
	failures

2001-04-21  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/scicore/resource.c (loadResourcePatches): Fixed endless loop with
	patch files being too small

2001-04-21  Solomon Peachy <pizza@shaftnet.org>

	* src/include/soundserver.h, src/sound/Makefile.am,
	* src/sound/sound.c, src/sound/soundserver.c,
	* src/sound/soundserver_null.c, src/sound/soundserver_sdl.c
	* src/include/engine.h, src/engine/savegame.cfsml,
	* src/engine/savegame.c

 	The soundserver code is finally abstracted out.  What a hatchet
        job.  Not sure if teh _null server still works, but I'm sure
        there are bugs all over the place anyway.   Savegames are untested,
	and there are probably memory leaks and several unhandled cases all
	over the place.  But it's conceptually complete!

2001-04-21  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/drivers/xlib_driver.c (xlib_init_specific): Fixed xlib alpha
	blending support on Alpha.

2001-04-21  Matt Hargett  <matt@use.net>

	* Updated README to include trilinear filtering options, and put Win32
        back on the list of working platforms.

	* New file for build instructions on Solaris.

	* Updated Win32 README to include my favorite config options and make
	some steps more clear.

2001-04-21  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/config.l (config_init): Explicitly closed yyin

	* src/gfx/antialias.c:
	* src/gfx/resmgc.c: Added anti-aliasing option for pic0

2001-04-20  Solomon Peachyh <pizza@shaftnet.org>

	* src/sound/sound.c:  abstracted out debug output
	* src/sound/soundserver_null.c:  cleaned up the event transfer
                                         mechanism.
 	* src/sound/soundserver_sdl.c:  minor changes.

2001-04-18  Solomon Peachy <pizza@shaftnet.org>

	* acconfig.h,acinclude.m4,aclocal.m4,config.h.in,configure,
          configure.in,src/gfx/drivers/gfx_drivers.c,
          src/gfx/drivers/sdl_driver.c:
             Changed the flags for SDL's detection. HAVE_SDL is only
             defined when the version is great enough.

	* configure, configure.in, src/include/sound.h,
	  src/include/soundserver.h, src/sound/Makefile.am
	  src/sound/sound.c, src/sound/soundserver_null.c,
	  src/sound/soundserver_sdl.c:
            Added a threaded soundserver.  This requires SDL 1.1.8 or
            greater!  It's a work-in-progress, and is combined with a
            gradual refactoring of the soundserver code to share the
            same core.  Test the sound code HEAVILY.  :)

2001-04-18  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/drivers/sdl_driver.c (sdl_fetch_event): Fixed 64 bit
	cleanness issue

2001-04-18  Matt Hargett <matt@use.net>

	* freesci.def: added  midiout_driver_win32mci,
        test_savegame, sci_find_first, sci_init_dir, sci_get_homedir,
	game_restore, sci_find_next to correct link errors.

	* midiout.h: added necessary things for new driver (midiout_win32mci)

	* midiout.c: Ditto.

	* getopt.c: Removed extern to eliminate some link warnings.

	* freesci.dsp: Removed more cruft, fixed debug build.

	* sciv.dsp: Ditto.

2001-04-17  Solomon Peachy <pizza@shaftnet.org>

	* src/gfx/drivers/xlib_driver.c: added a 'disable-shmem' option.
        * src/gfx/drivers/sdl_driver.c:  Added a 'fullscreen' option.

	* src/gfx/drivers/ggi_driver.c:  (all three, actually)  fixed a
              mis-use of strcmp in which the failure case was being
              treated as the success case.

2001-04-16  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/vm.c (script_instantiate): The class table is now
	modified dynamically during run-time whenever a new script is loaded;
	all of the scripts classes are now stored in that table.

	* src/engine/kgraphics.c (kCanBeHere): Added colission checks against
	the dynview list
	(_k_make_view_list): Reversed widget sort order on sequence_nr once again

	* src/gfx/drivers/xlib_driver.c (xlib_init_specific): Used physical
	display depth in a few places.

	* Handled the QUIT event in the interpreter, thus performing the
	appopriate clean-ups.

2001-04-15  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/operations.c: Now keeps track of palette numbers for
	use when overdrawing pics.

2001-04-14  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/main.c: Added quickrestore and --list-savegames options

	* src/engine/kstring.c (kParse): We now set event::claimed: 0 on
	successful parses.
	(kSaid): Update internal state after doing final match

	* src/engine/said.y: Added support for phrases with both optional and
	non-optional wordrefsets.
	* (aug_find_words_recursively): Words are now considered refwords if
	they're either referenced directly or if their immediate parent node
	was referenced.
	* Added YT_LT_PARENO to support referenced parenthese cases specially

	* src/main.c (init_directories): Added WINDIR getenv for Win32,
	as suggested by Matt

	* Added Matt's new dsp files

2001-04-13  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kgraphics.c (_k_make_view_list): List is now traversed
	forward

	* src/gfx/widgets.c (_gfxwop_dyn_view_compare_to): Fixed.

	* src/engine/kgraphics.c (animate_do_animation): Misc. fixes

2001-04-12  Matt Hargett  <matt@use.net>

	* src/gfx/drivers/dd_driver.cpp (dd_init_specific): Mode init fix

2001-04-13  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/main.c (init_directories): Made directory handling slightly more
	sophisticated

2001-04-12  Solomon Peachy <pizza@shaftnet.org>

	* src/gfx/drivers/sdl_driver.c: more cleanups for the sdl code.
        * freesci.spec:  Added a .spec file for RPM-based systems.

2001-04-12  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/gfx_pixmap_scale.c: Added inverse Alpha support to all filters

	* src/include/gfx_system.h (GFX_MODE_FLAG_REVERSE_ALPHA): Added gfx mode
	flags for endianness swap and inverse alpha semantics

	* src/gfx/drivers/sdl_driver.c: Fixed a bunch of warnings

	* src/gfx/alpha_mvi_crossblit.c: Fixed alpha-blending crossblitter
	for Compaq's ccc

	* src/sound/soundserver_null.c (sound_null_server): Fixed segfault when
	newsong was NULL

2001-04-12  Matt Hargett  <matt@use.net>

	* src/engine/vm.c:
	* src/gfx/resmgr.c: Pointers inizialized to NULL on declaration
	* src/win32/ : Corrected VC++ project files

2001-04-11  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/resource/sci_pic_0.c (_gfxr_auxbuf_spread): Re-enabled more
	conservative fill spreading code

	* src/gfx/drivers/xlib_driver.c (x_get_event): Added support for insert
	mode

	* src/gfx/drivers/ggi_driver.c (ggi_get_event): Made modifier masks less
	sticky

2001-04-10  Matt Hargett  <matt@use.net>

	* Initialized a couple of pointers to NULL on declaration.
	* kevent.c (sci_toupper): added default case to switch
	* console.c: Added NULL pointer checks.
	* Ran through indent.
	* (c_hexgrep): Corrected potential memory leak where seekstr wasn't freed
        if the resource type was unknown.

2001-04-09  Solomon Peachy <pizza@shaftnet.org>

	* src/gfx/drivers/sdl_driver.c:  Except for colors being all
             wonky, it appears to be fully functional.
	* src/sound/sound.c
	  src/sound/soundserver_null.c:  Only loop if we've explicitly
             set a loop point in a song.  And get rid of the default
             loop point.

2001-04-09  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/sound/midi_mt32gm.c (midi_mt32gm_volume): Fixed volume controls

	* src/engine/kfile.c (kRestoreGame): Restoring a savegame now kills
	the execution stack as completely as possible.

	* src/gfx/resource/sci_pic_0.c: Some improvements regarding pic
	drawing bugs in HQ/QfG

2001-04-08  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kevent.c (kGetEvent): Saved some processor time during
	pointless event loops by explicitly waiting if they were detected

	* src/gfx/drivers/sdl_driver.c (sdl_draw_line): Fixed lines

	* src/sound/midi_mt32gm.c (midi_mt32gm_volume): Added volume controls
	to GM output

	* src/config.l (config_free): Fixed segfault

	* src/gfx/drivers/xlib_driver.c (x_get_event): xlib driver now uses
	X11 modifier bits rather than tracking modifiers manually

	* src/sound/midi_device.c: Made MT32->GM the default layer

	* src/sound/midiout_ossseq.c: Added OSS sequencer driver

	* src/sound/midiout.c: Made ossseq the default midiout driver

	* src/sound/midi_mt32gm.c (midi_mt32gm_event): Several fixes to
	GM->MT32 mapping

	* src/engine/kgraphics.c (collides_with): NO_UPDATE no longer implies
	passive collision immunity

	* src/engine/kfile.c (fcaseopen): (f)caseopen now bails out if
	called for a subdirectory

2001-04-07  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/main.c (main): Added config options for midiout driver

	* src/gfx/drivers/sdl_driver.c (SDL_DISABLE): Defined SDL_DISABLE for
	SDL 1.1.3

2001-04-07  Solomon Peachy <pizza@shaftnet.org>

	* src/gfx/drivers/gfx_drivers.c
	* src/gfx/drivers/sdl_driver.c
	* src/gfx/drivers/xlib_driver.c

	Finished coding the SDL driver.  It compiles, but is rather..
        broken at the moment.    I'm working on it still..

2001-04-07  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/sound/soundserver_null.c (sci_midi_command): Fixed fade-outs
	to be audible

	* src/gfx/widgets.c (_gfxwop_dyn_view_compare_to): Fixed comparisons
	for picview widgets

	* src/engine/kgraphics.c (_k_view_list_dispose_loop): Dropped dynviews
	are now picview widgets

	* src/engine/scriptdebug.c (script_debug): Added clear_screen command

	* src/engine/kgraphics.c (kAnimate): Fixed dropview list to be sorted
	in all cases

2001-04-06  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/game.c (suggested_script): Fixed script suggestion code
	(D'Oh!)

	* src/gfx/widgets.c (gfxw_new_dyn_view): z coordinate is subtracted
	when drawing, leaving 'pos' unmodified

	* src/engine/kfile.c (caseopen): Added case-insensitive file open
	commands

2001-04-05  Solomon Peachy <pizza@shaftnet.org>

	AUTHORS
	acconfig.h
	acinclude.m4
	aclocal.m4
	config.h.in
	configure
	configure.in
	src/Makefile.am
	src/gfx/drivers/Makefile.am
	src/gfx/drivers/sdl_driver.c

	* Added SDL support to the autoconf system
	* a roughtly 50% complete SDL gfx target.  #ifdef'ed out for
          now.

2001-04-06  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/widgets.c (_gfxwop_pic_view_draw): Picviews are now drawn to
	the static buffer for better performance

2001-04-05  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/drivers/xlib_driver.c (x_unmap_key): Added Ctrl/Caps
	remapping when releasing keys (Thanks, Pizza!)

	* src/engine/kgraphics.c (collides_with): Call to nsrect_clip now
	passes the priority value instead of the signal (/D'Oh/)

	* src/engine/savegame.cfsml: Fixed list saving in savegames

	* src/engine/kgraphics.c (kAddToPic): "Single picview" case now reads
	loop and cel from correct parameters

	* src/scicore/console.c (sciprintf): Returns 'int' again to fix
	compilation problems

	* src/engine/vm.c (run_vm): Additional checks

	* configure.in: Ungnuified pre-XSHM X11 check

	* src/gfx/sci_widgets.c (un_prioritize): Changed menus to be drawn
	without priorities

2001-04-04  Matt Hargett  <matt@use.net>

        * vm.c: Added NULL pointer checks on pointers passed into
        interfaces. Initialized new pointers to NULL.

        * resource.h: Changed sciprintf to be void to be consistent
        with documentation.

        * console.c: Ditto.

2001-04-04  Christoph Reichenbach  <jameson@linuxgames.com>

	* (many files): Added appropriate typecasts to fix compiler warnings

	* src/engine/kfile.c (kCheckSaveGame): Added sanity check to prevent
	game saving when sound server is dead

2001-04-03  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/sound/sound.c: Added global variable soundserver_dead

	* src/engine/kgraphics.c (_k_prepare_view_list): Picview priorities
	are now treated the way they were intended to be treated

	* src/engine/vm.c (run_vm): Added support for Script_Local and
	Script_Temp

2001-04-01  Dmitry Jemerov <yole@spb.cityline.ru>

	* src/scicore/old_objects.c, src/scicore/script.c,
	  src/engine/scriptdebug.c, src/engine/vm.c, include/script.h:
	  Brought back the once-lost changes (introduction of new opcode
	  types Script_Local and Script_Temp).

	* src/tools/scidisasm.c: Brought back the once-lost miscellaneous
	  changes.

	* src/scicore/console.c, src/include/console.h: New functions
	  open_console_file and close_console_file. (Working with con_file
	  across DLL boundaries didn't work right).

	* src/tools/sciunpack.c: open_console_file and close_console_file
	  are used instead of working directly with con_file.

	* src/main.c: Ditto.

	* src/win32/*.dsp: Updated project files.

	* src/config.l: Modified the OPT_* macros to use the offsetof
	  macro (ANSI compatible). The old macros didn't work with Visual
	  C++.

	* src/gfx/drivers/dd_driver.cpp, src/gfx/drivers/dd_driver_line.cpp:
	  Renamed from *.c. Added check to force C++ compile.

	* src/include/midiout.h: Disabled midiout_driver_unixraw under
	  Win32.

	* src/sound/midiout.c, src/include/midiout.h: Converted
	  midiout_drivers to an extern defined only once (in midiout.c).

	* src/sound/midi_device.c, src/include/midi_device.h: Ditto with
	  midi_devices.

	* Miscellaneous compile error and warning fixes.

2001-03-28  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/drivers/xlib_driver.c (xlib_error_handler): Made x11_error
	setting ifdef'd

	* src/sound/midiout_unixraw.c (O_SYNC): Added O_SYNC for BSD

	* README.Win32: Updated Hermes URL

2001-03-19  Christoph Reichenbach  <jameson@linuxgames.com>

	* doc/man/sciv.6: Minor updates

2001-03-18  Solomon Peachy <pizza@shaftnet.org>

	* src/sound/soundserver_null.c:  Fixed a dangling else on the
                                         fading code.  oops.  :)
	* src/sound/midi_mt32.c:  Now programs the MT-32 with the
                           default rhythm map, partial reserve, reverb,
			   and volume.
	                   if said data is not in patch.001

2001-03-18  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/scriptdebug.c (prop_ofs_to_id): Now uses the new obj
	offsets
	(c_gfx_draw_viewobj): Added draw_viewobj command

	* src/engine/kgraphics.c (set_base): Now uses xStep as well.

2001-03-17  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/vm.c (script_instantiate): During script initialization,
	static objects' species classes' addresses are now written into the
	places the numeric IDs were contained in, as in Sierra SCI. This
	resolves the problem introduced with the last VM patch.

	* src/engine/kgraphics.c (collides_with): Now reads nsrect directly
	from object

	* src/gfx/drivers/ggi_driver.c:
	* src/gfx/drivers/xlib_driver.c: Added driver-specific config options
	to swap CapsLock and the left Ctrl key (common setup on Sun keyboards,
	and the configuration I personally prefer)

	* src/engine/scriptdebug.c (viewobjinfo): Improved objinfo output

	* src/engine/kgraphics.c (kEditControl): Fixed cursor keys, ALT keys,
	added A-d for "delete word"

	* src/engine/kevent.c (sci_toupper): Shift-TAB is translated now

	* src/engine/kgraphics.c (nsrect_clip): nsrect clipping now works as in
	Sierra SCI
	(GASEOUS_VIEW_MASK): any of NO_UPDATE, REMOVE, or IGNORE_ACTOR now
	ignores the actor wrt CanBeHere

2001-03-16  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/gfx_support.c: Preinitialized alpha threshold to fix gfx_test

	* src/engine/kgraphics.c (kCanBeHere): Changed to behave more like
	Sierra SCI

2001-03-14  Solomon Peachy <pizza@shaftnet.org>

	* src/gfx/drivers/xlib_driver.c:  Added MIT-SHM pixmap support
                  to the Xlib driver.  It is much much faster now.  :)
	* src/sound/soundserver_null.c:   Fixed the fading code so that
                  now 0x0000 is treated as "everything", or a regular
                  handle will also be good.  Also, restore insturment
                  set whenever the song changes.  And lastly, my last
                  commit broke the sending of valid MIDI CC events.

2001-03-14  Christoph Reichenbach  <jameson@theta.darmstadt.gmd.de>

	* src/engine/kgraphics.c (kCanBeHere): CanBeHere now returns success
	if invoked cels with IGNORE_ACTOR or DISPOSE_ME set.
	(_k_view_list_do_postdraw): nsrect -> lsrect copying is now allowed
	(parentheses error)

2001-03-13  Christoph Reichenbach  <jameson@theta.darmstadt.gmd.de>

	* src/engine/kgraphics.c (_k_set_now_seen): Split SetNowSeen()
	into another abs_rect_t function
	(nsrect_clip): Added function for priority line clipping
	(collides_with): Function now collides against nsrects rather
	than bases

	* configure.in: Added X11 MIT-SHM detection

2001-03-12  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/sound/soundserver_null.c (sound_null_server): Sound server now
	sends a loop -1 event before stopping faded song

	* src/gfx/operations.c (gfxop_add_to_pic): Add-to pictures are now
	requested explicitly after being added

2001-03-11  Solomon Peachy <pizza@shaftnet.org>

	* src/sound/soundserver_null.c:  Correct SCI Fading implemented.

2001-03-11  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kgraphics.c (kOnControl): Removed invalid fix

2001-03-11  Solomon Peachy <pizza@shaftnet.org>

	* src/include/midiout.h
	* src/sound/midiout.c
	* src/sound/midiout_unixraw.c
	* src/sound/midiout_alsaraw.c:  Added a midiout_flush API
                                          function.
	* src/sound/midi_mt32.c:  Incorporated Rickard's reverb patch.
				  Added midiout_flushes after sysex
                                    writes.
	* src/sound/soundserver_null.c:  Now stops all notes on game
                                           restores.
 					 Fixes the volume setting on
					   game restores.

2001-03-11  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kgraphics.c: loop and cel selectors are now read
	as signed bytes

2001-03-10  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/include/engine.h (MAX_SAVEGAME_NR): Altered savegame limit
	to 20, which is the number of savegames allowed in later versions
	of SCI

	* src/main.c (lookup_driver): Starting up with invalid midiout
	drivers, midi devices, or graphics drivers now aborts with an
	error message written in large, friendly letters

	* src/engine/vm.c (lookup_selector): Looking for the superclass
	now carries the result of a CLASS_ADDRESS() call for static
	instantiations. This avoids the problem that this call may some-
	times implicitly load the superclass, potentially overwriting
	the memory area pointed to by technically invalid (but still
	used) superclass pointers.

	* src/sound/sound.c (sound_get_event): Made event getting a bit
	more solid

	* src/sound/sfx_save.cfsml (recover_version0): Added older sound
	savegame recovery

	* src/sound/Makefile.am
	* src/engine/Makefile.am (savegame.c): Included the cfsml -> c
	code generation in the Makefiles

	* src/gfx/gfx_pixmap_scale.c (gfx_get_pixel_delta): Fixed
	braindead transparency bug in trilinear filter

	* src/main.c (main): Added check for MVI instruction set
	extension; MVI crossblitters are available iff it is found

	* src/sound/midiout_alsaraw.c (midiout_alsaraw_open): Fixed my
	fixes for the ALSA driver

2001-03-10  Solomon Peachy <pizza@shaftnet.org>
	* src/engine/savegame.c
	* src/engine/savegame.cfsml

	Saves and restores the volume / mute status

	* src/include/soundserver.h
	* src/sound/sfx_save.c
	* src/sound/sfx_save.cfsml
	* src/sound/soundserver_null.c

	Saves and restores the midi master volume (and sends it to the
        device upon restore)

2001-03-10  Solomon Peachy <pizza@shaftnet.org>

	* src/sound/soundserver_null.c:  Restore instrument map &
                                         reverb status on game restore.
	* src/sound/sfx_save.cfsml:  Added in new[er] song_t state,
                      such as the polyphony, reset on stop, etc.
	* src/sound/sfx_save.c:  compiled above cfsml file.
	* src/include/soundserver.h:  Added in reverb state to the
                                      song_t thingey.
	* src/sound/sound.c: Initialize the maxfade, reverb settings

2001-03-10  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kgraphics.c (kOnControl): OnControl now considers
	dynviews

	* src/gfx/alpha_mvi_crossblit.c: Fixed missing spilled register
	entries in the MVI crossblitter

2001-03-09  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/gfx_pixmap_scale.c (gfx_get_pixel_delta): Fixed bad
	pixels in trilinear filtering

	* src/engine/kmenu.c: Listed Emmanuel in the 'about' page

	* src/engine/klists.c (kAddAfter): Applied AddAfter patch by
	Emmanuel Jeandel

	* configure.in: Removed libXmu from the X library set

	* src/include/resource.h: Made MIN and MAX #ifndef'd

	* src/gfx/gfx_pixmap_scale.c (FUNCNAME_TRILINEAR): Added a
	trilinear pixmap filter

2001-03-08  Solomon Peachy <pizza@shaftnet.org>

	* src/include/soundserver.h   : added SCI midi event defines
	* src/sound/midi_mt32gm.c     : source cleanup.
	* src/sound/soundserver_null.c:
		mute at end of fade.
		treat 0x0000 as 'fade current'
		treat SUSPEND as a switch (operates on paused songs)
		Strip out midi event code into its own function
	* src/sound/sound.c           : Fixed a case where calling
                unmute would mute the sound if it was never muted first.

2001-03-06  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kgraphics.c (_k_view_list_dispose_loop): dispose_loop
	now restores under_bits where appropriate

	* src/scicore/vocab.c (vocab_synonymize_tokens): Applied Patch by
	Emmanuel Jeandel to fix synonymizing

	* src/gfx/resource/sci_pic_0.c (_gfxr_auxplot_brush): Fixed random
	numbers.

2001-03-04  Solomon Peachy <pizza@shaftnet.org>
	* README
	  src/config.l
	  src/config.c
	  src/main.c
	  src/include/sci_conf.h
	  src/include/midi_device.h
	  src/sound/soundserver_null.c

	Added configfile and cmdline args for midiout and mididevice.
	(see README and -h)

	* src/sound/midi_mt32gm.c

	Now handles pitch bend (0xe0).

2001-03-04  Solomon Peachy <pizza@shaftnet.org>

	* src/include/Makefile.am
	  src/sound/midi_mt32.c
	  src/sound/midiout.c
	  src/sound/soundserver_null.c

	Minor cleanups and eliminating dead code, most notably
        midi_mt32.h

	* src/sound/Makefile.am
	  src/sound/midi_mt32gm.c
	  src/sound/oldmidi.c
	  src/include/midi_device.h
	  src/include/sound.h

	Added in the "mt32gm" midi device.  Considered pre-alpha
        quality for now.  There's not currently any way to switch
        devices at the moment.

2001-03-05  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/alpha_mvi_crossblit.c: Added "accellerated" MVI
	crossblitter

2001-03-04  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kgraphics.c (animate_do_animation): Unclipped opening
	animations

	* src/gfx/sci_widgets.c (finish_titlebar_list): Fixed menu
	priorities

2001-03-03  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/gfx_pixmap_scale.c (WRITE_YPART): Fixed bilinear filter

	* src/include/gfx_resource.h: Added a backup for the visual pic's
	undithered data, to be used for cumulative drawing

	* src/engine/kernel.c (kfree): kfree now sets the freed data to
	NULL, to allow checking for invalid kernel handles

2001-03-02  Solomon Peachy <pizza@shaftnet.org>
	* src/include/sound.h:  Stripped out some useless midimap stuff.
	* src/sound/midi_mt32.c:  Fixed a bunch of things from patch.001
                                   - reverb definitions correctly loaded.
			           - sends default reverb on init
				   - sends default volume on init
	* src/sound/soundserver_null:  Minor changes:
		- reverb no longer set on every song load.
		- allstop() moved from SONG_INIT to SONG_PLAY.

2001-03-03  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/sound/soundserver_null.c (sound_null_server): The sound
	server now only sets loops to -1 if the song ended "naturally".

2001-03-02  Solomon Peachy <pizza@shaftnet.org>

        * src/sound/soundserver_null.c:  A cleaner way of handling the
        playflag for the rhythm channel.  Sound server now returns
        polyphony in the SOUND_COMMAND_TEST call.
	[that makes twice a cvs commit has conflicted this out of
         existence...]
        * src/sound/midi_device.c
          src/sound/midi_device.h
          src/sound/midi_mt32.c:  Addition of a polyphony value to the
        midi_driver struct.  Cleaner debug output for midi events.
        Device specific in midi_mt32, rest is in midi_device.

2001-03-02  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/sound/soundserver_null.c (sound_null_server): Sound server now
	waits _before_ executing MIDI command rather than _after_ doing so.

	* src/gfx/drivers/xlib_driver.c (x_get_event): Translated X mouse
	button events appropriately

	* src/sound/sound.c (sound_command): Successful sound tests now
	return 32

	* src/sound/soundserver_null.c (sound_null_server): Applied patch
	by Rickard to improve sound server

2001-03-02  Solomon Peachy <pizza@shaftnet.org>

	* include/Makefile.am
	  include/midi_device.h
	  include/midi_mt32.h
	  sound/Makefile.am
	  sound/midi_device.c
	  sound/midi_mt32.c
	  sound/soundserver_null.c

	Now we have an abstracted midi_device API, with things like
	midi_open, midi_noteon, midi_volume, etc.

	Also changed -- Ignoring the Rhythm channel is now a
                        device-dependent flag.
		     -- ...channel masks were broken from day 1.
                     -- Addition of an allstop() when switching songs.

2001-03-02  Solomon Peachy <pizza@shaftnet.org>

	* src/include/sound.h
	  src/sound/oldmidi.c
	  src/tools/sciunpack.c:  Will generate MIDI0 songs with the
                                    appropriate 'play flag'.
	* src/include/soundserver.h:  Added a polyphony count for each
                                         channel

	* src/sound/midi_mt32.c
	  src/include/midi_mt32.h
	  src/sound/soundserver_null.c:  Tracks polyphony
					 Adheres to the 'play flag' per
                                            channel per device.

2001-03-02  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/sound/midiout_alsaraw.c: Compilation fixes for alsaraw
	* src/config.l (parse_option): Minimal bug fix for silly error message

2001-03-01  Solomon Peachy <pizza@shaftnet.org>

	* src/sound/Makefile.am
	  src/sound/midiout_alsaraw.c:  Added ALSA rawmidi out support;
				        Currently hardwired to c0d0.

2001-03-01  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/config.l: Simplified config.l management

	* configure.in: Added check for ALSA (originally by Chris Lansdown)

2001-03-01  Solomon Peachy <pizza@shaftnet.org>
	* sound/midi_mt32.c:  Fixed a overflow problem with reverb.
	                      All sysex-generating events now
                                 incorporate the necessary delays.
                              Cleaned up return values.
			      Added better debugging output.
			      Added necessary delays to avoid mt32
                              buffer overflows on sysex dumps.
	* sound/midiout.c:    Fixed a D'oh! on midiout_write_event
	* sound/midiout_unixraw.c:  Better debug output.
	* sound/soundserver_null.c: Better debug output.
				    Error checking on midi_writes
	* include/midiout.h
	  sound/Makefile.am
	  sound/midiout_unixraw.c:  Added in the unixraw driver.
	* sfx/ROADMAP:  Documentation updates.

2001-03-01  Solomon Peachy <pizza@shaftnet.org>

	* include/midiout.h
	  sound/midiout.c:  Reworked the midiout architechure.  Now
                            supports multiple midiout drivers.
        * main.c:  Added midiout know-how to the cl parser.

2001-02-28  Solomon Peachy <pizza@shaftnet.org>

	* include/midi_mt32.h
	  sound/midi_mt32.c
	  sound/soundserver_null.c:   Added reverb support

2001-02-28  Solomon Peachy <pizza@shaftnet.org>

	* include/Makefile.am
          sound/Makefile.am:        New files added to build.
	* include/sound.h:          Beginnings of sound driver.
	* sound/soundserver_null.c: Tweaked debug output
	* include/midi_mt32.h
	  sound/midi_mt32.c:        mt32 midi code
	* include/midiout.h
	  sound/midiout.c:          midiout framework & null driver

	FreeSCI now has near-complete MT32 support!

	Basically, the midi "driver" just discards stuff instead of
        actual writes.  Only thing currently lacking is reverb.

2001-02-28  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kgraphics.c (kAnimate): Make all dynviews invulnerable
	wrt to annihilate() during Animate()

2001-02-27  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kgraphics.c (_k_make_dynview_obj): Made initial widgets
	impervious to snapshots (and, thus, annihilate() operations)

	* src/engine/kmenu.c: Added George Reid (FreeBSD package maintainer)
	to the list of contributors

2001-02-26  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/savegame.cfsml (gamestate_restore): Fixed savegames.
	Updated savegame version number to 2. Savegames now also remember the
	active port and background pics.

	* src/gfx/sci_widgets.c (sciw_set_menubar): Fixed menubar line

	* src/gfx/widgets.c (_gfxwop_container_set_visual): List widgets
	no longer dirtify their parents during set_visual() if they are empty

	* src/engine/klists.c (listp): When verifying lists, sizes of both 6
	and 8 (6 +2 bytes heap padding) are allowed now.

	* src/config.l: Added new alpha threshold option

	* src/gfx/operations.c (gfxop_new_text): Fixed text rendering for
	pixels below the bottom line

2001-02-25  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kgraphics.c (kDrawControl): Added full redraw to
	DrawControl()
	(kCanBeHere): Fixed collision checking
	(_k_draw_control): Fixed trivial OB1 issue when determining control size

	* src/engine/kevent.c (kGlobalToLocal): G2L and L2G now use port->zone
	instead of port->area

	* src/config.l: Fixed config system to allow numeric values in some
	places (as described in the original documentation)

	* src/gfx/gfx_support.c (ALPHA_FACTOR1): Increased crossblit
	alpha threshold to 0x81

2001-02-24  Solomon Peachy <pizza@shaftnet.org>

	* README,
	  doc/man/sciv.6:  fixed some documentation to reflect reality.

2001-02-23  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kgraphics.c (kAnimate): Sped up pic transition animations

	* src/gfx/gfx_crossblit.c: Removed dithering from crossblitter

	* src/gfx/drivers/xlib_driver.c (xlib_init_specific): Fixed index color
	mode in the xlib driver

	* src/gfx/widgets.c (_gfxwop_dyn_view_compare_to): Implemented
	precedence forcing for dynviews

2001-02-22  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/gfx_pixmap_scale.c: Fixed bug that would break some less
	common scaling factors, along with 1x1

	* src/gfx/resource/sci_pic_0.c (_gfxr_draw_line): Re-formulated pixmap
	line drawing macro expansion to work around gcc bug on ia32

	* src/engine/kmenu.c (kSetMenu): Added support for multiple actions in
	SetMenu()

2001-02-21  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/gfx_support.c (ALPHA_FACTOR2): Added linear filter

	* src/include/sciresource.h: Split resource.h in two

	* src/include/gfx_operations.h: Removed scroll offset

	* src/engine/kgraphics.c (kDoBresen): Movement counter in mover objects
	is now increminated each time DoBresen() is run

2001-02-20  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kgraphics.c (kAddToPic): Always reparentize dynview list
	after AddToPic()

2001-02-19  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/said.y (aug_find_words): Altered word finding to consider
	base words in relative clauses as relative words, too

	* src/gfx/widgets.c: Factorized equivalence relation between strings

	* src/engine/kgraphics.c (_k_view_list_dispose_loop): Dropped views may
	draw to the control map if flagged appropriately (like picviews)

	* src/gfx/operations.c (_gfxop_init_common): Fixed invalid flag setting

	* src/engine/kgraphics.c (_k_view_list_dispose_loop): Restart operation
	after gfxw_annihilate()

2001-02-15  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/drivers/xlib_driver.c (xlib_draw_line): Fixed typo
	causing endless loop
	(xlib_grab_pixmap): Fixed remaining memory holes in xlib driver

2001-02-14  Solomon Peachy <pizza@shaftnet.org>

        * src/sound/soundserver_null.c
          src/sound/sound.c
          src/include/soundserver.h

	Implemented midi event 0xb? 0x4c -- ResetOnLoop.
	Fixed some logic problems handing midi eventx 0xb? and
	 Absolute Cues.
	Added some debug output to display non-trapped midi events.
        Some will be removed later when I print out the MIDI
        implementation charts for the MT32.

2001-02-14  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/drivers/xlib_driver.c: Fixed most of the remaining issues
	with the xlib driver

2001-02-11  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/vm.c (send_selector): Added support for matching
	objects rather than object/selector pairs

2001-02-10  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/scriptdebug.c (disassemble): Fixed reported jump
	target values

	* src/gfx/menubar.c (menubar_add_menu): Search for beginning
	of description string before checking for hbar

2001-02-09  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/sound/soundserver_null.c (sound_null_server): No longer
	decrement number of loops if looping indefinitely

2001-02-08  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/resource/sci_cursor_0.c: Fixed SCI0 cursors to use
	2 colors only

2001-02-07  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/sound/sound.c (sound_command): Implemented a better song
	transfer protocol

2001-02-01  Christoph Reichenbach  <jameson@linuxgames.com>

	* doc/sci.sgml: Added missing Said() rule
	Added pic documentation
	Added Huffman decoding algorithm
	Mentioned anyword and words with types 0x100, 0x200, 0x400
	Updated some doc stuff

2001-01-29  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/resmgr.c (gfxr_pic_xlate_common): Return unscaled
	pic if requested

	* src/sound/oldmidi.c: Cleanups and bug fixes by Rickard Lind

2001-01-27  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/include/gfx_tools.h: Removed 'inline' in function declaration

	* src/gfx/gfx_line.c (DRAWLINE_FUNC): Fixed line drawing on big-endian
	processors

2001-01-25  Christoph Reichenbach  <jameson@linuxgames.com>

	* doc/man/sciv.6: Updated man page for the 0.3.1 release

	* src/engine/kevent.c (scancode): Added scancode converter
	for cases where ALT-something is used

2001-01-23  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/widgets.c (_gfxwop_ordered_add): Fixed adding items
	into ports
	(_gfxwop_port_add): Added missing return statement

	* src/tools/Makefile.am: Merged 'sciunpack' with 'listwords',
	'scriptdump', and 'vocabdump'. Got rid of 'classes'.

2001-01-22  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kgraphics.c (kAnimate): Dropping a dynview in the
	active port causes the dynview list to be re-parentized

	* src/gfx/widgets.c (gfxw_annihilate): Disposing dynviews now
	also disposes graphics drawn over them

	* src/scicore/tools.c (sci_gettime): Petr's alternate sci_gettime
	for Win32 was added

	* src/engine/scriptdebug.c (c_heap_dump_all): Added heapdump_all
	command to debug memory lossage in Hoyle

2001-01-21  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/resource/sci_view_0.c (gfxr_draw_view0): Allocating 0
	loops changed to allocate /some/ memory

	* src/engine/game.c, src/engine/cfsml.pl, src/engine/savegame.cfsml:
	Fixed various (all?) memory leaks

2001-01-20  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/gfx_resource.c (gfxr_free_view): Fixed memory leak
	when freeing views

2001-01-19  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/scicore/tools.c (sci_find_next): Implemented find_first/
	find_next for Win32 and UNIX

	* src/engine/kscripts.c (kClone): Fixed usage of write_selector
	for ANSI C

	* src/include/resource.h and scitypes.h: Fixed Win32 support

2001-01-18  Lars Skovlund  <lskovlun@image.dk>

	* src/gfx/font.c (gfxr_font_calculate_size): Made font renderer
	  accept NULL strings.

2001-01-16  Solomon Peachy <pizza@shaftnet.org>

	* src/engine/ksound.h: Implemented _K_SOUND_VOLUME

	* src/include/engine.h: Added volume/mute to game state

	* src/sound/sound.c:  Implemented VOLUME and MUTE commands

	* src/sound/soundserver_null.c:  Debug output on VOLUME & MUTE

2001-01-15  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kgraphics.c (kAnimate): Fixed pixmap freeing

	* src/scicore/resource.c: Fixed memory leak in resource management

	* src/engine/grammar.c: Fixed memory leak when merging lists

	* src/scicore/console.c (con_init_dmalloc): Added console interface
	to dmalloc

2001-01-15  Lars Skovlund  <lskovlun@image.dk>

	* Added extended Clone() functionality.

2001-01-15  Christoph Reichenbach  <jameson@linuxgames.com>

	* Applied Solomon's patches for dmalloc support, a free(NULL)
	fix, and widget->free() to widget->widfree()

	* Countless minor fixes all over the place (had a look at -Wall
	output)

2001-01-14  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/main.c (init_gfx): Fixed use of interpreter version

2001-01-13  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kgraphics.c (kAnimate): No reparentization for non-
	empty dynview lists

	* src/engine/kgraphics.c (kAnimate): Caught the case where
	dynviews invoke DrawPic

2001-01-12  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kgraphics.c (_k_draw_control): Fixed list control
	support for list addresses beyond 0x8000

	* src/gfx/resmgr.c (gfxr_get_pic): Fixed support for unscaled
	pic0

2001-01-11  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/operations.c (_gfxop_set_pic): Fixed support for
	pic0_unscaled

	* Removed dependancies on libpng and libglib

	* src/gfx/resource/sci_pic_0.c (gfxr_dither_pic0): Truly limited
	range of colors to 16 colors if requested

	* src/gfx/widgets.c (_gfxwop_visual_free): Fixed warnings/errors;
	fixes suggested by Petr Vyhnak

2001-01-10  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/resource/sci_resmgr.c (gfxr_interpreter_calculate_pic):
	Fixed scaled pic drawing to use actual options

	* src/main.c (main): Cleanup, new options and support for config.l
	stuff was added

2001-01-09  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/config.l: Added support for new config options (see README)
	to enable various features of the new gfx subsystem

	* src/engine/kgraphics.c (kAnimate): Auto-reparentized dynviews
	in every Animate() step.

2001-01-08  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/tools/Makefile.am: Enabled SCI tools again

	* src/gfx/menubar.c: Beautified menubar

2001-01-07  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/savegame.cfsml (read_any_widget): Missing prototype
	and missing return value fixed, as suggested by Petr

	* src/gfx/operations.c (gfxop_set_color): Fixed color problems
	in color index mode

2001-01-06  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kernel.c (kMemoryInfo): MemoryInfo mode 4, by
	Petr Vyhnak

	* src/gfx/widgets.c (_gfxwop_container_free_tagged): widget fix
	by Petr Vyhnak

	* src/engine/cfsml.pl: Updated cfsml to (apparently) conform
	to version 0.8 of the spec (boostet spec's version number
	appropriately :-)

2001-01-03  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/widgets.c (_gfxwop_container_draw_contents): Fixed
	clipping bug introduced by yesterday's fixes

	* src/gfx/gfx_resource.c: Fixed drawing to 24 or 32 bpp displays
	on big endian machines

2001-01-02  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/widgets.c (_gfxwop_container_add_dirty): Dirty rects are
	now stored in containers even if they're outside of the container's
	bounds

	* src/engine/kgraphics.c (_k_make_dynview_obj): Fixed priority bug
	(kDrawPic): Cumulative DrawPic now frees dynview lists

	* src/gfx/menubar.c (menubar_map_pointer): Fixed menu mouse
	pointer support

	* src/gfx/sci_widgets.c (sciw_set_status_bar): Fixed memory
	leak

	* src/include/resource.h: Applied BREAKPOINT() patch VC++ by
	Petr (and some other fixes)

	* src/engine/kmenu.c (kMenuSelect): Fixed priority problems with
	menu bar

2001-01-01  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kmenu.c (kMenuSelect): Re-enabled MenuSelect().

	* src/gfx/widgets.c (_gfxw_container_id_equals): Added support for
	MULTI_ID

	* src/engine/kgraphics.c (kAddToPic): Dynviews are now moved behind
	picviews in the draw list.
	(kAddToPic): Implemented alternate AddToPic() invocation
	(kShakeScreen): Fixed ShakeScreen to unclip the area it draws to

2000-12-31  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kgraphics.c (kAnimate): Fixed usage of free_tagged()
	for dynviews (and free_tagged() itself)

	* src/gfx/widgets.c (_calc_needmove): Fixed snapshot problems with
	text widgets claiming a greater size than they have

	* src/gfx/operations.c (_gfxop_set_pointer): Fixed pointer issues in
	CB1

	* src/gfx/resmgr.c (gfxr_get_pic): Fixed problems with flags and
	default palette not being accounted for when determining the
	availability of a pre-rendered pic

	* src/engine/kgraphics.c: Considerably simplified the use of widgets
	in kgraphics.c

	* src/gfx/widgets.c (_gfxwop_port_free): Fixed port freeing to update
	the visual appropriately.

	* src/gfx/gfx_test.c (sciprintf): Fixed gfx_test's compiles with the
	updated headers

2000-12-31  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/vm.c (script_instantiate): Squashed another old interpreter bug.

2000-12-30  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/resource/sci_pic_0.c (_gfxr_fill): Added extra check to make
	sure non-empty data is not filled twice

	* src/engine/said.y (aug_contains_word): Added support for ANYWORD

	* src/engine/kgraphics.c (kDisplay): Reimplemented Display
	(kSetJump): Fixed SIGFPE on Alpha
	(_k_view_list_dispose_loop): Dropped dynviews now have their ID removed

	* src/engine/scriptdebug.c (c_dump_words): Added a command to dump all
	words from vocab.000

	* src/gfx/sci_widgets.c (sciw_new_edit_control): Added blinking to
	edit controls

2000-12-29  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kgraphics.c (kGraph): Line drawing now expects absolute
	coordinates, like Sierra SCI
	(_k_draw_view_list): Made view lists honor the HIDDEN view flag more
	thoroughly

	* src/gfx/operations.c (_gfxop_draw_pointer): Fixed inconsistency when
	changing mouse pointer while off-screen

2000-12-29  Lars Skovlund  <lskovlun@image.dk>

	* src/gfx/resource/sci_pic_0.c (_gfxr_fill): Fixed another SQ3 intro
	  bug
	* src/engine/kernel.c (kGetTime): Added new GetTime() semantics.
	  Docs coming RSN.

2000-12-29  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kgraphics.c: Allowed dynviews and picviews to be relocated
	into ports
	(kAnimate): Added automatic dynview/picview relocation when the port they
	were contained in is removed

	* src/gfx/widgets.c (gfxw_new_dyn_view): Fixed z coordinate support

2000-12-28  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kgraphics.c (assert_primary_widget_lists): Fixed OB1 bug for
	dynviews (not a bug, actually)

	* src/gfx/resmgr.c (gfxr_get_pic): Fixed missing mode hash which used to
	cause a segfault in the sq3 intro

	* src/gfx/resource/sci_pic_0.c (gfxr_clear_pic0): Fixed missing cleanup
	caused by the last patch

2000-12-25  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/resource/sci_pic_0.c (gfxr_clear_pic0): Fixed problems with
	SCI0 pic titlebar priorities

2000-12-24  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kgraphics.c (kAddToPic): Added support for pic views

	* src/gfx/widgets.c (_gfxwop_container_add): Fixed spurious warnings
	when adding a widget to an unsorted container

	* src/gfx/operations.c (_gfxop_set_pic): Fixed control map handling

	* src/engine/scriptdebug.c (c_gfx_show_map): Implemented the
	gfx_show_map command

	* src/gfx/widgets.c (gfxw_hide_widget): Added functionality to show and
	hide widgets, and used it to fix several bugs.
	(_gfxwop_dyn_view_compare_to): Fixed y comparison

	* Misc fixes as suggested by Petr Vyhnak

	* src/engine/kfile.c: Added first_file() and next_file() implementations
	for win32 by Petr Vyhnak

2000-12-23  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/widgets.c (_gfxwop_dyn_view_draw): Fixed dynviews being
	drawn to incorrect coordinates
	(gfxw_remove_ID): Fixed some of the problems related to dynviews
	being "forgotten"

	* src/engine/game.c (_reset_graphics_input): Fixed problems with
	text boxes being drawn under other widgets

	* src/gfx/drivers/ggi_driver.c (ggi_update): Fixed priority buffer
	propagation from the back buffer to the front buffer

2000-12-22  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/widgets.c (gfxw_new_dyn_view): Fixed priority management

	* src/gfx/gfx_line.c: Implemented line drawing for drivers that need
	it

	* doc/sci.sgml: Merged Ravi's updated docs into our docs

	* Various fixes by Petr Vyhnak (resource code, graphics code).

2000-12-18  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/scriptdebug.c: Added commands to view the dynviews,
	picviews, and (if widget debug is enabled) widget list.

2000-12-17  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/drivers/ggi_driver.c (ggi_init): Fixed a bug in the default
	ggi initialization caused by subtle libggi API changes.

2000-12-16  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/operations.c (gfxop_scan_bitmask): Implemented
	functionality for OnControl() and enabled OnControl() stuff

	* src/engine/scriptdebug.c (script_debug): Re-enabled the debugger
	(for text input only)

	* src/include/gfx_drivers_list.h: #ifdef'd the ggi driver

2000-12-11  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kgraphics.c: Implemented display lists

	* src/gfx/widgets.c (gfxw_new_dyn_view): Fixed dynamic views somewhat

2000-12-10  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/scicore/decompress1.c: Implemented DCL-EXPLODE

2000-12-02  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/widgets.c (_gfxwop_container_draw_contents): Altered the
	drawing algorithm to draw non-ports first, then ports.

	* src/engine/kgraphics.c: Added BaseSetter and SetNowSeen
	(kDrawCel): Changed cel drawing to draw to the current port

	* src/gfx/sci_widgets.c (sciw_new_list_control): Added list controls

	* src/gfx/widgets.c (_gfxwop_rect_draw): Fixed OB1 bug in rect
	drawing (OB1x1, actually ;-)

	* src/gfx/drivers/ggi_driver.c (ggi_get_event): Fixed long-standing
	caps lock bug in the gii input driver

	* src/gfx/sci_widgets.c (sciw_new_edit_control): Added support for
	edit controls (and a few other controls)

2000-12-01  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/operations.c (gfxop_draw_rectangle): Fixed minor display
	problem

	* src/gfx/sci_widgets.c (sciw_new_button_control): Added button
	controls

	* src/gfx/widgets.c (_gfxwop_view_draw): Views are now drawn to the
	appropriate position

2000-11-26  Christoph Reichenbach  <jameson@linuxgames.com>

	* doc/sci.sgml: Added Petr's stuff, added a chapter about resource
	files, minor updates and fixes

2000-11-25  Christoph Reichenbach  <jameson@linuxgames.com>

	* THANKS: Added Petr Vyhnak

	* src/engine/kmenu.c: Updated the "About FreeSCI" menu entry stuff

	* src/engine/kgraphics.c (kCelHigh, kCelWide): Added checks for
	calls with 3 != argc

2000-11-24  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/gfx/widgets.c: Changed the widget system to a more OO-based
	structure.

2000-11-10  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/include/gfx_widgets.h: Renamed gfx_state.h to gfx_widgets.h

	* src/include/gfx_state_internal.h (WIDGET_COMMON): Started writing
	down ideas for a better widget implementation

	* src/gfx/resource/sci_pic_0.c (_gfxr_auxbuf_fill_helper): Replaced
	bpt assembler operation with a decent BREAKPOINT();

2000-09-19  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/kgraphics.c: Fixed small SCI01 pic goof
	                          Implemented GRAPH_REDRAW_BOX
	* src/engine/kfile.c: Fixed reversed FileIO parameters
	* src/engine/vocab.c: Added support for SCI01 vocabulary

2000-09-16  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/kernel.c: Fixed Memory() bug and warnings

2000-08-15  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/kfile.c: Added (SCI01) FileIO kernel call
	* src/engine/kernel.c: Added (SCI01) Memory kernel call
	* src/engine/kevent.c (kGetEvent): Added break-on-event support
	* src/scicore/resource.c (loadResources): Fixed an autodetection problem

2000-08-07  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/said.y: Added support for 'word1 < [ word2 ]' in the
	parser (same semantics as 'word1 [ < word2 ]')

2000-06-25  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/include/resource.h (getInt16): Fixed getInt16() for some little
	endian RISC architectures

2000-06-13  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kgraphics.c (kCanBeHere): Slightly less restrictive
	(like on_control())

	* src/graphics/font.c (get_text_size): Switched back to old SCI be-
	haviour

2000-06-11  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kgraphics.c (_k_make_view_list): Picviews no longer leave
	white control zones if their signal flag "IGNORE ACTOR" is set

2000-06-10  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/vm.c: superClass properties are now set to the address of
	the super class even for static objects and classes

	* src/graphics/con_io.c (con_input): Fixed cursor key support for the
	on-screen console

	* src/engine/scriptdebug.c (c_objs): Added the 'objs' console command
	to list all objects and clones by name

2000-06-09  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/graphics/menubar.c (menubar_draw_menu): Backing up the menu
	ports now backs up the priority map

	* src/engine/vm.c (run_vm): Fixed(?) support for successive linking
	on multiple sends

2000-06-08  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kfile.c (kFOpen): Added resource directory fallbacks
	for external data files

	* src/scicore/vocab_debug.c (vocabulary_get_knames0): Fixed bug that
	would remove support for very early SCI games with lots of kernel
	functions missing

	* src/engine/kevent.c (kGetEvent): GetEvent() now invalidates the
	parser event

2000-06-06  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kstring.c (kParse): Fixed generic invoke_selector
	problems manifesting here

2000-06-06  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/kernel.c (kRestartGame): Restarting would trash the
	save_dir string. Fixed.
	* src/include/versions.h: Fixed strange-looking SCI01 version numbers
	(1.1024.072)

2000-06-05  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/scicore/console.c (sciprintf): Fixed support for classic libc
	vsnprintf

	* src/engine/kgraphics.c (_k_make_view_list): Internal priority is
	now set for picviews if the original priority was less than or equal
	to zero

	* src/graphics/font.c (get_text_size): Algorithm now works like the
	draw_text algorithm, fixing some window size problems

	* src/engine/kgraphics.c (kDirLoop): Angles are now modded by 360

2000-06-04  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kgraphics.c (kOnControl): Fixed OnControl() to test one
	pixel less in each direction

	* src/engine/vm.c (send_selector): Fixed send_selector() for variable
	selector sends with &rest active

	* src/engine/kgraphics.c (_cmp_view_object): Changed view object
	sorting to take the original order into account when both y coordinates
	are identical

2000-06-03  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/vm.c (run_vm): The 'call' operation now enforces the local
	variable context it was called from

	* src/graphics/font.c (text_draw): grayed-out text is now displayed
	correctly

	* src/graphics/menubar.c (menubar_add_menu): Menu items which were
	last on the list and didn't have a right part weren't added correctly.
	Fixed.

	* src/engine/kstring.c (kFormat): Fixed kFormat() support for
	minimum widths for numbers
	(kSaid): Altered Said() to use the event::claimed selector rather
	than an internal status variable to store whether the event has
	been claimed

	* src/engine/vm.c (_lookup_selector_functions): Cloned objects
	didn't get their parent objects' selector functions checked. Fixed.

	* src/engine/kgraphics.c (kCanBeHere): Altered CanBeHere to return
	part of the object's signal selector or 1, and to scan one less line
	(kTextSize): TextSize() now returns the maximum width instead of the
	calculated width if the maximum width was specified

2000-06-02  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kgraphics.c (kDoBresen): Removed explicit handling of
	b_movCnt in DoBresen() and InitBresen()

	* src/engine/scriptdebug.c (c_backtrace): Fixed varselector entries
	in stack traces

	* src/graphics/menubar.c (menubar_add_menu): Added support for tag
	assignments before the start of the right part of a menu item

	* src/graphics/window.c (draw_frame): Fixed frames not being clipped
	correctly before being drawn

	* src/graphics/engine_graphics.c (graph_on_control): Fixed a clipping
	bug that would cause memory beyond the allowed area to be read

	* src/engine/kgraphics.c (_k_make_view_list): During the picview
	list generation, the internal priority is set to the actual generated
	priority (unless the object doesn't have an nsRect), but not written
	back to the object. Also, a 0xf-colored control block is written in
	that case (nsRect and initial picview list generation), as specified
	in Lars' specs.

2000-06-02  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/scriptdebug.c (disassemble): When disassembling property
	  manipulation instructions ([aps]To[aps]), now displays the property
	  name in addition to the property offset.
	* src/engine/script.h: The opcode enum is now complete (I think).

2000-06-01  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/klists.c (kDeleteKey): Now returns a result

2000-06-01  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kgraphics.c (kCanBeHere): Fixed clipping not to check for
	the IGNORE_ACTOR flag on the object being clipped

	* src/include/kernel.h (VIEW_PRIORITY): Fixed priorities once again

	* src/graphics/input.c (sci_key_xlate): Improved key code translation

	* src/engine/savegame.cfsml: Added some stuff to keep track of savegame
	versions

	* src/graphics/font.c (_text_draw_line): Fixed font drawing to draw up
	to sizeof(unsigned long) pixels

	* src/engine/game.c (_reset_graphics_input): Set default font priority
	to -1 for the standard ports

	* src/engine/scriptdebug.c (c_visible_map): Fixed set_vismap to
	work in on-screen console mode
	(c_showfont): Added 'showfont' command to display a complete font
	set

2000-05-28  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kgraphics.c (_k_invoke_view_list): Implicit base
	setting now occurs before the object in question is invoked.

	* src/engine/kernel.c (kMemoryInfo): Fixed MemoryInfo to handle
	parameters 2 (largest available hunk) and 3 (free hunk total).
	For the time being, 0xffff is returned.

	* src/engine/kstring.c (kFormat): Fixed Format to handle '%u'
	(kSaid): All matches fail if Said() was successful previously

2000-05-27  Christoph Reichenbach  <jameson@linuxgames.com>

	* doc/sci.sgml: Various documentation updates

2000-05-23  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/include/menubar.h: Fixed menus to work with Said specs of
	up to 64 bytes

	* src/graphics/graphics_glx.c : Implemented the glx target

2000-05-22  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/include/kernel.h (VIEW_PRIORITY): Fixed priorities

	* src/tools/Makefile.am (sciconsole_LDADD): Another build fix

	* src/engine/vm.c (game_run): Changed the Restore() to use replay()
	after restoring the game state

	* src/engine/kfile.c (kSaveGame): Fixed a savegame index bug

2000-05-21  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/graphics/engine_graphics.c (graph_draw_control_icon): Fixed bug in
	icon control drawing using priority 16 rather than -1

	* src/include/uinput.h: Fixed function key keycodes

	* src/include/kernel.h (VIEW_PRIORITY): Fixed priority calculation

	* src/engine/said.y: Another kludge to emulate LR(2) behaviour

	* src/sound/soundserver_null.c (verify_pid): Process aliveness testing
	is now done with kill() instead of examining /proc

2000-05-20  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kfile.c (update_savegame_indices): Added sorting for
	savegames

	* src/engine/kmenu.c (kMenuSelect): TAB now matches C-I in the menu
	bar

	* src/graphics/menubar.c (menubar_set_attribute): Added support for
	said specs in the menu bar

	* src/engine/game.c (script_init_engine): Added more checks for old
	script data

2000-05-20  Lars Skovlund  <lskovlun@image.dk>

	* src/engine/vm.c (run_vm): callk now ignores &rest arguments for old
	  script versions.
	* src/engine/game.c (script_init_engine): Called detect_early_versions() before resetting version_lock_flag. Fixed.

2000-05-20  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/vm.c (execute_method): The local variable block is now
	set to the remote script when using calle

2000-05-19  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/scicore/vocab.c (vocab_get_suffices): Fixed suffix vocabulary

2000-05-18  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/game.c (script_init_engine): Fixed a rampaging >=
	by replacing it with a <=.

	* src/engine/said.y (said): Implemented the augmenting algorithm

2000-05-15  Dmitry Jemerov  <yole@nnz.ru>

	* src/engine/game.c (script_init_engine): Fixed the bug causing
	"Invalid class number..." messages in script_init_engine() when
	trying to load scripts with no classes.

        * src/main.c: The version specification in the configuration
        file didn't work. Fixed.

2000-05-15  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kgraphics.c (kEditControl): Fixed a bug that would
	cause edit boxes to be dotted at all times

	* src/engine/grammar.c (_vocab_add_rule): More fixes to Parse()

2000-05-14  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/said.y: Significant improvements in Said() tree building.

2000-05-13  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/grammar.c (_vocab_build_gnf): Changed the list writing
	order. This should make Parse() behave more like the original.

2000-05-11  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/graphics/engine_graphics.c (graph_draw_control_control): Fixed
	some color value bugs
	(graph_draw_control_text): Added dotted selectable text frames

	* src/engine/kmath.c: Implemented functions similar to TimesTan()
	and TimesCot().

	* src/engine/kgraphics.c (initialize_bresen): Removed the chased_obj
	code; chasing the player is explicitly handled by SCI bytecode.
	Counting b_movCnt down instead of up made sure this was triggered
	correctly.

2000-05-10  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/grammar.c: Implemented Parse() in a sensible way

2000-05-07  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kgraphics.c (kDoBresen): Monsters now chase the player
	in QfG1

2000-05-06  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/graphics/engine_graphics.c (graph_update_box): Fixed display bug
	that could cause missed display updates and memory corruption

	* src/engine/vm.c (run_vm): lea with its first operand's 4th bit set
	now uses twice the accumulator value for relative offsetting

	* src/engine/savegame.cfsml: Fixed savegame bugs related to incomplete
	picview information being stored

	* src/engine/kgraphics.c (_k_draw_control): List control now behaves
	like the Sierra SCI one

	* src/engine/kernel.c: Completely fixed restarting (?)

	* src/engine/game.c (script_init_engine): The interpreter no longer
	recurses in script loading while loading script 0, fixing some bugs in
	the restart code

	* src/graphics/graphics.c (draw_view0): Pictures with negative priority
	are now drawn correctly

2000-05-03  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kgraphics.c (_k_make_view_list): Picviews no longer
	have their priority implicitly calculated
	(_k_make_view_list): Negative priorities are treated correctly now
	for views

	* src/include/uinput.h: Fixed key management to behave more like
	Sierra SCI

	* src/engine/kscripts.c: Write/read attempt to invalid selectors
	will now dump more debug info

	* src/engine/kgraphics.c: Several fixes for games that don't have
	the 'z' and 'completed' selectors

	* src/engine/kgraphics.c (_k_make_view_list): View lists are now
	sorted by 'y', fixing several priority bugs.

2000-05-02  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/engine/kgraphics.c (kOnControl): Made OnControl cooperate with
	SQ3
	(kTextSize): Fixed TextSize() for empty strings (plus some signedness
	fixes)

	* src : Split core/ into scicore/ and engine/

2000-04-28  Lars Skovlund  <lskovlun@image.dk>

	* src/core/kmath.c (kGetDistance): Implemented optional fifth parameter
	* src/core/kstring.c (kSaid): Made Said() ignore NULL pointers

2000-04-25  Lars Skovlund  <lskovlun@image.dk>

	* src/core/kGraphics: Changed CanbeHere() yet again.
	* src/core/scriptdebug.c: Added range checking for set_vismap

2000-04-24  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/core/kgraphics.c (kCanBeHere): CanBeHere now returns OnControl()
	on success (or 1 if OnControl() returned 0).

	* src/core/kstring.c (kSaid): Minor fixes to the simplified Said()
	code

	* src/core/scriptdebug.c (c_debuglog): Added debuglog option +/- S
	for Said specs (the part not added by Dmitry)

	* src/core/kgraphics.c (_k_save_view_list_backgrounds): Fixed bug
	which set underBits to 0xffff by clipping loop and cel data before
	saving the background.
	(_k_make_view_list): Fixed clipping mechanism employed while building
	the view list

	* src/graphics/graphics.c (view0_base_modify): Base modify used
	identical values for x and y offset (excessively wrong). Corrected.

	* src/core/kgraphics.c (kNumCels): NumCels() now accepts illegal
	loop values, like most other kernel functions (clipped to the maximum
	loop)
	(_k_base_setter): The same for BaseSetter()

	* src/graphics/engine_graphics.c (graph_draw_selector_icon): Drawing
	icon controls no longer uses the cel adjustments, fixing graphical
	glitches in several miniature menus.

2000-04-22  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/core/kgraphics.c (kCanBeHere): Fixed several bugs in CanBeHere().

	* src/core/scriptdebug.c (c_viewinfo): Minor fix to the viewinfo
	console command

	* src/core/kmath.c (kSinDiv): Fixed SinDiv and CosDiv to take their
	parameters in the correct order

	* src/core/simplesaid.c (simplesaid): Improved handling of bracketized
	expressions

2000-04-21  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/main.c (get_readline_input): Inputting C-D is now handled like
	entering "quit" when not using the OSD.

2000-04-19  Dmitry Jemerov  <yole@nnz.ru>

	* Some more build fixes. Hopefully everything is stable now.

2000-04-18  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/core/simplesaid.c (simplesaid): Fixed minor bug

2000-04-17  Dmitry Jemerov  <yole@nnz.ru>

	* Updated project files.

	* Converted freesci/Win32 to use dynamic linking. Made a lot of
	little changes all over the place.

	* src/tools/sciunpack.c: Brought back the changes lost because of
	Rink Springer's DOS port.

	* portable_howto.txt: New file.

2000-04-17  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/core/vocab.c (vocab_lookup_word): Fixed several bugs in extended
	(suffix-using) word lookup.

2000-04-16  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/core/kgraphics.c (_k_make_view_list): Fixed the "out of hunk"
	problems once and for all (I hope) by keeping a copy of the underbits.

	* src/core/kscripts.c (kIsObject): Caught IsObject(0xffff), thus
	preventing an unaligned read.

	* src/core/scriptdebug.c (c_mem_info): Added hunk information to
	the meminfo console command

	* src/core/simplesaid.c: Implemented a simple and preliminary almost-
	Said() implementation that handles some of the basic expressions.

	* src/core/kstring.c (kParse): A pointer to the event passed to
	Parse() is now stored and later used in Said() to claim the event
	on matches.

2000-04-16  Lars Skovlund  <lskovlun@image.dk>

	* src/core/kgraphics.c (k_set_now_seen): Fixed warning messages caused
	  by my new code

2000-04-16  Lars Skovlund  <lskovlun@image.dk>

	* src/core/vocab_debug.c (vocabulary_get_knames1): Fixed kernel names
	  loading for Christmas Card 1990 (Season's Greetings)
	* src/core/kgraphics.c (kAnimate): Fixed problem with the main menu
	  in Hoyle's Book of Games.

2000-04-14  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/core/scriptdebug.c (c_sim_parse): Implemented a 'simparse'
	console command.

2000-04-14  Lars Skovlund  <lskovlun@image.dk>

	* src/core/graphics.c: Got rid of the KQ1 pic-related error messages

2000-04-13  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/core/vocab.c: Fixed compile problem caused by a new array.

	* src/core/kscripts.c (kDisposeClone): underBits are no longer freed
	automatically, as suggested by Lars. Stabilizes KQ1 and does not seem
	to harm any other games.

2000-04-13  Lars Skovlund  <lskovlun@image.dk>

	* src/tools/listwords.c: Added this nifty little program.

2000-04-12  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/core/kernel.c: Took care of DoAvoider()

	* src/core/kgraphics.c (kSetNowSeen): Implemented SetNowSeen()

	* src/core/klists.c (kEmptyList): Implemented EmptyList()
	(kAddAfter): Implemented AddAfter()

2000-04-12  Dmitry Jemerov  <yole@nnz.ru>

	* The usual bunch of build problem fixes.
	* Updated project files according to latest changes in source code
        structure.

2000-04-11  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/core/kgraphics.c (_k_draw_control): Frames are now drawn around
	all edit controls.

	* src/core/kgraphics.c (kCanBeHere): dynviews with IGNORE_ACTOR
	or DONT_RESTORE don't just actively ignore moving objects, they
	also are passively ignored now.

	* src/graphics/engine_graphics.c (graph_draw_selector_control):
	Savegame names are now drawn correctly (?) in the savegame selection
	lists. They aren't selectable yet, though.

2000-04-10  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/core/game.c (game_exit): Fixed restarting in KQ4"y resetting
	the list of installed scripts

	* doc/sci.sgml: Added BaseSetter(), MemInfo(), DirLoop() to the docs

2000-04-09  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/core/savegame.cfsml: Made sure synonyms are stored in
	savegames

	* src/core/kfile.c (kRestoreGame): Fixed some inconsistencies in
	savegame handling

	* src/core/vm.c (run_vm): Fixed several severe sign extension bugs

	* src/sound/soundserver_null.c (sound_null_server): Fixed a deadlock
	situation that could happen when a song finished playing

	* src/main.c (main): Added Rickard to the list of people mentioned in
	the startup message

	* src/core/vm.c (game_run): Fixed a bug that would cause several
	scripts to be allocated twice during startup (all scripts required
	by script 0, except for script 0 itself).

	* src/core/kgraphics.c (kAnimate): Fixed drawing of disposed views to
	occur before the 'normal' images retreive their background image. Took
	care of many visual problems in the KQ4 introduction.

2000-04-08  Christoph Reichenbach  <jameson@linuxgames.com>

	* acinclude.m4 (AC_PATH_GLX): Fixed incorrect handling of the X11
	header file -L instruction in cases where it's null

2000-03-25  Lars Skovlund  <lskovlun@image.dk>

	* src/core/kgraphics.c (kNewWindow): Bit 7 of the window flags wasn't
	  handled correctly. Fixed - this should take care of some of the
	  problems related to CB1 and Camelot box drawing
	* src/core/kgraphics.c (kGraph): Added an (incomplete) implementation
	  of KERNEL_GRAPH_REDRAW_BOX
	* src/core/scriptdebug.c (c_dynviews): Added dynviews console command

2000-03-18  Lars Skovlund  <lskovlun@image.dk>

	* Fixed priority drawing for Camelot

2000-03-07  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/core/kernel.c (kGameIsRestarting): Fixed some problems with the
	restarting flags being set incorrectly

	* src/sound/soundserver_null.c: Sound server now checks for its parent
	process several times per second. This should get rid of the problem
	with sound server processes running amok after sciv dies.

	* src/core/game.c: Fixed some heap corruptions

	* src/core/vm.c (game_run): Added support for game restarts. First
	restarts (used in KQ4 to enter the actual game) appear to work nicely,
	normal restarts (F9) still need some fine tuning to prevent heap
	corruption.
	(PUT_HEAP): Added code to check for unaligned access

	* src/graphics/font.c (_draw_text0): Fixed problem with KQ4 using
	the newline character for the IV thingy in the title bar

2000-03-06  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/core/scriptdebug.c (c_mem_info): Added meminfo command

2000-02-13  Lars Skovlund  <lskovlun@image.dk>

	* Fixed the menubar bug (?).

2000-02-08  Christoph Reichenbach  <jameson@linuxgames.com>

	* Added several fixes and improvements that had been lost (!)

	* src/graphics/engine_graphics.c: Implemented additional checks.

2000-02-07  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/core/kstring.c (kParse): Fixed a guaranteed segfault if
	vocab_tokenize_string() failed

2000-01-30  Lars Skovlund  <lskovlun@image.dk>

	* src/core/kgraphics.c: Implemented SetJump().

2000-01-28  Lars Skovlund  <lskovlun@image.dk>

	* src/core/ksound.c (kDoSound): kDoSound now returns immediately if we
	  are running an SCI01 game.

2000-01-25  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/sound/soundserver_null.c (sound_null_server): Fixed misc. seg-
	faults in the sound server (same for soundserver_dos, I hope)

	* src/graphics/con_io.c (con_input): Fixed ' ' not being treated

2000-01-13  Rickard Lind  <rpl@dd.chalmers.se>

	* src/sound/soundserver_null.c: Fixed a bug in the cumulative cue
 	system (also fixed soundserver_dos).


2000-01-09  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/sound/soundserver_dos.c (sound_dos_poll): Added support for the
	MIDI delay escape sequence

	* src/sound/soundserver_null.c (sound_null_server): Added support for
	the 0xf8 MIDI delay escape sequence

2000-01-04  Christoph Reichenbach  <jameson@Linuxgames.com>

	* Included Rink's DOS port. Haven't checked it, though.

	* contrib/midi.c: Newer version of Rickard's midi.c

1999-12-29  Christoph Reichenbach  <jameson@linuxgames.com>

	* contrib/midi.c: Added Rickard's midi.c

1999-12-22  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/core/kfile.c (kRestoreGame): Implemented RestoreGame(). Fixed
	some related bugs. Saving/Restoring still doesn't work cleanly, but
	it's slowly getting better.

	* src/include/soundserver.h (SOUND_SERVER_TIMEOUT): Increased sound
	timeout by 4900%. Restoring appears to take more than 2 ms on my box...

	* src/core/cfsml.pl (create_string_functions): Fixed a bug that would
	allocate one byte too few.

1999-12-21  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/core/kfile.c (kCheckSaveGame): Implemented CheckSaveGame()
	(kSaveGame): Implemented SaveGame()

	* src/main.c (main): Added check for graphics driver- abort if none is
	present.

1999-12-19  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/core/said.y (main): First implementation of the Said grammar
	* Fixed said implementation

1999-12-18  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/graphics/engine_graphics.c (graph_draw_selector_icon): Fixed
	some of the view offset bugs

	* src/core/kgraphics.c (kDisposeWindow): After disposing the active
	port, that port's predecessor is set. Fixes a bug that would appear
	if several windows were overlaid.

	* src/graphics/font.c (get_text_size): Fixed bug that would add an
	extra line if the end of line was reached simultaneously with a
	newline character

	* src/core/kmenu.c (kMenuSelect): Prevented keyboard event "0"
	(used for motion keys) from being claimed

	* src/sound/soundserver_null.c (sound_null_server): Fixed bug where
	the sound server would read over the end of a song, added additional
	checks.

	* src/core/kmenu.c: Implemented the credits. Now I'll have to decide
	who gets mentioned where and how often. Great. Just great.

1999-12-18  Dmitry Jemerov  <yole@nnz.ru>

	* src/tools/scidisasm.c: New parameter --gamedir to specify directory
	to load resources from.

        * src/tools/sciunpack.c: Ditto.

	* src/core/script.h, src/core/script.c: New opcode parameter types
	Script_Local and Script_Temp.
	* Updated references accordingly.

	* src/include/uinput.h: Updated keycodes of special keys to match
	actual DOS keycodes. Now the buttons in KQ1 intro screen work.
	Hopefully nothing else is broken.

	* src/include/uinput.h, src/graphics/input.c (map_keyboard_event):
	New function.

	* src/core/kgraphics.c (kEditControl): Updated and cleaned up
	to use map_keyboard_event and support word-sized keycodes. Now
	shifted number keys (!@#$ and so on) work correctly.

	* src/core/scriptdebug.c (script_debug): The onscreen console can
	now be hidden correctly.

	* src/graphics/con_io.c (con_input): Updated and cleaned up
	to use map_keyboard_event. Support for keys Space, Home, End.

	* src/graphics/graphics_ddraw.c (WndProc): Support for keys - and
	=.

	* src/graphics/graphics_ddraw.c (add_key_event): Left and right
	Shift keys are now distinguished under Windows NT.

1999-12-17  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/core/kfile.c (kGetSaveFiles): Implemented GetSaveFiles().

	* src/core/kernel.c (kSetDebug): Wrote short implementation for
	SetDebug(), made FlushResources() NOP without warning (we don't need
	it, since all resources are available after load time).

	* src/core/kstring.c (kSetSynonyms): Implemented SetSynonyms() and
	updated related data structures and functions

	* src/core/kfile.c (kCheckFreeSpace): Implemented CheckFreeSpace()

1999-12-17  Dmitry Jemerov  <yole@nnz.ru>

	* src/core/script.h, src/core/script.c: New opcode parameter type
	Script_Param.
	* Updated references accordingly.

	* src/tools/scidisasm.c: Fixed two major bugs. Function parameters
	are printed as param_<number>.

1999-12-15  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/graphics/con_io.c (con_input): Fixed cursor key handling.
	It's possible again to scroll back using Shift-PgUp.

	* src/graphics/engine_graphics.c (graph_draw_selector_edit): Fixed
	the cursor being overdrawn by the character it was supposed to
	highlight.

	* src/graphics/font.c: Fixed CR being drawn. Not me, the special
	character.

	* src/sound/sound.c: Implemented sound event queues (doubly-linked
	dynamic lists) and a "query next event mechanism" to prevent SIGPIPEs.

	* src/graphics/input_ggi.c (_sci_ggi_input_handler): Fixed ggi input
	handler bug that would interpret '0' as INS.

	* src/console: Killed the console subdirectory and distributed the
	sources in src/core and src/graphics. The console design is a bit
	cleaner now.

1999-12-15  Dmitry Jemerov  <yole@nnz.ru>

	* src/core/vocab_debug.c, src/include/vocabulary.h
	(vocabulary_get_snames): New parameter pcount.
	* Updated references to this function accordingly.

	* src/tools/scidisasm.c: Disassembly improvements. Printing of
	selector names pushed by pushi, object names and said strings
	referred to by lofsa/lofss. Global variable references are printed
	as global_<number>. Changed format of opcode size display and made
	it optional. Jump label generation. Display of some additional
	information made optional. Support of older script header format.
	And more...

	* src/core/script.c, src/include/script.h: New opcode type
	Script_Global.
	* Updated references to opcode table accordingly.

1999-12-13  Dmitry Jemerov  <yole@nnz.ru>

	* src/core/script.c, src/include/script.h, src/include/vm.h: Moved
	obsolete object handling code to old_objects.c and old_objects.h.

	* src/tools/scidisasm.c: New standalone SCI script disassembler.

	* src/core/vm.c: Fixed breakpoint system broken by the new
	call/send stack implementation.

	* src/core/vm.c, src/core/scriptdebug.c: New breakpoint type bpe -
	break on exported function.

1999-12-13  Lars Skovlund  <lskovlun@image.dk>

	* src/graphics/engine_graphics.c (graph_draw_selector_control):
	Fixed selector control positioning

1999-12-12  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/core/kmenu.c (kMenuSelect): Added graphical menus

	* src/core/kmenu.c (kMenuSelect): Added debug code, fixed minor bugs

	* src/graphics/input_ggi.c (_sci_ggi_input_handler): Added ggi
	Function key handling

	* src/graphics/menubar.c: Fixed several veteran bugs in the menu
	initialization, including one that tried to lowercase function keys

1999-12-12  Lars Skovlund  <lskovlun@image.dk>

	* src/graphics/menubar.c (menubar_add_menu): Added tag value support

1999-12-12  Dmitry Jemerov  <yole@nnz.ru>

	* src/core/kfile.c (kDeviceInfo_Win32): Correct Win32
	implementation.

	* src/main.c (main): Specifying game name in the command line
	didn't work; freesci aborted immediately. Fixed.

	* src/graphics/graphics_ddraw.c (WndProc): The freesci window is
	now repainted after being uncovered by another window.

	* src/graphics/menubar.c (menubar_add_menu): Fixed major bug
	causing incorrect menu construction.

1999-12-11  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/core/kmenu.c (kGetMenu): Added GetMenu().

	* src/include/kernel.h: Restructured the kernel by splitting it up
	into one header and several source files.

1999-12-10  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/core/vm.c (send_selector): Fixed a stale pointer bug related to
	the execution stack

	* src/core/scriptdebug.c (c_viewinfo): Added 'viewinfo' debug command

1999-12-09  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/config.l (_parse_color_mode): Fixed braindead strcasecmp() bug.

	* src/main.c (main): Added fix for sciv -gfoo bug from Rink Springer.

1999-12-08  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/core/vocab_debug.c (vocabulary_get_knames0): Terminated knames
	list.

1999-12-07  Lars Skovlund  <lskovlun@image.dk>

	* src/sound/sound.c: Added handling of NULL handle property

1999-12-06  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/core/kernel.c: Added HiliteControl()

	* src/graphics/font.c (text_draw): Made the font drawing functions
	draw the font with background

	* src/graphics/engine_graphics.c (graph_draw_selector_button):
	Cleared background before drawing buttons

	* src/core/kernel.c: Fixed a possible division by zero in the
	bresenham code

1999-12-05  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/core/kernel.c (kDeviceInfo_Unix): Added DeviceInfo for UNIX-
	like systems (and a preliminary, incomplete version for Win32).

	*src/core/*.c : Replaced alloc functions with g_alloc functions

1999-12-02  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/main.c: Fixed char_gets_input() to handle fgets() being
	interrupted by signals intercepted by GGI under Solaris.

	* src/graphics/engine_graphics.c (graph_draw_selector_edit): Fixed
	bug that might cause the wrong font to be used for the highlighted
	letter in an "edit control".

	* src/graphics/input_ggi.c (_sci_ggi_input_handler): Fixed
	handling of CTRL keys

	* src/core/scriptdebug.c (script_debug): Removed the number of
	console redraws, fixed "repeat last entry" behaviour

	* src/console/console.c: (consoleInput): Lower-cased all control
	letters in order to re-enable CTRL keycodes for the onscreen console

1999-12-01  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/core/kernel.c (kDrawCel): Function fixed to behave correctly
	if called with incorrect loops/cels.

1999-11-28  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/core/kernel.c (kAddToPic): Now handles NULL lists.

	* src/core/vm.c (run_vm): Changed behaviour of send-like functions
	to accomodate for realloc() moving the execution stack.

	* src/graphics/engine_graphics.c (graph_update_box): Added range
	checks.

	* acinclude.m4 (AC_C_PARAMETRIZED_BIGENDIAN): Added support for
	"forced" endianness setting, for cross-compiling.

	* src/core/savegame.cfsml, src/main.c, configure.in: Tried to patch
	headers to make things more portable for non-POSIX systems.

1999-11-27  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/core/kernel.c (_k_view_list_dispose_loop): Fixed the bug
	(more like a missing feature) that caused the game to run out of
	background buffers. At least I hope so.
	(kFormat): Fixed the %c formatting bug that would cause a % to be
	printed instead of the character immediately following the %c.
	(kBaseSetter): BaseSetter now takes view offsets into consideration.
	This doesn't affect SQ3, but might help with other games.

	* src/include/engine.h (_state): Made sure that &rest is saved
	correctly (this only helps with debugging, of course).

	* acinclude.m4: Improved (?) the config maker scripts. Now,
	instead of checking libraries by looking for files with corresponding
	names, png, (n)curses and ggi are tried to link against; this should
	help with cross-compiling.

1999-11-26  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/graphics/graphics_ggi.c (libggi_redraw): Fixed GGI screen
	shaking.

	* src/core/kernel.c (kBaseSetter): Fixed the SQ3 bug where entering
	the red starship tube would throw you back one screen to the left.

1999-11-26  Dmitry Jemerov  <yole@nnz.ru>

	* src/include/kdebug.h: Moved sci_debug_flags definition to kdebug.h
	from scriptdebug.c.
	* src/core/kernel.c: Support for new debug flag "break on
	warnings" (0x02).

	* src/core/kernel.c (kAnimate): Fixed attempt to free the
	dyn_views list twice.

	* config.l: conf.console_log is now allocated by strdup, to avoid
	attempt to free the same buffer multiple times.

	* src/core/scriptdebug.c (disassemble): When disassembling the jmp
        instruction, the destination offset is also printed.

1999-11-26  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/console/console.c (sciprintf): Fixed sciprintf for result
	strings longer than 255 bytes (the problem was caused by a difference
	in vsnprintf behaviour between older glibc versions and glibc 2.1/
	other libcs)

	* src/core/kernel.c: Killed the bug that made QfG1 stop with the
 	PC set to 0 in the main menu sometimes. It was caused by the dynamic
	view lists not being cleared automatically during DrawPic...

1999-11-25  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/core/kernel.c (_k_make_view_list): Potential fix for the
	Attack Of The 15' Killer Woman bug in Iceman. One of our better
	ones; it'd be almost sad to loose that one ;->

1999-11-25  Rink Springer <rink@rink.cx>

        * src/core/vocab_debug.c (vocabulary_get_opcodes): Added check for NULL
          return of findResource () to avoid segmentation fault in scriptdump

1999-11-25  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/core/scriptdebug.c (script_debug): Added functions to the
	sound driver protocol to support suspending (and, afterwards,
	resuming) all sound. Used this to prevent most causes of sound
	server deaths by SIGPIPEs.

1999-11-22  Lars Skovlund <lskovlun@worldonline.dk>

	* src/core/kernel.c (kDisplay): Fixed a bug in kDisplay which was the
	  cause for the "blue buttons" in QFG1 (ports must be preserved across
	  kernel calls!)

1999-11-21  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/core/vocab.c (vocab_get_suffices): Fixed suffix reading, which
	simply didn't work (thanks to Rink Springer for pointing this out!)

1999-11-20  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/main.c (main): Fixed a cause for segfaults that would strike
	if sciv was started without a game name to use

1999-11-18  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/core/kernel.c (kDoBresen): Killed another bresenham bug

1999-11-17  Lars Skovlund <lskovlun@worldonline.dk>

	* src/core/kernel.c: Killed the "keep on walking" bug

1999-11-15  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/core/kernel.c (kParse): Updated parser to call wordFail correctly
	(invoke_selector): Fixed a bug that could make kernel functions in the
	backtrace list look strange, and another one that would write incorrect
	parameters if invoke_selector was called with more than zero of them
	(caused by a macro evaluating va_arg() twice).

1999-11-14  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/sound/sfx_save.cfsml: Implemented persistance for the sound
	subsystem. Sound data is written to "(savedir)/sound" as plain text,
	while songs are dumped binarily into "(savedir)/song.*".

	* src/core/cfsml.pl: Changed all fucntion declarations to static;
	this should help with programs using CFSML generated code in more than
	one place.

1999-11-14  Dmitry Jemerov  <yole@exch.nnz.spb.su>

	* Fixed Visual C++ build problems all around the code.

	* src/graphics/engine_graphics.c (graph_draw_selector_edit):
	Fixed memory corruption that occurred when a 0 length string was
	passed in the text parameter. Fixed drawing cursor not in the
	end of text string.

	* src/core/kernel.c (kOnControl): Fixed several keyboard handling
	problems.

	* src/graphics/graphics_ddraw.c (WndProc): The tilde key is now
	handled correctly.

	* src/graphics/graphics_ddraw.c (ddraw_init): Fixed window style.


1999-11-12  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/core/cfsml.pl: Fixed a bug that would cause the number of
	array elements to be too low by one if MAXWRITE was used.

	* src/core/kernel.c (kShakeScreen): Implemented ShakeScreen. The
	gfx_driver->Redraw protocol was extended to allow y parameters for
	this- this means that gfx drivers w/o shakescreen don't need to
	worry about this feature.

	* src/core/savegame.cfsml : Implemented saving/restoring the game
	state. Everything seems to save and restore cleanly, except for the
	sound driver (saving/restoring still needs to be implemented there).

1999-11-07  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/config.l (config_init): Added another config option,
	"resource_dir", to the config file parser. This makes it possible
	to run a game with a command like "sciv lsl2".

1999-10-20  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/core/vm.c (run_vm): Re-implemented parts of the vm so that
	a new vm is only started from kernel functions. The program stack
	is now stored on a local stack (again, except for calls into user
	space from kernel functions) which should make it possible to store
	and load the game state under most conditions.

1999-10-15  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/core/vocab_debug.c (vocabulary_get_knames0): Added handling for
	missing vocab.999 (falls back to a default kernel name table)

	* src/graphics/graphics_ggi.c (graphics_draw_region_ggi): Added a hack
	for bigendian machines that could solve the blank screen problem
	without too much performance loss (still needs to be tested)

	* src/sound/soundserver_null.c: Removed warnings

1999-09-04  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/core/kernel.c: Fixed numerous bugs

1999-08-31  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/core/vocab.c: Implemented basic support for the standard and
	suffixed vocabulary

	* src/core/kernel.c (kEditControl): Fixed some bugs in this function

1999-08-29  Dmitry Jemerov  <yole@exch.nnz.spb.su>

        * src/core/vm.c: Breakpoints on object methods do not trigger on
        super calls.

        * src/core/scriptdebug.c (c_backtrace): Super calls are now
        shown correctly in the back trace.
        (c_stepover, script_debug) New debugger command 'so' to step over
        sends and calls.
        (c_disasm) disasm command always printed one more command than
        requested. Now disasm stops after a 'ret' is encountered instead
        of printing a series of bnot's. If the first argument of disasm
        is less or equal than 0, it is treated as an offset from pc.
        (c_bpdel, script_debug) New debugger command 'bpdel' to delete
        breakpoints.

        * src/config.l: Brought back the debug_mode parameter.

        * src/graphics/graphics_ddraw.c (WndProc): Mouse cursor is redrawn
        during waits. Windows mouse cursor is not shown over the freesci
        window.

1999-08-28  Dmitry Jemerov  <yole@exch.nnz.spb.su>

        * src/core/scriptdebug.c (c_snk): Now it's possible to specify
        not only function name, but also function index as snk parameter.

        * src/include/vm.h, src/include/engine.h, src/core/scriptdebug.c,
        src/core/vm.c: Added breakpoint support.

        * src/core/kernel.c (kScriptID): Fixed a long-standing bug in
        GetScriptID that was masked by an ugly patch: The dispatch table
        index is 0-based, not 1-based. That fixes the EgoWaterViewer
        problem in Codename: Iceman. (kEditControl): Event modifiers are
        handled correctly. (kGetEvent) removed "stub" mark.

        * src/graphics/graphics_ddraw.c: Added support for Caps Lock,
        Num Lock and keypad keys. Again fixed to work with Magnus'
        latest changes.

1999-08-26  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/sound/soundserver_null.c: Added support for sound command 0xc
	(assumed to be "Stop All") to both ends of the pipes.

	* src/sound/sound.c (song_lib_remove): Fixed one more evil bug that
	caused circular references.

	* src/sound/soundserver_null.c (sound_null_server): Removed a possible
	segfault reason for the null sound server.

	* src/core/kernel.c: Improved (fixed?) priority mapping

	* src/sound/soundserver_null.c (sound_null_server): Changed
	cues according to Ravi's directions

	* src/core/kernel.c (kEditControl): Edit preliminary EditControl.
	(kGraph): Implemented FILL_BOX_ANY and UPDATE_BOX

1999-08-26  Dmitry Jemerov  <yole@exch.nnz.spb.su>
        * src/core/kernel.c (kFOpen) using UPARAM(0) instead of
        PARAM(0) (fixes a crash in LSL3). (kOnControl) now supports
        calling with 2 or 4 parameters (as it had in PQ2 - fixes
        a crash with it). (kIsObject) fixed another problem with
        PQ2.
        * src/core/scriptdebug.c (disassemble): Heap offsets are
        now printed for each disassembled command.

1999-08-25  Dmitry Jemerov  <yole@exch.nnz.spb.su>
        * src/main.c (main): Added support for command line options.
        Added options --gamedir (-d), --run (-r), --sci-version (-v).
        * src/*/graphics*.*, kernel/kernel.c, kernel/resource.c:
        Converted sci_usleep() to a graphics driver-specific function
        (gfx_driver.Wait()).
        * src/core/kernel.c, src/include/kdebug.h: SCIkdebug/SCIkwarn
        output is also echoed to console_log file. Added new debug
        message category, SCIkGFXDRIVER. Moved debugging function
        prototypes to the header file.
        * src/core/scriptdebug.c: Added support for SCIkGFXDRIVER to
        c_debuglog(). Moved part of c_debuglog() to a separate function
        set_debug_mode().
        * src/graphics/graphics_ddraw.c: Converted all debugging output
        to SCIkdebug/SCIkwarn. Added support for fullscreen mode. Added
        event processing code.
        * src/include/sci_conf.h, src/main.c, src/config.l: Added
        debug_mode parameter.
        * src/tools/vocabdump.c: now prints selector indexes; added
        printing of class table.
        * src/core/script.c (printMethod): when disassembling the
        <class> opcode, the correct class name is printed.
        * src/include/versions.h, src/core/vm.c: Added support
        (version-dependent) for 4 byte script headers.

1999-08-23  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/core/kernel.c (kDoSound): Added sound debugging.
	(kLocalToGlobal): Implemented kLocalToGlobal, kGlobalToLocal.

1999-08-23  Dmitry Jemerov  <yole@exch.nnz.spb.su>

        * core/kernel.c: implemented Win32 replacement for the ffs
        function
	* graphics/engine_graphics.c (graph_update_box): fixed coordinate
        adjustment problem causing a crash in the LSL3 intro
        * tools/vocabdump.c: vocabdump now prints kernel function indexes;
        added missing vocabulary_free_snames()
        * console/commands.c, core/script.c: moved code of c_dissectscript()
        into a separate function script_dissect(); moved sci_hexdump()
        to script.c. Implemented dumping of string blocks in more human
        readable way.
        * include/console.h, console/console.c (sciprintf): added
        possibility of echoing sciprintf() output to a text file
        * tools/sciunpack.c: Added --dissect flag allowing to dump script
        resources to human readable text. Added possibility to specify
        "*" instead of resource number to unpack all resources of given
        type.
        * config.l, include/graphics.h, include/graphics_ddraw.h,
        graphics/graphics_ddraw.c, graphics/graphics_ggi.c:
        Implemented driver-specific configuration parameters.
        * include/graphics.h, graphics/graphics_ddraw.c,
        graphics/graphics_ggi.c: Copied new color interpolation code
        from the libggi driver to the DirectDraw driver.
        * config.l, main.c: Implemented console_log config parameter
        specifying the file to which console output should be echoed.
        * main.c: Added myself to the copyrights. :-)

1999-08-20  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/core/kernel.c (kInitBresen): Fixed a bug in the bresenham
	implementation.

1999-08-19  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/core/kernel.c: Fixed CanBeHere() according to Lars' specs.
	Implemented DirLoop, CoordPri, PriCoord, ValidPath, RespondsTo,
	FOpen, FPuts, FGets, FClose, TimesSin/SinMult, TimesCos/CosMult.
	Fixed a stupid bug in CanBeHere() where an object could clip
	against itself.

1999-08-17  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/core/kernel.c (kDrawCel): Added DrawCel.

	* src/main.c: Added support for a config file (the parser can be
	generated from the flex file config.l).

	* src/core/kernel.c: Fixed countless bugs, implemented numerous kernel
	functions. It's been a while since I last updated this file, so I'm
	unable to go into any more detail. The last functions I added were
	InitBresen, DoBresen, CanBeHere.

1999-08-09  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/core/kernel.c (kFormat): Fixed kFormat according to Lars'
	specs.

1999-08-05  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/graphics/engine_graphics.c: Added a new file for some fancy
	thinge like backupping (up-backing?) and restoring parts of the screen
	maps and text rendering.

	* src/core/kernel.c (kAnimate): Added Animate(), Display(), partial
	Graph().

1999-08-03  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/graphics/graphics.c (drawView0): Fixed a bug that would over-
	write the port border (and mess up a lot of other things).
	Threadsafed the whole graphics stuff.

1999-08-02  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/core/scriptdebug.c (c_sret): Successfully tested the new sret
	debug command (Step until RETurning from current level) which is simi-
	larly useful as the Sierra SCI TAB key (skip send), but works the
	way around (i.e. it doesn't skip the next function, it waits until the
	current function terminates).

	* src/core/kernel.c (kClone): Fixed a bug where cloning would corrupt
	the heap

	* src/core/vm.c (execute): Fixed a bug where the 'super' operation
	would start execution with the base object set to the superclass
	of the calling object as opposed to the calling object itself
	(QfG1, step 1072 / Glory::startRoom)
	(execute): Fixed two bugs with indexed variable operations (like
	sali, sspi or +agi) where the accumulator wasn't bit-expanded as
	neccessary and where + and - operations wrote back to the wrong ad-
	dress.

	* src/core/kernel.c: Added Clone, DisposeClone, ScriptID

	* src/core/scriptdebug.c (c_listclones): Added listclones debug
	function to list all clones

	* src/console/commands.c (c_dissectscript): Fixed a bug that would
	read too far, possibly causing a segfault with efence

1999-07-30  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/core/kernel.c: Added OnControl and a few trivial functions
	(Random, Abs, Sqrt, HaveMouse, GetAngle, GetDistance)

1999-07-29  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/core/kernel.c: Fixed Load, Unload, added PicNotValid and Show.

1999-07-27  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/core/vm.c (execute_method): Fixed calle/callb madness and some
	other bugs.

1999-07-25  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/core/kernel.c: Added new kernel functions.

	* src/core/vm.c (execute): Fixed a bunch of bugs and added dynamic
	class loading to the class opcode.

1999-07-23  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/core/vm.c (script_run): Finished the VM. In Theory.

1999-07-18  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/core/vocabulary.c (vocabulary_get_snames): Tracked down a
	nasty little bug in name getting. This one was so simple that it
	was a killer- it's possible that it was at least part of the
	cause for the memory corruption which haunted us in our sleeps.

1999-07-11  Christoph Reichenbach  <jameson@linuxgames.com>

	* src/graphics/graphics.c (drawView0): Views appear to clip correctly
	to ports and windows now.

	* src/graphics/window.c (drawWindow): Implemented SCI0-style text boxes
	with the usual headers. Still needs to be tested, but it looks adequate
	for the time being. Still, one port-related clipping bugs will have to
	be squashed now.

	* src/sound/midi.c: Thanks to Shane T., the quality of instrument
	mapping should have improved now (the PQ2 instrument mappings were
	very helpful).
	Unmapped instruments now are ignored when generating the MIDI data,
	instead of being mapped to a wrong instrument.

1999-06-28  Christoph Reichenbach  <creichen@rbg.informatik.tu-darmstadt.de>

	* src/console/commands.c (c_hexgrep): Added a function for non-regexp
	grepping for particular hex sequences. Also added a new parameter type
	for bytes in hexadecimal representation and changed the '*' parameter
	type to repeat the last param type 0 or more types.
	(c_list): Fixed another braindead bug reported by Chris Lansdown.

1999-06-27  Christoph Reichenbach  <creichen@rbg.informatik.tu-darmstadt.de>

	* src/core/resource.c (loadResourcePatches): Added loading of
	resource patches (can be overridden when calling loadResources())

	* src/core/heap.c: Added Magnus' implementation of the SCI heap.
	Still needs to be hooked up to libscicore.

	* Accidently killed some files. Entries to the changelog have been
	lost; here's a quick summary:

	* Applied fixes from Magnus for the VM/Vocab/Script stuff

	* Applied fixes from Chris Lansdown for configure.in and resource.c

	* Forced tools/console.c to use libreadline instead of libgii.
	This still needs to be checked for, so that we can evade to gets()
	if readline is not available.

	* Fixed cursor drawing for SCI0 based on Chris Lansdown's hints

	* Modified graphics code to allow for multilayered pictures (like
	the SQ3 title screen, which consists of the "Space Quest 3" logo
	and the "the Pirates of Pestulon" thing, which is a separate pic
	resource)

	* Renamed picture resources to pic resources for Resource_Types;
	this is because SCI0 calls them pics and not pictures.

1999-06-18  Christoph Reichenbach  <creichen@rbg.informatik.tu-darmstadt.de>

	* configure.in: Uses AM_PATH_GLIB now instead of the home-made
	AC_PATH_GLIB.

	* src/tools/sciunpack.c (main): Unpacking behaviour now equals Carl
	Muckenhoupt's SCI decoder's behaviour, i.e. it writes an SCI header
	before the SCI data block. This means that the resulting files can
	be directly used as patches.

	* src/core/decompress1.c (decompress1): Thanks to a hint from Ravi
	at the SCI message board, decompression now works for all SCI01
	resources. This means that QfG2 will, in theory, should be supported
	for the public release (without sound support, however).

1999-06-14  Christoph Reichenbach  <creichen@rbg.informatik.tu-darmstadt.de>

	* src/core/vocabulary.c (_vocabulary_get_knames0alt): Added a new
	function to deal with non-standard vocab.999 resources.

1999-06-13  Christoph Reichenbach  <creichen@rbg.informatik.tu-darmstadt.de>

	* src/graphics/graphics.c (clearpage): Changed default background
	color to 15, which fixes several problems and is consistant with the
	way Sierra used to do things (TWSUTDT).

1999-06-12  Christoph Reichenbach  <creichen@rbg.informatik.tu-darmstadt.de>

	* src/sound/midi.c: Added MIDI mapping magic. It's still not perfect,
	but much better (and more extensible) than the previous solution.

1999-06-10  Christoph Reichenbach  <creichen@rbg.informatik.tu-darmstadt.de>

	* src/graphics/mcursor.c: Fixed both cursor drawing functions to
	properly clip. SCI1 cursors are now displayed correctly, too (tested
	this with a small hack that allowed loading the QG2 resources without
	decompressing picture resources)

1999-06-09  Christoph Reichenbach  <creichen@rbg.informatik.tu-darmstadt.de>

	* src/graphics/graphics_ggi.c (initColors): Fixed a small bug that
	would prevent color 0xff to be set correctly in 256 color mode.

1999-06-08  Christoph Reichenbach  <creichen@rbg.informatik.tu-darmstadt.de>

	* Decided to release 0.2.0. The actual release date will proabably be
	tomorrow, though.

	* src/tools/console.c: Added a text-based command console. It doesn't
	work the way it's supposed to, though- libgii(stdin) appears to
	deliver events in a different fashion than libggi does.

	* src/console/console.c: A number of commands has been added to the
	command console in the last few days. While the command console
	doesn't beat the bash (yet ;-), it's in a state where working with it
	is possible. As long as working is limited to inspecting and frobbing
	valies, and calling some pre-defined commands.

1999-06-07  Christoph Reichenbach  <creichen@rbg.informatik.tu-darmstadt.de>

	* src/sound/sound.c: Fixed a bug when setting the gsi volume (the
	request would be prepared but not flushed).

1999-06-06  Christoph Reichenbach  <creichen@rbg.informatik.tu-darmstadt.de>

	* src/console/console.c: Finished the first phase of work on the
	command console. It should now be possible to hook up commands to
	it.

1999-06-05  Christoph Reichenbach  <creichen@rbg.informatik.tu-darmstadt.de>

	* src/graphics/input_ggi.c: Completed (?) work on the ggi input
	driver.

1999-06-04  Christoph Reichenbach  <creichen@rbg.informatik.tu-darmstadt.de>

	* src/include/uinput.h: Added an input interface of sorts. It's
	supposed to be portable to non-ggi interfaces, but I'm not sure if
	it will work for all of them. Well, making things as portable and
	universal as possible is one of the design goals, so I should try
	to look for any possible alternatives and include some way to use
	them.
	I'll get back to this right after I finish my research on the cure
 	for cancer and the TransWarp drive.

	* src/graphics/graphics_ggi.c (displayPicture): After noticing the
	significant lack of redraw speed in some preliminary input tests, I
	redid the display code, using ggiPutHLine(). The resulting speedup
	was considerable. Also made displayPicture() autodetect if the visual
	is double-sized, so displayDoublePicture() won't be necessary in the
	future.

1999-06-02  Christoph Reichenbach  <creichen@rbg.informatik.tu-darmstadt.de>

	* Merged Magnus' patches to the vocab and script resource handlers.
	Now this rocks- both vocab and script dumping appear to work without
	any problems!

	* src/graphics/mcursor.c (drawMouseCursor0): Added a drawing function
	for SCI0 mouse cursors.

1999-05-29  Christoph Reichenbach  <creichen@rbg.informatik.tu-darmstadt.de>

	* src/graphics/graphics.c: Added support for 'interpolated mode' when
	drawing the graphics. Both graphics_ggi.c and graphics_png.c have been
	updated to support this.

	* src/core/resource.c (loadResources): Fixed a nasty but stupid bug
	that made the last release unuseable.

1999-05-24  Christoph Reichenbach  <creichen@rbg.informatik.tu-darmstadt.de>

	* src/sound/sound.c: Added some general functions to ease interfacing
	with different sound systems (currently, only GSI is supported).

	* src/graphics/graphics_png.c: Added support for picture_ts to be
	stored as .png files. Practical use for this is limited, though.

	* src/tools/sciunpack.c (main): Created sciunpack to merge unpack and
	resourcelist. This tool includes functions for converting sound
	and picture resources to midi and png files, respectively.

	* Changed several function names to improve clarity. All functions
	succeeded by a zero are only applicable to SCI0 resources.

1999-05-23  Christoph Reichenbach  <creichen@rbg.informatik.tu-darmstadt.de>

	* src/sound/midi.c (makeMIDI0): Preliminary MIDI support has been
	added. However, Sierra appears to use a proprietary MIDI instrument
	mapping scheme (which comes at no surprise; AFAIK the GM specification
	wasn't comissioned until somewhen in 199x), and therefore the
	instruments (including percussions) appear to be somewhat messy.
	Fixing this instrument mapping will be an ongoing task.

1999-05-13  Christoph Reichenbach  <creichen@rbg.informatik.tu-darmstadt.de>

	* src/graphics/graphics.c (drawView): Performance of drawView() has
	been improved. It's not perfect yet (even if color==transparency,
	each pixel is checked), but it should be *much* better than its
	predecessor.
	Also, I think that I found the "reversed" flag which some of the
	views apparently use to draw the same data in two different ways.

	* Fixed several endianness bugs (mainly in font.c and graphics.c).
	qg1demo now runs on sparc-solaris 2.5, although the colors are messed
	up.

	* src/core/resource.c (loadResources): Allowed resource.000 not to
	exist (loading starts at resource.001 in this case). This situation
	can be found in SQ3.

	* src/core/decompress.c (decompress): Added check for objects with
	size zero to avoid segfault.

1999-05-10  Christoph Reichenbach  <creichen@rbg.informatik.tu-darmstadt.de>

	* configure.in : Added support for passing the location of ggi
	during configure time.

1999-05-09  Christoph Reichenbach  <creichen@rbg.informatik.tu-darmstadt.de>

	* src/graphics/graphics.c (main): Fixed a bug with transparency:
	contrary to my prior expectations, all sprites DO carry a trans-
	parency value. Also made the line and fill functions behave more
	like the original. So far, I've had no problems with lines, but
	filling still gives me headaches.

1999-05-08  Christoph Reichenbach  <creichen@rbg.informatik.tu-darmstadt.de>

	* Improved error handling for the resource loader and parts of the
	decompression stuff.

	* Moved all of the (u)int* types to g(u)int*, which are exported by
	glib.

1999-05-05  Christoph Reichenbach  <creichen@rbg.informatik.tu-darmstadt.de>

	* Released 0.1.1

	* Kicked autoconf and automake until they would tell me the byte
	sizes of the various data types. Together with Magnus' machine-
	independent getInt (now called getInt16) the new data types should
	greatly improve portability.

	* Merged Magnus' script and vocabulary resource code into the
	distribution. Wrote some small testing utilities for them.

1999-04-03  Christoph Reichenbach  <creichen@rbg.informatik.tu-darmstadt.de>

	* First public release.
