$Id: ChangeLog,v 1.558 2002/10/05 01:59:21 mthuurne Exp $

2002-10-05 Maarten ter Huurne <mth@stack.nl>
	Last minute Bussum fixes:
	* Temporarily reverted name table base fix.
	  This fix needs modifications in the renderers as well and I don't have
	  time right now to find out exactly where.
	* Rewrote PhaseHandlers to specify rectangles in VDP absolute coordinates
	  and using exclusive limits.
	  Fixes crashes on MSX1 and excessive draws, maybe more.
	Unknown Reality shows only minor glitches, so we can demo with pride!

2002-10-03 Maarten ter Huurne <mth@stack.nl>
	* Fixed bug in VDP: name table base was not adjusted for planar modes.
	  This caused wrong rendering in SCREEN7/8.
	* Disabled "inside window" check for now.
	  Parts of the code are not ready yet to use the VRAM windows properly.

2002-10-02 Maarten ter Huurne <mth@stack.nl>
	* Updated C-BIOS to version 0.13.

2002-09-30 Maarten ter Huurne <mth@stack.nl>
	* The Great VRAM Rewrite, part 4:
	  Introduction of VRAMObserver interface. Not used yet.
	* Minor VRAM cleanups.

2002-09-29 Wouter Vermaelen <wouter.vermaelen@pi.be>
	* Read/Write memory cache for SCC+
	* Unified Xanadu and Royal Blood mapper types

2002-09-28 Wouter Vermaelen <wouter.vermaelen@pi.be>
	* SCC+ didn't work at all, fixed it.
	  Fixes Snatcher and SDSnatcher.
	* Fixed RoyalBlood mapper type (not sure about Xanadu)
	* Fixed Majutsushi, bad sound quality (DAC) though
	* Implemented CrossBlaim mapper type (untested)

2002-09-28 Maarten ter Huurne <mth@stack.nl>
	* Updated C-BIOS to version 0.12.
	* I forgot that the cbios.xml used TMS99x8A.
	  With a V9938, C-BIOS can run many MSX2 ROMs as well.
	  I created two separate config files: cbios-msx1.xml and cbios-msx2.xml.

2002-09-25 Wouter Vermaelen <wouter.vermaelen@pi.be>
	* GLFont uses 16x16 character texture instead of 256x1

2002-09-22 Maarten ter Huurne <mth@stack.nl>
	* Updated C-BIOS to version 0.11.
	  Boukichi sure understands "release early; release often". :)

2002-09-20 Maarten ter Huurne <mth@stack.nl>
	* Updated C-BIOS to version 0.10.

2002-09-17 Maarten ter Huurne <mth@stack.nl>
	* Updated C-BIOS to version 0.08.

2002-09-08 Wouter Vermaelen <wouter.vermaelen@pi.be>
	* Added "deinterlace" command:
	   switch at-run-time between stable and unstable interlace
	   only SDLHiRenderer and SDLGLRenderer

2002-09-08 Maarten ter Huurne <mth@stack.nl>
	* Updated C-BIOS to version 0.07.

2002-09-08 Wouter Vermaelen <wouter.vermaelen@pi.be>
	* Enabled pixel accurate rendering in SDLHiRenderer:
	   - for some reason the NOTONLYSNESCANDOTHIS part in Unknown Reality
	     is not extremely slow (it is when using SDLGLRenderer)
	   - remember you have to manually enable pixel accurate rendering
	     with the command "accuracy pixel"
	* Enabled pixel accurate rendering in SDLLoRenderer

2002-09-08 Joost Yervante Damad <joost@lumatec.be>
	* mv configure.in -> configure.ac [autotools recommendation]
	* configure exits on failure to find SDL_image library

2002-09-07 Wouter Vermaelen <wouter.vermaelen@pi.be>
	* Correct blending in all non-paletted modes, no blending in
	  paletted modes
	* Implemented "accuracy" command. This allows to switch at-run-time
	  between pixel/line/screen accuracte rendering. For the moment
	  no screen accurate rendering and only for SDLGLRenderer.

2002-09-02 Wouter Vermaelen <wouter.vermaelen@pi.be>
	* Dont't stop when sound device couldn't be opened, just continue
	  without sound.

2002-09-01 Wouter Vermaelen <wouter.vermaelen@pi.be>
	* Added some Turbo-R specific devices:
	   - MSXTurboRPauze: without this BIOS gets stuck in pauze loop
	   - MSXS1990 (minimal): Needed to switch between Z80 / R800
	   - MSXF4Device (needs a better name): to distinguish between
	      cold/warm boot and Z80/R800 boot-pass
	   - MSXTurboRLeds
	  Turbo-R doesn't boot yet :-(

2002-09-01 Maarten ter Huurne <mth@stack.nl>
	* Updated C-BIOS to version 0.06.

2002-08-31 Maarten ter Huurne <mth@stack.nl>
	* The Great VRAM Rewrite, part 3:
	  SpriteChecker does all of its VRAM reading through VDPVRAM::Window.
	  Only CPU does non-windowed reads anymore.
	  All planar remapping occurs outside of VDPVRAM.

2002-08-31 Wouter Vermaelen <wouter.vermaelen@pi.be>
	* Move common code from SDLConsole and GLConsole to a new parent class
	* Added R800:
	   there is nothing implemented to switch from Z80 to R800, so for the
	   moment R800 is not yet usable

2002-08-30 Wouter Vermaelen <wouter.vermaelen@pi.be>
	* SDLGLRenderer:
	   small cleanups
	   when interlaced, display odd fields half a line lower

2002-08-29 Wouter Vermaelen <wouter.vermaelen@pi.be>
	* FDC supports 2 drives

2002-08-28 Wouter Vermaelen <wouter.vermaelen@pi.be>
	* Implemented pixel-accurate rendering in SDLGLRenderer:
	   - scope part in Unknown Reality is correct now!
	   - some parts are _very_ slow now, implementation can still be
	     optimized a lot and speed should also improve when VDPVRAM
	     is finished.
	* Implemented "vdpregs" command to help vdp debugging

2002-08-26 Maarten ter Huurne <mth@stack.nl>
	* Updated C-BIOS to version 0.05.

2002-08-26 Wouter Vermaelen <wouter.vermaelen@pi.be>
	* Implemented partial character rendering for SDLGLRenderer:
	   - fixes top border while vertical scrolling in Space Manbow
	   - fixes Psycho World
	* Implemented vertical scrolling in TextMode1 in SDLGLRenderer

