home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Game One!
/
GameOne!.iso
/
emuladores
/
Fmsx
/
FMSX-DOS.TXT
< prev
next >
Wrap
Text File
|
1997-09-05
|
14KB
|
282 lines
fMSX MS-DOS 1.6b2.a
MSX emulator for the MS-DOS platform.
Core emulator code copyright (C) 1994, 1995, 1996 Marat Fayzullin
This version copyright (C) 1996,1997 Marcel de Kogel
MS-DOS(tm) is a trademark of Microsoft Corp.
Hardware Requirements
=====================
A 486SX-25 (P66 recommended)
A VLB- or PCI-based VGA compatible video card
PC Speaker/Adlib/SB2.0/SBPro/SB16/GUS/SB AWE32/MPU401 and joystick
supported
Files included in FMSX-DOS.ZIP
==============================
FMSX-DOS.EXE The emulator
FMSX-DOS.TXT This file
CWSDMI.ZIP A DPMI server required by FMSX-DOS.EXE
If you don't run fMSX in a DPMI hosted environment (OS/2, MS-
Windows, Linux DOSEmu, QDPMI, ...), put the file CWSDPMI.EXE
included in this archive somewhere in your path or in the
emulator's directory
FILE_ID.DIZ A small description of this program
Some utilities for use with fMSX MS-DOS can be found on the fMSX MS-DOS
distribution site at http://www.komkon.org/~dekogel/fmsx.html
The source of the Z80 emulation code used can be found on
http://www.komkon.org/~dekogel/misc.html
More information about fMSX and MSX in general can be found on the fMSX
distibution site at http://www.freeflight.com/fms/fMSX
Other files required by fMSX MS-DOS
===================================
The following files are required for correct operation but are not
included in the archive for copyright reasons:
MSX2.ROM MSX2 BIOS and BASIC code
MSX2EXT.ROM MSX2 ExtROM containing system extensions
MSX.ROM Standard MSX BIOS and BASIC code [optional]
MSX2P.ROM MSX2+ BIOS and BASIC code [optional]
MSX2PEXT.ROM MSX2+ ExtROM containing system extensions [optional]
DISK.ROM MSX DiskROM containing BDOS and DISK BASIC [optional]
RS232.ROM RS232 BIOS and BASIC extensions [optional]
FMPAC.ROM FM-PAC ROM extensions [optional]
PAINTER.ROM PAINTER ROM extensions [optional]
CMOS.ROM This file is created automatically and contains the non-
volatile memory used in MSX2 and MSX2+. This file gets
rewritten on exit if non-volatile memory was changed
Please, do not ask where you can get these files as I shan't answer
Key Mapping
===========
GRAPH - Left alt
CODE - Right alt
SELECT - PageDown
STOP - PageUp
Special Keys
============
F6 - Rewind tape
F7 - Wind tape
F8 - Make screen shot
F9 - Pause
F10 - Quit emulator
F11 - Increase sound volume
F12 - Decrease sound volume
RIGHT CTRL+F8 - Toggle sound on/off
RIGHT CTRL+F9 - Change options
RIGHT CTRL+1...0 - Change disk offset
Win95 and Pointer keys - Space
Left Ctrl+Left Alt+Right Ctrl+Right Alt - Soft reset MSX
Left Ctrl+Left Shift+Right Ctrl+Right Shift - Hard reset MSX
Command line options
====================
Below is a list of available command line options. Many options may be
abbreviated. Use -help to get a list of currently supported abbreviations
-help Show a help page describing all available command
line options
-verbose <flags> Select debugging messages [1]
0 - Silent 1 - Startup messages
2 - V9938 ops 4 - Disk
8 - Memory 16 - Illegal Z80 ops
-ifreq <frequency> Set interrupt frequency [50Hz]
Default interrupt frequency is 50Hz for PAL
(European) systems and 60Hz for NTSC (American and
Japanese) systems. If you find your games running
a bit too slow, try using -ifreq 60
-sync <mode> Set synchronisation mode [1]
0 - Do not sync emulation
1 - Sync emulation on every VDP interrupt
-adjust <mode> Set VDP screen adjustment emulation mode [0]
0 - Do not emulate VDP screen adjustment
1 - Emulate horizontal adjustment only
2 - Emulate vertical adjustment only
3 - Fully emulate VDP screen adjustment
Please note that some lines may not appear on the
screen if VDP screen adjustment emulation is
turned on
-linedelay <value> Set screen refresh delay [3 scanlines]
-cpuspeed <percentage> Set Z80 CPU speed [100%]
-uperiod <period> Set number of interrupts per screen update [2]
-sprite <mode> Select sprite emulation mode [0]
0 - Show all sprites
1 - Limit number of sprites per row to 4/8
Though some games require -sprite 1 for correct
display, it'll cause major sprite flicker with
many others
-printer <filename> Redirect printer output to file [stdout]
-serial <filename> Redirect serial I/O to a file [stdin/stdout]
-ram <pages> Number of 16kB RAM pages [4/8/8]
Many disk based games require more than 128KB RAM.
Try using -ram 16 or -ram 32 if you're having
problems getting such games to run
-vram <pages> Number of 16kB VRAM pages [2/8/8]
-msx1/-msx2/-msx2+ Select MSX model [-msx2]
-rom <type> Select MegaROM mapper types [0,0]
(two -rom options can be present)
0 - Konami 8kB 1 - Konami 16kB
2 - Konami5 8kB 3 - Konami4 8kB
4 - ASCII 8kB 5 - ASCII 16kB
-diska <filename> Set disk image used for drive A: [DRIVEA.DSK]
Physical drives are supported, e.g. "-diska A:"
will use PC disk A:. Both single and double sided
floppies are supported
-diskb <filename> Set disk image used for drive B: [DRIVEB.DSK]
-tape <filename> Select tape image [MSX.CAS]
There's no limit to the length of a tape image
-font <filename> Set fixed font for text modes [none]
-logsnd <filename> Write soundtrack to a file [off]
-painter <mode> Load/Do not load PAINTER.ROM [0]
0 - Do not load PAINTER.ROM
1 - Load PAINTER.ROM
-video <mode> Select video mode [0]
0 - 320x200 1 - 320x240
2 - 640x480 3 - 256x212
Video modes 1 and 3 may not be compatible with
your video card and/or monitor. For video 2,
you'll need a VESA compatible video card
-chipset <id> Select SVGA chipset [255]
0 - VESA
1 - S3
255 - Detect
Support for more popular chipsets may be added in
future versions
-modeswitch <mode> Allow/Don't allow VGA mode switches [0]
0 - Don't allow VGA mode switches
1 - Allow VGA mode switches
If this option is enabled, the game will use both
video modes 2 and 3
-gamma <value> Select gamma adjustment value [1.0]
-sound <mode> Select audio mode [255]
0 - No sound
1 - Internal Speaker
2 - Adlib
3 - Sound Blaster
4 - Gravis Ultrasound
5 - SB AWE32
255 - Detect
-stereo <level> Set stereo panning level (SB AWE32 only) [0]
0 - Mono 100 - Maximum
-speakerchannels Set sound channel priority list (Internal speaker
<list> only) [3,2,1]
1-3 = PSG Melodic
4-6 = PSG Noise
7-11 = SCC
Most games use channel 3 for their sound effects
and channels 1 and 2 for their melodies. Try using
3,1,2 if the default list doesn't give the desired
sound quality
-volume <volume> Set initial volume [10]
0 - Quiet 15 - Maximum
-reverb <level> Set reverb send level (SB AWE32 only) [7]
0 - None 100 - Maximum
-chorus <level> Set chorus send level (SB AWE32 only) [0]
0 - None 100 - Maximum
-soundquality [-sq] Set sound quality (SoundBlaster only) [3]
<value> Range is from 1 (low) to 5 (very high)
-scc <mode> Set SCC emulation mode [1]
0 - SCC emulation off
1 - SCC emulation on
-fmpac <mode> Set FM-PAC emulation mode [0]
0 - FM-PAC emulation off
1 - FM-PAC emulation via OPL2 (Adlib)
2 - FM-PAC emulation via MPU401 (General MIDI)
3 - FM-PAC emulation via MPU401 & OPL2
FM-PAC can only be turned on if FMPAC.ROM is
resident in your fMSX MS-DOS directory
-joystick <mode> Select joystick mode [1]
0 - No joystick support
1 - Emulate joystick at port 1
2 - Emulate joystick at port 2
The 2nd PC joystick isn't supported (yet)
-swapbuttons <mode> Swap/Do not swap buttons [0]
0 - Do not swap buttons
1 - Swap joystick buttons
Multi disk games support
========================
As of version 1.6b1, fMSX MS-DOS supports multi disk images. To create
one, simply copy several disks to 1 image like this: "COPY /B
DISK1.DSK+DISK2.DSK MULTI.DSK", start the emulator with the resulting disk
image as disk A, and press RIGHT CTRL+1..0 when the game asks you to
insert a new diskette. Please note that this only works for double sided
disk images (720Kb ones)
Screen shots
============
Whenever you press F8 to save the screen contents to a graphics file, the
emulator will create an fMSXxxxx.BMP file, where xxxx is an ascending
number starting at 0000, which is a 256 colour windows bitmap file
Passing options to the emulator
===============================
With the amount of command line options fMSX MS-DOS supports, it's easy to
create command lines larger than the DOS limit of 126 bytes. If you
experience problems with the command line length, put all options in a
temporary file (say, "TempFile.tmp"), and start the emulator with the
command line "fMSX-DOS @TempFile.tmp". You may also give extra command
line options when using this feature, like in `fMSX-DOS @MyConfig.cfg -
ifreq 60 Pacman.rom'
Configuration files
===================
The emulator loads three configuration files (if present) before it boots
MSX: fMSX-DOS.cfg located in the emulator's directory and CARTA.cfg and
CARTB.cfg located in the cartridge dump's directory. These are plain text
files containing optional command line options. Options can be separated
with spaces, tabs or returns
Troubleshooting
===============
- If a game runs a bit too slow, try using -ifreq 60
- If the emulator runs all games much too slow, try decreasing cpuspeed
to 50%-70%. You may also want to try -sync 0. If you're using a
SoundBlaster, try decreasing the sound quality or using Adlib mode
- If you want your games to run faster, increase ifreq. If you want them
to run slower, decrease ifreq
- If you don't own an MSX with a floppy drive and you want to create an
MSX floppy disk, follow these instructions: Format a 3½ inch floppy
disk to standard DOS 720KB format and start fMSX MS-DOS with the "-
diska A:" (or "-diska B:") option with the floppy not inserted in the
drive. After MSX-BASIC has booted, insert the floppy into your floppy
drive and type "CALL FORMAT". Choose drive A and double sided, and
wait till the formatting has finished.
History
=======
1.6b2.a Winding/Rewinding tape bug fixed
1.6b2 Added -sprite, -gamma and -painter options and screenshot support.
Fixed several bugs in the VDP emulation, sped up emulation,
replaced Marat's Z80 emulation code with Z80Em 1.2
1.6b1 Fixed several interrupt related bugs, added multi-disk game
support, General MIDI support and a few miscellaneous options
1.4.1 Major improvements to the SoundBlaster support, added FM-PAC
emulation, fixed some bugs
1.3.1 Increased speed, fixed lots of bugs, added PC speaker, SB, GUS and
AWE32 support, added S3 support, added tape emulation and
configuration file support
1.2.3 Added volume control, joystick options, modeswitch option, video
mode 3, improved sound, increased speed, fixed some bugs
1.2.2 Added joystick support, Added SCC emulation and improved PSG
emulation, added VESA support, increased speed, fixed some major
bugs
1.2.1 Initial release
Credits
=======
- fMSX MS-DOS was compiled using DJ Delorie's DJGPP v2.0. DJGPP is a 32
bit C compiler for MS-DOS. Source code and binaries of DJGPP are
available at http://www.delorie.com
- The SB AWE32 routines are heavily based on `The Unofficial Sound
Blaster AWE32 Programming Guide' written by Vince Vu a.k.a. Judge
Dredd. Thanks a million for writing this!
- Martijn Zeedijk tested the GUS routines and helped me fix lots of bugs
- Some parts of the code were taken from Allegro. Allegro is a library
for DJGPP written by Shawn Hargreaves. Allegro is available at
ftp://x2ftp.oulu.fi/pub/msdos/programming/djgpp2
Please send your comments to Marcel at
m.dekogel@student.utwente.nl