xmame/xmess 0.88 is now available. Many thanks for the patches and feedback and especially to Hans de Goede for his gargantuan efforts.

You can grab a patch for 0.87 or the full sources from

        http://x.mame.net/download/0.87-0.88.diff.bz2
        http://x.mame.net/download/xmame-0.88.tar.bz2

Please pay careful attention to the highlights section of the changelog.

Changes since 0.87:

- Everything from MAME 0.88 (http://x.mame.net/changes-mame.html) and
  MESS 0.88 (http://x.mame.net/changes-mess.html).
- Highlights of this release (PLEASE READ) (video changes by Hans de
  Goede):
  * Completely reorganized the video code.  The OpenStep and Photon2
    targets are broken as a result until someone fixes them, but the
    changes are well worth it.
  * Renamed "-x11-mode (-x11)" to "-video-mode (-vidmod)". The help
    text for this option is now auto-generated based on which options
    are available.  This option is also used by non-X11 displays.
  * The xgl and xfx drivers are now built into the X11 target,
    alongside Xv and DGA.  OpenGL can be selected at runtime with
    "-video-mode (-vidmod) 2", and Glide can be selected with
    "-video-mode (-vidmod) 3".
  * Fullscreen mode is now enabled from the command line with
    "-fullscreen".
  * Reworked the hotkeys for switching between X11 video modes and
    fullscreen and windowed modes: left-alt +
    insert:    normal or DGA rendering
    home:      Xv rendering
    page up:   OpenGL rendering
    delete:    Glide rendering
    page down: toggle between windowed and fullscreen
  * Changed the hotkeys for grabbing keyboard and mouse from left-alt +
    page up/page down to left-control + page up/page down.
  * Added an ALSA mixer plugin, which can be enabled with
    "-sound-mixer-plugin (-smp) alsa".  The new "-alsa-mixer (-amixer)"
    option accepts the name of a "simple mixer control", which you can
    find by executing "amixer".  (Shyouzou Sugitani)
  * Changed JOY_I386 in the makefile to JOY_STANDARD.
  * Removed support for the X11 joystick driver, which was broken
    anyway.
  * The "-joytype (-jt)" list now only displays drivers that are
    compiled in. Note that some of the values have changed!
- Another slew of changes from Hans de Goede:
  * Added "-alwaysusemouse(-aum)" to the X11 driver.  If this is not
    set, mouse events won't be reported to the core when fullscreen
    mode is disabled and the mouse is not grabbed.
  * The code for handling a grabbed mouse now uses the window size
    instead of the image size, which fixes problems when the Xv window
    is shrunk to less than half its original size.
  * The in-game cursor no longer jumps when the mouse is grabbed.
  * BIG cleanup of the display code: Internal changes should
    theoretically allow the display drivers to be placed in shared
    object (.so) files and loaded dynamically.
  * The game_bitmap_update bounds are now honored, resulting in a nice
    speedup for artwork games.
  * The rounding of bounds is now only done for blitting to the
    offscreen image, and not for displaying on the screen.  This gets
    rid of the black borders in some games, such as mspacman with
    artwork enabled.
  * The DGA code can now display any color depth on any depth just like
    normal windowed mode.
  * The DGA 2.0 code now tries to obtain a mode with the best and
    fastest color depth; for example, a depth 15 mode for vector games,
    so that the entire bitmap can be copied straight into the
    framebuffer with no conversion.
  * Fixed a small memory leak in the DGA 1.0 code.
  * Made a small tweak to the Xv window size handling to avoid a small
    black border in Xv windowed mode.
  * Now "-geometry (-geo)" sets not only the x- and y-coordinates, but
    also the window size when the window is resizable (xgl and Xv).
    The requested size gets clipped to the largest constrained size
    with the correct aspect ratio.
  * Removed the "-fxres" option.  Glide now honors the window size
    passed with "-geometry (-geo)".
  * Really fixed artwork with vector games in the Glide targets.
  * Added a "-hwvec <int>" option:
    0: Never use Glide/OpenGL vectors.
    1: Auto (don't use when there is an artwork overlay).
    2: Always use Glide/OpenGL vectors.
  * Fixed rotation with artwork-enabled vector games in Glide targets.
  * Force a full screen update so that artwork bezels get shown when
    DGA mode is enabled via hotkey.
  * Prefer 16bpp deep modes over 15bpp deep modes when we must
    downsample from 32bpp; try to avoid 24bpp packed modes.
  * Added a "-forcemode (-fm) WxHxD" option; this is intended mostly
    for testing purposes.
  * The DGA 2.0 driver no longer uses fillsolidrectangle, which isn't
    supported on some cards, notably Radeons in 32bpp mode.  This is
    not in a speed-critical path, so memset is always used.
  * The DGA 2.0 driver can now pageflip on vsync.  This fixes tearing
    in side-scrolling games and flashing in all games.  Added an option
    "-vsync-pagelimit (-vspl) <int>" with which the user can specify
    the maximum number of frames to queue in offscreen video memory for\
    displaying on vsync; the default is 2, and 0 disables this feature.
    Note: When a game's FPS is higher than the refresh rate of the
    chosen video mode, the game will run slower or skip frames.
  * Rewrote the OpenGL vector code, which now works with artwork
    (without overlays), supports clipping, fixes a number of bugs with
    cabinet mode, and generates shorter OpenGL command lists.
  * Made the resizing of the OpenGL window not bound to the aspect when
    in cabinet mode.
  * Don't resize the window for display methods that can do hardware
    scaling when the visual area of the game changes.  This fixes
    flashing with, for example, raystorm when Xv or OpenGL is used.
  * Removed the definition of GLX_LIBNAME from the makefile; now it is
    always libglut.so.
  * Removed TDFX_DGA_WORKAROUND from the makefile; this is now always
    enabled, since it shouldn't hurt cards which don't have the bug.
  * Added a "-fxresolution (-fxres)" option for Glide: Now "-geometry
    (-geo)" can be used for hardware-scaled windows (Xv, OpenGL)
    without causing Glide to complain about an invalid resolution.
  * Whenever possible, the display is no longer destroyed and recreated
    when settings change; only the window is resized or the video mode
    changed.
  * Made XIL a separate X11 mode, which can be enabled with
    "-video-mode (-vidmod) 4" or left-alt + end.
  * Fixed a rounding error which caused vector games to get a slightly
    different resolution than requested.
  * Shuffled options somewhat so that the output of "-help" and
    "-showconfig (-sc)" is more logically ordered.
  * Disabled the use of scanlines with yarbsize.
  * Fixed a bug with double-buffered blitting which caused each line to
    be blitted twice.  This is a huge speedup for DGA.
  * Config files are now parsed after checking for "-help", "-version",
    and "-manhelp".
  * An error about being unable to open the display is no longer
    reported when "-help" or front-end options are used without X.
  * For 2x and 3x width scales, pixels are now written in memory order,
    which speeds up scaling directly to the framebuffer a lot, since
    this makes use of write combining.
  * Double buffering is no longer used for directly writing to hardware
    surfaces.
  * When the source and destination pixels are the same and the width
    scale is 1, the rotation code now writes directly to the
    destination instead of to an intermediate buffer.
  * Cleaned up the mode handling in the DGA 2.0 driver.
  * Added hotkey switching for effects: Use left-ctrl + page-up or
    page-down. Mouse and keyboard grabbing are now toggled with
    left-ctrl + del and left-ctrl + end, respectively.
  * Scanlines are now an effect (number 9) instead of being controlled
    by a separate option ("-scanlines").
  * A brief message is now displayed when effects and other options are
    changed via hotkeys.
  * Fixed a vector clipping bug in the Glide target.
  * Added hotkeys for changing options for Open GL: left-ctrl +
    left-alt + :
    insert:    toggle bilinear filtering
    home:      toggle cabview
    end:       toggle antialiasing
    page up:   increase vector beam size
    page down: decrease vector beam size
    Left-ctrl + left-alt + insert also works for toggling bilinear
    filtering in Glide.
  * Core dumps are disabled when DGA is available, since dumping core
    with DGA leads to X server freezes.
  * Fixed artwork not showing in OpenGL and Glide modes under certain
    circumstances.
  * Scanlines are now at the bottom of each line, an no longer halfway
    in certain cases.
  * Only close and reopen the sound device if necessary.
  * Align not only min_x but also max_x of the destination coordinates.
    This fixes screen corruption with DGA on certain buggy hardware.
  * Fixed a problem with DGA where garbage would show on the right side
    of the screen for certain artwork.
  * Handling failures in the video setup is now more graceful; this
    should make sure that the abort case doesn't get reached unless a
    system is running out of memory or the like.
  * Fixed 16bpp to YUY2 blitting on 64-bit architectures.
  * Fixed a bug in DGA2 which caused the border of artwork to be
    blitted each frame.
  * Slightly reworked alignment handling in video drivers which can
    have different modes/resolutions (DGA, SVGAlib, SDL).
  * Completely rewrote the SDL driver.  It's now much faster than
    before -- just as fast as the native X11 driver -- and has 100%
    support for fullscreen, effects, scaling, etc.
  * A number of games should no longer segfault on AMD x86-64 systems.
- The xml2info utility can now link against the system's libexpat, and
  no longer requires BUILD_EXPAT to be set.  Fixes Bugzilla bug 592.
- Updated the CFLAGS for IRIX MIPSpro in the makefile.  (Brandon
  Corey)
- Fixed the IRIX AL sound driver's 8-bit output and updated rate setup
  to deal with unsupported audio hardware rates.  (Brandon Corey)
- Possibly fixed a crash that occurred when a second lightgun's button
  was pressed and XINPUT_DEVICES wasn't defined in the makefile.


_______________________________________________ Xmame mailing list [EMAIL PROTECTED] http://toybox.twisted.org.uk/mailman/listinfo/xmame

Reply via email to