RuMSX - MSX-Emulator, V0.12:
============================

This free MSX-Emulator has following improvements:
- Emulation of MSX, MSX 2, MSX 2+ and MSX Turbo-R machines
- Full V9958 emulation
  (including Screen 10-12, vertical and horizontal scroll-registers)
  vertical scanline-interrupts are not working perfectly at this time
- Integrated Z80-Debugger
- Support for
  + multiple Joysticks
    (running well with Salamander and Super Laydock 2)
  + mouse, requires DirectInput (not implemented yet)
  + TouchPad (planned)
- Usage of several configuartions and memory-layouts
- support for DSK and DDI-files
- support for Tape-files
- support for ROM-changes (also during runtime)
- Disk- and Tape-images can be write-protected
  (media-change supports write-protect tab emulation)
- Disk- and Tape-images can be directly run from CD-ROM archives
  (as long as you don't need to save data on disk)
- Disk-images are allowed to contain errors
- Support for printers (not fully implemented yet)
  you can send your raw-data or emulate an MSX-Printer
- Support for RS232 (not implemented yet)
- Support of all MSX disk-formats
- Support for Window- and FullScreen (requires DirectDraw2) -Mode
- Emulation of PSG and SCC (requires DirectSound)
  other sound-devices will be added in the future
- Supports japanese Kanji-ROM's (class 1 and 2)
- Integrated Emulator-Help and MSX-Documentation
- Performance fine-tuning to get best speed
  and/or quality on your Win32-machine
  (CPU-Load, Video- and Sound-emulation)
- Run's on Windows 95 and Windows NT 4.0
  (to take advantage of all features DirectX3 for Windows 95
  or Windows NT 4.0 SP3 is recommended)
- Different CMOS settings for each Windows-user
  (because user-dependent values are stored in the registry)
- possibility to localize MSX ROM's
  (font, system-information, ...   keyboard layout is a
  problem because of different implementations for different
  countries: International, Japanese, Korean, ...)
- fMSX images are compatible with RuMSX,
  but the always created & loaded CMOS.ROM file is obsolete now
  (and can therefore not be loaded into RuMSX)

The emulation should run properly on a P166,
but after tuning it should also run well on a i486/50


Known bugs:
-----------
- Video-memory layout is not correct in Screen 5+6


What's the difference?
----------------------
This emulator has several differences to the already existing ones:
- after code-cleanup the source is free,
  so everybody is able to analyze and extend the code
  (please inform me about changes, so that I can add these to my code)
  This free code allows also a port to other Win32-compatible
  platforms (i.e. Windows NT on Alpha-Workstations)
- MSX Turbo-R programs should run properly on this emulator
- you can run your MSX-Software directly from CD-ROM or
  write-protected network-drives (this is not possible with
  other emulators because writeable medias - as disks - must
  always be writeable, even if you don't need it!)


Developers:
-----------
Normally system-files are located in the correspondig subdirectories
of the started emulator. Developers can use SET RUMSX_DIR= to
specify another base-directory to test debug-, nodebug- and other
modified binaries.


Directories:
------------
.          contains MSX.EXE and SETUP.EXE
.\Config   contains configurations and memory-layouts
.\Help     contains the help-files (including generated text-indices)
.\Locale   contains fonts to patch system-ROM's for other countrys
.\Patch    contains image-informations (ROM-types, ...)
.\SRAM     contains SRAM-images (alternative: SET RUMSX_SRAMDIR)
.\System   contains the MSX ROM-images
.\Util     useful utilities for RuMSX
.\ROM      ROM-images (optional: XBasic, MSX-DOS 2.20, ...)
.\DSK      Disk-images (MSX-DOS, ...)
.\CAS      for tape-images

Testing:
--------
The code is tested on various configurations:
Windows NT 4.0 SP3 (development environment)
Windows 95, SP1
Windows 95, SP1, DirectX5, IE40
Windows 98, Beta 2

Each significant code-change is tested with typical MSX-Software
to find possible side effects:
- ZanacEx  (scanline-interrupts, horz/vert scrollregister)
- Aleste 2 (scanline-interrupts, horz/vert scrollregister)
- Super Laydock 2 (scanline-interrupts, horz/vert scrollregister, Joysticks, Screen 12)
- F1 Spirit 3D Special (scanline-interrupts, horz/vert scrollregister, Screen 12)
  ScanLine-interrupts during game are not working correctly at this time
- SpaceManbow (scanline-interrupts, horz adjust-register, SCC)
- Metal Gear 2 (MegaROM, SCC)
- Tetris (Screen 7)
- Metal Gear (Tape)

Very bad results because of implementation-errors:
- Breaker (Screen 5/8, Mouse)
