- optionally load MSXDOS2.ROM, to provide Disk BASIC 2.01
- set RA region to NTSC or PAL depending on FPS 60 or 50
- load GM & GM2 in external slot A (in B in a few cases) to enable proper function on all platforms & independent of other optionally loaded ROMs
- describe slot & memory layout for MSX1 & MSX2/2+ models as implemented by fMSX
- add 7 unmapped keys: DEAD (accents) and numeric pad. Note: Numpad period key presses seem unregistered in RA (on Linux)?
- #44 mention in readme that Turbo-R is out of scope; not part of fMSX
- remove AY8910_DRUMS, MSX_DRUMS & various other obsolete MIDI #defines
- document limitations of fMSX sound emulation & channel usage
- remove PChanged (patch, i.e., instrument) & DChanged (drum) attributes of OPLL; both were only used for MIDI logging (fMSX/X) or actual MIDI playback (fMSX/Win) - which hardly sounds like the real thing
- remove 3 obsolete tables for OPLL (YM2413)
- retro_unload_game(): invoke TrashMSX()
.. and solve free() problem related to getcwd()/WorkDir
- explicitly #define NUM_FDI_DRIVES 4 (differs from MAXDRIVES, which is 2 for MSX!)
- rework PATCH_Z80 Makefile cfg
- fix 192kB VRAM using proper bitmask
More detailed:
- autodetect .cas format and start it
- link F6 to 'rewind tape' - equal to fMSX keymap
- remove 3 obsolete source files (ConDebug.c, Debug.c, State.h)
- remove 2 unused method headers (InitMachine & TrashMachine)
- resurrect Patch.c; required for Cassette and fmsx_simbdos
- remove Guess Mapper Type B; fmsx-libretro supports only 1 ROM (thus A)
- also support .FDI disk format
- fix inline redefinition warning
- refactor VFS forward declarations
Filtered fMSX changelog:
New in fMSX 5.9
-
Unmentioned:
- EMULib disk formats: a.o. support second Sam Coupé disk type (not applicable to MSX)
Additionally:
- fix 8 unused result warnings
- fix PSG+SCC sound issue introduced at migration to 5.1
Filtered fMSX changelog:
New in fMSX 5.8
Will try opening tapes as read-only, if read-and-append fails.
System ROM files location now defaults to where executable is.
Fixed SHA1 computation when guessing MegaROM mapper type.
ASCII16 mapper now preferred over ASCII8 when guess MegaROM type.
Changed R-Type mapper type to ASCII16.
Changed DragonQuest 1 mapper type to GENERIC8.
Changed Animal mapper type to GENERIC8.
Changed T&E Soft Ashguine mapper type to GENERIC8.
Changed Royal Blood mapper type to ASCII8.
New in fMSX 5.7
Fixed noise in Eggerland Mystery and other games.
Moved PSG sound computation to Sync8910().
Fixed compatibility with 64bit CPU architectures. (#pragma pack(4))
New in fMSX 5.4~6 (?! - not documented)
-
Not mentioned:
- EMULib disk format support: Sam Coupé & Coleco Adam (not applicable to MSX)
Changelog, filtered on applicable items:
New in fMSX 5.3
Replaced -DNO_WAVE_INTERPOLATION with -DWAVE_INTERPOLATION, off by default.
New in fMSX 5.2
-
Unmentioned in these changes are:
- some whitespace (Common.h)
- disk label refactoring (extract parameter)
The 'off by default' for wave interpolation means the implementation is now different. Revert to previous situation by adding -DWAVE_INTERPOLATION to Makefile.common, if so preferred. Audibly, no changes can be detected.
New in fMSX 5.1
-
New in fMSX 5.0
Switched to microseconds in the AY8910 PSG emulation.
Now updating, rendering, and playing sound every 8 scanlines.
Does not build yet due to MCF (MSX Cheat File) addition; next commit will fix that.