2002-08-25 Wouter Vermaelen <wouter.vermaelen@pi.be>
	* Use SDL_image to load images (.png .bmp .jpg ...)
	* Implemented GLConsole for SDLGLRenderer
	    - old console didn't always work for SDLGLRenderer
	    - a lot faster
	    - per pixel alpha blending:
	       ConsoleBackground and ConsoleFont can be true RGBA images
	       (current pictures are .bmp, they don't have an alpha channel)

2002-08-22 Wouter Vermaelen <wouter.vermaelen@pi.be>
	* Implemented R-Type mapper
	* Fixed vertical scrolling in text modes
	   (except TextMode1 in SDLGLRenderer)

2002-08-21 Maarten ter Huurne <mth@stack.nl>
	* Added C-BIOS 0.04 to Contrib directory.
	* Added config XML for using C-BIOS to src/cfg.

2002-08-18 Wouter Vermaelen <wouter.vermaelen@pi.be>
	* VDP code:
	   - trivial fixes / cleanups
	   - low resolution (SDLLo) rendering improvements
	     try SCREEN 0 WIDTH 80
	     only 24bpp modes yet
	* Z80 fix:
	   IFF2 should be reset while acknowledging an IRQ
	   this fixes music in "Break-In"

2002-08-16 Wouter Vermaelen <wouter.vermaelen@pi.be>
	* major cleanups, minor tweaks / fixes

2002-08-16 Maarten ter Huurne <mth@stack.nl>
	* Fixed wrong use of sizeof(array): it returns #bytes, not #elements.
	  Caused a segfault on Sparc.

2002-08-14 Wouter Vermaelen <wouter.vermaelen@pi.be>
	* Fixed SD-Snatcher loading bug:
	   - disk has a non-standard bootsector (sectors per track and number
	     of sides) is wrong. Updated heuristics to detect 9 sectors per
	     track and 2 sides in case disk image has 80*2*9 sectors.
	     How does the BDOS read this disk? Perhaps it uses the media
	     descriptor?

2002-08-13 Wouter Vermaelen <wouter.vermaelen@pi.be>
	* Split MSXMotherBoard in:
	   - MSXCPUInterface: handles communication between a MSXDevice and CPU
	        - registration of IO- and memory-space
	        - slotselection mechanism
	   - MSXMotherboard: keeps a list of all MSXDevices

2002-08-11 Wouter Vermaelen <wouter.vermaelen@pi.be>
	* more Z80 cleanups
	* commands can now also be bound to key releases (was only keypresses)
	   example:  unbind F9
	             bind F9 "throttle off"
	             bind f9,up "throttle on"
	   this disables throttling while you hold F9 

2002-08-10 Wouter Vermaelen <wouter.vermaelen@pi.be>
	* Z80 fixes:
	   V_FLAG was wrong with SUB/SBC/CP instructions
	* Z80 fixes:
	   XF and YF flags where wrong with BIT n,r instruction
	* major Z80 cleanup:
	   - greatly reduced code duplication in CPUCore.n2

2002-08-09 Wouter Vermaelen <wouter.vermaelen@pi.be>
	* More robust Thread class
	* cleanups, especially in JoyNet
	* fix bug [592594] MSXFDC doesn't work with single sided disks

2002-08-08 Wouter Vermaelen <wouter.vermaelen@pi.be>
	* Z80 cleanups / fixes:
	   especially fixes for the 2 undocumented flags (bit 3 and bit 5)
	* New config file format for inserted disks / tapes
	* Applied Manuel's patch [592591]:
	   romdb.xml is searched with FileOpener

2002-08-06 Wouter Vermaelen <wouter.vermaelen@pi.be>
	* Full support for .XSA disk images

2002-08-05 Wouter Vermaelen <wouter.vermaelen@pi.be>
	* Enabled SDLConsole in SDLGL renderer:
	   current code is only a temporary solution for the following reasons:
	    - use of SDL_OPENGLBLIT is heavily discouraged, see
	        http://www.libsdl.org/pipermail/sdl/2001-November/039852.html
	    - transparancy doesn't work in 16-bit video modes
	      (an SDL limitation)
	   in the future we should make a native GLConsole

2002-08-04 Wouter Vermaelen <wouter.vermaelen@pi.be>
	* Allow multiple "md5" tags per "rom" tag
	* Low level tape support (experimental)

2002-08-03 Wouter Vermaelen <wouter.vermaelen@pi.be>
	* wrote doc/commands.txt
	* cleanups, small fixes in RomTypes and MSXRom
	* added some entries in romdb.xml

2002-08-01 Wouter Vermaelen <wouter.vermaelen@pi.be>
	* EmuTime cleanups:
	   introduced EmuDuration class
	    - the subtraction of 2 EmuTimes results in an EmuDuration,
	      this used to result in another EmuTime
	    - an EmuDuration can be added to / subtracted from an EmuTime,
	      this results in another EmuTime
	* DACSound:
	   - totally discarded old implementation
	   - new implementation is extremely simple, relatively slow, has
	     poor sound quality, but is bug free

2002-07-31 Wouter Vermaelen <wouter.vermaelen@pi.be>
	* Made "check-db":
	   a primitive tool to compare a romtype database against the build-in 
	   rom autodetection algorithm
	* When console is up, keypresses are blocked for MSX-Keyboard:
	   this implementation should work in all cases (hopefully)

2002-07-29 Wouter Vermaelen <wouter.vermaelen@pi.be>
	* cleanups
	* Support for "ROM database"

2002-07-26 Wouter Vermaelen <wouter.vermaelen@pi.be>
	* Experimental support for .xsa disk images
	* Removed "automappertype" parameter, you can still explicitly specify
	  autodetection by setting "mappertype" to "auto"
	* Added MD5 class:
	   will be used for mappertype detection of difficult ROMs

2002-07-24 Maarten ter Huurne <mth@stack.nl>
	* Added debug option NOTIME_EXECUTION, to make VDP command execute in
	  zero EmuTime. Useful for tracking "no/partial images" bugs.

2002-07-23 Wouter Vermaelen <wouter.vermaelen@pi.be>
	* MSXDiskRomPatch supports 2 drives again

2002-07-22 Maarten ter Huurne <mth@stack.nl>
	* The Great VRAM Rewrite, part 2:
	  SpriteChecker does most of its VRAM reading through VDPVRAM::Window.
	  Updated doc/vram-addressing.txt with details of sprite indexing.
	  Proper support for planar modes is still missing.

2002-07-21 Maarten ter Huurne <mth@stack.nl>
	* The Great VRAM Rewrite, part 1:
	  Renderers do all their VRAM reading through VDPVRAM::Window now.
	  See doc/vram-addressing.txt for background info.

2002-07-14 Wouter Vermaelen <wouter.vermaelen@pi.be>
	* Implemented "bind" and "unbind" command

2002-07-14 Wouter Vermaelen <wouter.vermaelen@pi.be>
	* Moved event related files to new directory
	* Added Keys class:
	   translates keyCodes to keyNames and vice versa

2002-07-09 David Heremans <david.heremans@gnu-linux.net>
	* Improved portbased interface to MSXFDC

2002-07-08 Wouter Vermaelen <wouter.vermaelen@pi.be>
	* Enabled console in SDLLoRenderer

2002-07-07 Wouter Vermaelen <wouter.vermaelen@pi.be>
	* Reenabled SDLLoRenderer:
	   - just a copy-paste from SDLHi and adjusted a few routines
	   - console is disabled in SDLLo
	   - not very well tested yet

2002-07-07 David Heremans <david.heremans@gnu-linux.net>
	* Added portbased interface to MSXFDC for Brazilian MSX's

2002-07-06 Wouter Vermaelen <wouter.vermaelen@pi.be>
	* Moved cassette related code to its own directory
	* Cleanups

2002-06-30 David Heremans <david.heremans@gnu-linux.net>
	* Added index mark to the FDC status register (not tested yet!)

2002-06-28 Wouter Vermaelen <wouter.vermaelen@pi.be>
	* Initial version of DiskImageManager (WIP):
	   - insert disk from commandline doesn't work yet
	   - MSXFDC compiles, but not yet tested
	   - MSXDiskROMPatch only supports 1 drive
	   - FDC_DSK backend only supports double sided disks
	* Insert disk from command line works again:
	   - just a hack, we need a better configuration format for this
	* MSXFDC still seems to work:
	  - config file changed slightly, see msxconfigFDC.xml
	  - David please check my modifications, especially the error
	    handling code

2002-06-27 Wouter Vermaelen <wouter.vermaelen@pi.be>
	* MSXRom fix:
	   map 32kb ROMs in the right place

2002-06-22 Wouter Vermaelen <wouter.vermaelen@pi.be>
	* Small Mixer fix, cleanups

2002-06-21 Wouter Vermaelen <wouter.vermaelen@pi.be>
	* Enabled console background
	* Console font and background filename are read from config file

2002-06-20 Wouter Vermaelen <wouter.vermaelen@pi.be>
	* Moved thread related code to its own subdirectory
	* Added unregisterHotKey() and unregisterHotKeyCommand() methods
	* Enabled "renderer" command

2002-06-19 Wouter Vermaelen <wouter.vermaelen@pi.be>
	* Console commands and HotKeys are now executed by the main thread:
	   - this removes some (potential) races, so some bugs like
	       "This crashed once, but I can't reproduce it"
	     might be gone.
	   - this is a rather fundamental change, it might still contain some
	     glitches.
	* Removed all registerAsync__() methods:
	   they aren't used anymore and they shouldn't be in the future
	* Introduced condition variables (thread locking):
	   used in Scheduler to implement pause
	* Added unregisterEventListener() method

2002-06-18 David Heremans <david.heremans@gnu-linux.net>
	* Basic timing for all FDC Type I commands

2002-06-18 Wouter Vermaelen <wouter.vermaelen@pi.be>
	* Tab-completion now works for zero-length tokens

2002-06-16 Wouter Vermaelen <wouter.vermaelen@pi.be>
	* Use exceptions for command error reporting

2002-06-15 Wouter Vermaelen <wouter.vermaelen@pi.be>
	* Simplified MSXRomPatchInterface

2002-06-14 Wouter Vermaelen <wouter.vermaelen@pi.be>
	* Scheduler fixes
	* Removed MSX16KB device:
	   MSXGameCartridge can do everything what MSX16KB could
	* Renamed:
	     MSXRom           -> MSXRomDevice
	     MSXGameCartridge -> MSXRom
	* Moved common code to MSXRomDevice
	* "filesize 0" no longer means autodetection, instead use
	  "filesize auto" (or just don't mention filesize)

2002-06-12 Wouter Vermaelen <wouter.vermaelen@pi.be>
	* ConsoleCommand parser now understands quoted tokens or tokens with
	  escaped characters. Examples:
	      diska a\ space.dsk
	      diska "a space.dsk"
	      diska a\"quote.dsk
	  It should now be possible to enter any string as a command token.

2002-06-11 David Heremans <david.heremans@gnu-linux.net>
	* basic FDC fully working:
	   Fixed minor bug (all my tested disks work now)
	   Implemented small speed up

2002-06-10 Wouter Vermaelen <wouter.vermaelen@pi.be>
	* Commands can now be unregistered again
	* cleanups

2002-06-10 David Heremans <david.heremans@gnu-linux.net>
	* basic FDC implemenation partialy working:
	   DSK backend working
	   All Type I functions working
	   Type II partial (readSector OK, writeSector doesn't check for write
	   protected images yet)
	   No Type III commands yet

2002-06-06 David Heremans <david.heremans@gnu-linux.net>
	* First step towards an FDC implemenation:
	   Basic structure is provided
	   MSXFDC as good as finalized.

2002-06-05 Joost Yervante Damad <andete@worldcity.nl>
	* preliminary auto* libpng support [David is learning auto* woowoo!]

2002-06-04 Wouter Vermaelen <wouter.vermaelen@pi.be>
	* Implemented "speed" command, try "help speed" in console

2002-06-02 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* MSXGameCartridge cleanup

2002-05-28 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* Fixed PAINTER.ROM:
	   mappertype autodetection doesn't work, start with
	   ./openmsx roms/PAINTER.ROM,64kb
	* Fixed MSXSCCPlusCart:
	    delete SCC in destructor
	    ignore reads/writes outside address space

2002-05-27 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* writing the same value twice to an (output) connector doesn't change
	  the status of that connector, so don't call the write method of that
	  connector twice (Joystick, PrinterPort, Y8950Keyboard)

2002-05-23 Bas Wijnen <b.wijnen@student.rug.nl>
	* Mutexes added around PRT_* macros

2002-05-22 Maarten ter Huurne <mth@stack.nl>
	* SDLGLRenderer uses block textures in Text1 (SCREEN0.40).
	* SDLGLRenderer uses block textures in Graphics2 (SCREEN2).
	* Rendering sprites in SDLGLRenderer is a lot faster now, because
	  textures aren't immediately destroyed after drawing.

2002-05-19 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* small sprite rendering optimizations

2002-05-18 Bas Wijnen <b.wijnen@student.rug.nl>
	* Added files for Xlib renderer. Mostly unimplemented.

2002-05-15 Maarten ter Huurne <mth@stack.nl>
	* SDLGLRenderer uses textures.

2002-05-15 Bas Wijnen <b.wijnen@student.rug.nl>
	* g++-3.0 fixes

2002-05-15 David Heremans <david.heremans@gnu-linux.net>
	* JoyNet cable using TCP/IP implemented

2002-05-13 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* converted some ints to unsingned ints

2002-05-13 Joost Yervante Damad <andete@worldcity.nl>
	* fixed some files mising in the Makefile.am

2002-05-12 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* made "diska" and "diskb" commands

2002-05-09 Joost Yervante Damad <andete@worldcity.nl>
	* File, HttpFile, LocalFile [work in progress]

2002-05-08 Bas Wijnen <b.wijnen@student.rug.nl>
	* fixed console-key-pass-bug and some minor things

2002-05-06 David Heremans <david.heremans@gnu-linux.net>
	* Skeleton files for JoyNet configuration

2002-05-05 Bas Wijnen <b.wijnen@student.rug.nl>
	* Game Master 2 is working with SRAM and guessing.

2002-05-03 Bas Wijnen <b.wijnen@student.rug.nl>
	* Created src/FileType.hh for g++-3.0 and some g++-3.0 fixes

2002-05-02 Maarten ter Huurne <mth@stack.nl>
	* Calculate pixel precision coordinates.
	  They are approximately right, but not exactly right yet.

2002-05-02 Joost Yervante Damad <andete@worldcity.nl>
	* File, HttpFile, LocalFile [work in progress]

2002-05-01 David Heremans <david.heremans@gnu-linux.net>
	* Skeleton files for JoyNet device

2002-04-30 Joost Yervante Damad <andete@worldcity.nl>
	* s/-fhuge-objects//g
	* verious g++-3.0 fixes

2002-04-29 Maarten ter Huurne <mth@stack.nl>
	* SDLGLRenderer is working again.
	* SDLGLRenderer now uses CharacterConverter and BitmapConverter.
	* Removed double buffering from SDLHiRenderer. It didn't work and
	  without double buffering more optimisations are possible.
	* Renderers use screen position instead of EmuTime for internal update
	  targets. It was like this before the VDPVRAM introduction and with
	  the cleaned up implementation it is possible again.
	  It also fixes a bug where too many lines were scanline converted.
	  This caused no glitches, but it did waste CPU cycles.
	* Also made SpriteChecker use screen position rather than EmuTime.

2002-04-29 Joost Yervante Damad <andete@worldcity.nl>
	* small cleanup FilePath [sorry guys!]
	* more proper cleanup

2002-04-28 Maarten ter Huurne <mth@stack.nl>
	* Some VDP cleanups.

2002-04-28 Joost Yervante Damad <andete@worldcity.nl>
	* FilePath stuff for future FileManager

2002-04-28 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* Tab-completion updates

2002-04-28 Maarten ter Huurne <mth@stack.nl>
	* Removed re-entering of SpriteChecker::sync and Renderer::sync.
	  Display enable/disable changes now go through VDPVRAM.
	  Various other cleanups.
	  Most sprite glitches are fixed now.

2002-04-28 Bas Wijnen <b.wijnen@student.rug.nl>
	* Added includes, std:: prefixes and unsigned char casts
	  to allow compile with g++-3

2002-04-27 Maarten ter Huurne <mth@stack.nl>
	* Display mode changes now go through VDPVRAM.
	  It also performs planar reorder on single-byte reads and writes.

2002-04-25 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* VDP Text2 dirty colour table check

2002-04-24 Maarten ter Huurne <mth@stack.nl>
	* Fixed a bug in SpriteChecker and also simplified it.

2002-04-24 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* more accurate VDP command timing:

2002-04-23 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* Enabled VDP command timing:
	   recalculated table, no difference 50/60Hz anymore

2002-04-23 Maarten ter Huurne <mth@stack.nl>
	* Re-enabled SDLGLRenderer.

2002-04-22 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* tuned relative volume Y8950-ADPCM / -FM (thanks Manuel)

2002-04-18 Maarten ter Huurne <mth@stack.nl>
	* Separated sprite checking into a separate class.
	  Works, but with glitches.

2002-04-17 Joost Yervante Damad <andete@worldcity.nl>
	* added tools/ dir and bin2c tool
	* added --disable-SCC
	* added --disable-FMPAC
	* added --disable-MSXMUSIC
	* more "--disable-XXX"'s to come ;-)

2002-04-16 Maarten ter Huurne <mth@stack.nl>
	* More VDPVRAM and related cleanups.

2002-04-15 David Heremans <david.heremans@gnu-linux.net>
	* Enhancements to the developpers FAQ

2002-04-15 Joost Yervante Damad <andete@worldcity.nl>
	* extended commandline parser to support keyinserter

2002-04-15 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* Extended KeyEventInserter so it can be used in Tilburg
	* Fixed YM2413 drums: playing the same drum twice now works

2002-04-13 Maarten ter Huurne <mth@stack.nl>
	* VDPVRAM and related cleanups.

2002-04-12 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* DACSound cleanup (still has the same(?) bug)
	* EventDistributor simplification:
	   use Scheduler for synchronous event delivery
	   thanks Maarten for the idea
	* Made Scheduler thread safe
	* #include cleanups
	* Y8950 generates an IRQ on end-of-sample _in_EmuTime_ (was realtime)
	* Implemented Y8950 keyboard connector:
	   just the connector, no keyboard yet
	* More accurate ADPCM readback (thanks Maarten)

2002-04-11 David Heremans <david.heremans@gnu-linux.net>
	* Royal blood works, use type ASCII8SRAM2!
	  Xanadu resets to Basic, Hydlide2 hangs.

2002-04-11 Maarten ter Huurne <mth@stack.nl>
	* Introduced "renderer" command to print current renderer and switch
	  to another one. However, switching from SDLHi to SDLGL hangs SDL.
	  Well, at least the renderer destructors are finally implemented.

2002-04-11 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* Finally (?) fixed Y8950 samples:
	   "Arranger 4" sounds ok now
	* Implemented ADPCM readback (untested)

2002-04-11 David Heremans <david.heremans@gnu-linux.net>
	* Royal blood works, use type ASCII8SRAM2!
	  Xanadu resets to Basic, Hydlide2 hangs.

2002-04-11 David Heremans <david.heremans@gnu-linux.net>
	* Added (not tested) support for ASCII8SRAM type to MSXGameCartridge.

2002-04-08 David Heremans <david.heremans@gnu-linux.net>
	* Added support for Hydlide2 type to MSXGameCartridge.
	* Added generic support for SRAM to MSXGameCartridge.
	* Enhanced CommandLineParser to support SRAM filenames
	  for games.

2002-04-08 Maarten ter Huurne <mth@stack.nl>
	* Took character scanline conversion out of SDLHiRenderer as well,
	  its new home is a class called CharacterConverter.

2002-04-07 Maarten ter Huurne <mth@stack.nl>
	* Took bitmap scanline conversion out of SDLHiRenderer and put it in
	  a separate class called BitmapConverter.
	  It is necessary to reduce the size of SDLHiRenderer, because its
	  source had become too large to manage (over 1250 lines).

2002-04-06 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* small update to doc/developersFAQ.txt

2002-04-05 Joost Yervante Damad <andete@worldcity.nl>
	* added --enable-interlacing ./configure argument
	  see also ./configure --help and src/config.h.in
	  after rerunning ./autogen.sh

2002-04-04 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* Console cleanup
	* Console is no longer a singleton, instead there is now a singleton
	  ConsoleManager. All Consoles must register with the ConsoleManager.
	* Made InteractiveConsole subclass of Console:
	   SDLConsole inherit from InteractiveConsole
	   a logging-only console inherits from Console
	* Bumped version number
	* ConsoleFont.bmp can now be in any configured directory

2002-04-04 David Heremans <david.heremans@gnu-linux.net>
	* Added more debug info to MSXGameCartrdige.
	* Fixed an error in SCCplus cartridge
	* Addapted SCCplus cartridge to use FileOpener

2002-04-03 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* Moved ADPCM part of Y8950 to its own file
	* Fixed ADPCM bug:
	   addresses where a factor 8 too low, only first sample was
	   played correctly
	* Made console command "fullscreen", PrtScrn is bound to this command
	* Console command "mute" takes on/off parameter
	* Console command "pause" takes on/off parameter
	* Made console command "console", F10 is bound to this command

2002-04-01 Joost Yervante Damad <andete@worldcity.nl>
	* FileManager sync [WIP]
	* a first proposal for a FileManager API, I'll
	  implement it soon if noone objects [or at least
	  something like this!]

2002-03-31 Maarten ter Huurne <mth@stack.nl>
	* Cleaned up VRAM implementation a little.
	  Still plenty of work to be done.

2002-03-30 Maarten ter Huurne <mth@stack.nl>
	* Added new VDPVRAM class, which manages VRAM.
	  It is far from finished, but even in the current state it should be
	  no less accurate than what we had before.

2002-03-30 Joost Yervante Damad <andete@worldcity.nl>
	* made CommandlineParser xml entity safe

2002-03-28 David Heremans <david.heremans@gnu-linux.net>
	* Added MC6850 and sampleram to '-musmod' CLI option.
	* Added article written for the Dutch MSX-infoblad.
	  The png's are ment to be printed and where not scaled for
	  webpurposes.

2002-03-28 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* Added dummy MC6850 (ACIA used in MSX Music Module for MIDI):
	   "FAC demo 3" now detects MSX Music Module

2002-03-28 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* amount of sample-ram is now configurable

2002-03-27 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* implemented Y8950 timers
	* implemented "throttle" command

2002-03-26 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* fixed crash when a specified file did not exists:
	   for some reason C++ doesn't throw exception beyond the constructor,
	   even explicitly (re)throwing an exception in the constructor doesn't
	   work

2002-03-25 Joost Yervante Damad <andete@worldcity.nl>
	* made VPATH compiles work, fixes 'make distcheck' also
	* bumped version no

2002-03-25 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* implemented RYTHM sounds for Y8950 (MSX-AUDIO): untested!
	* reworked IRQ handling:
	    CPU keeps IRQStatus (was CPUInterface)
	    this way CPU can react directly on unannounced IRQs
	    (eg: Y8950 end-of-sample IRQ)

2002-03-24 David Heremans <david.heremans@gnu-linux.net>
	* Added more helptext to the CommandlineParser.
	* Made the 64 kB roms Manuel send me working.
	* Enhanced the autodection of MSXGameCartrdige.

2002-03-24 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* Y8950 and YM2413 cleanups

2002-03-24 Joost Yervante Damad <andete@worldcity.nl>
	* fixed configure.in
	* continuation of <filepath>

2002-03-23 Joost Yervante Damad <andete@worldcity.nl>
	* more CustomConfig framework
	* started on FilePath CustomConfig
	* this is WIP, and is not finished yet!

2002-03-21 David Heremans <david.heremans@gnu-linux.net>
	* Again a (total) rewrite of CommandlineParser.
	  A simpler and cleaner design then the previous one, and
	  easy to extend for other CLI-options.

2002-03-20 Joost Yervante Damad <andete@worldcity.nl>
	* XML::Escape support added to libxmlx
	* usage is explained in the header
	* if you make xml that is feeded into libxmlx,
	  you need to escape it first, to allow entity
	  escaping for &, <, >, ...
	* cleaned up libxmlx dir, libxmlx is now dual
	  licensed GPL and LGPL

2002-03-19 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* updated config files

2002-03-19 Joost Yervante Damad <andete@worldcity.nl>
	* started on CustomConfig
	* added src/config/ dir, moved initial files

2002-03-19 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* various Y8950 improvements, not sure adpcm part is completely fixed
	* fixed getName() for Schedulable (eg VDP)
	* fixed virtual inheritance constructor invocations

2002-03-18 Joost Yervante Damad <andete@worldcity.nl>
	* small fix in src/Makefile.am, I hope this solves
	  David's compilation problems

2002-03-17 Maarten ter Huurne <mth@stack.nl>
	* Fixed graphical glitch when switching between PAL and NTSC timing.
	* Minor clean-ups in SDLGLRenderer.

2002-03-16 Maarten ter Huurne <mth@stack.nl>
	* Implemented blanking in SDLGLRenderer.
	* Implemented side borders in SDLGLRenderer.
	* Implemented sprites in SDLGLRenderer.
	* Only compile SDLGLRenderer if OpenGL was detected.

2002-03-15 Maarten ter Huurne <mth@stack.nl>
	* Improved line rounding in renderer sync.
	* Fixed side border widths in text mode.

2002-03-15 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* Fixed SCC distortion (was unsigned->signed conversion bug)
	* [Experimental] First order high-pass IIR filtering in Mixer
	* Tab completion of filenames for "disk" and "tape" command

2002-03-14 Maarten ter Huurne <mth@stack.nl>
	* Fixed ASCII16K MegaROM mapper.
	  Eggerland 2 works now, but is still autodetected incorrectly.

2002-03-14 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* Fixed tab completion bug
	* Fixed printed CPU T-States (only printed value was wrong)
	* Fixed crash when RTC.SAVE or FMPAC.PAC where missing

2002-03-12 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* convert CassettePort to Connector-Pluggable structure
	* MSXSimple:
	   - converted from MSXIODevice to PrinterPortDevice
	   - renamed to PrinterPortSimple
	* MSXPrinterLogger:
	   - converted from MSXIODevice to PrinterPortDevice
	   - renamed to PrinterPortLogger

2002-03-11 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* made Connector-Pluggable aware of EmuTime
	* convert PrinterPort to Connector-Pluggable structure

2002-03-10 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* Console cleanup
	* Added console prompt
	* Tab completion for help command
	* Fixed uninitialized variable (enabledSCC) in MSXGameCartridge
	* made MSXConfig::getParameterAsXXX() methods throw execptions again

2002-03-08 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* Split Console in Console and CommandController:
	   commands can now execute without a Console
	* Implemented help command
	* Re-implemented tab-completion:
	   - completion till longest common match
	   - if there is only one match left a ' ' is added
	   - option for context sensitive completion (not yet tested)
	* Implemented tab completion for (un)plug command:
	   name of connector and pluggable gets completed

2002-03-07 Maarten ter Huurne <mth@stack.nl>
	* Fixed Generic16K MegaROM mapper. DOS2 works now.

2002-03-07 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* Added plug-connector infrastructure:
	   - only very basic support yet
	   - changed joystick stuff to use this

2002-03-07 David Heremans <david.heremans@gnu-linux.net>
	* New internal structure of CommandlineParser is working
	  This will make it possible to have extra parameters for
	  cartridges,disks, or in a more global context.
	* Small fix to MSXGameCartridge

2002-03-06 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* split console commands in tokens

2002-03-05 Joost Yervante Damad <andete@worldcity.nl>
	* simplified auto* support for openGL
	  see src/config.h after running autogen.sh
	  to see which vars to use. For now it searches
	  for <gl.h> or <GL/gl.h> and for -lGL
	  This should allow easy conditional compile
	  of SDLGLRenderer.

2002-03-04 Maarten ter Huurne <mth@stack.nl>
	* Added SDLGLRenderer (work in progress).
	* Added nms8250.xml to distributed files.
	* Fixed compile warnings in VDPCmdEngine.

2002-03-04 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* SCC cleanups and tiny tweaks

2002-03-04 Joost Yervante Damad <andete@worldcity.nl>
	* added auto* support for openGL

2002-03-03 Maarten ter Huurne <mth@stack.nl>
	* Made sure unused bits in GRB palette value are zero.

2002-03-02 Maarten ter Huurne <mth@stack.nl>
	* Implemented fixed palette for sprites in Graphic 7 mode.

2002-03-01 Joost Yervante Damad <andete@worldcity.nl>
	* cleanup & documentation for libxmlx
	* tightened interface in xmlx.hh
	* tiny configure.in fixes
	* bumped version number

2002-02-28 Maarten ter Huurne <mth@stack.nl>
	* Fixed enlarged sprites. (David, you can fly your heli now! ;)

2002-02-28 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* moved sound related files to new directory "sound"
	* fixed MSX-MUSIC in CTNG products:
	  a real MSX-MUSIC is enabled on power-on

2002-02-27 Joost Yervante Damad <andete@worldcity.nl>
	* doxygen cleanups
	* updated homepage

2002-02-27 Maarten ter Huurne <mth@stack.nl>
	* Fixed even/odd page flipping, it was overzealous.

2002-02-27 Joost Yervante Damad <andete@worldcity.nl>
	* simplified auto* setup for crosscompiling
	* added atoll.c code for platforms that don't support that function
	* crosscompiling now works, xmlxdump.exe works, openmsx.exe
	  doesn't work yet
	* for instructions, see README.WIN32
	* fixed faulty CHECK_FUNC in configure.in
	* atoll.c is now only used when needed

2002-02-25 Maarten ter Huurne <mth@stack.nl>
	* Implemented even/odd and interlace display.

2002-02-24 Maarten ter Huurne <mth@stack.nl>
	* Fixed port C read bug in PPI.
	  Now keyboard works in SBB promo and CAPS is off at boot time.
	* Implemented VDP name table masking (R#2) in bitmap modes.
	  The 12 scrolls part of the Source of Power works now.
	* Implemented blinking in Text2 display mode.
	* Disabled SDLLoRenderer for now; it is not actively maintained.

2002-02-23 Maarten ter Huurne <mth@stack.nl>
	* Fixed Graphic7 border colour.

2002-02-22 Maarten ter Huurne <mth@stack.nl>
	* Implemented VDP overscan.
	  Can use some more cleanup, but it works.

2002-02-19 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* PrinterPortDevice now receives EmuTime:
	   this is necessary for devices like Simple

2002-02-18 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* moved CPU related files to subdirectory

2002-02-18 David Heremans <david.heremans@gnu-linux.net>
	* added simple and a printerlogger.
	  Two devices that are connect to the printerport on a real MSX.
	  The first is a DAC to play samples, the other logs all the data
	  that a printer would normally print.

2002-02-17 Joost Yervante Damad <j.damad@qahwah.net>
	* added atoll support for platforms that don't have
	  that function [code taken from newlib, a libc for
	  embedded systems]

2002-02-16 Maarten ter Huurne <mth@stack.nl>
	* Moved "display or border" calculation from renderer to VDP.
	  This is a preparation for overscan and for accurate VRAM timing.

2002-02-15 David Heremans <david.heremans@gnu-linux.net>
	* Nicer mappertypes for the MSXGameCartridge:
	  As requested by Maarten you can now specify easier to remember
	  names (like ASCII8, SCC,KONAMI4,...) for the different mapper
	  types instead of the numbers.

2002-02-15 Maarten ter Huurne <mth@stack.nl>
	* Added "palette" console command.

2002-02-15 David Heremans <david.heremans@gnu-linux.net>
	* Nicer mappertypes for the MSXGameCartridge:
	  As requested by Maarten you can now specify easier to remember
	  names (like ASCII8, SCC,KONAMI4,...) for the different mapper
	  types instead of the numbers.

2002-02-13 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* CPU speedup:
	   CPU doesn't check the IRQ line after each instruction anymore, only
	   directly after synchronization points. This also means that all 
	   irq.set() instruction must also set a synchronization point.
	   TODO: check this for VDP, Y8950 and document this
	* VDP bug fix:
	   writes to register > 46 (non existing registers) overwrite other
	   variables

2002-02-13 David Heremans <david.heremans@gnu-linux.net>
	* MSX MUSIC/MSX AUDIO Stereo now possible:
	  The xml has an extra parameter allowing the Y8950 and YM2413 
	  to be activated in mono, left or right channel mode

2002-02-12 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* Fixed FM-modulation error in both Y8950 as YM2413

2002-02-11 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* Fixed some bugs in Y8950:
	   it is usable now, both OPL part as ADPCM part
	   but there are a few bugs left (YM2413 has the same problems)
	   relative volume of opl vs adpcm might need some tuning

2002-02-10 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* Made "cpudebug" command:
	   must be enabled in CPU.hh (#define CPU_DEBUG)
	* Y8950 (AUDIO) updates
	* Implemented auto commands:
	   automatic joystick/mouse insertion is now possible

2002-02-10 Maarten ter Huurne <mth@stack.nl>
	* Moved SDL dependent code out of VDP:
	  - Renderer instantiation happens in PlatformFactory (new class)
	  - full screen toggle was moved to Renderer (not its final location)

2002-02-08 Maarten ter Huurne <mth@stack.nl>
	* Fixed secondary slot select bug for real now.
	  The cause was uninitialised variables, the previous "fix" turned
	  out to be no more than a workaround.

2002-02-08 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* Large Console cleanup:
	   convert code to C++
	   split code in SDL dependent and SDL independent part
	   moved all console code to directory ConsoleSource
	* Support for 9 joysticks
	* Stricter syntax checking for joyport command

2002-02-07 Maarten ter Huurne <mth@stack.nl>
	* Fixed ASCII 16K (type 5) mapper.
	  Re-engineered Zanac-Ex ROM works now.
	* Made MSXMotherBoard console command inner classes private.

2002-02-06 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* More cleanups in ConsoleSource:
	   made SDLFont class, replaces DT_drawtext

2002-02-06 Maarten ter Huurne <mth@stack.nl>
	* A few small fixes in joystick implementation.
	  It works now. Thanks Wouter!

2002-02-06 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* Console cleanups
	* ConsoleCommand inner classes for Scheduler, MSXMotherBoard
	* Implemented "disk" command (similar as "tape" command):
	    works only for drive a:
	                   720kb disks
	* Implemented "joyport" command:
	    joyport[a|b] [unplug|mouse|joystick[1|2]]
	* First cleanup in ConsoleSource:
	   use hash_map in CON_consolecommand instead of self-made linked list

2002-02-05 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* Implemented "reset" console command.

2002-02-05 Maarten ter Huurne <mth@stack.nl>
	* Added MSXMotherBoard::IRQHelper class.
	* Removed IRQ helper functionality from MSXDevice.

2002-02-04 Maarten ter Huurne <mth@stack.nl>
	* Took advantage of new raiseIRQ/lowerIRQ semantics in VDP.

2002-02-04 Maarten ter Huurne <mth@stack.nl>
	* Fixed bug where devices in non-expanded slots would only be
	  visible when subslot 0 was selected.
	* Implemented "slotselect" console command.

2002-02-03 Maarten ter Huurne <mth@stack.nl>
	* Implemented "slotmap" console command.
	* Console::printOnConsole now accepts multi-line texts.
	* Fixed buffer overrun in CON_Out.
	* Renamed DummyDevice's device name to "empty", which makes
	  more sense to the user (who sees it in the slotmap).

2002-02-03 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* Removed class LoadFile: it was only used by MSXRom and it was only
	  usefull for that class (two classes merged now)

2002-02-02 Maarten ter Huurne <mth@stack.nl>
	* Implemented memory overlay behaviour in SCC page (0x3F).

2002-01-30 David Heremans <david.heremans@gnu-linux.net>
	* MSXTapePatch uses console:
	  Now possible to change or eject tapes using the console

2002-01-29 David Heremans <david.heremans@gnu-linux.net>
	* Console enhancements:
	  -calls CommandHelp when tabcomplition has
	  already found a complete command
	* DiskPatch can now reports problems with disks during
	  initialization:
	  This should help Maarten if he has a 'black screen' :-)

2002-01-28 Joost Yervante Damad <j.damad@qahwah.net>
	* made libxmlx an 'utility' library, this implies that
	  openmsx links this statically, which makes for easier
	  debugging, no more 'wrapper script' for now

2002-01-27 Joost Yervante Damad <j.damad@qahwah.net>
	* Made SDL console autotools enabled

2002-01-26 David Heremans <david.heremans@gnu-linux.net>
	* Console now usable:
	  - registered as ansynchron event listener
	  - Scheduler has now two commands registered

2002-01-26 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* Fixed double delivery of syncronous events

2002-01-25 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* Exception cleanups
	* Y8950 adpcm support (untested)

2002-01-24 Joost Yervante Damad <j.damad@qahwah.net>
	* added support for streamstring xml config per
	  request of David

2002-01-24 David Heremans <david.heremans@gnu-linux.net>
	* Altered SDL_Console:
		- C++-ed the code and files
		- dumped unwanted function
		- now registers objects from type ConsoleInterface
		  to use for callback instead of C-function pointers
	* Scheduler has now one (1) registered command with console:
		- press tab for autocomplete :-)
	* Added cartridge to help debug ARC protection cartridge
	* DummyDevice warns about unregistered I/O port calls

2002-01-22 David Heremans <david.heremans@gnu-linux.net>
	* Added an SDL_console:
	  Not usefull for the moment but you can toggle it with F10
	  No commands possible and double key registration but the
	  effect is "cool" :-)

2002-01-20 David Heremans <david.heremans@gnu-linux.net>
	* Added DSKFMT-implementationr:.
	  Formating of a 360kB dsk file doens't work. A 720kB dsk file
	  can be formated single or double sided.
	* Autofill of empty,newly generated .dskfiles:
	  No auto formating however, maybe later.

2002-01-19 Joost Yervante Damad <j.damad@qahwah.net>
	* openmsx now uses new config code
	* features:
		- supports multiple config files
		- it's possible to create alternative config backends
		- no more libxml++ *yipee*
		- uses libxmlx, right now still linked dynamically,
		  this means that ./openmsx is actually a libtool provided
		  script, soo for debugging use .libs/openmsx and alter
		  the LD_LIBRARY_PATH environment variable if needed
		- support for save not yet added, but it will be easy
	* xmlconfig raises exception on duplicate "id"

2002-01-12 Maarten ter Huurne <mth@stack.nl>
	* Compile fix for Thread class:
	  explicitly convert between Runnable pointer and void pointer.

2002-01-12 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* made a Thread class, interface is SDL independent,
	  implemenation uses SDL
	* made a Mutex class, analog as Thread
	* sync MSX-MUSIC and MSX-AUDIO on register write
	* made all sound related classes (except Mixer) SDL independent

2002-01-11 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* Implemented RTC load/save on power on/off
	  (this is not the same as saveState)
	* Implemented FMPAC-SRAM load/save on power on/off

2002-01-10 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* MSXMemoryMapper <-> MSXMapperIO cleanup (thanks Maarten)

2002-01-10 David Heremans <david.heremans@gnu-linux.net>
	* Added FileOpener. This implements the needed routines to
	  support "rompaths". It also provides easy to use functions
	  to open files in the other devices.

2002-01-09 Maarten ter Huurne <mth@stack.nl>
	* VR resets one line before start of display.
	  Fixes Almost Real Copper Bars part.

2002-01-09 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* Prepared CPU and Z80 class for inclusion of R800:
	   - moved as much code as possible from Z80 to CPU
	   - separated timimg dependent code from the rest of the code
	   - ugly "#inlude-hack" to avoid the overhead of virtual functions

2002-01-09 Maarten ter Huurne <mth@stack.nl>
	* Fixed MSXMemoryMapper so that it can handle over 64K of memory.

2002-01-08 Maarten ter Huurne <mth@stack.nl>
	* Red and green were swapped in Graphic7 rendering.
	* Apply planar reorder also on CPU reading VRAM and sprite checking.
	  Fixes Hydefos intro, all Graphic6/7 rendering should be OK now.

2002-01-08 Maarten ter Huurne <mth@stack.nl>
	* Preliminary Graphic6/7 rendering.
	  Works somewhat, but not in all cases.
	* Fixed transparency bug; Psycho World sky is blue again.

2002-01-07 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* DiskRomPatch cleanup: I wanted to fix the PHYDIO routine, but it
	  was already correct (the result in the B register). Maybe it is
	  now more obviously correct?

2002-01-07 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* Z80: fixed HALT instruction (rounding error)
	* more #include cleanups
	* getCPURegs() interface cleanup

2002-01-06 Maarten ter Huurne <mth@stack.nl>
	* Implemented rendered line caching in bitmap modes (SDLHi).
	* Fixed GETDPB in MSXDiskRomPatch: uses static table based on passed
	  media descriptor instead using values from boot sector.

2002-01-06 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* Z80: reverted buggy optimization,
	  fixes undeadline, track&field, flickering in space manbow

2002-01-06 Joost Yervante Damad <j.damad@qahwah.net>
	* small fixes
	* XMLConfig skeleton + some code

2002-01-06 Maarten ter Huurne <mth@stack.nl>
	* Text mode extra-wide border now drawn at once (SDLHi).

2002-01-05 Maarten ter Huurne <mth@stack.nl>
	* Implemented CC and IC bits of sprite mode 2.
	  Now OR-ed sprite patterns are rendered as they should.

2002-01-05 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* #include cleanup
	* Changed PSG mute routine:
	  PSG-samples in "time curb" now work!

2002-01-05 Joost Yervante Damad <j.damad@qahwah.net>
	* small libxmlx improvements
		- should handle comments and pcdata correctly
		- started modifications of msxconfig code, first in
		  a seperate temporarely program cfgtest, to avoid
		  hindering the other coders

2002-01-04 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* Changed interaction Mixer-SoundDevice:
	  Mixer now calls the updateBuffer() method of each SoundDevice, even
	  if device is muted (device can update internal counter). If the
	  device was muted is must return a null-pointer.

2002-01-03 Maarten ter Huurne <mth@stack.nl>
	* SDLHiRenderer needs to sync on VRAM updates after all.
	  This solves the disappearing boss blocks of Knightmare stage 1.
	* The VDP (sprite checking) needs to sync on VRAM updates as well.
	  Hopefully this will solve the Knightmare stage 2 boss problem.

2002-01-03 Joost Yervante Damad <j.damad@qahwah.net>
	* libxmlx sync

2002-01-03 David Heremans <david.heremans@gnu-linux.net>
	* Improved tape support, tested with Time_Curb.cas file

2002-01-03 Maarten ter Huurne <mth@stack.nl>
	* Changed pause implementation in Scheduler to make it thread safe.
	* Fixed PAL timing in SDLHiRenderer.

2002-01-02 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* RealTime syncronizer improvements

2002-01-02 David Heremans <david.heremans@gnu-linux.net>
	* Added tape support, not yet tested
	* Restored old filesize behaviour in gamecartridge

2002-01-02 Maarten ter Huurne <mth@stack.nl>
	* Improved VDP accuracy.
	  Space Manbow still flashes, but less than before.

2001-12-31 Maarten ter Huurne <mth@stack.nl>
	* SDLHiRenderer uses double buffering.
	* Prepared SDLHiRenderer for RealTime sync, but if I enable it the
	  emulated MSX slows down (even though host CPU load remains low).
	* Added FDC values as patches to nms8250.xml, fixes disk ROM hang.

2001-12-31 Joost Yervante Damad <j.damad@qahwah.net>
	* lots of small C++ standard compliancy fixes
	* Z80Core.hh -> Z80Core.nn
	* more disk support, still partially works only
	* disk support now works completely, but not yet
	  for all programs [starquake, on mania036.dsk
	  works completely]
	* fixes for slotselection [thanks Maarten]

2001-12-31 Maarten ter Huurne <mth@stack.nl>
	* Render accuracy is now one line instead of one frame.
	* Implemented line interrupt (horizontal scanning interrupt).
	  Timing is still a bit off though.
	* Implemented horizontal display adjust (vertical not yet).
	* Implemented HR/VR status bits.
	* Prepared for caching of rendered lines in bitmap modes.
	* Command engine cleanups.

2001-12-30 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* Z80: correct inter-instruction timing for DDCB and FDCB instrcutions,

2001-12-30 Joost Yervante Damad <j.damad@qahwah.net>
	* more disk support, it already works a little bit,
	  but the slot switching still needs to be added

2001-12-29 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* Memory reads/writes can now be cached (if possible)
	  measured 10% - 20% performance gain
	  not completely finished, especially documentation

2001-12-29 Joost Yervante Damad <j.damad@qahwah.net>
	* synced in libxmlx skeleton [W.I.P.!]
	* header file include cleanup, this should avoid alot
	  of useless recompilation

2001-12-27 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* Scheduler now uses a heap instead of sorted set
	* SyncPoints can now be removed
	* SyncPoints take an optional userData parameter, this parameter
	  is later passed to executeUntilEmuTime() method
	* MSXDevice does not inherit from Schedulable anymore, devices that
	  still need to be Schedulable must inherit itself from Schedulable
	  (eg VDP)

2001-12-26 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* added getCPURegs() and setCPURegs() methods in class CPU

2001-12-25 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* small optimization in Scheduler:
	  no overhead when unpaused

2001-12-25 Joost Yervante Damad <j.damad@qahwah.net>
	* added --enable-profile and --enable-release to ./configure
	* added "debug" and "nodebug" targets to Makefile in src dir [toggle]
	  usage: "make debug" turns on debug for this and next makes
	         "make nodebug" turns it of again

2001-12-24 Maarten ter Huurne <mth@stack.nl>
	* Added "unsigned" to uint64 definition in Scheduler.
	  Before, Scheduler::INFINITY was -1.
	* Implemented PAL at 50Hz and NTSC at 60Hz.
	* Restructured VDP timing routines.

2001-12-24 Maarten ter Huurne <mth@stack.nl>
	* Added render routine for Graphic4 mode.
	* Added support for 212 lines display.
	* Added partial sprite mode 2 implementation.

2001-12-24 Maarten ter Huurne <mth@stack.nl>
	* Added render routine for Graphic5 mode.
	* Added support for transparency control (R#8 bit 5).

2001-12-24 Maarten ter Huurne <mth@stack.nl>
	* Finished integration of command engine.
	  It runs, but without render routines for the bitmap modes,
	  it is not possible to visually check the results.

2001-12-23 Maarten ter Huurne <mth@stack.nl>
	* Fixed a design flaw in the Renderer interface.
	  The update methods were called *after* the changed VDP state
	  became effective. That way, delayed rendering operations cannot
	  be completed because the old VDP state is no longer available.
	  In the new interface, update methods are called *before* the
	  new state becomes effective. So the old values can be retrieved
	  from the VDP, while the new values are passed as parameters
	  of the update method.

2001-12-22 Maarten ter Huurne <mth@stack.nl>
	* Fixed dirty check bugs.
	  The "inside name/colour/pattern table" checks were wrong:
	  too much was considered inside, therefore too many characters
	  were considered dirty.
	  Also the attempt to make Text2 use the same dirty checking code
	  as the MSX1 display modes failed, instead I wrote different
	  dirty checkers for different display modes. This was bound to
	  happen in the future anyway, because bitmap modes will require
	  different dirty checks than pattern modes.

2001-12-22 Maarten ter Huurne <mth@stack.nl>
	* Added VDP Command Engine 1.0 from Alex Wulms.
	  Adapted the code to C++ and to openMSX conventions.
	  Only functional change is SCREEN7/8 pixel lookups (two defines).
	  The command engine compiles and links, but cannot run yet.

2001-12-21 Maarten ter Huurne <mth@stack.nl>
	* Implemented Text2 display mode (SCREEN0.80).
	* Prepared for blinking (not finished yet).

2001-12-21 Maarten ter Huurne <mth@stack.nl>
	* Applied gamma correction to V9938/58 palette.
	  My guess is that the gamma of MSX and PC monitors is slightly
	  different; the palette precalc now compensates for that.

2001-12-21 Maarten ter Huurne <mth@stack.nl>
	* Implemented palette feature of V9938/58.
	  Can be seen by running Nemesis 3 using NMS8250 config.

2001-12-21 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* Fixed uninitialized variable in RP5C01:
	  this caused a delay of several seconds at start-up

2001-12-20 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* added MSX-AUDIO: no ADPCM yet, not optimized
	* LoadFile and MSXGameCartridge cleanup

2001-12-19 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* Removed more indirections from YM2413

2001-12-18 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* fixed CassettePort: 
	  exceptions don't work if you compile with -fno-rtti, removed it

2001-12-18 David Heremans <david.heremans@gnu-linux.net>
	* MapperType guesser can be turned on/off
	* MapperType now configurable in MSXGameCartrdige.
	* Integrated MSXKonamiSynthesizer into MSXGameCartrdige.

2001-12-14 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* sound on/off (F11) and pause (PAUSE) now work together
	* fixed "pure virtual function called" error

2001-12-16 David Heremans <david.heremans@gnu-linux.net>
	* Extende LoadFile to autodetermine file-size.
	* Renamed MSXMegaRom to MSXGameCartrdige.
	* MSXGameCartridge can now handle smaller game roms (<= 64kB)

2001-12-15 David Heremans <david.heremans@gnu-linux.net>
	* Added volume to the SCC.
	* Used F11 as HotKey to sound on/off:

2001-12-14 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* Fixed DACSound, KeyClick now works

2001-12-11 Maarten ter Huurne <mth@stack.nl>
	* Optimised MSX-MUSIC mixing.
	* Removed indirection on ch array ("Channel *" -> "Channel).

2001-12-12 David Heremans <david.heremans@gnu-linux.net>
	* Added the SCC+ cartridge

2001-12-12 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* Cleanup MSXMusic / MSXFmPac:
	   "CALL FMPAC" now works!

2001-12-11 Maarten ter Huurne <mth@stack.nl>
	* Compacted the SCC mixing and muting code.
	* Added offset to lookups in SCC::getFreqVol.
	* SCC::ch_enable is not masked upon write.
	* Added "currentChipMode = chip" to SCC::setChipMode.
	* Changed size of waveform array to 32 (was 64).

2001-12-10 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* Implemented Z80 inter-instruction-timing
	   (DD CB instructions not correct yet)

2001-12-11 David Heremans
	* uploaded SCC soundchip:
	  This chip can emulate the SCC hardware in the 3 know modes
	   - Real SCC
	   - SCC+ cartridge in SCC compatible mode
	   - SCC+ cartridge in SCC+ mode
	* Changed MegaRom:
	  Megarom of type 2 know use the SCC soundchip.

2001-12-10 Maarten ter Huurne <mth@stack.nl>
	* Implemented indirect register write for V9938/58.
	* V9938/58 can now have 16K, 64K or 128K of VRAM.
	* Upgraded CPU interface to read/write more than 16K of VRAM.
	* Changed video mode naming scheme to match V9938 data book.

2001-12-10 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* Cleanups in MSXMemoryMapper, requires config file change
	* More config file changes:
	    PSG   -> volume parameter
	    MUSIC -> volume parameter
	    PPI   -> volume parameter
	          -> key_ghosting parameter
	    Mixer -> frequency parameter
	          -> samples parameter
	* RealTime cleanups:
	   - MSXRealTime renamed to RealTime
	   - RealTime is no longer a MSXDevice
	   - moved parameters to config file

2001-12-09 Maarten ter Huurne <mth@stack.nl>
	* Faked enough V9938 features to make nms8250.xml boot.

2001-12-09 Maarten ter Huurne <mth@stack.nl>
	* Fixed compilation with Z80DEBUG enabled.
	* Fixed single-width pixels in SCREEN0 in SDLHiRenderer.
	* Re-enabled resetting of dirty flags at end-of-frame.
	  This was probably disabled during debugging and accidentally
	  commited to CVS.

2001-12-09 Maarten ter Huurne <mth@stack.nl>
	* Introduced VDP class, which will replace MSXTMS9928a.

2001-12-09 Joost Yervante Damad <j.damad@qahwah.net>
	* Rom Patching Code skeleton
	* MSXDiskRomPatch skeleton

2001-12-09 Maarten ter Huurne <mth@stack.nl>
	* Fixed uninitialised struct field in SDLLoRenderer.
	* SDLHiRenderer renders doubled pixels now.

2001-12-09 Maarten ter Huurne <mth@stack.nl>
	* Introduced SDLHiRenderer.
	  Opens 640x480 screen, although it still renders low-res.
	* Changed configuration:
	  - new category: "renderer"
	    type selects renderer: "SDLLo" or "SDLHi"
	  - "fullscreen" moved to "renderer" and renamed "full_screen"
	    plus it's an actual boolean now
	  - new parameter: "limit_sprites" in "msx1vdp"
	* Setting "limit_sprites" to false actually works now.

2001-12-08 Maarten ter Huurne <mth@stack.nl>
	* Improved Doxygen comments in MSXTMS9928a and Renderer.
	* Small optimisations in sprite rendering.
	* Renamed XPal to Pal: it hasn't been X for quite some time.
	* Introduced sprite buffering: VDP stores sprite info for one
	  frame, so Renderer can retrieve it on demand. This removes
	  the need for the Renderer to call checkSprites, making the
	  VDP behaviour completely independant of the Renderer used.

2001-12-08 Joost Yervante Damad <j.damad@qahwah.net>
	* Loadfile now handles patching of files

2001-12-08 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* added several missing reset() calls

2001-12-07 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* MSXPPI is no longer a singleton

2001-12-06 Maarten ter Huurne <mth@stack.nl>
	* Small initialisation fix in MSXTMS9928a.
	  Thanks to Wouter for spotting the problem.

2001-12-06 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* removed init() method from MSXDevice:
	  initialization should be done in the constructor
	* all MSXDevice constructors (former init() methods) now take an
	  EmuTime parameter

2001-12-05 Joost Yervante Damad <j.damad@qahwah.net>
	* MSXRom continued [reworked, no longer inherited from MSXDevice]

2001-12-05 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* Made MSXIODevice and MSXMemDevice both subclasses of MSXDevice:
	  these 2 classes take functionality away from MSXDevice and put it
	  in more specialized classes. They also offer things like automatic
	  slot-registration (and in the future automatic IO-registration)
	* removed start() and stop() methods from MSXDevice
	* reset() method in MSXDevice now takes an EmuTime argument

2001-12-04 Joost Yervante Damad <j.damad@qahwah.net>
	* added MSXRom subclass and LoadFile mixin, as first step
	  towards ROM patching support

2001-12-04 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* correct use of register 0x7ff6 for MSX-MUSIC
	* MSXMotherBoard is no longer a MSXDevice

2001-12-03 Joost Yervante Damad <j.damad@qahwah.net>
	* fixed Config *getConfigById(const std::string &type)
	* started on disk support "level 2" [not in CVS yet]

2001-12-03 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* Made a new EmuTime class (for details search mailarchives for
	   "[RFC] new EmuTiem class"). This gave a large performance gain,
	   more than I had hoped for.
	* SoundDevices now unregister themself before destruction

2001-12-02 Maarten ter Huurne <mth@stack.nl>
	* Integrated name/pattern/colour table base addresses and mask
	  into a single mask. This is probably how the hardware does it.
	* Fixed dirty checks.
	  King's Valley 2 is now actually fixed, blanking just happened
	  to make the problem go away without fixing the bug causing it.
	* Moved to "pull" model for VDP - Renderer communication:
	  VDP sends update signals when parts of its state change,
	  Renderer can get current state from VDP at all times.

2001-12-02 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* fixed pause:
	   - <F12> now works when paused
	   - after pause emulation isn't too fast
	* correct inline in Z80
	* MSXMegaRom cleanup, minor speedup

2001-12-01 Maarten ter Huurne <mth@stack.nl>
	* Fixed compile error in CassettePlayer.cc:
	  PRT_ERROR contains exit(), which needs <stdlib.h>.

2001-12-01 Maarten ter Huurne <mth@stack.nl>
	* Fixed bug which caused Z80 to fail when methods were not inlined.
	  Problem was that ld_xix_byte() and ld_xiy_byte() called Z80_WRMEM
	  with two parameters, each of which read an opcode, an operation
	  which increases the program counter. This is wrong because the
	  evaluation order of parameters is not guaranteed.

2001-12-01 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* added FM-PAC
	* MSXMotherBoard is now also a CPUInterface, this eliminates one
	  indirection in readMem()-like methods but these get called a few
	  100 000 times a second. I measured 10%-20% performance gain

2001-11-30 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* made a helper function registerSlots()
	* made a helper function loadFile()
	   note: config file format changed!

2001-11-29 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* Added a CassettePlayer (no record function yet)
	  A CassettePlayer must be plugged into the CassettePort and
	  you must insert a tape (= .wav file) into the CassettePlayer
	  Currently you can't do either of these operations.

2001-11-27 Maarten ter Huurne <mth@stack.nl>
	* Added updateBlanking to Renderer interface.
	  Fixes redraw problem in King's Valley 2.
	* Various cleanups in MSXTMS9928a and SDLLoRenderer.

2001-11-26 Maarten ter Huurne <mth@stack.nl>
	* Introduced SpriteInfo in MSXTMS9928a, this is a prelude to
	  sprite info buffering (separating calculation time from
	  rendering time).
	* Introduced VdpVersion enum in MSXTMS9928a.

2001-11-20 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* Small CassettePort update, implemented very primitive filter

2001-11-25 Maarten ter Huurne <mth@stack.nl>
	* Sprites are now rendered in the screen buffer rather than in the
	  display cache (which replaced "canvas"). As a result, sprite drawing
	  code became simpler and the display cache needs less updates.

2001-11-25 Maarten ter Huurne <mth@stack.nl>
	* Render on demand:
	  New Renderer can render as many lines as requested.
	  Many lines at once has lower overhead, but if necessary it
	  can still render one line at a time.
	  This code can be converted to pixel-precision rendering that
	  has decent performance.
	* All change tracking (dirty flags etc) is moved to Renderer.
	* Interface between VDP and Renderer is much cleaner now.
	  (no more public fields)
	* Got rid of "tms" struct.

2001-11-20 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* added basic support for CassettePort
	   - CassettePort has no filters yet
	   - no output (record) yet
	   - !! no CassttePlayer (must be plugged in a CassettePort) !!

2001-11-18 Maarten ter Huurne <mth@stack.nl>
	* The drawing area (now called "canvas") is now an off-screen SDL
	  surface instead of a pixel array. SDL calls are for blitting and
	  drawing empty lines (top and bottom border).
	* Cleanup of change tracking in VDP.
	* Cleanup of Renderer access to VDP state:
	  public fields replaced by inline methods.
	* Cleanup of VDP fields: slowly getting rid of "tms" struct.

2001-11-18 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* updated KeyEventInserter, it works now but it is not yet useable,
	  needs to read text from config file or something

2001-11-17 Maarten ter Huurne <mth@stack.nl>
	* MSXTMS9928a and SDLLoRenderer respect SIZEOF_BOOL now.
	* Introduced Renderer: pure abstract superclass to all renderers.
	* Changed SDLLoRenderer into a template class.
	  All supported colour depths are compiled in.
	  A factory method selects a suitable colour depth automatically.

2001-11-17 Joost Yervante Damad <j.damad@qahwah.net>
	* added sizeof(bool) autoconf macro
	* rearranged configure.in to avoid problems
	  with simple checks being confused by the extra
	  CXXFLAGS and libs

2001-11-17 Maarten ter Huurne <mth@stack.nl>
	* SDLRenderer is now SDLLoRenderer (low-res: 320x240) and
	  was given its own files.
	  Also removed MESS history comments from MSXTMS9928a.

2001-11-16 Maarten ter Huurne <mth@stack.nl>
	* Split off SDLRenderer from MSXTMS9928a.
	  This makes it easier to support different renderers
	  (320x240, 640x480, 8/16/32bpp).
	  In the near future SDLRenderer will get its own file.

2001-11-16 Maarten ter Huurne <mth@stack.nl>
	* Disabled 512K mapper in cfg/someconfig.xml because it conflicted
	  with the MegaROM.

2001-11-16 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* cleanup EventDistributor/HotKey

2001-11-15 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* Z80: interrupt state is only checked right after a sync point
	       halt now "burns" CPU cycles
	    --> large CPU speedup

2001-11-14 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* an MSXDevice is now associated with an MSXConfig object as soon as
	  it is instantiated. Before this change it was possible that a
	  MSXDevice (mostly singletons) was used before it could access its
	  parameters.
	* AY8910: fixed uninitialized variables

2001-11-13 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* fixed HotKey: method find() returns a normal iterator, not an
	   iterator that goes over elements that match the search criteria

2001-11-13 David Heremans
	* openMSX now stops when using the WM close button:
	* Correct close behaviour:
	    Set a sync point so that if the CPU is scheduled until
	    infinite we still can stop openMSX.
	    Wouter will look into the HotKey event distribution,
	    it is temporarly fixed using if comands.


2001-11-09 David Heremans
	* quickly add a fullscreen flag in the TMS code:
	    extra parameter in config.xml file
	    use PrintScreen key to togle
	* openMSX now stops when pressing F12:
	    however make sure that openMSx is full screen when you press F12

2001-11-07 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* reworked CPU related classes:
	    much simpler structure
	    more optimizations possible in the future
	* Z80: correct wait-state handling

2001-11-05 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* Z80: undocumented instructions like "res 4,(ix+5),b" implemented
	* Z80: correct(?) timing for undocumented instructions

2001-11-04 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* Z80 cleanup/fixes:
	  fixed DAA instruction, bug in Penguin Adventure should be fixed now
	  correct 'undocumented-flag-handling' for most instruction

2001-10-31 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* fixed bug in Z80, some instruction had a negative T-State count!!
	  Road Fighter works again

2001-10-30 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* added MSX-MUSIC, code largly taken from Mitsutaka Okazaki
		http://www.angel.ne.jp/~okazaki/ym2413/
	  no "suspend" function yet

2001-10-29 Joost Yervante Damad <j.damad@qahwah.net>
	* finished migration of CVS and mailinglists to sf.net
	* thank you sourceforge team!!
	* http://openmsx.sf.net

2001-10-27 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* fixes, improvements to DACSound (untested)
	* updated KeyClick, the "click too short" problem should be solved now
	  KeyClick now uses a DACSound object to play sound, playing samples
	  on KeyClick should also be possible now (untested)
	* pause sound while pause emulation
	* SoundDevices default now to muted after creation, fixes a race in
	  Mixer::registerSound()

2001-10-25 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* SoundDevices can now mute themselves, mixer doesn't ask
	  for soundbuffer of muted devices
	* added KeyClick support, PPI had to be made time aware for this
	  doesn't work very well yet because a typical key-click-spike
	  takes about 34us which is shorter than the duration of 1 sample

2001-10-23 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* make DACSound compile again (doesn't work yet)
	* add HotKey service
	* openMSX can be paused (pause key), added to demonstrate the
	  use of HotKey. Problems with current pause implementation:
	    - sound must also be paused
	    - realtime keeps running, so after unpausing openMSX 
	      tries to catch up and runs too fast for a while
	* MSXKanji now supports both class 1 as class 2 Kanji
	* Added MSXPrinterPort and DummyPrinterPortDevice (= no device
	  connected)

2001-10-22 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* Changed Mixer and SoundDevice interface (David's request).
	  Now each SoundDevice must do its own buffer-managment, this gives
	  more flexibility to devices like DAC's

2001-10-21 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* small performance improvement in MSXZ80

2001-10-21 Joost Yervante Damad <j.damad@qahwah.net>
	* added some basic conversions to MSXConfig##Device
	  let me know when more are needed
	* updated msxconfig.dtd to reflect soon te be added
	  non-device configuration entries
	* added support for non-device configuration entries
	  this is not thoroughly tested, but should work

2001-10-19 Joost Yervante Damad <j.damad@qahwah.net>
	* started TODO file to collect ideas/things todo

2001-10-19 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* documented SoundDevice interface on David's request
	* RP5C01 can now optionally sync with host-clock, but this 
	  limitates some functionality

2001-10-18 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* implemented test register in RP5C01,
	  corrected 12/24 hour mode, month-wrap-bug fixed
	* RP5C01 is now emutime synced instead of realtime

2001-10-17 Joost Yervante Damad <j.damad@qahwah.net>
	* added src/cfg dir for storing config file templates
	* started in KeyEventInserter

2001-10-17 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* made improvements to MSXRealtime
	* small fixes to MemoryMapper, E6Timer
	* improvements to RP5C01 (RTC)

2001-10-16 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* fixed bug in Keyboard (uninitialized variable)
	  and made minor performance improvement in keyGhosting
	* add 1 extra waitState after each instruction
	* Corrected MSXRealTime, speed is now correct. Deviation was
	  caused by accumulation of rounding errors. 

2001-10-15 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* Scheduler can now schedule "Schedulable" objects instead of
	  only MSXDevices, this is necessary for sub-device scheduling
	  (e.g. counters in I8254

2001-10-15 Marcel Harkema <marcel@qahwah.net>
	* * Set the MAINTAINERCLEANFILES variable in Makefile.am files
	  (for make maintainer-clean)
	* * EventDistributor.hh should include <map> and not <multimap.h>
	  (which is an internal header file)
	* * Add {XML,SDL}_CFLAGS, {XML,SDL}_LIBS, etc. to CXXFLAGS and
	  LIBS in configure.in (and remove openmsx_LDADD line from
	  src/Makefile.am)
	* Include <cassert>, <cstdio>, etc. instead of <assert.h>, 
	  <stdio.h>, .. [I might have missed some... please check your
	  code]
	* [patch applied by joost]

2001-10-14 Joost Yervante Damad <j.damad@qahwah.net>
	* Made EmuTime printable [read streamable] for David

2001-10-12 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* Simplified MSXRealTime implementation

2001-10-11 David Heremans <david.heremans@gnu-linux.net>
	* MSXTMS9928a and MSXRealTime updates

2001-10-08 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* update parts of audio-buffer when registers have changed
	* fixed tone generation in AY8910 (overflow in calculation)

2001-10-09 Joost Yervante Damad <j.damad@qahwah.net>
	* removed all automake/autoconf utility files,
	  use autogen.sh to install them locally

2001-10-08 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* added a real time synchronizer (MSXRealTime)
	* fixed keyGhosting bugs in Keyboard

2001-10-07 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* renamed Inputs --> Keyboard
	* forgot to initialize keyboard matrix
	* moved method keyGhosting() from MSXPPI to Keyboard
	  --> method is now only called when 
	        * keymatrix has changed and
	        * keymatrix is read
	* extended Mixer to support (pseudo)stereo

2001-10-05 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* Made a very simple mixer, made AY8910 register itself as 
	  sound generator.

2001-10-03 Joost Yervante Damad <j.damad@qahwah.net>
	* updated automake utility files

2001-10-03 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* "static const int -> enum" cleanup
	* Reworked EventDistributor, it is now possible to deliver events
	  synchronously and asynchronously. This makes the EventDistributor
	  more complex, but it eliminates locking problems in synchronous
	  ( = almost all) client code.

2001-10-02 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* made Philips mapper-IO behaviour
	* read mapper behaviour from config file, this needed some
	  restructuring in MapperIO and related classes
	* Fixed TurboR ST mapperIO

2001-10-01 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* Z80 converted to a C++ class, still needs cleanups
	* IRQ handling cleanup

2001-09-30 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* second part of Z80 cleanup 

2001-09-27 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* #define -> static const int   cleanup
	* first part of Z80 cleanup

2001-09-26 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* reimplemented Scheduler, total new algorithm
	* made some changes to cpu-device's
	  these need some cleanup, especially the c/c++ mix (Z80)

2001-09-25 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* added locking to class EventDistributor (maybe std::multimap is
	  thread-safe and no locking is necessary)
	* added locking to class Mouse, there was a small race that could cause
	  some mouse-movement-glitches

2001-09-24 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* implemented Real Time Clock device
	* implemented joystick support. Cannot be used yet since there is no
	  mechanism to plug a Joystick in a joystickPort yet (dynamically nor
	  statically)
	* implemented mouse support. Cannot be used yet, same reason as above

2001-09-23 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* made sperate thread for event handler
	  other classes can ask EventDistributor to receive specific events
	* adapted Inputs for new event model
	* respond to SDL_QUIT event

2001-09-23 Joost Yervante Damad <j.damad@qahwah.net>
	*  various small fixes
	* started working on making the code work with gcc-3.0
	* added autogen.sh: use to regenerate build files
	* added m4/ dir for own autoconf m4 macros
	* added fstream_templ.m4, since in gcc-3.0 ifstream
	  is templatized on type, and .read() returns char,
	  not unsigned char, soo this needs ifstream<byte> in
	  openmsx, but in gcc-2.95 ifstream is not a template.
	* added -fno-rtti to compile-flags since we don't use
	  runtime type inspection anyway, and it increases binary size
	  see also: http://gcc.gnu.org/ml/gcc-help/2000-03/msg00064.html

2001-09-22 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* cleanups in most devices
	* small bug fixes in some devices
	* Implemented memory mapper
	  all mappers share one MapperIO device
	  reading from mapper ports can be customized

2001-09-21 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* Z80/R800 separation cleaned up:
	  only the class MSXCPU knows there are 2 CPU's, all other devices
	  should talk to MSXCPU instead of MSXZ80 or MSXR800 (nor ask
	  MSXMotherBoard which CPU to talk to)
	  Removed some code marked as "ugly hack"
	* added support for Kanji ROM
	* cleanups in MSXRom16KB 

2001-09-19 Joost Yervante Damad <j.damad@qahwah.net>
	* various small fixes around the code
	* the 16k rom still needs a C++ makeover

2001-09-17 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* implemented kana/code led
	* implemented joystick-ports. This is only the port, not the devices
	  that can be plugged into the port (joystick, mouse, ...)
	* interupt handling was seriously broken (CPU jumped to 0x38 at every
	  di->ei transition even when there was no device that had raised an IRQ)
	  Fixed now (I think). Also moved interrupt related methods from class
	  Scheduler to class MSXMotherBoard.

2001-09-16 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* implemented sound generation for PSG (code taken from xmame-0.37b)
	  mixer is not finished, so you won't hear anything yet

2001-09-16 Joost Yervante Damad <j.damad@qahwah.net>
	* added endian-ness check to configure.in
	* removed -DLDB_FIRST, and made it dependant on
	  configure result
	* added sizeof long autoconf check, to make Z80.cc
	  also work correctly on 64 bit and 128 bit cpu's [untested]

2001-09-15 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* started implemention of MSXPSG (no sound generation yet)

2001-09-15 Joost Yervante Damad <j.damad@qahwah.net>
	* reworked msxconfig.cc by using the xmlhelper
	* xmlhelper is a simplified xml interface

2001-09-13 Joost Yervante Damad <j.damad@qahwah.net>
	* added xmlhelper class, which I will start using
	  to make xmlconfig code cleaner
	* made msxconfig more standards-compliant

2001-09-10 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* removed double initialization
	* CPU is no longer a special case with initialization
	* fixed various bugs
	* made Inputs independent from MSXPPI
	* implemented CAPS LED + support for all other LEDs

2001-09-09 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* print more usefull debug messages
	* use DummyDevice instead of the general MSXDevice for all the
	  emptyDevice's
	* registering SP must be done by Scheduler, not Motherboard

2001-09-08 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* some fixes (yesterday discussed with Davy)

2001-09-06 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* fixed a few classes to make them compile again
	* made some minor addition to emutime

2001-09-05 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* print debug information only if compiled for debugging

2001-09-05 David Heremans <david.heremans@gnu-linux.net>
	* sync : PPI, Z80, ...
	* Z80 should be completely correct now
	* started integrating SDL keys
	* VDP integration Sean's code started
	* subslot selecting and mainslot selecting imped
	* MSXMotherboard slotlayout filled with dummy
	  empty devices to avoid 0-pointers

2001-09-03 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* In class Scheduler, use "set" instead of "list" or "sortedlist"
	* Split MSXPPI in a MSX depended part and a reuseable 8255 part

2001-08-27 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* made a more complete PPI implementation
	* made new device: E6Timer (TurboR)

2001-08-26 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* removed linkedlist.hh and use stl list instead
	* made template SortedList and use it in Scheduler
	  this compiles, but does not link yet

2001-08-25 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>
	* updated class Emutime
	* make use of emutime 

2001-08-23 Joost Yervante Damad <j.damad@qahwah.net>
	* msxconfig: added <desc> and <rem>
	* msxconfig.hh: externalized nested classes
	* msxconfig: started saveFile support

2001-08-10 David Heremans <david.heremans@gnu-linux.net>
	* sync : PPI, Z80, ...

2001-08-09 Joost Yervante Damad <j.damad@qahwah.net>
	* reworked msxconfig code, now more C++
	* added support for multiple slotted's

2001-07-07 Joost Yervante Damad <j.damad@qahwah.net>

	* added class property to <parameter> tag in msxconfig
	* also slightly reworked that code
	* bumbed version to 0.1.1
	* added SDL auto* support

2001-07-06 Joost Yervante Damad <j.damad@qahwah.net>

	* merge David's code in CVS
	  this includes: PPI, Z80, RomDevice, Motherboard, ...

2001-06-26 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>

	* more updates tex docu file

2001-06-23 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>

	* more updates tex docu file

2001-06-23 Joost Yervante Damad <j.damad@qahwah.net>

	* finished readonly MSXConfig interface

2001-06-22 Joost Yervante Damad <j.damad@qahwah.net>

	* added MSXException exception base class.
	* created MSXConfig exceptions
	* started using them.
	* make distcheck now works
	* openmsx.tex is part of the dist

2001-06-21 Joost Yervante Damad <j.damad@qahwah.net>

	* made MSXConfig code -> this code needs serious cleaning
	  later ! :)

2001-06-21 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>

	* updated tex docu file

2001-06-20 Joost Yervante Damad <j.damad@qahwah.net>

	* initial MSXConfig interface/singleton skeleton
	* first touch with libxml++
	* links smoothly now with libxml++ and libxml
	* !!warning!! needs libxml++ version 0.13 (debian ships with 0.10)
	* see also http://lusis.org/~ari/xml++/

2001-06-21 Wouter Vermaelen <wouter.vermaelen@student.kuleuven.ac.be>

	* created tex docu file

2001-06-19 Joost Yervante Damad <j.damad@qahwah.net>

	* added autoconf support for libxml
	* added some $Id magic tags

2001-06-18 Joost Yervante Damad <j.damad@qahwah.net>

	* Emutime tweaks as per Wouter and David

2001-06-16 Joost Yervante Damad <j.damad@qahwah.net>

	* added autoconf support for libxml++
	* various small tweaks

2001-05-06  Joost Yervante Damad <j.damad@qahwah.net>

	* made a nice and clean CVS/automake/autoconf/libtool
	* restructured source
	* versioned files

2001-05-04  David Heremans  <david.heremans@gnu-linux.net>

	* openmsx: initial version.

