OpenMSX
Encyclopedia
openMSX is an open source
MSX
emulator which is free according to the Debian Free Software Guidelines, available under the GNU General Public License
.
For copyright reasons the emulator cannot be distributed with original BIOS ROM images. OpenMSX includes C-BIOS, a minimal implementation of the MSX BIOS, allowing some games to be played without an original MSX BIOS ROM image
. You can also use your own BIOS ROM image
if you please.
OpenMSX uses a distinctive emulation model to achieve the highest level of accuracy possible. It is available for multiple platforms including POSIX
and Microsoft Windows
operating systems and emulates a large amount of MSX (related) hardware, including:
Notable features include:
OpenMSX has an open communication protocol to communicate with the openMSX emulator. Utilizing this communication protocol enables to write versatile add-ons for openMSX. Projects making use of this protocol include the following applications:
Currently Catapult, a GUI developed for the emulator that is part of the project, is being redeveloped utilizing Python
and the Qt
toolkit.
The openMSX Debugger is also under development, written in C++
, also utilizing the Qt Toolkit
.
Open source
The term open source describes practices in production and development that promote access to the end product's source materials. Some consider open source a philosophy, others consider it a pragmatic methodology...
MSX
MSX
MSX was the name of a standardized home computer architecture in the 1980s conceived by Kazuhiko Nishi, then Vice-president at Microsoft Japan and Director at ASCII Corporation...
emulator which is free according to the Debian Free Software Guidelines, available under the GNU General Public License
GNU General Public License
The GNU General Public License is the most widely used free software license, originally written by Richard Stallman for the GNU Project....
.
For copyright reasons the emulator cannot be distributed with original BIOS ROM images. OpenMSX includes C-BIOS, a minimal implementation of the MSX BIOS, allowing some games to be played without an original MSX BIOS ROM image
ROM image
A ROM image, or ROM file, is a computer file which contains a copy of the data from a read-only memory chip, often from a video game cartridge, a computer's firmware, or from an arcade game's main board...
. You can also use your own BIOS ROM image
ROM image
A ROM image, or ROM file, is a computer file which contains a copy of the data from a read-only memory chip, often from a video game cartridge, a computer's firmware, or from an arcade game's main board...
if you please.
OpenMSX uses a distinctive emulation model to achieve the highest level of accuracy possible. It is available for multiple platforms including POSIX
POSIX
POSIX , an acronym for "Portable Operating System Interface", is a family of standards specified by the IEEE for maintaining compatibility between operating systems...
and Microsoft Windows
Microsoft Windows
Microsoft Windows is a series of operating systems produced by Microsoft.Microsoft introduced an operating environment named Windows on November 20, 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces . Microsoft Windows came to dominate the world's personal...
operating systems and emulates a large amount of MSX (related) hardware, including:
- MSXturboR
- MoonsoundMoonsoundMoonsound was the name of a sound card released for the MSX home-computer system at the Tilburg computer fair in 1995. The name Moonsound originated from the software Moonblaster that was written for people to use this hardware plug-in synthesizer.- History :...
- IDEAT AttachmentParallel ATA , originally ATA, is an interface standard for the connection of storage devices such as hard disks, solid-state drives, floppy drives, and optical disc drives in computers. The standard is maintained by X3/INCITS committee...
Controller by Sunrise - GFX9000
- Pioneer Palcom LaserDisc
Notable features include:
- Hard- and software Scalers
- Debugging
- TclTclTcl is a scripting language created by John Ousterhout. Originally "born out of frustration", according to the author, with programmers devising their own languages intended to be embedded into applications, Tcl gained acceptance on its own...
Script Support - Cheat Finder (through TclTclTcl is a scripting language created by John Ousterhout. Originally "born out of frustration", according to the author, with programmers devising their own languages intended to be embedded into applications, Tcl gained acceptance on its own...
) - Game Trainers (through TclTclTcl is a scripting language created by John Ousterhout. Originally "born out of frustration", according to the author, with programmers devising their own languages intended to be embedded into applications, Tcl gained acceptance on its own...
) - Audio/Video recording
- Reverse support (go back in emulated time to correct mistakes or debug what happened)
OpenMSX has an open communication protocol to communicate with the openMSX emulator. Utilizing this communication protocol enables to write versatile add-ons for openMSX. Projects making use of this protocol include the following applications:
- openMSX Catapult (by the openMSX team)
- openMSX Debugger (by the openMSX team)
- openMSXControl plugin
- NekoLauncher openMSX
- openMSX Peashooter
- openMSX Control Plugin for Gedit
Currently Catapult, a GUI developed for the emulator that is part of the project, is being redeveloped utilizing Python
Python (programming language)
Python is a general-purpose, high-level programming language whose design philosophy emphasizes code readability. Python claims to "[combine] remarkable power with very clear syntax", and its standard library is large and comprehensive...
and the Qt
Qt (toolkit)
Qt is a cross-platform application framework that is widely used for developing application software with a graphical user interface , and also used for developing non-GUI programs such as command-line tools and consoles for servers...
toolkit.
The openMSX Debugger is also under development, written in C++
C++
C++ is a statically typed, free-form, multi-paradigm, compiled, general-purpose programming language. It is regarded as an intermediate-level language, as it comprises a combination of both high-level and low-level language features. It was developed by Bjarne Stroustrup starting in 1979 at Bell...
, also utilizing the Qt Toolkit
Qt (toolkit)
Qt is a cross-platform application framework that is widely used for developing application software with a graphical user interface , and also used for developing non-GUI programs such as command-line tools and consoles for servers...
.