Notes:
Release notes for openMSX 0.3.1 (2003-05-18)
============================================
It's been a short time since 0.3.0, but we thought the following changes are
important enough to release now:
- Fixed compilation on GCC 3.3.
- Fixed SDLGL renderer on XFree86 4.3.
Regular development continued as well, so this release also contains
the following improvements:
- New feature: configurable file-extentions.
- Improved layout of help text (try "openmsx -h").
- Many improvements to the console, including:
* Extended the console editing keys (left, right, del, bs, home, end etc).
* Added key repeat.
* Reset the scrollback when any key other than page up/down is used.
* Added resizing and moving to the console.
* SDL console characters are no longer blended (improved readability).
* SDL backgroundimage can be scaled and can have any pixel format.
* Fixed colour of font on GLConsole overlayed on Text1 mode.
- Emulation and event handling are now done in a single thread.
The previous multi-threaded solution was not very portable among platforms
or even different versions of the same platform.
As a bonus, the single thread model is simpler and more efficient.
- Improved "make install".
- Cleanups of the directory structure.
Read the "ChangeLog" inside the archive for a detailed list of changes.
In "doc/openMSX-HOWTO.txt" you can find a lot of useful information on
openMSX, make sure you read this if you haven't used openMSX before.
Known issues / caveats:
- In its current alpha state, openMSX is usable for power users, but its
interface is not very friendly to casual users yet.
- Emulation is not perfect yet. However, in the emulator comparison of
msx.org, openMSX scored highest on accuracy of all emulators tested.
See the bug tracker on sourceforge.net for known bugs.
- Until we reach version 1.0.0, file formats can change in an incompatible
way without backwards compatiblity. Keep this in mind if you create
machine descriptions, rom database entries etc.
- This openMSX release is only tested on Linux.
Reikan maintains a Win32 port, which follows openMSX CVS closely, but is
not the same. You can find it at http://www.ranpub.com/openMSX4Win32/
Running on BSD, Mac OS X, BeOS etc (wherever SDL runs) should be possible,
but will probably not work out-of-the-box. If you are compiling on such a
platform, please share your experiences (see below for contact info),
so we can make openMSX more portable.
- CPU and graphics performance varies a lot, depending on the openMSX
settings and the MSX hardware and software you're emulating.
Some things run fine on a 200MHz machine, others are slow on a 2GHz
machine. Some performance tips:
* Make sure there are no CPU consuming background processes running.
* Generally, MSX1 emulation is fastest and turbo R emulation is slowest.
* SDLGL renderer needs hardware acceleration to run at a decent speed.
Disabling scanlines and blur (set to 0) helps on older graphics cards.
* Use 16-bit colour mode instead of 32-bit (platform setting is used).
* Use line accuracy (default) instead of pixel accuracy.
* Turn on frame skip ("set frameskip auto").
* Use low-res SDLLo renderer (75% less pixels to fill).
openMSX Home Page:
http://openmsx.sourceforge.net/
Project page on SourceForge:
http://sourceforge.net/projects/openmsx/
Contact options:
- Send a message to the openmsx-devel mailing list.
- Talk to us on #openmsx on irc.freenode.net.
- Use the "Support" tab on the project page.
Have fun with your emulated MSX!
the openMSX developers
Changes:
$Id: ChangeLog,v 1.813 2003/05/18 17:18:12 mthuurne Exp $
2003-05-18 Maarten ter Huurne <maarten@treewalker.org>
* Released openmsx-0.3.1.
2003-05-18 Herman Oudejans <hn.oudejans@quicknet.nl>
* Converted a lot of spaces into tabs.
* Changed int into bool for zoomSurface().
* Fixed indentation in zoomSurface().
2003-05-18 Maarten ter Huurne <maarten@treewalker.org>
* Removed "ConsoleSource" directory and moved its code elsewhere:
- actual console code moved to new directory "console"
- command code moved to existing directory "events"
- circular buffer code moved to directory "src"
* Moved input devices code to new directory "input".
Maybe more can be moved there in the future.
* Changed "cpudebug" command into "cputrace" setting.
Also fixed the duplicate "cpudebug" command on a turbo R (dual CPU).
Note: this setting exists only if "cpu" dir is built in debug mode.
2003-05-17 Maarten ter Huurne <maarten@treewalker.org>
* Removed EmuTime parameter from Command::execute.
Since most commands do not interact with the emulated machine,
they do not need EmuTime.
* Removed EmuTime parameter from EventListener.
The only reason this was needed before, was to execute commands.
* Removed code that is no longer needed in the single thread model.
* Fixed event handling during pause.
2003-05-17 Herman Oudejans <hn.oudejans@quicknet.nl>
* Implemented configurable file-extentions.
* Lined the help-text up, properly.
* Renamed lines/rows/columns/width/height -> rows/columns
* Fixed a uncaught exception when the SDLConsole is resized
and the backgroundfile can't be loaded.
* Fixed -h when the specified machine can't be loaded.
* Console now resets the scrollback when any key other than
page up/down is used.
* Fixed the blinking cursor in the SDLConsole.
* Fixed Ctrl-A/E when numlock is active
* Fixed a few small bugs in the CommandLineParser.
2003-05-17 Reikan <openMSX4Win32@ranpub.com>
* Changed to single thread model.
Now fixed SDLGL renderer fault on XFree86-4.3.0.
2003-05-11 Maarten ter Huurne <maarten@treewalker.org>
* Fixed colour of font on GLConsole overlayed on Text1 mode.
2003-05-11 Herman Oudejans <hn.oudejans@quicknet.nl>
* Fixed segfault in the SDL background scaling when using 8bpp.
tested and working in 15,16 and 24 bpp. in 8 bpp it doesn't
give a segfault, but since the whole display isn't working, I
can't see if the scaling really works.
* SDL backgroundimage can now have any pixelformat.
* SDL Console characters are no longer blended.
2003-05-10 Herman Oudejans <hn.oudejans@quicknet.nl>
* Fixed wrong initial default size of the console.
* Fixed range of the consolecolumns-setting
2003-05-10 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Replaced old YM2413 code by new one. Volume still needs some tuning:
- relative volume between music and drum channels
- relative volume between YM2413 and other sound chips
2003-05-09 Herman Oudejans <hn.oudejans@quicknet.nl>
* Added resizing and moving to the console.
* Extended the console editing keys.
* Added keyrepeat to the console.
* Added setValueInt() and setRange() to Integersetting.
* Added SDL background scaling.
2003-05-08 Maarten ter Huurne <maarten@treewalker.org>
* Another GCC 3.3-pre fix: passing signed byte references as unsigned
byte references. Typecasting to "(byte &)" instead of "(byte)" works
on both GCC 3.2 and GCC 3.3-pre.
2003-05-07 Wouter Vermaelen <wouter.vermaelen@pi.be>
* a few fixes in new YM2413 code. Still not made default because
drums in illusion city are screwed
2003-05-06 Maarten ter Huurne <maarten@treewalker.org>
* Compiled with GCC 3.3-pre:
- Fixed missing "#include <cassert>" directives.
- Fixed some warnings, suppressed others.
2003-05-05 Wouter Vermaelen <wouter.vermaelen@pi.be>
* release openmsx-0.3.0
* added "mbstereo" extension
2003-05-04 Maarten ter Huurne <maarten@treewalker.org>
* Swapped the threads: event handling now occurs in the main thread,
emulation occurs in a worker thread. Inspired by Reikan's UOW32 patch.
This removes a lot of differences between the Linux and Win32 ports.
Also, renderer switching and runtime full screen toggle should work
on Win32 now.
* Bug fixes on thread swap:
- Fixed compile error on GCC 2.95.
- Workaround for incompatibility of SDL_PushEvent.
- Print exceptions thrown in emulation thread.
* Minor bug fix on video init attempts in RendererFactories.
* Merged Reikan's configure.ac improvements.
* Fixed magnified sprites in sprite mode 2.
Glitches in Eindeloos are gone.
* Fixed bug: display was disabled after switching renderers during
overscan (for example Unknown Reality title screen).
* Fixed bug: possible writes outside screen buffer on overscan.
Crashed Ark-a-Noah on SDLHi.
2003-05-03 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Trojka starts playing ADPCM samples without initializing the
sample volume. The sample volume after a reset was set to
minimum, changed it to maximum.
2003-05-03 Maarten ter Huurne <maarten@treewalker.org>
* Removed EmuTime parameters from Settings methods.
* Centralized GL header check in new GLUtil.hh file.
In the future, GLUtil.hh will contain GL utility classes/functions.
* Replaced "renderer" command by a "renderer" setting.
This also makes sure the user cannot switch to a non-existant renderer.
* Moved "Rom.(hh|cc)" and "SRAM.(hh|cc)" from "src" to "src/memory".
* Removed obsolete "cfg" directory; configurations are in "share" now.
2003-05-02 David Heremans <david.heremans@gnu-linux.net>
* Added the Contrib/cbios directory to 'make install'
* Have make install create some nice softlinks
* Added md5sum files
2003-04-30 Maarten ter Huurne <maarten@treewalker.org>
* Introduced Blender class and use it from Character/BitmapConverter.
* Implemented narrow SCREEN6 sprite pixels in SDLGL.
* Implemented blended SCREEN6 sprite pixels in SDLLo.
* Refactored ROM related classes to get device ID from hardwareconfig.xml
into RomInfo.
In the process all mapper type code has been centralized in RomInfo.
All of this just to get "slot 3.3: Firmware" in the slotmap ;)
2003-04-29 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Fix tabcompletion for absolute paths
2003-04-28 David Heremans <david.heremans@gnu-linux.net>
* Fixed make install to /opt/openMSX and create extra link for
binary in /usr/local/bin
* added (no)debug to main makefile
2003-04-27 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Implemented more complete filename completion as described in
feature request 713442
2003-04-27 Maarten ter Huurne <maarten@treewalker.org>
* Added a console background to SDLGL when no image is used.
* Minor cleanups to console classes.
* Take horizontal adjust into account for calculating HR and horizontal
retrace interrupt timing.
Fixes some of the glitches in No Waste, but not all.
* Fixed text colour in Text1 mode in SDLGL: reverted a misguided
optimisation. (in GL, full intensity of int is 0x7FFFFFFF, not 0xFF)
* Updated C-BIOS to version 0.16.
2003-04-25 David Heremans <david.heremans@gnu-linux.net>
* Allowed JoyNet to accept a new connection if
previous connection is closed.
2003-04-25 Maarten ter Huurne <maarten@treewalker.org>
* Fixed sprite colours in Graphic5 (SCREEN6).
The turbo R boot logo looks OK now.
However, narrow sprite pixels do not yet work in SDLGL.
* Implemented horizontal scroll high and multi page in SDLGL.
This implementation is based on Wouter's horizontal scroll patch.
* Implemented horizontal scroll high and multi page in SDLHi/Lo.
Note that some horizontal scroll features are still missing:
* Multi page scrolling in combination with deinterlace.
* Scrolling in character modes.
However, the current state should be enough to run most games and demos.
2003-04-24 Wouter Vermaelen <wouter.vermaelen@pi.be>
* if an extension exists both in user as in system directory, prefer
the one in user directory
2003-04-23 Maarten ter Huurne <maarten@treewalker.org>
* Added update calls for horizontal scroll settings.
2003-04-22 Maarten ter Huurne <maarten@treewalker.org>
* Partial horizontal scroll implementation: scroll low and border mask.
Scroll high and multi page to be done.
Space Manbow works fine in MSX2+ mode now.
2003-04-21 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Improved DACSound quality:
- improved quality at the expense of an (extra) delay
- samples in Swiss Demo sound acceptable now
- modplayer sounds better but still not very good
* Updated FMPAC:
- ROM is not visible while SRAM is active
2003-04-19 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Added alternative YM2413 core (implemented by Jarek Burczynski):
- still needs some work before it can replace old core
- volume needs some tuning
- performance optimizations (silent channels)
- bug fixes(?)
- if you want to try it copy YM2413.cc.new and YM2413.hh.new over
YM2413.cc and YM2413.hh and recompile
2003-04-18 David Heremans <david.heremans@gnu-linux.net>
* Fixed a bug in JoyNet, but need a program with a good asyncron
protocol to test it
2003-04-17 Maarten ter Huurne <maarten@treewalker.org>
* Separated drawSprites from drawDisplay in subclasses of PixelRenderer.
2003-04-16 Maarten ter Huurne <maarten@treewalker.org>
* Moved display coordinate calculation from subclasses to PixelRenderer.
2003-04-15 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Reworked SCC
- Manuel Pazos's SCC detection routine works correctly now
- Optimized for common case. You mostly write to SCC and hardly
ever read from it
2003-04-12 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Reworked consoles:
- splitted console in "core console" and "console renderer",
the main advantage is that command history is preserved
while switching renderers
2003-04-12 Maarten ter Huurne <maarten@treewalker.org>
* Created util.hh: currently only contains fillBool, which used to be
duplicated in SDLRenderer and SDLGLRenderer.
* Removed system.h: this file has probably been obsolete for some time,
but managed to escape everyone's attention.
* Changed SDLGLRenderer to use SpriteConverter.
2003-04-10 Maarten ter Huurne <maarten@treewalker.org>
* Moved the VDP and rendering code into new "video" directory.
Thanks to Manuel for suggesting how to solve symbol dependencies.
But I still don't like recursive Make...
2003-04-09 Maarten ter Huurne <maarten@treewalker.org>
* Merged SDLLoRenderer and SDLHiRenderer into SDLRenderer.
Template expansion replaces duplicated code.
From a user perspective, "SDLLo" and "SDLHi" still exist.
2003-04-06 Manuel Bilderbeek <manuel@msxnet.org>
* Clean up in RomInfo stuff for empty ROMs. Note that I'm now assuming
that an empty ROM is always an empty SCC. Is this a valid
assumption? The problem is that `forced' ROM types (as with an empty
SCC) are not put in the ROMInfo. So I can't check if it is really
an SCC...
2003-04-05 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Added Korean80-in-1 mapper type
* Added Korean90-in-1 mapper type
* Added Korean126-in-1 mapper type
* Implemented "keyjoystick", joystick emulation via keyboard:
- use like this "plug joyporta keyjoystick"
- joystick direction is mapped on cursors
button-A space
button-B left alt
- TODO mapping should become configurable
- TODO you should be able to configure more than one keyjoystick
* Implemented V9958 CMD bit:
I don't know any program that actually uses this, so it is
not yet tested
2003-04-04 David Heremans <david.heremans@gnu-linux.net>
* Getting everything in /opt/openmsx installed, no links yet
2003-04-04 Maarten ter Huurne <maarten@treewalker.org>
* Introduced SpriteConverter, a utility class for the Renderers to use,
similar to BitmapConverter and CharacterConverter.
* Changed SDLHiRenderer to use SpriteConverter.
* Removed PixelRenderer's protected fields from SDLGL and SDLHi.
2003-04-03 Maarten ter Huurne <maarten@treewalker.org>
* Fixed remaining reads of uninitialised VDP fields.
2003-04-02 David Heremans <david.heremans@gnu-linux.net>
* First cleanups to prepare for a 'make install'
2003-04-02 Maarten ter Huurne <maarten@treewalker.org>
* Minor cleanups in SpriteChecker.
2003-03-31 Maarten ter Huurne <maarten@treewalker.org>
* Turned DisplayMode into a class (makes code easier to read).
* SpriteChecker no longer checks sprites in text mode.
* Various minor cleanups along the way.
2003-03-31 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Don't abort (only warn) when there occurs an error during processing
of autocommands
* Converted "frontswitch" command into a setting
2003-03-30 Maarten ter Huurne <maarten@treewalker.org>
* Removed fullScreen parameter from Renderer constructors.
* Made Renderer constructors private, only available to their
respective factories.
* VDP subsystem reset methods are no longer called by their constructor,
instead they are called explicitly by the VDP.
* Removed EmuTime parameter from VDP subsystem constructors.
* Rearranged VDP constructor to remove overlap with reset method.
* Fixed uses of display mode which could not yet handle the YJK bits.
* Fixed a tricky bug that could occur if rendering was performed in the
middle of a series of updates that all occur at the same EmuTime.
2003-03-29 Manuel Bilderbeek <manuel@msxnet.org>
* Moved other configs from src/cfg to share/machines
* Added some more extensions
* Changed settings.xml to use cbios-msx2 and added skins/ prefix to
ConsoleFont.png
* Updated the HOWTO. I wish the make install was finished, so that I
can cut 10% of the HOWTO... (it's getting complicated to explain...)
2003-03-29 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Fixed crashes on missing arguments (e.g. "openmsx -ext")
* Added extra FDC names:
National --> MB8877A
Panasonic --> TC8566AF
Philips --> WD2793
The old names are deprecated, as soon as the machine configuartions
are changed to use the new names, the old names will be removed.
* Fixed crash on missing console font
2003-03-28 Manuel Bilderbeek <manuel@msxnet.org>
* More refactoring of Rom objects to add RomInfo:
- all Rom objects now have a RomInfo object
- get information that was in the romdb from that object
- slotmap uses this and prints real Rom info, when available; later,
the GUI should be able to use this too, in some way
- note that all MSXRom constructors changed :-)
- note that it's my first big change, please fix things that
could be a lot better and tell me about it :-)
Maarten, Wouter and Joost: thanks for your help!
* Added loads of machine configs (thanks Atarulum):
- when we decide what to do with the patches for the FDC, I'll
add the others
2003-03-26 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Fixed RomPanasonic SRAM
* Optimized VDPCmdEngine for common case: no command in progress
2003-03-25 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Fixed VDP Command Engine bug:
- on every sync() the engine processed at least one 'pixel',
when you poll the VDP very fast (R800) the time between
two syncs is less than one pixel. This screws up the
bookkeeping.
- Fixes MSXView startup problem, Relax demo, ...
2003-03-24 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Another directory structure change:
moved machines/ -> share/machines/
extensions/ -> share/extensions/
etc/romdb.xml -> share/romdb.xml
settings.xml -> share/settings.xml
* Create share directory, moved a lot of files around
2003-03-23 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Reimplemented Panasonic memory system:
- in TurboR rom/ram are tightly connected (dram mode, ...)
Memorymapper, RomMapper, BiosRom are now implemented as special
as special devices
- TurboR hardwareconfig.xml updated
- MSXView almost works now, without "set cmdtiming broken" openmsx
wait for a never ending VDP command. Still investigating...
2003-03-22 Manuel Bilderbeek <manuel@msxnet.org>
* Refactored ROM mappertype retrieval/ROM Info (WIP, to enable readout
of ROM info in the console.)
2003-03-16 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Implemented timeout for reading mouse:
- this fixes the '"plug joyporta mouse" in settings.xml' bug
- current timeout is 1/100s, I've no idea of the timeout
value of a real MSX mouse
2003-03-16 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Various minor optimizations / cleanups, mostly better cache for
unmapped memory regions
2003-03-16 Manuel Bilderbeek <manuel@msxnet.org>
* When a ROM is found in the romdb, the info about the ROM is now
printed. Later, this info could be stored somewhere, so that the GUI
can use it to show a ROM title, e.g.
2003-03-15 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Added HALNOTE mapper type:
- Doesn't work yet! Only 'normal' rom switching is emulated.
The program also writes to pages 0 en 3 and it selects rom
pages > 0x80, I've no idea what this should do.
* Fixed format command, apparently I broke it several months ago.
2003-03-13 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Implemented "vramdump" console command, only available when
compiled with DEBUG
2003-03-10 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Reworked MSXRom:
- made a (small) subclass for every mapper type:
* Moved MSXRom MSXRam related files to a new directory "memory"
* Fixed rom-cartridge SRAM saving, path was wrong:
- it is now ~/.openMSX/persistent/roms/<romname>/<sramname>
2003-03-05 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Implemented "Harry Fox" mapper type
* Fixed ASCII8 mapper type:
Annimal Land works now
2003-03-03 Maarten ter Huurne <maarten@treewalker.org>
* Fixed bug in PixelRenderer: finishFrame was called every frame,
even with frame skip active.
This also fixes the special effects in GL with frame skip active.
2003-03-02 Maarten ter Huurne <maarten@treewalker.org>
* Introduced RendererFactory.
This should help in making the renderer selection a setting.
It will also make it possible to query which renderers are available.
2003-03-02 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Converted "frameskip" console command into a setting
* Implemented BooleanSetting as a specialization of EnumSetting<bool>
* Fixed path resolution bug:
all files were also searched for relative to the current directory
2003-03-01 Maarten ter Huurne <maarten@treewalker.org>
* Updated C-BIOS to version 0.15.
2003-03-01 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Converted "throttle" console command into a setting
* Converted "pause" console command into a setting
* Converted "mute" console command into a setting
* Converted "console" console command into a setting
2003-02-27 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Converted "speed" console command into a setting
2003-02-26 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Implemented free slot selection:
- this is only a temporary solution, it will very likely change
in the next release
- when you specify -1 for the primary slot, the cartridge will
be inserted in a free external slot. Very usefull to write
generic extensions.
* romdb.xml is now searched in /opt/openMSX/etc/romdb.xml
or in ~/.openMSX/etc/romdb.xml
* removed -fmpac and -musmod command line options, they are
replaced by extensions
2003-02-24 Wouter Vermaelen <wouter.vermaelen@pi.be>
* extension directory now has the same structure as the
machines directory:
- for example the scc extension lives in
~/.openMSX/extensions/scc/hardwareconfig.xml
* Implemented Jon's SCC amplitude measurements
2003-02-23 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Implemented command line extensions:
- you can load configuration files located in
~/.openMSX/extensions/
/opt/openMSX/extensions/
with the "-ext" command line option
- example:
./openmsx SDNATCH1.DSK -ext scc+
* Removed -msx1 -msx2 -msx2+ -turbor command line options
* SRAM of rom cartridges is saved in
~/.openMSX/persistent/roms/<rom-name>/
2003-02-19 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Implemented "console_font" setting:
- change the console font at run-time
* Fixed SCC+
2003-02-19 Maarten ter Huurne <maarten@treewalker.org>
* Implemented "toggle" command, which toggles any BooleanSetting.
* Replaced "fullscreen" command by "toggle fullscreen".
* Support key binding of command including parameters.
2003-02-18 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Reworked File / FileContext classes:
- separated "searchpath-resolution" from file opening
* Implemented "console_background" setting:
- change the console background at run-time
2003-02-16 Maarten ter Huurne <maarten@treewalker.org>
* Fixed a bug in the VDP, where display-on was reported before the sync
with VDP subsystems was completed. Can cause the command engine to
run too slow, among other things.
2003-02-16 Wouter Vermaelen <wouter.vermaelen@pi.be>
* First step to persistent state directories:
- persistent state files are saved in
~/.openMSX/persistent/<machine>/<username>/
- <machine> is the name of the directory where we found the
hardware description. Maybe we should get this from inside the
config file?
- it's not yet possible to specify <username>, so for now it's
always "untitled<n>"
* Default machine can be specified in settings.xml:
- see example settings.xml, this will load
~/.openMSX/machine/nms8250/hardwareconfig.xml
* Added "-machine" command line option
2003-02-13 Maarten ter Huurne <maarten@treewalker.org>
* Made "full screen" into a setting.
The "fullscreen" command still works, but will disappear in the future.
2003-02-10 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Uninline cpu rdmem and wrmem slowpaths:
this actually increased performance a little
* RTC uses generic SRAM class for persistent data:
- SRAM is now the _only_ class in the whole tree that writes files
- parameters "filename, load, save" changed to "sramname, loadsram,
savesram". This means all configuartion files must be updated.
* Implemented SCC+ subtypes:
"Snatcher" "SD-Snatcher" "mirrored" "expanded"
2003-02-08 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Fixed MSX-AUDIO mapper:
- it has 4 pages of 32kB instead of only 2
- it has 4kB RAM
- is mirrored at 0x8000-0xffff
* Fixed Y8950 interrupt masks
2003-02-02 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Implemented Panasonic MSX-Audio mapper type (untested)
2003-02-02 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Compiled with some extra warnings enabled and fixed the
resulting warnings
* Renamed MSXRomDevice to Rom (it isn't a device anymore)
* Default values for settings.xml:
- all sections in settings.xml now have default values if they
are left out the config file
- don't abort when settings.xml is not found
- but I really advise _against_ using these features
2003-01-31 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Implemented "user directories" (see settings.xml)
* Fixed "specify other config file" bug
* Relative-from-config was broken, fixed it
2003-01-30 David Heremans <david.heremans@gnu-linux.net>
* altered a code comment and added some extra config examples
2003-01-29 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Implemented home-directory-substitution for local files:
When a filename starts with "~", this character is replaced by
the content of the environment variable HOME. I'm not sure
this will work for non-UNIX OS'es.
* Implemented system-directories:
- The files romdb.xml, msxconfig.xml and settings.xml are searched
in the "system directories". For the moment these are (in this
order)
~/.openMSX/
~/openMSX/
/usr/local/etc/openMSX/
/etc/openMSX/
But we need to discuss about this list. Note that "." is not in
the list.
2003-01-27 David Heremans <david.heremans@gnu-linux.net>
* Increased usefulness of error message in DeviceFactory
2003-01-26 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Automatically load "settings.xml" on startup:
- you can specify an alternative file with the "-setting" command
line option
- For the moment "settings.xml" must be in the current directory
* Moved hard-coded HotKey bindings to settings.xml
2003-01-26 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Fixed Z80/R800 switching again
* Removed "sync_interval" parameter from RealTime
2003-01-26 Maarten ter Huurne <maarten@treewalker.org>
* Relaxed over-zealous assert in PixelRenderer by one tick.
2003-01-25 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Fixed TurboR assertion:
targetTime wasn't set properly when switching CPU (Z80 <-> R800)
* Added dummy MSX-Midi:
Illusion city works now!
2003-01-22 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Reworked MSX-MUSIC / FM-PAC:
removed enable/disable logic from MSX-MUSIC
2003-01-22 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Renamed "TurboR" FDC type to "Panasonic"
* Fixed "cpudebug" command (I broke it yesterday)
* Fixed MSXMatsushita:
this caused FS-4700 build-in word processor hang
* Removed ROM files from CVS
2003-01-21 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Allow muliple commands with the same name:
- for example both Z80 and R800 could have a "cpudebug" command
at the same time (not implemeted yet)
2003-01-20 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Removed SearchPath stuff
* Relative paths in config files are now relative to the location
of the config file:
- this together with the change above probably means you have
to rewrite some/all of your config files
* Moved some #include's from .hh to .cc
2003-01-16 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Implemented 8-bit unsigned 16-bit signed DAC
* Implemented MSX-AUDIO 13-bit DAC:
untested because TurboR (needed for modplayer) is broken
for the moment
2003-01-16 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Fixed MSXF4Device:
FS-A1FX (re)boots correctly now
2003-01-15 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Removed possibility to use other than XML config files
2003-01-14 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Fixed Kanji12
* Removed some unused classes from config directory
2003-01-13 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Implemented Kanji 12x12:
- not tested, I don't have correct ROM
* Implemented front switch:
- use console command "frontswitch [on/off]"
- not tested yet, will do it tomorrow
2003-01-12 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Added powerOff() method to MSXDevice
* Removed getCurrentTime() calls from destructors
2003-01-11 Wouter Vermaelen <wouter.vermaelen@pi.be>
* removed MSXCPU::getTargetTime() method
* added EmuTime argument to the execute() method of a Command:
this removes some of the calls to MSXCPU::getCurrentTime()
* An empty SCC cartridge no longer needs "/dev/zero" as filename,
just don't specify a filename:
this also works in OSes that don't support /dev/zero
* Removed "readromfile" parameter from SCCPlusCart:
if you don't want to read a rom just don't specify one
* Better(?) rom placement heuristics:
fixes zanac
2003-01-09 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Fixed CPU on big endian machines
* TurboR PCM update:
- It now works in Seed of Dragon, although the frequency seems
wrong. The game also hangs when you start to play.
2003-01-06 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Fixed CPU HALT instruction
* Semi-fixed CPU/Scheduler interaction:
- seems to work, but I still need to take a very close look at
the code
2003-01-06 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Large CPU rewrite:
- we never perform IO at a timestamp greater or equal than
the earliest sync point
- 1% - 2% slowdown compared to previous implementation
- ZEXALL tests still pass
- still need to verify if the timimng of the instructions is
still correct
2003-01-05 Maarten ter Huurne <maarten@treewalker.org>
* Fixed mode number for Text 2 in VDP::updateColourBase.
* Recalculate pattern and colour base when switching modes.
2003-01-04 Maarten ter Huurne <maarten@treewalker.org>
* Implemented colour and pattern index mask calculation.
* Fixed remaining Doxygen warnings.
2003-01-03 Maarten ter Huurne <maarten@treewalker.org>
* Fixed Doxygen warnings.
* Fixed I/O port handling of Matsushita switched device, which I forgot
in yesterday's changes.
2003-01-02 Maarten ter Huurne <maarten@treewalker.org>
* Moved I/O port registration out of VDP and into DeviceFactory.
Eventually, all I/O port registration should move to the machine
description file.
* Moved I/O port registration of all other I/O devices out of the
device and into DeviceFactory (or FDCFactory in one case).
2003-01-01 Maarten ter Huurne <maarten@treewalker.org>
* Workaround to prevent out-of-order I/O with the VDP.
* Added asserts to VDP code to check timing constraints.
* Fix for sprites in planar modes.
* Fixed behaviour of port #99, #9A and #9B interference.
* Colour and pattern base mask calculation are now done in a single
method each.
2002-12-30 Joost Yervante Damad <joost@lumatec.be>
* updated AUTHORS
2002-12-30 Maarten ter Huurne <maarten@treewalker.org>
* Let VDPVRAM::Window notify its observer of base/index changes and
windows that become disabled.
2002-12-30 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Autodetect BASIC ROM cartridges:
code mostly taken from windows port
* Don't abort when "romdb.xml" is missing, just print a warning.
* Added a lot of const qualifiers
* Implemented TurboR PCM device:
- only playing (no recording)
- sound quality is really bad (like all our DACSound based devices)
2002-12-29 Maarten ter Huurne <maarten@treewalker.org>
* The VDPVRAM::VRAMObserver interface is put to use for the first time,
by SpriteChecker. Cleans up the VDP subsystem synchronisation code.
2002-12-29 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Released 0.2.1
* Better rom placement heuristics:
should solve bug 658430 point 3 (rom files without "AB" header)
* Allow filenames that contain a ',' on the commandline
* Support roms that don't like to be mirrored:
- solves bug 658430 point 1 (BASIC prog at 0x8000)
- can't be autodetected (yet?), you must specify romtype as
"PAGE[...]" (examples "PAGE2", "PAGE01", "PAGE12", ...)
- romdb.xml should be updated for these 'problem' roms
2002-12-28 Maarten ter Huurne <maarten@treewalker.org>
* Cleaned up sprite checker synchronisation.
2002-12-27 Maarten ter Huurne <maarten@treewalker.org>
* Created VDPSettings class, moved cmdTiming there.
* Moved limitSprites from config to VDPSettings.
2002-12-23 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Support for second MSX-AUDIO:
- add this to the AUDIO section in the config
<parameter name="number">2</parameter>
- alex' modplayer doesn't work yet :-(
2002-12-23 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Tabcompletion for setting values:
example: set accuracy p<tab>
* Implemented "cmdtiming" setting:
Switch between real or instantaneous VDP command timing.
Should only be used for debugging purposes.
* Implemented YJK/YAE (screen11/12) rendering
2002-12-22 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Updated RealTime class:
- this should improve the cases where emulation is too slow,
but openMSX doesn't claim 100% CPU time
* SDLLoRenderer inherits from PixelRenderer iso Renderer
- SDLLoRenderer now also has "accuracy" setting
2002-12-18 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Made some IDE stuff configurable:
- master/slave device
- HD image
- HD size is not yet configurable
- see someconfig.xml for format of new config
2002-12-17 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Implemented MSX Bunsetsu Henkan / Jisyo:
- I don't have much info on this device, but at least BUNSDUMP.BAS
gives the correct result
2002-12-14 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Fixed assertion in VDP when computer was reset while in PAL mode
2002-12-13 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Implemented MSXDeviceSwitch:
- IO-ports 0x41-0x4F are (possibly) shared between several devices
- IO-port 0x40 selects the active device
* Converted MSXS1985 to a MSXSwitchedDevice
* Converted MSXFS4500SRAM to a MSXSwitchedDevice:
- renamed to MSXMatsushita
- implemented PUT KANJI function (IO-ports 0x43-0x44)
2002-12-09 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Implemented correct mirroring for National based FDC's
2002-12-08 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Implemented mmap() in File classes:
- map a file direclty into the process memory range, the OS can
perform some optimizations this way:
- only read data when actually used
- faster swapping
- ...
- I'm not sure non-UNIX OSes (windows) have a similar function,
if not there is a fallback implemented in FileBase (we also
need this fallback for FTP, HTTP, ... files)
* Simplified/updated MSXRomDevice:
- simpler interface: you no longer need to inherit from MSXRomDevice
- use mmap() to read files
* Implemented FS4500SRAM (suggestions for a better name are welcome):
put this in your config file:
<device id="FS4500 SRAM">
<type>FS4500SRAM</type>
<parameter name="loadsram">true</parameter>
<parameter name="savesram">true</parameter>
<parameter name="sramname">FS4500.SRAM</parameter>
</device>
2002-12-04 Wouter Vermaelen <wouter.vermaelen@pi.be>
* added SRAM class:
This is just a small helper class that offers loading and
saving of a byte-array. For the moment only MSXRom and MSXFmPac
use it.
2002-12-01 Wouter Vermaelen <wouter.vermaelen@pi.be>
* added CRC16 routine, can be used by FDC / FDCBackends
* fixed TC8566AF: completely forgot to send step/side/motor
commands to the DiskDrive
2002-11-30 David Heremans <david.heremans@gnu-linux.net>
* Still working towards raw track read
2002-11-30 Wouter Vermaelen <wouter.vermaelen@pi.be>
* fixed auto frameskip:
probably still needs some finetuning
2002-11-29 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Fixed FDC bug (DriveMultiplexer)
2002-11-27 David Heremans <david.heremans@gnu-linux.net>
* Working towards raw track read
2002-11-18 Wouter Vermaelen <wouter.vermaelen@pi.be>
* FDC rewrite, introduced DiskDrive and DriveMultiplexer classes:
- this is a relatively large rewrite, so I may have broken
something. I wanted to commit rather soon, so I only tested
the Philips FDC.
- WD2793 Type I commands are now executed the same as in the
flowcharts of the technical datasheet (verify step not yet).
2002-11-18 David Heremans <david.heremans@gnu-linux.net>
* a small WD2793 update:
quick implementation of multi sector read
not tested and DSK backend needs to be changed
for correct behaviour!
2002-11-18 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Mapped TurboR keys to left and right windows key:
I haven't checked this, so possible I swapped left and right
2002-11-17 Wouter Vermaelen <wouter.vermaelen@pi.be>
* a few WD2793 updates (David please review):
MicrosolFDC partly works now: in BASIC the commands files load save
work, but starting a game from disk doesn't work.
* converted "deinterlace" from a command to a setting:
- you should now use "set deinterlace [on|off]" instead of just
"deinterlace [on|off]"
* converted "accuracy" from a command to a setting:
- you should now use "set accuracy [line|pixel|screen]" instead of
just "accuracy [line|pixel|screen]"
2002-11-16 Wouter Vermaelen <wouter.vermaelen@pi.be>
* renamed BrazilFDC to MicorsolFDC:
doesn't work yet, I'm investigating...
* cleanups, small fixes in WD2793
2002-11-13 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Implemented 'PUT KANJI acceleration' of S1985:
This fixes the font printing problem of the FS-4600F internal
software. AFAIK the FS-4600F now works completely (or at least
as good as NMS8250).
You need to add this to the FS-4600F config file:
<device id="S1985">
<type>S1985</type>
<device>
2002-11-11 Wouter Vermaelen <wouter.vermaelen@pi.be>
* National mapper type fixes:
- FS-4600F internal software seems to work, but I'm not certain
the 1st and 2nd menu option work as they should. Can someone
verify this?
* Fixed National FDC
2002-11-11 David Heremans <david.heremans@gnu-linux.net>
* completed timing in WD for writeTrack command:
Timing still needs some fine tunning, but not much
* implemented writetrackdata in DSK backend:
Formatting with _format in BASIC seems to work
Need to compare with some real disks just to be sure.
2002-11-10 Wouter Vermaelen <wouter.vermaelen@pi.be>
* fixed PhilipsFDC: IDEFDISK doesn't coredump anymore
* use old style file functions: should work with both old and new gcc
2002-11-08 Maarten ter Huurne <mth@stack.nl>
* Improved scanline emulation: the dark line is now an interpolation of
the visible lines above and below.
* Added horizontal blur: emulates the fact that MSX monitors and TVs
are not as sharp as typical PC monitors. Many game graphics are drawn
with this blurring in mind and look poor on a sharp display.
Note: scanlines and blur are implemented only in the GL renderer.
2002-11-03 Wouter Vermaelen <wouter.vermaelen@pi.be>
* added VDP reset() methods (not finished)
2002-11-03 Maarten ter Huurne <mth@stack.nl>
* Initial version of generic settings is working now.
Currently there is only 1 setting: scanline alpha.
2002-11-03 Wouter Vermaelen <wouter.vermaelen@pi.be>
* minor cleanups
* fixed a few uninitialized variables:
- discoverd with valgrind
- some were harmless, fixed anyway to keep valgrind quiet
2002-11-02 David Heremans <david.heremans@gnu-linux.net>
* Added two calls to the FDC backend:
These should later be used to enable the writeTrack command
2002-11-02 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Basic TC8566AF disk controller support (TurboR):
- Based on code from NLMSX written by Frits Hilderink
- TurboR boots now! It still has a lot of missing features though.
2002-11-01 Maarten ter Huurne <mth@stack.nl>
* Scanline emulation in SDLGLRenderer.
Very rudimentary in this stage, but it works.
2002-10-31 Maarten ter Huurne <mth@stack.nl>
* Changed SDLGLRenderer to make it a subclass of PixelRenderer.
* Minor cleanups in SDLHiRenderer.
2002-10-27 Wouter Vermaelen <wouter.vermaelen@pi.be>
* rewrite of FDC infrastructure:
- the existing diskroms are too different to handle them all
in one class -> made FDCFactory that instantiates the right
object
- Implemented support for:
- Philips based diskroms: were already supported
- Brazil based diskroms (needs better name?): IO-based
were already supported, but I never tested them
I also didn't test the new implementation
- National based diskroms (needs better name?):
also untested
The three diskroms above are all build around the WD2793 (or
compatible) controller.
- Configuration format changed slightly, see msxconfigFDC.xml
for details
2002-10-29 Maarten ter Huurne <mth@stack.nl>
* Minor cleanups in PixelRenderer and SDLHiRenderer.
2002-10-27 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Implemented mapper type "NATIONAL":
completely untested, will have to wait till this weekend
2002-10-27 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Replaced all file reading related classes with a new class
structure. This structure:
- has a simpler and more robust interface
- is easier to port(?)
a large part of the WIN32 patch deals with file reading stuff
- has real filetype separation: rom, disk, tape, config files have
their own searchpaths
2002-10-26 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Implemented "CartridgeSlotManager"
2002-10-25 David Heremans <david.heremans@gnu-linux.net>
* "frameskip auto" completed
2002-10-24 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Cartridges are only inserted after configuration is parsed, this
allows in the future to have configurable cartridge slots
* Added PANASONIC mapper type (for example used in Turbo-R for
MSX-VIEW ROM). Untested!!
2002-10-23 Maarten ter Huurne <mth@stack.nl>
* Fixed bug in sprite drawing of SDLLo.
* Fixed bug in initialisation of horizontal adjust.
* PixelRenderer now offers left border calculation to its subclasses.
* Bug fixes and cleanups in coordinate calculation of
SDLHiRenderer::drawDisplay; SCREEN0 no longer fails the asserts.
* Cleanups in SDLHiRenderer::drawSprites.
Should be applied to other Renderers as well.
2002-10-22 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Rewrite of "CommandLineParser":
- CLI options and CLI file types must be registered now, this allows
to move the implementation of, for example the "-fmpac" option, to
the MSXFmPac class where it belongs.
- This should keep the CLI more up to date with code changes and
make it easier to support new CLI options / file types.
2002-10-21 David Heremans <david.heremans@gnu-linux.net>
* "frameskip auto" implementation started
2002-10-21 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Replaced "Simple64Kb" device with "RAM" device. This device also
supports random sizes, so it is possible to make 8Kb machines.
2002-10-20 Maarten ter Huurne <mth@stack.nl>
* Moved subdivision of area-to-be-rendered from SDLHiRenderer to
PixelRenderer. Also changed subdivision approach: before, displayPhase
would draw display area and the borders; while the new drawDisplay only
draws the display area and all the border colour drawing is done by
drawBorder.
2002-10-19 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Implemented frameskip command:
TODO "frameskip auto", skip frames depending on CPU speed
2002-10-13 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Some IDE fixes:
Harddisk works now! Following is still hardcoded:
master: harddisk, size 1GB filename "hd.dsk"
slave : not connected
I'll change this in the next couple of days
2002-10-16 Joost Yervante Damad <joost@lumatec.be>
* removed compile-time disables for now
2002-10-13 Maarten ter Huurne <mth@stack.nl>
* Moved absolute X coordinate to screen X coordinate translation from
PixelRenderer to SDLHiRenderer.
2002-10-13 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Implemented Sunrise IDE interface:
only interface, no IDE devices yet
* Implemented very simple IDE harddisk:
IDE-BIOS detects the disk
IDE Master:LBA,Mode 4:OPEN MSX HARD DISK
IDE Slave :not detected.
but the disk can't be used. Probably because the HD isn't
partioned yet.
2002-10-12 Maarten ter Huurne <mth@stack.nl>
* Split off some functionality from SDLHiRenderer into new PixelRenderer.
PixelRenderer will contain the common code of the pixel-based
renderers (SDLHi, SDLLo, SDLGL).
2002-10-12 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Fixed sound on high endian machines (untested)
2002-10-07 Wouter Vermaelen <wouter.vermaelen@pi.be>
* Horizontal adjust is only updated the next scanline:
fixes some glitches in the "threedee rules" part of "relax"
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.
Copyright © 2010 Geeknet, Inc. All rights reserved. Terms of Use