Skip to content

MSX (fMSX)

Background

This is a port of Marat Fayzullin's fMSX 6.0 (21-Feb-2021) to the libretro API. fMSX is a program that emulates MSX, MSX2, and MSX2+ 8bit home computers. It runs MSX/MSX2/MSX2+ software on many different platforms including Windows, Android, Symbian, MacOS, Unix, MSDOS, AmigaOS, etc. I started developing fMSX in 1993 when there were only two other MSX emulators available, both exclusively for MSDOS. From the very beginning, I developed fMSX as a portable program able to run on many different computers. The initial development, for example, was done on DEC Alpha workstations running Unix. Since then, fMSX has seen quite a lot of updates and been ported to many systems. It is still being developed, although not as actively as before because most features are pretty much complete now.

The Meteor core has been authored by

  • Marat Fayzullin

The fMSX core is licensed under

A summary of the licenses behind RetroArch and its cores can be found here.

Extensions

Content that can be loaded by the fMSX core have the following file extensions:

  • .rom
  • .mx1
  • .mx2
  • .dsk
  • .cas

Databases

RetroArch database(s) that are associated with the fMSX core:

BIOS

Required or optional firmware files go in RetroArch's system directory.

Filename Description md5sum
MSX.ROM MSX BIOS - Required 364a1a579fe5cb8dba54519bcfcdac0d
MSX2.ROM MSX2 BIOS - Required ec3a01c91f24fbddcbcab0ad301bc9ef
MSX2EXT.ROM MSX2 ExtROM - Required 2183c2aff17cf4297bdb496de78c2e8a
MSX2P.ROM MSX2+ BIOS - Required 847cc025ffae665487940ff2639540e5
MSX2PEXT.ROM MSX2+ ExtROM - Required 7c8243c71d8f143b2531f01afa6a05dc
DISK.ROM DiskROM/BDOS (optional) 80dcd1ad1a4cf65d64b7ba10504e8190
FMPAC.ROM FMPAC BIOS (optional) 6f69cc8b5ed761b03afd78000dfb0e19
MSXDOS2.ROM MSX-DOS 2 (optional) 6418d091cd6907bbcf940324339e43bb
PAINTER.ROM Yamaha Painter (optional) 403cdea1cbd2bb24fae506941f8f655e
KANJI.ROM Kanji Font (optional) febe8782b466d7c3b16de6d104826b34

This list of compatible ROMS is not complete.

Features

RetroArch-level settings or features that the fMSX core respects.

Feature Supported
Restart
Screenshots
Saves -
States
Rewind
Netplay
Core Options
RetroAchievements
RetroArch Cheats
Native Cheats
Controls
Remapping
Multi-Mouse
Rumble
Sensors
Camera
Location
Subsystem
Softpatching
Disk Control
Username
Language
Crop Overscan

Directories

The fMSX core's directory name is 'fMSX'

The fMSX core saves/loads to/from these directories.

RetroArch's State directory

  • 'content-name'.state# (State)

Geometry and timing

  • The fMSX core's internal FPS is 60
  • The fMSX core's internal sample rate is 48000 Hz
  • The fMSX core's core provided aspect ratio is (Ratio)

Core options

The fMSX core has the following option(s) that can be tweaked from the core options menu. The default setting is bolded.

Settings with (Restart) means that core has to be closed for the new setting to be applied on next launch.

  • MSX Mode (MSX2+/MSX1/MSX2)

    Select MSX model.

  • MSX Video Mode (NTSC/PAL)

    Awaiting description.

  • MSX Mapper Type Mode (Guess Mapper Type A/Guess Mapper Type B)

    Awaiting description.

  • MSX Main Memory (Auto/64KB/128KB/256KB/512KB)

    Awaiting description.

  • MSX Video Memory (Auto/32KB/64KB/128KB/192KB)

    Awaiting description.

Controllers

Device types

