# openMSX FAQ

## Contents

- Installing openMSX:
- Using openMSX:
- Other:

## Installing openMSX

### Why is openMSX so difficult to install?

openMSX used to be difficult to install, but it isn't difficult at all, nowadays! At least: it shouldn't be.

The easiest way to install openMSX is to use a ready-made package. Whether one is available depends on your operating system:

Windows
  The easiest way to install openMSX is by running the installer. It's the `.exe` file you can find in the downloads section of the openMSX SourceForge.net site. After this, you should have a working openMSX and openMSX Catapult.
Mac OS X
  The easiest way is to get the universal binary, which is in the `.dmg` file from the downloads section of the openMSX SourceForge.net site. The file name will contain `univ`. There is no Catapult for OS X yet.
Debian GNU/Linux
  Install the `openmsx`, `openmsx-data`, `cbios` and `openmsx-catapult` packages. The simplest way is to run `aptitude install openmsx-catapult`, APT will install the other needed packages as well.
Ubuntu Linux
  The Ubuntu packages are similar to the Debian ones. You can find them in the "universe" repository, so make sure you have that enabled in your `/etc/apt/sources.list`.
Gentoo Linux
  You can find an ebuild for openMSX in the "games-emulation" category. Catapult does not have an ebuild yet.
Slackware Linux
  You can find binary packages for Pentium 2 and higher on the Linux Packages site, but they seem to be somewhat outdated.
FreeBSD
  There is a port for openMSX in FreeBSD 6. It is called simply "openmsx". There is no port for Catapult yet.
other
  You'll have to install openMSX from source. This is not as complicated as it sounds, because we have automated most of the process and documented the rest. Just read the Compilation Guide.

Note that in any case, there are no system ROMs installed, so only the C-BIOS machines work out-of-the-box. See also the next couple of questions.

If you still think openMSX is difficult to install, please tell us why!

### Should I download the ZIP or the EXE for Windows?

We strongly recommend to use the EXE. It contains a very comfortable installer and really won't touch your Windows registry if you don't want that! The price you pay if you want the registry unharmed: you can't use the built-in uninstaller... Do note that Catapult saves its preferences in the User registry of Windows though. This is a very normal thing to do for user programs. If you don't want that, don't use Catapult (nor most other Windows programs).

With the EXE, your openMSX experience is only about 3 clicks away. The ZIP file is meant for experienced users mostly.

Maybe you noticed that for some releases the ZIP file is a little bit bigger than the EXE. The reason for this is that the EXE file has better compression! The actual contents is exactly the same.

### Why doesn't openMSX come with system ROMs?

The MSX system ROMs are copyrighted. In other words: it's illegal to include them in our software package without a license. The Setup Guide contains a section about system ROMs.

### Where do I install the ROMs?

As of version 0.5.0 you can put all the ROMs in a ROM pool, which is a central ROM directory. The default location is `share/systemroms`.

You can also do it in the way of the older versions: put the ROMs for the machine called WHATEVER in `share/machines/WHATEVER/roms` and for the extension called WHATEVER in `share/extensions/WHATEVER/roms`. See also the Setup Guide.

## Using openMSX

### Why is openMSX so difficult to use?

Ever since openMSX comes with the optional GUI dubbed "openMSX Catapult", it is not difficult to use either! The Windows installer installs it by default. For other systems, the same counts as for openMSX itself. Check out the Catapult manual for more information. For basic usage, you just select a machine to run and click on "Start"!

Catapult doesn't give you access to all features of openMSX, though. You can do a lot more by using the openMSX built-in console. You can read a lot more about this in the User's Manual. It's not a GUI, but we did our best to make this console as easy to use as possible.

If you still think openMSX is difficult to use, please tell us why! Contact info is in the manuals.

Oh, you might wonder: why don't you make a normal GUI like other emulators? One in which the emulation is inside the GUI? The reason is that we are currently not able to make that: the GUI toolkit we use does not support it and we want to keep the GUI optional, so we cannot make it part of the main application.

