(Last Update: october 17th 1999)
Most current version: NLMSX v0.20.
NLMSX is an msx/msx2/msx2+ emulator that is based upon fMSX 2.0b
made by
Marat Fayzullin and is being developed by Frits Hilderink, a
former member
of MSX Computer Club Enschede in the Netherlands.
As of NLMSX v0.20 only the Z80 emulation part is used from
the original fMSX 2.0b source.
A short explanation of the directory structure:
Directory | File | Description | |
. | |||
MSX2.EXE | Main Program. | ||
.\dsks | Directory which contains disk images. | ||
drivea.dsk | Specifies the default disk image to be used as 'drive
A'. This file can be renamed/change on the fly. The disk will be just be offline inside the emulator if the file is not present. |
||
.\log | Directory which contains several log files. | ||
Msxio.txt | MSX I/O System messages | ||
VDPDebug.txt | Video Display Processor debug messages. | ||
VDPStats.txt | Video Display Statistics messages. | ||
Z80Debug.txt | Z80 Debug messages. | ||
.\roms | Directory which contains the rom images. | ||
carta.rom | Default rom image for cartridge slot 1, will only be loaded if present | ||
cartb.rom | Default rom image for cartridge slot 2, will only be loaded if present | ||
disk.rom | Rom image for disk support, loaded in slot 3-1 at addresses 4000-7FFF | ||
msx.rom | MSX 1 Main ROM image, loaded in slot 0-0 at addresses 0000-7FFF | ||
msx2.rom | MSX 2 Main ROM image, loaded in slot 0-0 at addresses 0000-7FFF | ||
msx2p.rom | MSX 2+ Main ROM image, loaded in slot 0-0 at addresses 0000-7FFF | ||
msx2ext.rom | MSX 2 ROM extension, loaded in slot 3-1 at 0000-3FFF | ||
msx2pext.rom | MSX 2+ ROM extension, loaded in slot 3-1 at 0000-3FFF | ||
msxdos2.rom | MSX-DOS2 ROM, loaded in slot 2 at 4000-7FFF, will only be loaded if present |
Updates of this emulator can also be found at:
NLMSX v0.20 | Rewrote complete memory system and I/O
system. Multiple memory mapper configurations with
different mapper sizes are now possible. Added memory mapped version of the TMS279x diskcontroller, only reading and writing of sectors is currently supported. This means that a disk cannot be formatted inside the emulator until the write track command is implemented. Single Density and Double Density disk images. Read-Only disk image are now opened with write protection enabled. MSXDOS 2.x support added. 'MSXDOS2.ROM' file will be loaded if it is present. Beware that it might seem that a program isn't working because of the presence of DOS2. Try disabling DOS2 support by renaming the file 'MSXDOS2.ROM'. Configuration with or without DOS2 can be made when the GUI is ready. Solved a problem with sprites in MSX 1 screen modes. |
|
NLMSX v0.10 | Rewrote interrupt handling, thanks to Laurens Holst
and Sean Young. Sunrise Magazine#8, Sunrise Special #1, #2, #3 and the game Megadoom work just fine now. Use F12 to reset the emulator. Added sprite transparency enable/disable bit support for sprite mode 2, Ikari Warrior plays like it should now. |
|
NLMSX v0.09 | Added horizontal scroll support in screen 6, 7, 10,
11, 12. Added screen masking support, bit 1 of register#25. Added sprite support for screen 8, with the correct palette Added sprite support for screen 1. Added correct behaviour of register#27, which is part of the horizontal scrolling capability, in all present screen modes. Fixed another bug in the interrupt handling, the demo Turnix and Sunrise Magazine #8 work fine now. |
|
NLMSX v0.08 | Sprite support for screen 6 added. Optimized sprite magnification in Sprite Mode 2. Fixed a bug in screen 12 handling that occurred in Psy-O-Blade from T&E Soft. Added filter for disk images '*.di1' and '*.di2'. Fixed a bug in the horizontal scroll in screen 5, I rewrote the original source. Added horizontal scroll support in screen 8. Use F7 to switch between full screen updates, every second screen, every third screen and every fourth screen. This should give a big performance increase on low-end systems. |
|
NLMSX v0.07 | Fixed a bug in the VDP command LMMC. Dynamic
publisher runs just fine now. Adding disk change support. Use the function key F6 to select a disk image for drive A. Added the correct ID for a V9958 chip, solved problems with the golvellius 2 demo. The GRAPH key is now available under the F8 key. |
|
NLMSX v0.06 | Support for screen 10 and screen 11
added. Including sprites. Sprites for screen 12 added. Emulation now runs within a window, no menus available yet. Performance has been a problem lately and will be addressed within the next releases. |
|
NLMSX v0.05 | Support for screen 12 added. No sprites yet. | |
MSX2 Emulator v0.04 | Major bug fixes in VDP emulation. | |
MSX2 Emulator v0.03 | Major bug fixes in VDP emulation. Fixed a bug in interrupt handling. The 'EI' instruction should enable interrupts after the next instruction. SD-Snatcher runs since this version. |
|
MSX2 Emulator v0.02 | Major bug fixes in VDP emulation. Fixed a bug in boot sector interpretation code when running games where boot sector information was corrupted. |
|
MSX2 Emulator v0.01 | First Release |
GUI | ||
Complete windows interface | ||
Interface for creating/changing MSX configurations | ||
DISK | ||
Adding DISK support through port based I/O | ||
Adding SCSI support through memory mapped I/O or port based I/O (specs anyone ?) | ||
Adding IDE support through memory mapped I/O or port based I/O (specs anyone ?) | ||
Disk Controller | ||
TMS279x | ||
Adding support for Read Address command | ||
Adding support for Read Track command | ||
Adding support for Write Track command, to make disk formatting possible | ||
Adding support for correct CRC calculation | ||
Interface | ||
Adding keyboard support through DirectX | ||
Adding mouse support through DirectX | ||
Adding joystick support trough DirectX | ||
ROMs | ||
Adding SCC megarom support | ||
Adding ASCII megarom support | ||
Sound | ||
Adding PSG support | ||
Adding SCC support | ||
Adding FM-PAC support | ||
Adding MSX-AUDIO support | ||
VDP Engine | ||
V9938 | ||
Initializing all available registers with the correct values | ||
Adding screen 3 support | ||
Adding expansion VRAM support (extra 64 KByte) | ||
Check if the implemented LINE command works the same way as the V9938 draws a LINE | ||
Checking the influence of register#23(display line) for screen 1, 2 and 3 | ||
Adding sprite magnifying for Sprite Mode 1 | ||
Adding sprite collision detection in Sprite Mode 1 and 2 | ||
Adding sprite transparency enable/disable bit support for sprite mode 2 in screen 6 | ||
Better support for timing between Z80 TStates VDP clock speed | ||
Better parallel executing VDP commands | ||
Better support for exact speeds of VDP commands | ||
Support for VDP colour bus operations (digitising, etc.) | ||
Adding interlacing support, with timing using register#13 | ||
Adding vertical adjustment support (register#18) | ||
V9938 Specials | ||
Adding support for the overscan trick as used in demos like Unreality | ||
V9958 | ||
Switch for enabling/disabling V9958 | ||
Adding horizontal scroll support for screen 4 | ||
Adding command extension support, bit 6 of register#25 | ||
Adding wait function support, bit 2 of register#25 | ||
????? | ||
If anyone has specs or other info needed to complete
this list then mail me, see Support. |
Please mail any bugs, crashes and ideas to Frits Hilderink .
Last Update: october 17th 1999
Viewed times since the 8th of july 1999.
FastCounter by
LinkExchange