openmsx / openmsx Goto Github PK
View Code? Open in Web Editor NEWthe MSX emulator that aims for perfection
Home Page: http://openmsx.org
the MSX emulator that aims for perfection
Home Page: http://openmsx.org
---------------------------------------------------------------------------- openMSX - the MSX emulator that aims for perfection ---------------------------------------------------------------------------- openMSX comes with a set of HTML manuals that tell what you need to know to install, configure and run openMSX. You can find these manuals in the directory 'manual' inside the directory 'doc'. You can read them using a web browser. You can read what has changed in this and the previous releases in the release notes. You can find the release notes of this release in the file 'release-notes.txt' in the directory 'doc'. Highlights of previous releases can be found in 'release-history.txt'. All source code and other works that are part of, or distributed with openMSX are copyrighted by their respective authors. The file 'authors.txt' contains a list of people who made works for openMSX or contributed works to openMSX. Some source files contain a license notice; all other source files are licensed under the GNU Public License (GPL), of which you can find a copy in the file 'GPL.txt'. If you got a binary release of openMSX and are interested in the sources, please visit our home page: https://openmsx.org/ Happy MSX-ing! the openMSX developers ----------------------------------------------------------------------------
Reported by sd-snatcher on 2010-02-07 19:31 UTC
I'm lost. I'm do need to discover which file of the openMSX source is used by which interface (I'll list them afterwards).
http://openmsx.svn.sourceforge.net/viewvc/openmsx/openmsx/trunk/src/fdc/
Off course there are some very obvious ones, like MicrosolFDC and TurboRFDC.cc, but the comments don't help me to find the trail. I'm trying to discover the files used by the following WD2793-based disk interfaces to learn about the differences between those and the Microsol:
- Sony HBD-F1
I tried looking at the XML files, then to search on the sourcecode. But there are very little comments describing how things work so outsiders can learn about it.
I'm asking for support and also humbly asking: pleas comment the code in a way an outsider can quickly figure out how the puzzle fits in.
*Reported by anonymous on 2003-07-22 09:26 UTC
Hello,
I am using gcc version 2.95.3 and when I get to the
sound dir when compiling get this error:
g++ -DHAVE_CONFIG_H -I. -I. -I../../src
-I/boot/home/config/include -I/boot/develop/headers
-I/boot/develop/headers/gnu
-I/boot/develop/headers/posix
-I/boot/home/config/include
-I/boot/home/config/include/SDL -Wall -pipe -I./..
-I./../cassette -I./../config -I./../cpu -I./../events
-I./../file -I./../memory -I./../thread
-I/boot/home/config/include/libxml2
-I/boot/home/config/include/SDL -g3 -g -O3
-mcpu=pentiumpro -march=pentiumpro -no-fpic -DUNIX
-DPSS_STYLE=1 -fhuge-objects -c Y8950.cc
-Wp,-MD,.deps/Y8950.TPlo -o .libs/Y8950.lo
In file included from Y8950.cc:10:
Y8950.hh:245: `static' can only be specified for
objects and functions
Y8950.hh:245: confused by earlier errors, bailing out
cpp0: output pipe has been closed
make[3]: *** [Y8950.lo] Error 1
The actual line of code that it is complaining about is:
static const double PI = 3.14159265358979;
Please help.
Thanks alot!
Reported by sd-snatcher on 2015-01-09 20:59 UTC
Here's an updated version of the Acid1Test. It fixed the RAM layout problem reported here
It also adds some characteristics to catch buggy programs that fail to run in Victor HX-9x series and National FS-4x00 series. Se the built-in changelog for more details.
Reported by manuelbi on 2002-06-03 09:46 UTC
Support for 192kB VRAM. Not really useful, but nice for
a completer emulator.
Reported by sd-snatcher on 2004-11-06 18:52 UTC
Hello,
When I type "set cmdtiming broken" on openmsx-0.5.0, it
does not work as it whould.
I took a look at the code and noticed VDPCmdEngine.hh
has a little mistake. This part of the code:
inline int getTiming() {
return brokenTiming ? 0 :
vdp->getAccessTiming();
}
Should in fact be like this:
inline int getTiming() {
return brokenTiming ? 4 :
vdp->getAccessTiming();
}
Best regards and congratulations for this excellent
emulator,
FRS
Reported by sd-snatcher on 2012-07-21 20:57 UTC
If I understood correctly, from v0.8.2 openMSX now supports MIDI output on Mac OS-X.
I tried the following command on the shell, but the MIDI still doesn't produce any sound:
plug msx-midi-out Virtual
Are any other commands/configuration required?
PS: It may be a good idea to update the manual with Windows and Mac examples:
http://openmsx.sourceforge.net/manual/user.html\#midi
Test configuration:
OpenMSX-0.8.2-dev12690 on Mac OS-X 10.6.8 emulating an MSX FS-A1GT
Games tested: MoonLight Saga Promo, Illusion City
*Reported by anonymous on 2003-04-01 13:47 UTC
Hi
can someone helpme with this:
[section1@nikita bin]$ ./openmsx -setting
../.openMSX/share/settings.xml
../.openMSX/share/machines/Philips_NMS_8250/hardwareconfig.xml
mcop warning: user defined signal handler found for
SIG_PIPE, overriding
Power LED OFF
Caps LED OFF
Kana LED OFF
Pause LED OFF
Turbo LED OFF
FDD LED OFF
Couldn't load SRAM nms_8250.cmos
Power LED ON
Caps LED ON
Caps LED OFF
Kana LED ON
Kana LED OFF
openmsx: SpriteChecker.hh:228: int
SpriteChecker::getSprites(int,
SpriteChecker::SpriteInfo*&): Assertion `spriteCount[line]
!= -1' failed.
Abort
or
[section1@nikita bin]$ ./openmsx
mcop warning: user defined signal handler found for
SIG_PIPE, overriding
Power LED OFF
Caps LED OFF
Kana LED OFF
Pause LED OFF
Turbo LED OFF
FDD LED OFF
Couldn't load SRAM RTC.SAVE
Power LED ON
Caps LED ON
Caps LED OFF
openmsx: SpriteChecker.hh:228: int
SpriteChecker::getSprites(int,
SpriteChecker::SpriteInfo*&): Assertion `spriteCount[line]
!= -1' failed.
Abort
whats is wrong here???
thanks
see ya.-
Reported by eadmaster on 2011-04-08 17:33 UTC
when i run the command:
> openmsx -diska XAK1ENGgamedisk1.dsk -diskb XAK1ENGuserdisk.dsk
Fatal error: No drive named 'diskb'.
(i'm using Panasonic_FS-A1GT machine)
Reported by manuelbi on 2002-06-03 09:22 UTC
fake joystick support: some games can only be
controlled by joystick, and if you don't have a
joystick on the PC, you still want to play the game.
So, the cursor keys of the native system will be
redirected to the openMSX joystick.
Reported by sd-snatcher on 2013-07-19 01:07 UTC
On the openMSXsource there's an input device called "joypad" that isn't described on the openMSX manual: https://sourceforge.net/p/openmsx/openmsx/ci/master/tree/src/input/JoyTap.cc
What is this device? What programs support it?
Reported by manuelbi on 2002-06-03 08:48 UTC
Support for zipped/gzipped/xsa ROM or disk image files
(zlib/Alex' code...)
Reported by manuelbi on 2002-05-01 10:10 UTC
The idea is to have multiple screens on which the
output is seen (and heard) and multiple input sources
as well. The effect of this would be the possibility of
playing games like salamander or f1-spirit over the
network, and the posibility to view what someone else
is doing from somewhere far away.
Reported by eadmaster on 2011-04-07 18:13 UTC
If i try to unplug joyporta in a startup script it doesn't work.
It works only if invoked in the console.
Reported by sd-snatcher on 2009-03-30 03:10 UTC
How is the SYM file format that openMSX-debugger expects? I´m trying a SYM file generated by SjASMPlus, but it is just ignored by the debugger.
The file is attached.
Reported by emphy on 2005-12-02 00:20 UTC
Compiling video/v9990/V9990VRAM.cc...
Reported by manuelbi on 2002-06-03 09:31 UTC
To make the throttle option throttle even more, it
would be nice to be able to turn off the VDP timing
(i.e. instant execution of VDP commands). This can
break some programs though, but for some applications
(I want it to do something fast!!) it is very useful.
Reported by manuelbi on 2002-06-03 09:47 UTC
A way to install openMSX nicely and have all files on
logical locations.
Reported by manuelbi on 2002-06-03 08:45 UTC
Option to let the openMSX access files in directories
of the native OS.
Reported by manuelbi on 2002-06-03 09:25 UTC
Maarten wrote:
Maybe "motion control" is a nice feature. You can use
it to force openMSX to run in slow motion (slower than
realtime) or fast-forward style (faster than realtime).
When a game is too hard, it really helps to play at 80%
or 90% of the actual speed. I played Space Manbow a lot
when it was running too slow, but as a result I can
also play it better at realtime. Practicing at realtime
is frustrating because each time you die you are put
back a while without decent weaponry.
Implementing motion control would be easy: in the
realtime sync, the target moment in real time as adjusted.
THUS: a bit more subtle than throttle mode.
Reported by reztho on 2014-01-12 19:15 UTC
This patch enables catapult to add a prefix directory for installations after compiling the software, making easier the life of linux packagers.
Reported by manuelbi on 2002-08-08 13:23 UTC
Here's a small patch that let's romdb.xml be searched
with FileOpener in MSXRomType.cc.
Now the romdb.xml needs to be in the current directory,
otherwise openMSX won't start. This patch fixes this.
(patch MSXRomType.cc < romdb.patch)
It's not very impressive, I know, but it is nice to
test this patch tracker. For now I let the mail of this
tracker go to the devel list. If you want me to change
this, please let me know.
Reported by manuelbi on 2002-06-03 08:46 UTC
NMS 8280/Sony G900P superimpose emulation via
video-capture-card...
Reported by manuelbi on 2002-05-01 10:17 UTC
It would be nice to have an fMSX or BrMSX-like
debugger. Great for developing MSX soft in openMSX.
Reported by manuelbi on 2002-06-03 08:23 UTC
The keymapping (for keys like GRAPH, STOP, and also the
throttle mode, audio mute, quit, etc.) should be shown
in the help of the console or in the help of the
commandline.
Reported by sd-snatcher on 2005-03-13 06:10 UTC
Hi all!
The register 19h of the Y8950 currently returns 255 by
default, since it's not implemented. But the sane value
to return would be 0 (zero), since by returning 255 you
activate, at boot, the built-in music editor (aka
Synthe) of the Panasonic FS-CA1, which is not desirable
at all, since this prevents this MSX-Audio to be used
in games and BASIC. This pratically turns it unusable.
Yes, I know about holding the ESC key on boot, but I
also know this also disable the MSX-Audio BIOS, thus
also preventing the CA1 to be used in games and BASIC.
Please note that the (IMHO, crapy) music-editor can be
activated later on basic by typing "CALL SYNTHE".
The fix is easy. In Y8950.cc, line 1126, there is:
case 0x19: // I/O DATA TODO
default:
result = 255;
It should be:
case 0x19: // I/O DATA TODO
result = 0;
default:
result = 255;
After fixing this bug, there's 2 easy tests to verify
if everything is working well:
Boot the openmsx, and run any Compile DiskStation.
The music should be played by the MSX-Audio Instead of
the MSX-Music. It will sound a bit diferent from what
you are used to hear. You can also test Xevious,
Golvellius-2 and almost all Compile games. Aleste-2 and
RuneMaster-3 have bugs in the MSX-Audio support, so
dont worry about them.
Find some music written in BASIC for the MSX-Music,
like those published by MSX-Magazine. To play them on
the MSX-Audio all you need is to change the CALL MUSIC
for CALL AUDIO. The parameters are the same.
This happens because the MSX-Music BIOS is a stripped
down version of the MSX-Audio BIOS. But in the
MSX-Audio is possible to redefine any instrument and
there's also many commands for ADPCM playing/recording
in BASIC.
Best regards to the openmsx team,
FRS
Reported by mapreri on 2014-03-02 13:46 UTC
Please consider applying this patch to enable build on arm64 (aarch64) architectures.
Reported by manuelbi on 2002-06-03 08:41 UTC
ncurses renderer in native text mode for emulation of
MSX text modes. Would be very fast! Maybe copy/paste
with this renderer would be easiest to implement.
Reported by manuelbi on 2002-06-03 08:51 UTC
Emulation of MSX TurboR hardware.
Reported by sd-snatcher on 2014-06-16 22:43 UTC
Here's a contribution: the Casio KB-7, KB-10 and FA-32 extensions.
I just couldn't make the FA-32 work properly. If I remove the tag from the MX-10 and KB-7 xml files and add the FA-32 as an extension, openMSX boots fine, but insists that there's no cassette interface present whey I try to plug cassetteport cassetteplayer command.
Reported by manuelbi on 2002-05-12 21:01 UTC
At the moment one can only put a disk image in drive B
via the XML or via the commandline as follows (please
check if this is the only way):
openmsx config.xml drivea.dsk driveb.dsk
There is no way to put something in drive B from the
Console, which is very annoying if you're working with
more disk images at the same time. Please do something
about it! :-)
Reported by manuelbi on 2002-06-03 08:20 UTC
The user should be able to configure in the config file
what file extensions are associated with disk-image,
ROM- or cassette files.
Reported by eadmaster on 2014-05-29 05:44 UTC
I'm trying to enable MSX-Audio in my current machine Boosted_MSXturboR_with_IDE, so it will be used in place of MSX-Music by support games (like Xevious).
What is the easiest method to achieve this?
Reported by manuelbi on 2002-06-03 08:45 UTC
For at least a complete Music Module emulation.
Reported by manuelbi on 2002-06-03 08:50 UTC
One should be able to enable or disable devices from
the console or command line. Not like a real MSX, but
useful when testing openMSX!
Reported by celeroncillo on 2004-06-26 11:06 UTC
The IDE configuration don´t funcion the catapult show
an error:
Error Reading Rom: roms/IDE210.ROM
I have this rom in the correct directory.
Some solution?, thanks.
*Reported by anonymous on 2002-04-18 19:57 UTC
Hi,
I just tested openmsx, but I have to 2 questions:
In what package can I find libGL.so ? I only had
libGL.so1.1 from the Mesa package. After I made a symlink
tot that so file, everything seems to go fine with
compiling.
When running openmsx I only get the following:
[sandy@Sylvester cfg]# openmsx -msx1
need to parse general option
parameter: -msx1
Power LED OFF
Caps LED OFF
Kana LED OFF
Pause LED OFF
Turbo LED OFF
FDD LED OFF
Power LED ON
Caps LED ON
Caps LED OFF
Kana LED ON
Kana LED OFF
Fatal signal: Segmentation Fault (SDL Parachute Deployed)
[sandy@Sylvester cfg]#
Any idea what's wrong ? I use SDL-1.2.2-3.
Regards,
Sandy
Reported by manuelbi on 2002-06-03 08:51 UTC
Support for the V9958 and thus also MSX2+.
Reported by manuelbi on 2002-06-03 08:18 UTC
The user should be able to choose in the XML file and
the console what kind of interlacing is emulated
(either de-interlaced or the flickering method).
Reported by jwrdegoede on 2011-12-06 14:25 UTC
Hi,
I'm the package maintainer of openMSX for Fedora, Fedora is switching to libpng-1.5 for Fedora 17,
which caused me to notice that openMSX does not build with this libpng, the attached patch fixes this. With this patch openMSX should still work fine with libpng-1.2 (untested).
Regards,
Hans
Reported by shevek on 2002-05-03 16:35 UTC
openMSX gives no colours at all (only black) on my X
terminal, if a colourful application (like mozilla) is
opened as well. A private colourmap would be better in
that case.
*Reported by anonymous on 2003-01-29 02:28 UTC
UZIX does not seem to work (I did try 2.1 cvs version)
it hangs at kernel load...
Reported by manuelbi on 2002-06-03 09:28 UTC
Without a console the emulator is a lot less usable
(not possible to change disk images!).
With the recent giant improvements of the GL renderer,
the console should be implemented to make this renderer
more useful.
Reported by manuelbi on 2002-06-03 08:21 UTC
It would be cool to be able to copy/paste from the
native OS to the emulated MSX and also vice versa.
Reported by diederick76 on 2010-04-10 23:17 UTC
The Mitsubishi ML-FX1 is from 1983 and has a key pad. The hardwareconfig.xml says it is from 1984? and has no keypad.
Reported by meesokim on 2014-09-08 15:53 UTC
Default kbd_code_kana_host_key is RALT initially on 0.10.1
But Korean keyboard could not toggle RALT because of scancode is not same to K_RALT on Windows7.
K_ALT: KeyCode = 0, ScanCode = 56
To enable kana_host_key as K_RALT on Korean keyboard,
We need to change the two files (keys.cc and Keyboard.cc) as the followings for the proper working. It has been tested and works properly.
Keys.cc
KeyCode getCode(SDLKey key, SDLMod mod, Uint8 scancode, bool release) { auto result = static_cast(key); if (result == 0) { // Assume it is a japanese keyboard and check // scancode to recognize a few japanese // specific keys for which SDL does not have an // SDLKey keysym definition. switch (scancode) { case 49: result = static_cast(K_ZENKAKU_HENKAKU); break; ** case 56: result = static_cast(K_RALT); break;** case 129: result = static_cast(K_HENKAN_MODE); break; case 131: result = static_cast(K_MUHENKAN); break; case 208: result = static_cast(K_HIRAGANA_KATAKANA); break; }
keyboard.cc
bool Keyboard::processQueuedEvent(const Event& event, EmuTime::param time) { bool insertCodeKanaRelease = false; ... ** if (key == keyboardSettings->getCodeKanaHostKey().getEnum()) { processCodeKanaChange(time, down); } ** else if (key == keyboardSettings->getDeadkeyHostKey(0) && keyboardSettings->getMappingMode().getEnum() == KeyboardSettings::CHARACTER_MAPPING) { processDeadKeyEvent(0, time, down); } else if (key == keyboardSettings->getDeadkeyHostKey(1) && keyboardSettings->getMappingMode().getEnum() == KeyboardSettings::CHARACTER_MAPPING) { processDeadKeyEvent(1, time, down); } else if (key == keyboardSettings->getDeadkeyHostKey(2) && keyboardSettings->getMappingMode().getEnum() == KeyboardSettings::CHARACTER_MAPPING) { processDeadKeyEvent(2, time, down); } else if (key == Keys::K_CAPSLOCK) { processCapslockEvent(time, down); } else if (key == Keys::K_LALT) { processGraphChange(time, down); } else if (key == Keys::K_KP_ENTER) { processKeypadEnterKey(time, down); } else { insertCodeKanaRelease = processKeyEvent(time, down, keyEvent); } return insertCodeKanaRelease; }
Reported by manuelbi on 2002-06-03 08:38 UTC
The user should be able to choose the mapping from
PC-keys to MSX keys and the keys that control emulation
(audio mute, quit, console, etc.). Maybe also this is
needed to support Russion or Japanese keyboards.
Reported by manuelbi on 2002-05-01 10:12 UTC
To improve performance, a frame-skip setting should be
possible.
Reported by manuelbi on 2002-06-03 08:43 UTC
The summary says it all: moonsound emulation
Reported by sd-snatcher on 2011-03-13 03:16 UTC
This is a mix between the set1 and set2, intended for debugging.
I hope you like it.
Reported by manuelbi on 2002-05-01 10:11 UTC
Support disk ROMs which are based on port I/O.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.