The fMSX core supports the following device type(s) in the controls menu, bolded device types are the default for the specified user(s):

User 1 device types

  • None - Input disabled.
  • Joystick - Joypad
  • Joystick + Emulated Keyboard - Joypad
  • Emulated Keyboard - Joypad
  • Keyboard - Keyboard - Has Keymapper support

User 2 device types

  • None - Input disabled. Joystick - Joypad

Controller tables

Joypad and analog device type table

User 1 - 2 Remap descriptors for 'Joystick device type' RetroPad Inputs
Fire B
Stick Up
Stick Down
Stick Left
Stick Right
Fire A
User 1 Remap descriptors for 'Joystick + Emulated Keyboard' device type RetroPad Inputs
Fire B
Spacebar
F2
F1
Stick Up
Stick Down
Stick Left
Stick Right
Fire A
F3
F4
F5
Graph
Ctrl
Enter
Escape
User 1 Remap descriptors for 'Emulated Keyboard' device type RetroPad Inputs
Enter
M
F4
F1
Arrow Up
Arrow Down
Arrow Left
Arrow Right
Space
N
F2
F3
Graph
Ctrl
F5
Escape

Keyboard device type table

RetroKeyboard Inputs Keyboard
Keyboard Backspace Backspace
Keyboard Tab Tab
Keyboard Return Enter
Keyboard Pause Stop
Keyboard Escape Escape
Keyboard Space Space
Keyboard ! !
Keyboard " "
Keyboard # #
Keyboard $ $
Keyboard & &
Keyboard ' `
Keyboard ( (
Keyboard ) )
Keyboard * #
Keyboard + +
Keyboard , ,
Keyboard . .
Keyboard / /
Keyboard 0 0
Keyboard 1 1
Keyboard 2 2
Keyboard 3 3
Keyboard 4 4
Keyboard 5 5
Keyboard 6 6
Keyboard 7 7
Keyboard 8 8
Keyboard 9 9
Keyboard : :
Keyboard ; ;
Keyboard - -
Keyboard = =
Keyboard < <
Keyboard > >
Keyboard ? ?
Keyboard @ @
Keyboard [ [
Keyboard \ \
Keyboard ] ]
Keyboard ^ ^
Keyboard _ _
Keyboard ` -
Keyboard a a
Keyboard b b
Keyboard c c
Keyboard d d
Keyboard e e
Keyboard f f
Keyboard g g
Keyboard h h
Keyboard i i
Keyboard j j
Keyboard k k
Keyboard l l
Keyboard m m
Keyboard n n
Keyboard o o
Keyboard p p
Keyboard q q
Keyboard r r
Keyboard s s
Keyboard t t
Keyboard u u
Keyboard v v
Keyboard w w
Keyboard x x
Keyboard y y
Keyboard z z
Keyboard Delete Delete
Keyboard Numpad 0 Numpad 0
Keyboard Numpad 1 Numpad 1
Keyboard Numpad 2 Numpad 2
Keyboard Numpad 3 Numpad 3
Keyboard Numpad 4 Numpad 4
Keyboard Numpad 5 Numpad 5
Keyboard Numpad 6 Numpad 6
Keyboard Numpad 7 Numpad 7
Keyboard Numpad 8 Numpad 8
Keyboard Numpad 9 Numpad 9
Keyboard Up Up
Keyboard Down Down
Keyboard Right Right
Keyboard Left Left
Keyboard Insert Insert
Keyboard Home Home
Keyboard End Select
Keyboard Page Up Country
Keyboard F1 F1
Keyboard F2 F2
Keyboard F3 F3
Keyboard F4 F4
Keyboard F5 F5
Keyboard Caps Lock Caps Lock
Keyboard Scroll Lock Shift
Keyboard Right Shift Shift
Keyboard Right Control Control
Keyboard Left Control Control
Keyboard Left Alt Graph

Compatibility

Awaiting description.

MSX