### All I get is "No cartridge found." What's wrong?

You are probably talking about this:

openMSX doesn't come with any system ROMs, see 3. Why doesn't openMSX come with system ROMs?. To have something to be able to run some software, openMSX comes with a free replacement of an MSX BIOS ROM called C-BIOS, written by BouKiChi, Reikan and nowadays the C-BIOS Association. This is also what you can see in the screen: C-BIOS 0.21.

So, the message is not from openMSX, but from C-BIOS, an MSX program which tries to start a cartridge that is inserted in the MSX that is being emulated by openMSX. And it seems you didn't insert any cartridge for it... So, either run openMSX with a ROM image or install real MSX system ROMs for a certain machine and run that one.

Note that the current version of C-BIOS can only run cartridges and does not support disk or tape usage. More information can be found in the Setup Guide.

### How do I save my game?

You've been playing a game and want to continue another time, so you want to save your progress. openMSX does not support save states yet. Therefore you should save the way you would on a real MSX. How that works, depends on the game:

Game Disk
  Some disk-based games save on one of the game disks. Make sure the disk is not write protected; in openMSX this means the disk image must be an ordinary DSK image (not compressed as ZIP or XSA) and not read-only.
Separate Disk
  Some games save on a separate disk. You can create an empty disk for this purpose by opening the openMSX console with F10 (Cmd+L on Mac) and executing the command "`diskmanipulator create filename.dsk 720`". Since many games save in fixed sector locations instead of files, it is best to reserve a separate save game disk for each game.
PAC SRAM
  The PAC and FMPAC contain a bit of battery-powered memory that can be used for saving games. Make sure you insert the `pac` or `fmpac` extension when you start openMSX.
  The SRAM is divided into 8 blocks and different games typically use different blocks. However, there are many games using the SRAM, so it is unavoidable that some games use the same block. If you play more than one game and want to be safe, copy the `.pac` file from "persistent/fmpac/untitled1" in your openMSX user directory ("`My Documents/openMSX`" on Windows, "`~/.openMSX`" on other systems) to a safe location.
Game Master 2
  The Game Master 2 can be used to save many Konami games. Insert both the game cartridge and the Game Master 2 cartridge.
Embedded SRAM
  Some cartridges games, for example the strategic games from Koei, have SRAM inside the cartridge. You don't have to do anything special to use this.
Tape
  Saving to tape is a bit clumsy, but for some games it's the only way.
  Note that the current version of C-BIOS does not have tape support, so if you want to save to tape, make sure you use a machine based on the original MSX system ROMs.
Password
  Some games show a password that you can enter to resume the game at the same point. You can write down the password of course, or type it into a text file, but if you're really lazy, just make a screenshot! (press PrtScr)

Many people wonder how to save in Metal Gear, in this forum post Manuel Bilderbeek explains how that is done.

### What is the openMSX harddisk support?

This is explained in the User's Manual.

### It seems the MSX hangs when running GFX9000 software; what's wrong?

The real GFX9000 has an external video connector to which you can connect a second monitor. Because of limits of the SDL library we used to create openMSX, we cannot have more than one window for openMSX, so we cannot emulate a second monitor. To see the GFX9000 in action, you need to switch the videosource setting, which equals to a so-called SCART-switch in the real world: `set videosource GFX9000`. If you started openMSX without GFX9000 extension, this videosource is not available. To get your normal MSX screen back, you should type `set videosource MSX`. If you want to toggle with a hot key between them, it might be useful to bind a key for it. E.g.: `bind F6 cycle videosource`. `cycle` is a TCL command that cycles through the options of the setting in the parameter.

Note that GFX9000 emulation does not work with the SDLGL renderer and that the emulation quality is not as good yet as the classical MSX video chips.

