openMSX 0.3.4

by mth on 17-01-2004, 01:09
Topic: Emulation
Languages:

It will be showed at the Oss fair tomorrow, but you can already download the new version of openMSX right now.

The main new feature is video scaling, which scales the low-res MSX screen to a high-res PC screen taking edges into account. No more blocky pixels! The following algorithms are available: Scale2x, 2xSaI and hq2x. For screenshots, see our home page or msx.vampier.net.

Also new is the control protocol. It's still experimental, but it will play a very important role in the future. Using this protocol, an external process can control openMSX by sending commands, just like you can do from the console. Programs like a GUI or a debugger can use this to communicate with a running openMSX session. Soon there will be an all-new openMSX Catapult which uses this protocol, making it more than just a launcher. If you come to Oss, visit us and see the new Catapult in action.

From the release notes, here is the full list of changes:

  • Several fixes in VDP emulation; more games and demos work correctly.
  • Added scalers for SDLHi. A scaler is an image filter which enlarges the MSX screen to PC resolution. The following scalers are implemented:
    - simple (original)
    - 2xSaI
    - Scale2x
    - hq2x
    Use "set scaler <name>" to select a scaler.
  • Scanlines now work in SDLHi (previously, they only worked in SDLGL).
  • Per-pixel alpha blending for console on SDLHi/SDLLo. This makes anti-aliased console fonts look better.
  • Rendering fixes in Win32:
    - Fixed slowdowns in fullscreen mode.
    - Fixed console flickering.
  • Switched to Jarek Burczynski's YM2413 core (MSX-MUSIC).
  • Added high-pass IIR filter to mixer to avoid audio clipping.
  • Added I/O device multiplexing: you can now safely insert an FM-PAC in an MSX turbo R, for example.
  • Added screenshot feature. Default key bindings changed to put this under PrtScr. F12 toggles full screen now, while Quit is not mapped anymore, by default.
  • Added Ren-Sha Turbo (autofire) emulation: "set renshaturbo <speed>".
  • Added emulation of the MSX turbo R pause key.
  • Added LED status of disk drives.
  • Fixed harddisk image creation: automatically create or enlarge hd-image when the specified file doesn't exist or is too small.
  • New console commands:
    * after: execute command after a certain time
    * alias/unalias: put long commands under a named alias
    * incr and decr: increase or decrease integer settings
    (useful when bound to a key, see "bind" command)
  • "Enum settings" are now case insensitive, i.e. you can use SDLHi, sdlhi, or SdLhI now, if you mean the SDLHi renderer.
  • Added a 'boosted' MSX2 configuration: a fantasy machine with lots of internal hardware. More of these will be added in future releases. The current configuration is still experimental; feedback is welcome.
  • Added alternative build system ("alternative.mk"), which is more flexible and easier to maintain than the old system which uses GNU's auto* tools ("configure" and friends). The alternative system will replace the auto* system in the future, so please test it on your machine and report any problems. You can use it with "make -f alternative.mk" to compile and "make -f alternative.mk install" to install.
  • Added support for Intel's ICC 8.0 compiler (only in alternative.mk).
  • Added experimental support for Mac OS X (only in alternative.mk). Thanks to Jan Lukens (Jalu) for testing/debugging this.
  • Dropped support for GCC 2.95 (please upgrade to GCC 3.x).
  • Added the ability to control openMSX from an external process (launcher, debugger) using an XML-based control protocol. This is an experimental feature; the control protocol will change incompatibly in the next release. For an example client implementation, see Contrib/openmsx-control.cc. We're working on a new openMSX Catapult which uses this protocol.
  • New features for external control clients:
    - renderer "none", which displays nothing.
    - "power" setting: enable or disable power to the MSX machine.
    - "restoredefault" command: restores a setting to the value specified in settings.xml.
    - "info" command: gets info such as lists of pluggables, renderers etc.
    - "keymatrixup"/"keymatrixdown" commands: manipulate the keyboard matrix.
  • Added a debugger interface, accessible through the "debug" command. The following devices currently support this interface: CPU, I/O ports, memory, VDP and VRAM. Also it is possible to set breakpoints.
  • Small improvements in debug device. The debug device is very useful for people developing MSX software in openMSX; read the manual for details.
  • Added "vdpcmdtrace" setting: enable or disable VDP command tracing.

Related links:
openMSX Home Page
download page

Comments (8)

By Grauw

Ascended (10818)

Grauw's picture

17-01-2004, 22:15

long list... msx.org people, you don't have to list it all ;p, you could also just refer to the openMSX page for the full list of improvements, hehehe...

Well, as long as it doesn't hurt anyone Smile.

~Grauw

By snout

Ascended (15187)

snout's picture

17-01-2004, 22:41

it kinde hurts our translators, so... ^_^

By Arjan

Paladin (787)

Arjan's picture

17-01-2004, 22:54

nice! I'll see if I can make good use of the debugging features!

By Manuel

Ascended (19674)

Manuel's picture

17-01-2004, 23:53

Arjan: to make it really usable, someone should first write a good external debugger for it....

By Grauw

Ascended (10818)

Grauw's picture

18-01-2004, 01:00

Well, the 'debug device' can be used pretty well without...

~Grauw

By anonymous

incognito ergo sum (116)

anonymous's picture

18-01-2004, 06:06

Even without an external debugger, being able to set/read VDP registers etc from the console is already a big step forward.

By Arjan

Paladin (787)

Arjan's picture

18-01-2004, 12:52

exactly Smile

By Manuel

Ascended (19674)

Manuel's picture

23-01-2004, 22:03

Well, the openMSX developers will be happy to hear what you guys have been doing with these features! Smile
Also: ideas for improving them are always welcome, of course. Smile