### Great, those new OSD LEDs! How do I get rid of them?

Open the console with F10 (Cmd+L on Mac) and type:

load_icons none

If you have `save_settings_on_exit` set to `on`, this change will be permanent, until you load another icon set. This gives you the default:

load_icons set1 bottom

### Where is the full list of commands and settings?

The full list of commands and settings that are available in the console can be found in the Console Command Reference. Check it out, it's really useful!

### Why is openMSX so slow? Why do I need a state of the art PC to run it?

Actually, openMSX is not so slow, depending on what you ask it to do. If you have minimal hardware, you should use minimal settings as well, to get decent speed. This was proven by Karloch who ran openMSX 0.6.0 on a 206MHz HP Jornada 720, see this thread on MRC. On PC's, it really helps of your graphics card is not slow, or actually, the pipe between the CPU and the graphics card. Tips on how to performance tune openMSX can be found in the Setup Guide. The developers do their best to keep the performance of openMSX as good as possible, whilst still achieving the highest level of accuracy that we can.

In general people wonder why you need 200MHz+ machines to emulate a computer based on a 3.5MHz CPU. Well, you don't only have to emulate the CPU, you also have to emulate the VDP (21MHz), the monitor (writing at least 50 times per second at least 256×192 pixels to a window), the sound chips, etc. This is relatively simple hardware, but having that run in software with cycle accuracy is quite heavy. In general, it is a lot of work for a general purpose CPU to emulate functionality that was originally made in dedicated hardware. Rebuilding an MSX in general purpose hardware (using VHDL on FPGA) is already a lot less demanding. An example of this is the One Chip MSX.

## Other

### What codec do you use to record videos and where do I get it (because I only get blackness in my videos)?

The ZMBV (Zip Motion Blocks Video) codec is used, which has been developed in the DosBox project. It enables openMSX to encode video in real time (on most systems), have a very good compression ratio and give excellent video quality, because it is a lossless codec. Razor sharp movies! Also, because the encoder is built in, it doesn't make openMSX depend on an external codec to be installed for recording video.

A developer of DosBox built a Win32 binary of the codec for our users. It is included with openMSX 0.6.2 (and up) for Win32 (the installer made a shortcut for you in the menu, so that you can install the codec), but you can also download it separately from our web site. After unzipping the file, use the .INF file to install the codec (`zmbv.dll`) by right-clicking on it and selecting Install. Note that other binaries of this codec that you can find on the internet may not work, as not all of them have support for more than 8 bits per pixel recordings.

You only need this codec installer to be able to replay the videos on a Windows system. (Although a workaround could be to upload it to Google video, where it is re-encodeded into a lossy MPEG-4 format.) Programs like Virtual Dub can use the codec and re-encode it in another way. On other operating systems, you can use any video player which supports this codec; e.g. `mplayer`. Re-encoding can be done with e.g. `mencoder`.

### Where can I find more technical info about openMSX?

Check out the doc directory of your openMSX distribution. E.g., it contains a description on how you can control openMSX from an external application, so that you can make your own GUI, launcher or debugger!

## My question is not listed here.

You can look in the following places for answers:

openMSX manuals
  We have a nice set of manuals describing most of the functionality in openMSX.
Catapult manuals
  The manuals of Catapult, the graphical interface to openMSX.
The Ultimate MSX FAQ
  Look here if you have a question that is not specific to openMSX, but about the MSX system itself.
openMSX Forum
  You can post your questions here. Registration is required before posting; we took that measure because of spammers abusing our forum.
openMSX IRC channel
  The openMSX developers and testers hang out on this channel (chat room). If the link doesn't work, get an IRC client, go to server `irc.freenode.net` (freenode network) and join channel `#openmsx`. It is possible you will not get a reaction immediately, so please ask your question, stay logged in and check from time to time if someone is active.

$Id: faq.html 6271 2007-04-07 19:34:48Z manuelbi $