PrimalHero

joined 2 years ago
 

New Getting Started guide¶

Due to popular demand, we’ve added a new Getting Started guide to the front page. The guide will teach you how to set up your own DOSBox Staging environment from scratch through easy-to-follow instructions with lots of pretty pictures. It adopts a learn-by-doing approach to ensure you’ll have fun while setting up famous classic DOS games.

Although it’s primarily intended for beginners, we guarantee even our most experienced long-time users will learn a few tricks from it!
Graphics¶
Authentic adaptive CRT emulation¶

We are happy to announce that we’ve removed all CRT shaders previously bundled with our releases.

Every single one of them.

What the @^$*%#!!!?? Have these guys gone mad??!

The reason for removing them is that they got replaced with something far better: a set of no less than 24 CRT shaders tweaked to perfection to emulate the glorious CRT monitors of the past, including authentic recreations of Hercules, CGA, monochrome CGA, composite CGA, EGA, and VGA monitors.

24 new CRT shaders sound a lot—how will someone not intimately familiar with CRT monitor technology and PC history know which is the best for a particular game? Well, the good news is you don’t need to know—DOSBox Staging will automatically pick the most appropriate shader based on the current DOS video mode and viewport resolution. High-DPI and displays from 720p to 4K resolutions are fully supported, and absolutely no manual configuration is required!

The following magic glshader options have been introduced:

crt-auto — This is the new default—an adaptive CRT shader that prioritises developer intent and how people experienced the game at the time of release. This means VGA games will be double-scanned, like on a real VGA monitor, EGA games will appear single-scanned with “fat scanlines”, and so on, regardless of the machine setting.

crt-auto-machine — This one emulates a fixed CRT monitor based on your machine setting. So CGA and EGA modes on a VGA machine will always appear double-scanned with big chunky pixels, just like on a real VGA adapter and monitor.

crt-auto-arcade — This fantasy option does not exist in real life, but it can be a lot of fun! It emulates a 15 kHz arcade or home computer monitor with thick scanlines in low-resolution modes. Perfect for playing DOS VGA ports of Amiga and Atari ST games to experience them with MT-32 or SC-55 sound from a strange parallel universe! 😎

Adaptive CRT shaders work in tandem with the new integer scaling feature to achieve the most optimal results. The default auto setting for integer_scaling auto-enables vertical integer scaling for the adaptive CRT shaders; this avoids unwanted interference patterns that can result from non-integer vertical scaling ratios.

Here are the shaders in action at 4K resolution (make sure to click on the zoomed-in images if the cursor turns into a magnifying glass to view them at 100% magnification):

Gods


320×200 VGA

If you don’t like CRT shaders, no problem—simply set glshader to sharp in your config to regain your sharp little rectangles back. Naturally, you can continue to use regular GLSL shaders like before. The deprecated CRT shaders are still available as a separate download, should you ever need them.

The adaptive shaders are largely based on one of Hyllian’s excellent CRT shaders, so big thanks to him for laying a solid foundation for this feature.

Why were the old CRT shaders removed?

One problem with the previously bundled CRT shaders was that they lacked proper documentation, so it wasn’t clear which shader was meant for what monitor resolution (some were tuned for 1080p, some for 4K, etc.) Moreover, most were designed to emulate arcade monitors or TV sets from the 80s and early 90s; these displays had very different characteristics than the much higher quality PC monitors. Because of all this, many people were rather unimpressed by them and gave up on CRT shaders altogether as a result.
Accurate VGA emulation¶

Previously, DOSBox rendered the emulated VGA output without double scanning, and only in quarter-frame chunks. These optimisation steps were necessary 20 years ago, but now we’re doing proper double scanning and accurate per-scanline rendering in all VGA, SVGA, and VESA video modes. It turns out this only causes a ~7% performance drop on modern hardware in benchmarks, which is not much for such a significant improvement.

Double scanning and per-scanline rendering were available via the special vgaonly machine type before, but that was incompatible with VESA modes and it truncated the 18-bit VGA DAC colour output to 16-bits only, causing banding in certain scenes. We no longer do that either—VGA output is now always rendered at full 18-bit precision.

We use 9×16 fonts on all emulated VGA adapters now which is how most people remember VGA text modes. You can still force 8×16 fonts on VGA by enabling the new vga_8dot_font setting.

These improvements absorb the benefits of vgaonly into the base VGA emulation, making the vgaonly machine type unnecessary, so it has been deprecated (it’s still recognised as an alias for svga_paradise for backward compatibility).

Additionally, all CGA, PCjr, and Tandy text modes are now properly single-scanned when using their respective machine types. A few CGA, PCjr, and Tandy graphics modes appeared with the incorrect aspect ratio before; these have all been fixed up.

The logging of video modes has become a lot more accurate; now we’re consistently logging the video standard the mode first appeared in (e.g., CGA modes are always logged as CGA, regardless of the emulated display adapter in use), and the logged pixel aspect ratios are now always correct.
3dfx Voodoo 1 emulation¶

Aaron Giles’ 3dfx Voodoo emulation originally written for the MAME project has finally found its way into Staging. During its journey, it has picked up a few enhancements, namely a few changes by kekko for the DOSBox integration, plus some multi-threading improvements by Bernhard Schelling (also known as psyraven).

We’ve added support for emulating a Voodoo 1 board with either a 2 MB Frame Buffer Interface (FBI) and one 2 MB Texture Mapping Unit (TMU), or a 4 MB FBI + dual 2x4 MB TMU configuration.

The default refresh rate for the Voodoo is 60 Hz, but it’s possible to force any custom refresh rate via dos_rate.

Please refer to the new [voodoo] config section to learn more.

Low vs high-level emulation

Note this is purely software-based low-level emulation; we’re emulating the 3dfx Voodoo 1 hardware accurately in software, which requires a beefy host CPU. We don’t support high-level emulation where the Glide API calls are transformed and passed through to modern 3D APIs for the actual rendering (e.g., OpenGL, Vulkan, Direct3D, etc.)
New integer scaling modes¶

A new integer_scaling setting has been introduced to constrain the horizontal or vertical scaling factor to integer values when upscaling the image to fit it into the viewport. For example, you can enable vertical integer scaling now with the following config:

[render]
integer_scaling = vertical

The correct aspect ratio will always be maintained, so in this case, the horizontal scaling factor might become fractional. With the sharp shader this is not a problem as the “interpolation band” can only be up to 1 pixel wide at the two sides of the pixels—still plenty sharp, especially on 1440p or 4K. Then with the CRT shaders, non-integer horizontal scaling matters even less; it’s practically a non-issue.

integer_scaling is set to auto by default which only enables vertical integer scaling for the adaptive CRT emulation, otherwise, it’s disabled.

This replaces the so-called “pixel-perfect mode” (openglpp and texturepp output modes) which prioritised 100% sharp pixels at the expense of aspect ratio correctness. That feature had been the source of endless confusion even among experienced users as most of the time it could only approximate the correct aspect ratio, and even that varied semi-randomly based on the current viewport size and monitor resolution. Our reasons for removing it are documented in detail here.
Aspect ratio correct image captures¶

Previously, even if you had aspect ratio correction enabled, the captured screenshots always contained the raw, non-corrected image. This has been flipped around: the new default is capturing images in the same aspect ratio that you see on your screen.

Taking raw and rendered (post-shader) screenshots continues to be an option, of course. The following three image capture formats have been introduced:

upscaled — The image is captured in the same aspect ratio you see on the screen. Upscaled captures always use sharp pixels, regardless of the shader in use.

rendered — Capture the post-rendered, post-shader image—an exact pixel-by-pixel replica of what you see on the screen.

raw — Capture the raw image; this always results in square pixels. So for 320×200 VGA or EGA content, you’ll always get a 320×200 PNG file, no matter what.

You can configure the capture formats of the default screenshot action with the following setting:

[capture]
default_image_capture_formats = upscaled raw

With this setting, two PNG files will be written in raw and upscaled formats whenever you press the Ctrl+F5 image capture hotkey (Cmd+F5 on macOS).

Keybindings for taking single screenshots in specific formats are also available.

Interpolation in upscaled mode

The image is integer or bilinear-sharp upscaled to around 1200 pixels of vertical resolution in the new upscaled capture mode. For example:

320x200 content is upscaled to 1600x1200 (5:6 integer scaling)
640x480 to 1920x1440 (3:3 integer scaling)
640x350 to 1400x1050 (3x vertical and 2.1875x horizontal scaling)

The resulting PNG files are only about 30% bigger than raw screenshots on average. This is a rather small price to pay for aspect ratio correctness.

Aspect ratio correctness, 2023 edition

Fact: most 320×200 and similar low-resolution DOS games absolutely need aspect ratio correction enabled to appear correctly. While some games benefit from forcing square pixels, these only account for about 1-2% of the total DOS gaming catalogue. That’s the reason why DOSBox Staging performs aspect ratio correction out-of-the-box.

The sad reality of the situation today is that the vast majority of 320×200 DOS games are displayed in the wrong aspect ratio with square pixels on various websites and video-sharing services. Emulators that don’t default to aspect ratio correct output and screen captures have undoubtedly contributed to this widespread problem. Aspect ratio correct screen captures by default is our attempt to play our part in remedying the situation, and hopefully reversing it with time.

Raw capture breaking changes

Previously, raw image captures width or height doubled certain DOS video modes. There wasn’t much rhyme or reason to it. Now raw captures always contain the actual emulated DOS framebuffer-level image (e.g., 320×200 modes get captured as 320×200 PNG files, regardless of any other settings).

The only exceptions are the composite CGA, PCjr, and Tandy modes. These modes are a bit special as internally they’re rendered width-doubled to have enough horizontal resolution for representing composite artifacts. Therefore, we write raw image captures of composite modes width-doubled to retain all rendered information (e.g., the 640×200 composite CGA mode will result in a 1280×200 raw image, which might be surprising at first, but it’s intended and correct behaviour).
Supercharged image and video capturing¶

The optimised zlib-ng library has been added to mitigate the video capturing performance hit incurred by our new more accurate VGA emulation approach compared to 0.80.1. In fact, zlib-ng not only makes up the difference but speeds video capturing up by another factor of three (!) versus 0.80.1! This makes a huge difference on older CPUs, but even on fast modern machines, you can now capture videos at higher resolutions without glitches.

Additionally, image capturing is now being performed in multiple background threads. This eliminates emulation micro-pauses and sound glitches even when rapidly spamming the screenshot hotkey. This was a problem even on fast machines with rendered post-shader captures at 4K resolution.
Aspect ratio and viewport enhancements¶

Stretching the image to completely fill the screen has been an often requested feature (e.g., to play text adventures without black bars on the sides). Now we’re giving you not only that but an entirely new mechanism to apply arbitrary aspect ratios, zoom into the DOS content, and even emulate the horizontal and vertical stretch controls of CRT monitors of yore! 😎

The key element of the feature is the new aspect = stretch mode which stretches the image to the extents of the viewport. For example, to make a game completely fill the screen, use the following config:

[sdl]
fullscreen = on

[render]
aspect = stretch
viewport = fit
integer_scaling = off

The second piece of the puzzle is the new relative mode added to the viewport setting (viewport_resolution has been renamed to viewport and moved to the [render] section). In relative mode, the viewport is a 4:3 aspect ratio rectangle fit into the window or screen as the starting point, which is then scaled by the specified horizontal and vertical stretch factors. The resulting viewport is allowed to extend beyond the edges of the window or the screen, so this can be used to “zoom” into the image while forcing arbitrary aspect ratios.

For example, you can aspect ratio correct lazy Hercules conversions that just reused the EGA/VGA assets and make them fill the screen better by zooming in a little. The following example illustrates this in Prince of Persia in Hercules mode:

[render]
aspect = stretch
viewport = relative 112% 173%
integer_scaling = off

You can use the Stretch Axis, Inc Stretch, and Dec Stretch hotkey actions to set the stretching in real-time (unbound by default). The current viewport setting is logged, so you can simply copy it to your config.

This is a fix for the “black vertical bars” video corruption issue seen on a few late 90s games and demos that require Pentium CPUs. Due to some fairly intricate technical details to do with 80-bit x87 FPU emulation, the issue does not manifest in Intel builds, but it does in all non-Intel builds when using the non-dynamic cores.

A non-exhaustive list of affected programs:

Games

Carmageddon (1997)
Motor Mash (1997)
Peter Sampras Tennis (1997)

Demos

Sunflower by Pulse (1997)
Multikolor by kolor (1997)
toontown by kolor (1997)

Multikolor by kolor


Black vertical bars issue

Multikolor by kolor — Black vertical bars issue

Multikolor by kolor


After the fix)

Multikolor by kolor — After the fix
New deinterlacing shader for FMV games¶

Schlocky 90s FMV titles are the guilty pleasure of every true retro-gamer (we’re no different, so zero judging!) Unfortunately, many of these games are plagued by a weird trick: the video footage is often displayed with alternating black “interlace lines”. This just doesn’t look very good on modern ultra-sharp flat screens, and upscaling such content with non-integer scaling ratios often causes very ugly interpolation artifacts.

To restore cosmic balance, we’ve introduced a pair of “deinterlacing” shaders, building upon the work of Ove Kaaven:

misc/fixvideo — This intelligently doubles scanlines that have a black line beneath them. Works well with non-integer scaling ratios.

misc/fixvideo-scanlines — Similar to the first one, but this retains a subtle scanline look to improve the “perceptual resolution” of the video footage. This one absolutely needs vertical integer scaling enabled!

Now you can enjoy your 90s FMV shlock in its full gory glory! 😎

Gods -- 320×200 VGA

With the misc/fixvideo-scanline shader
Other graphics-related changes¶

OpenGL Pixel Buffer Object (PBO) support was dropped to enhance performance and efficiency. This will result in reduced energy use, reduced thermal load, and significantly improved performance on single-board computers, Intel HD Graphics, and AMD APUs.

The keymapper now supports high DPI screens.

We’ve added support for disabling the screen via the clocking mode register. This fixes some visual glitches in Alien Carnage.

A new interpolation/catmull-rom shader has been added. This implements an upscaling method that looks better than the bilinear interpolation option you get with the none shader.

Various monochrome mode fixes & improvements affecting Hercules and monochrome CGA emulation have been made. Most notably, the manual “bright mode” hotkey to toggle between the two monochrome palette variants has been removed. Now the appropriate palette is auto-selected based on whether we’re in a text or graphics mode.

A corner case delayed display regression was fixed in VFR presentation mode. The presentation mode auto-selection criteria have also been refined to achieve optimal results with a wider range of monitor, driver, and operating system combinations.

The legacy surface output mode has been removed. The new fallback option is the texture output mode that automatically selects the best available rendering backend via SDL (a purely CPU-based non-accelerated backend is available too). The preferred and recommended output mode is still OpenGL, as it always has been.

Fixed a regression where some colours had a very subtle greenish tint on emulated VGA adapters. In practice, this was only noticeable on dark neutral grey colours.

Reloading shaders at runtime via the hotkey action now works a lot more reliably.

Nearest-neighbour output modes aren’t treated any differently anymore when determining the default window size.

sRGB GLSL pragmas now work correctly. Somewhat embarrassingly, the sharp shader was advertised to be gamma-correct more than a year ago, but sadly that was never the case—until this fix.

Introduction of the use_npot_texture GLSL pragma to request non-power-of-two-texture.

Introduction of the force_single_scan and force_no_pixel_doubling GLSL pragmas to force no line doubling and no pixel doubling in VGA modes, respectively. This might come in handy for certain shaders that need to work on the “raw” pixel data, such as upscalers.

We’ve changed the VESA BIOS branding to DOSBox Staging (because we can 😎)

Full PR list of graphics-related changes
Sound¶
IBM Music Feature Card support¶

The IBM Music Feature Card is a rare and expensive sound card from the late 1980s. It is mainly supported by early Sierra SCI games and a few others, like Silpheed. Thanks to Loris Chiocca for authoring this originally! See the [imfc] section for further details.

We highly recommend checking out this excellent blog post to learn more about the interesting history of the card.
Game Audio example
Quest for Glory: So You Want to Be a Hero Your browser does not support the element.
The Colonel’s Bequest – Intro 1 Your browser does not support the element.
The Colonel’s Bequest – Intro 2 Your browser does not support the element.
The Colonel’s Bequest – Intro 3 Your browser does not support the element.
Roland MT-32 ROM handling improvements¶

We have moved from the fiddly and error-prone filename-based Roland MT-32/CM-32L ROM lookup mechanism to checksum-based detection. It’s no longer necessary to get the ROM filenames right; you can chuck all of them into your mt32-roms folder—DOSBox Staging will do the rest! Valid ROMs are identified by their checksums (hashes) at runtime. Both interleaved (mt32pi style) and non-interleaved (MAME style) ROM files are supported.

As a result, the old “versioned” vs “unversioned” ROM differentiation doesn’t make sense anymore. The mt32 and cm32l model types now behave differently: mt32 now selects the first available MT-32 ROM, and cm32l the first available CM-32L ROM (in priority order). Similarly, the mt32_old and mt32_new aliases are not tied to specific version numbers anymore but pick the best available ROMs.

The revised ROM selection method should be backward compatible with the most common use cases—in fact, the new method should generally result in better matches, assuming the same ROM set.

Support for the rare 2.06 and 2.07 MT-32 ROMs and the CM-32LN 1.00 has also been added.

Lastly, we’ve improved the output of the MIXER /LISTMIDI command to make the display of available ROMs and the active ROM much clearer.

Output of the improved MIXER /LISTMIDI command

Output of the improved MIXER /LISTMIDI command
FluidSynth fixes¶

The Roland SC-55 and FluidSynth handle MIDI portamento messages (pitch glides between consecutive notes) very differently. As the rather unique Roland SC-55 portamento cannot be emulated with FluidSynth, music written for the SC-55 that uses it might sound weirdly out of tune on FluidSynth (e.g., the level 8 music of Descent).

All in all, it’s best not to send MIDI portamento messages to FluidSynth at all to avoid the problem completely. The resulting sound is a lot closer to the Roland SC-55’s output.

Additionally, a rather strange sound stage issue has also been fixed by upgrading to the latest FluidSynth library. The panning of some instruments was off-centre, slightly leaning to the left. The problem could be fairly subtle or quite apparent depending on the SoundFont in use, the musical score, and the instruments being played. You can hear it to varying degrees in the “buggy” audio recording below recorded using the previous 0.80.1 DOSBox Staging version.

Descent – Level 8 (SC-55) ¹ Your browser does not support the element.
Descent – Level 8 (FluidSynth buggy) ² Your browser does not support the element.
Descent – Level 8 (FluidSynth fixed) ³ Your browser does not support the element.

¹ Roland Sound Canvas VA in SC-55 mode was used for the recording
² DOSBox Staging v0.80.1 (previous version) with the GeneralUser GS SoundFont
³ Current DOSBox Staging version with the GeneralUser GS SoundFont

Improved MIXER command¶

The MIXER command has been recreated from the ground up to make it a lot more robust and less confusing to use. The main highlights are as follows:

The MIXER command no longer accepts slightly incorrect input; command parsing is now strict and we’re displaying error messages for invalid commands. These messages try to guide the users to correct their mistakes.

MIXER command handling is now “transactional”—if there is a single error in a list of multiple commands, no command is executed but an error for the first problem is raised. This leads to less confusing and more deterministic overall behaviour.

Mixer channels now retain their settings when a channel gets deleted and then re-created later (e.g., by setting sbtype none followed by sbtype sbpro1).

The CMS mixer channel is no longer renamed to GAMEBLASTER when sbtype is set to gb.

MIDI muting improvements¶

Previously, when muting the audio, all MIDI devices were sent Note Off messages, which was problematic with long-held notes in musical scores. You’d get missing notes after unmuting, and the slower the tempo, the more annoying this problem would become.

Muting has been 100% fixed both for the internal Roland MT-32 and FluidSynth MIDI synthesisers and also for external MIDI devices. Technically, we keep feeding external devices with MIDI events in the muted state, but we set all channel volumes to zero when muting, and then restore the volumes when unmuting.

Also, we’re now correctly muting the MIDI output when mute_when_inactive or pause_when_inactive is enabled.
Sanitise MIDI output & Roland RA-50 compatibility¶

The MIDI drivers of many games don’t fully conform to the MIDI standard, which makes editing the MIDI recordings of these games very error-prone and cumbersome in MIDI sequencers, often resulting in hanging or missing notes.

Now DOSBox Staging corrects the MIDI output of such games by default. This results in no audible difference; it only affects the representation of the MIDI data. Specifically, we’re emitting Note Off messages for all active notes when an All Notes Off message is encountered (this is mandated by the MIDI specification, but many games ignore that). There are other Channel Mode Messages that result in an implicit All Notes Off message; these are handled correctly as well.

This incidentally also fixes the infamous hanging notes issue with the Roland RA-50 external MIDI module (the module does not implement the All Notes Off MIDI message).

A new raw_midi_output setting has been introduced to disable this “sanitisation” of MIDI data. That might come in handy if you need to leave the raw MIDI stream unaltered (e.g., when working with music applications, or when debugging MIDI issues).
Optionally fade out hanging notes on Tandy & OPL¶

Some games like Bard’s Tale Construction Set and California Games II suffer from hanging note issues where the notes are not always properly terminated at the end of a musical piece. We’ve introduced an option to fade out the OPL or Tandy sound output after the last IO port write to these audio devices to remedy the situation. See the documentation of the opl_fadeout and tandy_fadeout settings for further details.
CD Audio support on Linux for physical CD-ROMs¶

CD Audio is now supported on Linux too via ioctls when using physical CD-ROMs. The audio is routed through the DOSBox mixer, each drive having its dedicated mixer channel (CDAUDIO_0 for the first drive, CDAUDIO_1 for the second, and so on).

With this addition, we now support CD Audio on both Windows and Linux for physical media (but on Windows, the CD audio still goes through the OS-level mixer).
Other sound-related changes¶

It’s no longer possible to create DMA conflicts by configuring multiple sound devices to use the same DMA channel. In case of a conflict, the last configured or enabled device takes precedence and the other device gets deactivated automatically. The three sound devices that use DMA are the Sound Blaster, the Tandy DAC (the Tandy PSG doesn’t need it), and the Gravis Ultrasound.

The crossfeed config setting has been revised; now it works the same way as the chorus setting (it has light, normal, and strong presets; on defaults to normal).

Fixed a regression that made the sound effects sound crackly in Duke Nukem 3D when using 44 kHz sample rate on the Gravis Ultrasound.

Fixed a Gravis Ultrasound regression where 16-bit samples sounded noisy in some games (e.g., Star Control II and Star Trek: The Next Generation – A Final Unity).

Un-deprecate the per-SoundFont volume scaling as it is useful to reign in overly loud SoundFonts.

Ignore speaker-output enable/disable commands on the Sound Blaster 16 (this is how the hardware works). This increases compatibility with some badly coded games, e.g., the digital audio in Monkey Island 2: LeChuck’s Revenge Ultimate Talkie Edition was muted before this fix.

CD-ROM seek delays are now emulated to fix the CD audio in a few games. For example, Chasm: The Rift stopped playing the music after about 20 minutes of gameplay without this fix.

Fixed a regression where the Sound Blaster 16’s maximum sample rate was erroneously clamped to 45 000 Hz (it can go up to 45 454 Hz on real hardware). This caused the sound to be slightly out of tune in programs that use the maximum sample rate.

Fixed a regression that prevented Tandy Sound from being re-configurable at runtime.

Full PR list of sound-related changes
Input¶
Virtual joystick fixes¶

Virtual joysticks can now be created without a physical joystick being plugged in. This fixes a regression introduced early in DOSBox Staging development, which now allows mapping keyboard events to joystick events. The deactivation logic of the pressed key now detects when the key is not being pressed anymore—this improves joystick support in 74 games.
Support for mapping mouse buttons to keys¶

Some games like Settlers I (also known as Serf City: Life is Feudal) require the player to push both mouse buttons at the same time to perform certain actions. This is impossible to perform on some input devices such as the Apple MacBook trackpad or the ChesterMouse. This has now been fixed by allowing mouse buttons to be mapped to the keys of the keyboard as a workaround.
VirtualBox mouse driver support¶

DOSBox Staging has had experimental support for the VMware mouse protocol for quite some time now, and in this version, we have added support for the VirtualBox mouse protocol. The primary motivation is to enable seamless mouse operation in Windows 3.x.

Just install Javis Pedro’s Windows 3.x driver and enjoy the seamless Windows 3.x experience!
Multi-monitor-aware mouse capture support¶

DOSBox Staging now has fully multi-monitor-aware mouse capture and seamless mouse behaviour. Essentially, if DOSBox is in fullscreen mode on multi-monitor systems, mouse capture and seamless mode work as if you were still in windowed mode, allowing you to move the mouse cursor freely between the monitors.

The feature is enabled by default but it’s only active on systems with multiple displays. Of course, you can always disable it by setting mouse_multi_display_aware to off in your config.
Other mouse improvements¶

The PS/2 mouse port is now emulated at the register level, and more PS/2 protocol commands are supported. This allows the emulation of fairly complex input devices like the Microsoft IntelliMouse Explorer with 5 buttons and a mouse wheel on Windows 95.
It is now possible to disable the built-in emulated mouse driver and use your favourite real DOS driver.
Fixed problems with the internal mouse driver and text modes with more than 80 columns.
Fixed mouse support in MS Word 5.5 for DOS.

macOS function key support¶

macOS users can now force the Touch Bar or media keys to operate as function keys in DOSBox Staging (this will not affect other apps or the OS). Please refer to our wiki article for the setup instructions.
Brazilian ABNT2 keyboard support¶

The mapper, keyboard, and BIOS tables have been expanded to handle the OEM102 and ABNT1 keys found on Brazilian ABNT2 keyboards. The left and right Windows keys have been assigned to their correct scan codes too.
Full PR list of input-related changes
DOS integration¶
New FOR command¶

The missing FOR command has been added, resulting in better software compatibility with batch files that contain loops. The behaviour mirrors the behaviour of the MS-DOS 6.22 FOR command.
Various DOS command additions and improvements¶

The missing MOVE, TREE, SETVER, and VOL commands have been added.
The CLS command now does not reset the screen mode to 80×25.
The verbosity of the DELETE command has been improved.
The wildcard handling of the IMGMOUNT command has been improved.
The LS command now accepts multiple paths or patterns and ignores hidden or system files unless the /A switch is specified.
The MEM command now supports XMS memory capacities over 64 MB and has a critical bug fixed where it consumed all upper memory blocks after invocation.
The MORE command is now extended with features from modern Windows.

Persistent command history¶

The emulated DOS shell now retains a 500-line history of your previous commands. The history is remembered across multiple sessions, just like you would expect it from a Linux shell.

If you’d like to disable the shell history, set the new shell_history_file setting to an empty value.
Support for all DOS file & directory attributes¶

All DOS file and directory attributes are now supported.

On Windows, the attributes are stored as standard filesystem attributes.

On macOS and Linux, they’re stored as a mixture of standard attributes (for the read-only flag) and extended xattr attributes. The extended attributes follow the Samba 3 format which is compatible with WINE and DOSEmu2.
Autoexec improvements¶

Several long-standing autoexec issues have been fixed:

The [autoexec] section in config files is now fully UTF-8 aware and its contents are now converted to the internally set code page on the fly.
The size limitations of the [autoexec] section have been lifted.
The generated Z:\AUTOEXEC.BAT is now prettier due to the added extra comments.
The CONFIG -wc command does not eat away empty lines from the [autoexec] section anymore.

Optional shell config shortcuts¶

We’ve supported config shortcuts for a long time now (e.g., instead of CONFIG -set sbtype sb16 you can simply use the sbtype sb16 shortcut). The feature is enabled by default, but this can cause some confusion when a shortcut conflicts with a DOS executable having the same name.

Now config shortcuts can be disabled by setting shell_config_shortcuts to off.
Full PR list of DOS integration related changes
General¶
Revised CPU cycles handling¶

Some legacy CPU cycles optimisations aimed at improving multi-tasking performance on single-core computers have finally been removed. These features probably made sense 20 years ago, but they no longer serve any useful purpose in a world where minimum quad-cores are the norm:

Previously, the cycles = max 100% setting resulted in only 90% CPU core utilisation and the max 105% “magic value” expanded this to about 95%. Now 100% means 100%, and the weird 105% special case has been removed. As a beneficial side effect, cycles = max 100% can now make the CPU emulation thread go into oversubscription at times (over 100% capacity), resulting in a faster and more aggressive boost c

2
MAME 0.263 (www.mamedev.org)
 

Are you all ready for MAME 0.263? This release has some big changes that are going to affect everyone: several default UI control assignments have changed, including pause and save/load state. The changes will hopefully make life easier for people emulating computers. After updating, please check the User Interface input assignments and make any changes necessary for your setup.

We’ve fixed some long-standing bugs this month. Issues affecting large hard disk images (tens of gigabytes) have been fixed, and chdman will now report more invalid combinations of options rather than just producing invalid output files. Crashes or hangs when emulating systems that use discrete sound circuitry simulation on multi-core ARM systems should be fixed, as well as occasional bad sound output from the discrete circuitry simulation.

Thanks to recent work reverse-engineering the K052591 chip, this release features improved protection simulation for Hexion, S.P.Y. and Thunder Cross. Newly supported systems include a few computers from the former Yugoslavia, two more Tiger LCD games, and several more chess computers. The ROMs for the unreleased Deluxe Color Computer have been dumped recently, allowing emulation to be completed, and there’s a big update for the Apple II software lists this month.

As always, the whatsnew.txt file tells you about everything that’s changed in this release, and you can get the source code and 64-bit Windows binary packages from the download page.
MAME Testers bugs fixed

08814: [Sound] (namco/namcos2.cpp) dsaber: Dragon Saber music plays at inconsistent speed. (hap)
08818: [Crash/Freeze] (misc/magicard.cpp) magicrde: Watchpoints on PIC16F54 special function registers can cause crashes. (AJR)
08822: [Crash/Freeze] (igs/pgm.cpp) drgw3, drgw3100, drgw3105, dwex, dwex101cn: Hangs before games start. (Ivan Vangelista)
08824: [Core] (funworld/funworld.cpp) pool10j, pool10k: Placeholder PAL dumps have incorrect sizes. (hap)
08825: [DIP/Input] (msx/sfkick.cpp) sfkick, sfkicka, spinkick: Analog and digital paddle controls have opposite directions. (hap)
08826: [Crash/Freeze] (taito/rbisland.cpp) jumping and clones: Emulator crashes when starting system. (hap)

New working systems

CXG Systems / Newcrest Technology Sphinx Chess Professor [hap, Berger]
Double Dragon II: The Revenge (Tiger) [algestam, Sean Riddle]
Institut Ivo Lola Ribar Lola 8 [Stevan Parojcic]
Iskra HR-84 [Robert Kovač, Andrej Gerbec, Miodrag Milanović]
Mighty Max (Tiger) [hap, Sean Riddle]
Novag Mentor 16 [hap, Berger]
Open 5 Cards [Roberto Fresca, Aussiekanga]
Primo (Novag) [hap, Berger]
Saitek Kasparov GK 2000 [hap, Sean Riddle]
Saitek Kasparov Prisma [hap, Sean Riddle]
SciSys Kasparov Turbo S-24K [hap, Berger]
Yamaha MU10 [Matt, O. Galibert]

New working clones

Guardians / Denjin Makai II (bootleg) [ShootTheCore]
Hachoo! (Japan) [xtrasmiley]
Heath Company Heathkit H89 with SigmaSoft IGC [Mark Garlanger]
Institut Ivo Lola Ribar Lola 8 NK [Marko Solajic]
Lord of Gun (World) [Brian Troha, The Dumping Union]
Magic Train (Ver. 1.4) [Roberto Fresca]
Panda Train (Ver. 1.3) [Roberto Fresca, AJR]
Phoenix (bootleg) [Recreativas.org]
Psion Series 3a (2M) (US) [techfury]
Santaka-002 [ZX-PK.ru]
Side by Side (Ver 3.0 OK) [Sean Sutton, Smitdogg, hammy, Brian Troha, The Dumping Union]
Sports Authority Challenge (Rev 3) [Brian Troha, The Dumping Union]
Vuelo Espacial (Spanish bootleg of UniWar S) [Jorge Silva, Arnaldo Lopes]
Wild Fang (year hack?) [Tailsnic Retroworks]
Zoku Otenamihaiken (V2.05J 2003/05/12 18:00) [twistedsymphony, rtw]

Systems promoted to working

Joker's Wild (B52 system, BP55114-V1104, Ver.054NMV) [Roberto Fresca]
Jozsef and Endre Lukacs Homelab 2 / Aircomp 16 [linuxforum5, R. Belmont]
Wyse Technology WY-100 [AJR]

Clones promoted to working

Joker's Wild (B52 system, BP55114-V1104, Ver.054NMV, Harrah's GFX) [Roberto Fresca]
Joker's Wild (B52 system, WP02001-054, Ver.031WM) [Roberto Fresca]
Tandy Radio Shack Deluxe Color Computer [Brian Wiesler, Tim Lindner]

New systems marked not working

Bingo Planet (Rev C) (M1 Satellite board) [hammy]
Black jack (Olympic Games, v5.04, upgrade kit for Wild Card) [Roberto Fresca, Matt B]
Breakaway Music Systems Vocalizer 1000 [Loscha, Devin Acker]
Dream Rail Lovely [Sergio Galiano]
George Scolaro pc532 [Patrick Mackinlay]
Iskra Delta Partner [Jernej Jakob]
Konami Nekketsu Powerpro Champ (Japan) [TeamEurope, David Haywood]
Konami Soukai Golf Champ (Japan) [TeamEurope, David Haywood]
Konami Zettai Zetsumei Dangerous Jiisan - Mini Game de Taiketsu ja! [TeamEurope, David Haywood]
Konami Zettai Zetsumei Dangerous Jiisan Party ja! Zen-in Shuugou!! [TeamEurope, David Haywood]
Mattel Pixter Multi-Media [QUFB]
Micro-Term 440 [Bitsavers]
Multi-Action 6710-21 [Brian Troha, The Dumping Union]
Multi-Action 8350-00-R1 [Brian Troha, The Dumping Union]
Operation Tiger Second Mission (Ver 2.02 J) [lukemorse1]
Packy's Treasure Slot (Japan, main ver. 1.3, video ver. 1.1) [Phil Bennett]
Quasimidi Musikelektronik GmbH Quasimidi Sirius [DBWBP]
Quasimidi Musikelektronik GmbH Rave-O-Lution 309 [DBWBP]
Renda Fighter (Japan, main ver. 2.02, video ver. 2.03) [hammy, Phil Bennett]
Space Game (Bingo 6+1) [BonelessChicken, Recreativas.org]
Wild Card (Olympic Games, v2.0) [Roberto Fresca, Matt B]
Yamaha MU15 [Matt, O. Galibert]
Yamaha MU128 [Matt, O. Galibert]

New clones marked not working

Acorn Computers Acorn A3010 (German) [Nigel Barnes]
Martial Beat (G*B47 VER. JAB) [Windy Fairy]
Scud Race / Sega Super GT - Deluxe (Export) [Paul Prosser]
Sugorotic JAPAN (STJ1 Ver.A) [buffi]

New working software list items

apple2_flop_clcracked:
Ace Detective (revision 3) (4am crack), ACT Preparation Series (version 1984) (4am crack), Adventures in Problem Solving: Alice's Adventure in Numberland (4am crack), Adventures in Problem Solving: A Trip to London (4am crack), Adventures in Problem Solving: Marathon (4am crack), Adventures in Problem Solving: The Treasure of Forest Isle (4am crack), Alfred's Music Achievement Series: Level I (4am crack), Algebra Volume 3 (revision 4, 1984) (Britannica) (4am crack), Aliencounter and Face Flash (revision 2) (4am crack), Alligator Mix (version 1985 revision 2) (4am crack), Alphabet Fun: Big and Little Letters (4am crack), Alphabet Zoo (revision 2) (4am crack), Alphabet Zoo (revision 3) (4am crack), Animal Photo Fun (4am crack), Animal Stories IV (4am crack), Architectural Review & Testmaker (version 2.0) (4am crack), The Art of Communication 2 (4am crack), The Banking Simulation (4am crack), The Banking Tutorial (version 5.2) (4am crack), The Bare Facts on Composers Volume 2 (4am crack), The Bare Facts on Composers Volume 3 (4am crack), The Bare Facts on Intervals and Chords (4am crack), The Bare Facts on Music History (4am crack), The Bare Facts on Notes, Rhythm, and Terms (4am crack), Basic Number Facts: Practice (4am crack), Battling Bugs and Concentraction (revision 2) (4am crack), Beyond Pinball (version 1.1) (4am crack), Billboard (verion 0.0) (4am crack), Black Belt (revision 2) (4am crack), Broadsides (revision 1) (4am crack), Broadsides (revision 2) (4am crack), Broadsides (revision 3) (4am crack), Broadsides (revision 4) (4am crack), CAAT Skill Tester: Decimals (4am crack), CAAT Skill Tester: Fractions: Addition and Subtraction (4am crack), CAAT Skill Tester: Fractions: Multiplication and Division (4am crack), CAAT Skill Tester: Whole Numbers (4am crack), Career Scan IV (version 09.15.83N) (4am crack), Cash Versus Credit Buying (4am crack), Cause and Effect (version 02.15.85) (4am crack), Change Maker (4am crack), Child Development 2: Theories of Child Development (4am crack), Child Development 5: Infancy and Toddlerhood (4am crack), A Christmas Adventure (version 2.0) (4am crack), Classification of Objects (4am crack), Classmate (version 2.0) (4am crack), Clowning Around (revision 2) (4am crack), Collamore Castle: Strategies for Problem Solving Level 1 (4am crack), Comparison Kitchen (4am crack), Computer Biology Lab: Clam Dissection (4am crack), Computer Biology Lab: Crayfish Dissection (4am crack), Computer Biology Lab: Earthworm Dissection (4am crack), Computer Biology Lab: Frog Dissection (4am crack), Computer Biology Lab: Starfish Dissection (4am crack), Computers in Government (A-122 version 1.0) (4am crack), Continents and Countries (4am crack), Copy II Plus (version 1.0) (4am crack), Cotton Tales (version 1990) (4am crack), The Counting Bee (version 1.1, 26-FEB-82) (4am crack), Cribbage/Solitaire (4am crack), Crosscountry Canada (revsion 1, 1986) (4am crack), Crosscountry Canada (version 4.0) (4am crack), Crosscountry USA (version 4.0) (4am crack), Crosscountry USA (version 5.1) (4am crack), Crystal Caverns (revision 0) (4am crack), The Cube (4am crack), Cyborg (version 1) (4am crack), Dancing Dinos (4am crack), Dataquest: The Presidents (A-140 version 1.1) (4am crack), Dinosaur Dig (4am crack), Dinosaurs (release 1) (4am crack), Dragon Mix (version 1985) (4am crack), The Dream Machine (4am crack), E-Z Learner (4am crack), Early Discoveries: Size and Logic (version 07.31.85) (4am crack), Early Games: Matchmaker (revision 2) (4am crack), Effective Study Skills (4am crack), Electric Circuits (revision 1) (4am crack), Electric Circuits (revision 2) (4am crack), The Evelyn Wood Dynamic Reader (4am crack), Excel-A-Read (4am crack), Farmfiler (version 03.11.83) (4am crack), Fish Scales (version 4.0) (4am crack), Following Written Directions (4am crack), Fortress (revision 2) (4am crack), Fraction Fever (revision 1) (4am crack), Fractions (version 3.0 04-10-82) (4am crack), Fun with Directions (version 1984) (4am crack), The Gem of Zephyrr (version 1.1.0) (4am crack), Genesis: The Adventure Game Creator (4am crack), Genetic Engineering (4am crack), German Vocabulary Builder (4am crack), Glidepath (version 1.0) (4am crack), Golf Classic and Compubar (4am crack), Go to the Head of the Class (Media Materials) (4am crack), Graphing (A-817 version 1.0) (4am crack), Graphing Equations (version 1.3) (4am crack), Guitar Wizard (version 11611) (4am crack), Gulp!! and Arrow Graphics (4am crack), Human Body Exploration (4am crack), Improving Your Memory (4am crack), Industrialism in America (4am crack), Inferential Anne: Level II (4am crack), J-Bird (4am crack), Joe Theismann's Pro Football (4am crack), Key Signatures (4am crack), Kids at Work (4am crack), Kitchen Planner (4am crack), Les Sports (4am crack), Let's Explore Word Processing (Media Materials) (4am crack), Library Adventure: Blue Level (4am crack), Library Magic (revision 0) (4am crack), Magic Slate II: 20-Column Apple //e Version (version 1.0) (4am crack), Magic Slate II: 40-Column Apple //e Version (version 1.0) (4am crack), MasterType (version 1.7) (4am crack), Mathematics Action Games: Picture Parts: Basic Operations (4am crack), Mathematics Courseware Series: Adventures in Addition and Subtraction 3 (4am crack), Mathematics Courseware Series: Bicycling Through Decimals 3 (4am crack), Mathematics Courseware Series: Decimal Deli 2 (4am crack), Mathematics Courseware Series: Division 2 (4am crack), Mathematics Courseware Series: Division 3: The Prairie (4am crack), Mathematics Courseware Series: Electrifying Fractions 2 (4am crack), Mathematics Courseware Series: Fantastic Fractions 1 (4am crack), Mathematics Courseware Series: Fractions 3 (4am crack), Mathematics Courseware Series: Fractions 5: The River (4am crack), Mathematics Courseware Series: Mighty Multiplication 2 (4am crack), Mathematics Courseware Series: Percent 1: Get The Percent (4am crack), Mathematics Courseware Series: Percent 2 (4am crack), Medalist Series: Black Americans (version 04.13.84) (4am crack), Medalist Series: Presidents (version 11.23.84) (4am crack), Medalist Series: Women in History (version 11.21.83) (4am crack), Microtyping II (4am crack), Mind Puzzles (H-102 version 1.0-1984.05.25) (4am crack), Miner 2049er (revision 1) (4am crack), Modeling (A-823 version 1.0) (4am crack), Money! Money! (version 02.05.87) (4am crack), Monkey Business (revision 2) (4am crack), Monsters and Make-Believe (version 1.1) (4am crack), Music Tutor (Passport Designs) (4am crack), Mystery Mazes Case 3: Castle Clues (4am crack), Painter Power (4am crack), People of the Old Testament (version 03.09.90) (4am crack), Perception (version 3.1) (4am crack), Personality Profile 2 (4am crack), Physical or Chemical (4am crack), Picture Perfect (version 1987) (4am crack), Place Value: Ones, Tens, and Hundreds (4am crack), Plato's Cave (4am crack), Please Help Me: Spelling (4am crack), Polls and Politics (A-820 version 1.0) (4am crack), Prescriptive Math Drill (version 04.13.84) (4am crack), Primary Reading: Following Written Directions (4am crack), Primary WordMath (4am crack), Prime Ducks (4am crack), Problem-Solving Strategies (H-103 version 1.0-1984.09.25) (4am crack), Pro Golf Challenge (4am crack), Quizagon (revision 0) (4am crack), Rainbow Painter (4am crack), Rascal Takes A Ride Home (4am crack), Rascal Takes A Ride to School (4am crack), Reading for Understanding: Native Americans (4am crack), Reading Workshop: Grade 6 (Mindscape) (4am crack), Read & Rhyme (4am crack), Return to Reading: The Black Stallion (4am crack), Return to Reading: To Kill A Mockingbird (4am crack), Rhythm Write (4am crack), Run Your Own Train (revision 2) (4am crack), Scientific Simulations (version 1.0) (4am crack), Sesame Street Crayon: Letters For You (version 1987-10-31) (4am crack), Shadow Hawk One (revision 1) (4am crack), Shadow Hawk One (revision 2) (4am crack), Shadows and Light (4am crack), Shutterbug's Pictures (4am crack), Sliding Block (revision 2) (Merit) (4am crack), Social Studies: Africa (4am crack), Sound and Vibrations (4am crack), Space Journey: Planets and Stars (4am crack), Spellakazam (revision 1) (4am crack), Spelling and Reading Primer (version 2.0.1) (4am crack), Spelling Bee (version 1.1) (4am crack), The Spy's Adventures in Europe (version 1986-09-30) (4am crack), Start Solving: Honeybear (4am crack), Start Solving: Sam's Sticker Store (4am crack), Start Solving: Tina's TV Show (4am crack), Stickers (4am crack), Stickybear Opposites (800K 3.5") (4am crack), Story Maker (revision 2, 64K) (4am crack), The Story of Creation (4am crack), Strategies for Test Taking (4am crack), Strategies in Problem Solving: Dinosaurs and Squids (4am crack), Strategies in Problem Solving: Spinners and Slugs (4am crack), Super-Text II Form Letter Module (version 1984) (4am crack), Tales From The Arabian Nights (4am crack), Teddy Takes a Rain Walk (4am crack), Test Construction and Review (4am crack), Thinkers: Mathematics Unlimited Problem Solving (4am crack), Total Learning System (4am crack), Troll Sports Math: Math Word Problems for Grades 4 to 6 (4am crack), Type Hype (revision 2) (4am crack), Type Right on Your Apple IIe (4am crack), Under Fire (4am crack), U.S. Constitution Tutor (4am crack), The U.S. Constitution: Nationalism and Federalism (version 1984) (4am crack), U.S. History: The Growth of a Nation (4am crack), U.S. History: The Young Republic (4am crack), Walt Disney Card & Party Shop (4am crack), Water Pollution (4am crack), Werewolf!! (4am crack), What's the Problem: Ace Reporter (4am crack), What's the Problem: Chester and the Cheese (4am crack), What's the Problem: Where in the World? (4am crack), Wings Out of Shadow (4am crack), Wizard of Words (version 1.0) (4am crack), Word Scrambler and Spelling Tutor (4am crack), Wordwise (4am crack), WordWorx (4am crack), Zoo Master (revision 2) (4am crack) [4am]
Arizona Mix (A-335 version 1.0) (4am and san inc crack), Car Builder (revision 4) (4am and san inc crack), Dog Sled Ambassadors (A-339 version 1.0) (4am and san inc crack), The General Manager (version 2.0S) (4am and san inc crack), The General Manager (version 2.0Y) (4am and san inc crack), Hard Hat Mack (4am and san inc crack), Magic Spells (version 1.1) (4am and san inc crack), Math Word Problems (4am and san inc crack), Music Construction Set (revision 2) (4am and san inc crack), Spare Change (4am and san inc crack), Square Pairs (version 1.0) (4am and san inc crack), Stickybear Opposites (revision 2) (4am and san inc crack), Stickybear Printer (version 1) (4am and san inc crack), Stickybear Reading (revision 2) (4am and san inc crack), Stickybear Town Builder (revision 2) (4am and san inc crack), Stickybear Typing (revision 3) (4am and san inc crack), Stickybear Word Problems (revision 2) (4am and san inc crack), Zenith (4am and san inc crack) [4am, san inc]
apple2_flop_orig: Copy II Plus (version 1.0), Copy II Plus (version 2.2), Galactic Gladiators [4am]
bbc_rom: Arcadians (unofficial RFS), Arkanoid (unofficial ROM), Boxford TCL 125/240 2.02, Boxford TCL 125/240 2.04, Boxford TCL 125/240 6.00, Database 1.21, Economatics Control ROM 1.04, Enigma Plus 2.4, GameROM: Rocket Raid 1.10, HyperDriver 1.30, IEEE 1.92, IEEE 1.98, Kix (unofficial ROM), LVL Echo 1.01, Micronet 2000 1.1, Music 1.2, PMS Multi-Font NTQ 4.0, Pengo (unofficial ROM), Ramrod MS4.00c (alt), Robotron (unofficial ROM), Rocket Raid (unofficial ROM), Snapper v1 (unofficial ROM), Snapper v2 (unofficial ROM), Speech Extension 0.1, StarGraph 3.01, Unicore 2.2, User Port Transfer 1.01, Wordwise Companion, Zalaga (unofficial RFS) [Nigel Barnes]
ekara_japan:
Kids' Song Best 40 (Japan) (EC0084-KSB) [TeamEurope, David Haywood]
Enkamichi Volume 8 (Japan) (EC0058-ENK) [TeamEurope]
ekara_japan_d: Dream Cartridge: Best Artist Vol.7 (Japan) (DC0008-BAT), Dream Cartridge: Best Hit Vol.10 (Japan) (DC0006-BHT) [TeamEurope]
ekara_japan_en: Enka-shū Dai Ichi-hen (Japan) (EN-1), Enka-shū Dai Ni-hen (Japan) (EN-2) [TeamEurope, David Haywood]
ekara_japan_kd: Kids' Song 20 (Japan) (KD-1) [TeamEurope, David Haywood]
ekara_japan_m: Artist Mini Volume 9 (Yamaguchi Momoe) (Japan) (MC0016-ATM), J-Pop Mix Mini Volume 1 (Japan) (MC0009-JPM) [TeamEurope, David Haywood]
ekara_japan_packin: Saiten Cartridge: Morning Musume Special (Japan) (BX01-MOR) [TeamEurope, David Haywood]
ekara_japan_s: Saiten Cartridge: Nesshō Vol. 5 (Japan) (SC0016-SAI), Saiten Cartridge: PostPet (Japan) (SC0011-PST) [TeamEurope, David Haywood]
ekara_japan_sp: Super Cartridge: TV Pop Junior (Japan) (SP-06) [TeamEurope]
h88_cass: BUG-8 02.05.00, BUG-8 02.06.00, Extended Benton Harbor Basic 10.05.00, Extended Benton Harbor Basic 10.05.01, Extended Benton Harbor Basic 10.06.00, Heath H8 Assembler 04.05.00, Heath H8 Assembler 04.06.00, Heath/Wintek H8 Editor 03.05.00, Heath/Wintek H8 Editor 03.06.00 [Society of Eight-Bit Heathkit Computerists]
msx1_cart:
Hotbit HB-8000 Demo (Brazil), Ligue-se ao Expert (Brazil), Mood Land, Princess Quest [file-hunter]
Magical Tower Adventure [MSXdev]
msx2_cart:
DSKPRO (v11.6) [file-hunter]
MEGA-SCSI (128KB), MEGA-SCSI (256KB), MEGA-SCSI (512KB), MEGA-SCSI (1024KB) [file-hunter, Wilbert Pol]
psion_ssd: 3Fax Software [techfury]
sega_beena_cart:
Pururun! Shizuku-chan: Asonde Tanoshiku Nouryoku Up [TeamEurope]
Taiko no Tatsujin: Ongaku Lesson [TeamEurope, QUFB]
spectrum_cass:
Impossabubble [Dave Clarke]
Alien Girl (demo, English), Alien Girl (demo, Spanish) [Javier Fopiani]
Cocoa and the Time Machine (48K, English), Cocoa and the Time Machine (48K, Portuguese), Cocoa and the Time Machine (48K, Spanish), Cocoa and the Time Machine (128K, English), Cocoa and the Time Machine (128K, Spanish), Hakkenkast - The Demo Dungeon (48K), Hakkenkast - The Demo Dungeon (128K), The Swarm is Coming... (48K, update 2), The Swarm is Coming... (128K, update 2), Twenty Four Hour Parsley People (English), Twenty Four Hour Parsley People (Portuguese), Twenty Four Hour Parsley People (Spanish) [Minilop Retroware]
Adventure 4-Pack (alt), Desdobramentos de Totobola, La Diosa de Cozumel (Matra edition), Máquina do Poker, Melotron, Poker Aberto, Stripping Penelope, Throne of Fire (PIM) [Planeta Sinclair]
Ad Lunam (English), Ad Lunam (Italian), Ad Lunam (Spanish), Ad Lunam Plus (English), Ad Lunam Plus (Italian), Ad Lunam Plus (Spanish), Demon's Dream, F-19 Stealth Fighter (set 4, Erbe), Insert Coins II, Inspector Gadget and the Circus of Fear, Micro Olympics / Olympic Spectacular (Profisoft), Micro Primer - Software Pack 1, Micro Primer - Software Pack 2, Microfair Madness (Zenobi, alt), Mysterious Dimensions (48K), NATO Assault (128K version), Project Future (bug fix), Pud Pud (Zafi Chip), Puffy's Saga (MCM), Red Arrows (System 4), Rival Gang, Rival Gang EXT (demo), Road Toad (bug fix), Roust (demo), Super 48K Box (rev. 2, TAP tape image), Terrapins (demo), Throne of Fire (IBSA), Tiro al Blanco (Investronica), World Games (Erbe), Wunderwaffe, ZX Larry [Spectrum Computing]
Apulija-13 (v2.1, English), Apulija-13 (v2.1, English, extra), Apulija-13 (v2.1, French), Apulija-13 (v2.1, German), Apulija-13 (v2.1, Italian), Apulija-13 (v2.1, Portuguese), Apulija-13 (v2.1, Spanish) [Zankle Soft]

New software list items marked not working

apple2_flop_clcracked: Mathematics Courseware Series: Addition and Subtraction 4: City Sights (4am crack), Mathematics Courseware Series: The Mysteries of Multiplication 3 (4am crack) [4am]
bbc_rom: Micron Plus EPROM Programmer 1.20, SPX 2.01 [Nigel Barnes]
msx2_cart: Video Digitizer (Japan) [file-hunter]
pixter_cart: Alphabet Forest, Clifford - The Big Red Dog, Cyberchase, Mazes, Puzzles & Games, SpongeBob SquarePants - Math Adventure [QUFB]

Translations added or modified

Russian [Arbars, holub, Vas Crabb]

Merged pull requests

11801: heathkit/h89.cpp: Added Heathkit H89 with SigmaSoft Interactive Graphics Controller as a clone system. [Mark Garlanger]
11840: bus/qbus: Added DVK MX floppy disk drive controller card. [shattered]
11964: cpu/t11: Fixed MTPS/MFPS data width and improved emulation of differences between variants. [shattered]
11971: apple2_flop_clcracked.xml, apple2_flop_orig.xml: Added latest floppy disk dumps and cracks. [4am, san inc, A-Noid]
11972: pinball/recel.cpp: Added ‘Space Game (Bingo 6+1)’, and corrected comments. [BonelessChicken, Recreativas.org, ClawGrip]
11975: rm/rmnimbus.cpp: Changed default mouse mode to high-level simulation. [Robin Sergeant]
11981: machine/sa1110.cpp: Use address maps for on-board peripherals; hp/jornada.cpp: Hooked up entire keyboard. [Ryan Holtz]
11984: phoenix/phoenix.cpp: Added a bootleg of Phoenix. [Recreativas.org, ClawGrip]
11985: emu/memarray.cpp: Fixed little Endian byte reads and writes for 64-bit areas. [amameuser]
11986: msx/msx.cpp,msx/msx2.cpp: Enabled floppy disk drive sounds. [Wilbert Pol]
11988: rm/rm380z.cpp: Fixed video RAM addressing, allowing characters to be read back from the screen. [Robin Sergeant]
11989: jaleco/megasys1.cpp: Added Japanese version of Hachoo! as a clone; ekara_japan*.xml: Added four cartridges. [David Haywood]
11990: apple/apple2e.cpp: Removed a duplicate variable assignment in Ctrl-Reset handler code. [xotmatrix]
11991: sega/segaai.cpp: Improved µPD7759 ROM bank selection (improves speech). [Wilbert Pol]
11992: konami/hexion.cpp, konami/spy.cpp, konami/thunderx.cpp: Made K052591 simulation better reflect real programs. [furrtek]
11994: handheld/hh_sm510.cpp: Added Tiger Double Dragon II: The Revenge. [algestam, Sean Riddle]
11995: cpu/t11: Added basic support for the K1801VM1. [shattered]
11996: apple/apple2e.cpp: Update language card memory map when language card is enabled or disabled. [xotmatrix]
11999: nec/pce.cpp, nec/pce_cd.cpp: Cleaned up code. [cam900]
12000: netlist/pexception.cpp, sound/pulse_sound.cpp: Fixed compilation when using musl libc runtime library. [Elaine Gibson]
12001: irem/travrusa.cpp: Added an alternate palette PROM arrangement for Traverse USA, MotoTour and MotoRace USA. [ClawGrip]
12002: heath/h89.cpp: Added Ultimeth 2k ROM as a BIOS option. [Mark Garlanger]
12006: sega/sega_beena_cart.xml: Added two working items. [TeamEurope, QUFB]
12009: lynx.xml: Marked raiden as a possible bootleg of the CES version. [David Silva]
12012: util/cdrom.cpp: Removed unreachable additional handler for MODE2/2336 tracks (GitHub #9084). [stonedDiscord]
12013: mattel/pixtermu.cpp, pixter_cart.xml: Added a skeleton Mattel Pixter Multi-Media driver and software list. [QUFB]
12015: galaxian/galaxian.cpp: Added a Spanish bootleg of UniWar S from Centromatic. [Jorge Silva, Arnaldo Lopes, ClawGrip]
12016: cpu/m6809: Fixed HD6309 indirect W register references in indexed addressing modes. [Tim Lindner]
12017: rainbow.xml; intv.xml; digilog320.xml; compclr2_flop.xml: Use lowercase for things that aren't proper nouns. [ArcadeShadow]
12019: heathkit/h89.cpp, h88_cass.xml: Added a software list for Heathkit H88 cassettes. [Mark Garlanger]
12020: tecmo/gaiden.cpp: Added an version of Wild Fang using a different program version. [Tailsnic Retroworks, ClawGrip]
12026: cpu/patinhofeio/patinho_feio.cpp: Fixed missing space in warning log message. [amameuser]
12027: ussr/1801vp014.cpp: Added simulated MS7008 keyboard using K1801VP1-014 controller. [shattered]
12028: lib/netlist: Removed duplicate $(OBJ)/devices from object directories in makefile. [amameuser]
12029: cpu/z180, machine/ldv1000hle.cpp: Removed some extraneous semicolons. [amameuser]
12030: Fixed indentation of some ROM_END and INPUT_PORTS_END statements. [amameuser]
12031: rm/rm380z.cpp: Improved character mode video emulation. [Robin Sergeant]
12032: msx1_cart.xml: Added five working items. [file-hunter, MSXdev, Wilbert Pol]
12033: tvgames/spg29x.cpp: Added the internal SPG290 ROM for the Mattel HyperScan (not hooked up yet). [ppcasm, David Haywood]
12034: sound/discrete.cpp: Use appropriate memory barriers for task synchronisation (fixes GitHub #11373). [Vas Crabb]
12035: bandai/design_master.cpp: Added the internal H8/328 ROM for the Bandai Design Master. [Sean Riddle, David Haywood]
12036: cpu/tms32010: Fixed memory access helpers for variants with 64k-word program space. [cam900]
12037: misc/vocalizer.cpp: Added a driver for the Breakaway Music Systems Vocalizer 1000 (not working). [Loscha, Devin Acker]
12040: util/chd.cpp: Calculate pessimistic size for buffer needed to store compressed hunk map (fixes GitHub #12023). [balrog]
12041: konami/ksys573.cpp: Added Martial Beat JAB version (not working). [Windy Fairy]
12042: spectrum_cass.xml: Added 61 working items, and added language information for many items. [ArcadeShadow]
12043: trs/coco12.cpp: Dumped ROMs for Deluxe Color Computer and promoted it to working. [Brian Wiesler, Tim Lindner]
12046: mindset_flop.xml, adam_flop.xml, next_hdd.xml: Made software list descriptions follow conventions. [ArcadeShadow]
12047: Removed some unnecessary backslash line continuations in C++ and Python code. [amameuser]
12049: trs/coco12_m.cpp: Fixed base address for Deluxe Color Computer RAM bank. [Nigel Barnes, Tim Lindner]
12050: machine/z80scc.cpp: Added support for RTxC transmit/receive clock source. [Colin Leroy-Mira]
12052: msx2_cart.xml: Added six items (five working); bus/msx/cart/scsi.cpp: Added partial MegaSCSI support. [Wilbert Pol]
12055: hash/ekara_japan*.xml: Added nine cartridges; skeleton/hudson_poems.cpp: Added four games. [David Haywood, TeamEurope]
12057: util/bitstream.cpp: Fixed cases where bits would be dropped when reading and writing. [Windy Fairy]
12060: util/bitstream.h: Adjust m_doffset based on m_dbitoffs when flushing (fixes errors reading LaserDisc CHDs). [Windy Fairy]

 

XRoar: Dragon 32, Dragon 64, Dragon 200-E, Tandy Colour Computer and Tandy MC-10 emulator for Linux, Unix, Mac OS X and Windows.

 

Contribute to shimazzz/SEGASaturnEmulator-SSF development by creating an account on GitHub.

2
Wine 9.3 (gitlab.winehq.org)
 

The Wine development release 9.3 is now available.
What's new in this release:

Improvements to Internet Proxy support.
New HID pointer device driver.
Timezone database update.
More exception fixes on ARM platforms.
Various bug fixes.

Bugs fixed in 9.3 (total 23):

#33050 FDM (Free Download Manager) crashes with page fault when any remote FTP directory opened

#46070 Basemark Web 3.0 Desktop Launcher crashes

#46263 Final Fantasy XI crashes after accepting EULA when using Ashita; World of Warships hangs at login screen

#46839 Happy Foto Designer Font not found "Fehler (Code 1) [Font is not supported: Roboto]"

#50643 IK Product Manager: Unable to download plugins

#51458 Western Digital SSD Dashboard displays black screen

#51599 cmd.exe incorrectly parses an all-whitespace line followed by a closing parenthesis

#51813 python fatal error redirecting stdout to file

#52064 Solidworks 2008 crashes on startup

#52642 Virtual Life 2 freezes

#54794 Autodesk Fusion360: New SSO login will not open web browser

#55282 Flutter SDK can't find "aapt" program (where.exe is a stub)

#55584 Possibly incorrect handling of end_c in ARM64 process_unwind_codes

#55630 DPI_AWARENESS_CONTEXT_PER_MONITOR_AWARE_V2 is not handled in GetAwarenessFromDpiAwarenessContext

#55810 Finding Nemo (Steam): window borders gone missing (virtual desktop)

#55897 cpython 3.12.0 crashes due to unimplemented CopyFile2

#56065 Missing GetAnycastIpAddressTable() implementation

#56139 scrrun: Dictionary does not allow storing at key Undefined

#56222 Microsoft Flight Simulator 2020 (steam) needs unimplemented function GDI32.dll.D3DKMTEnumAdapters2

#56244 SplashTop RMM client for Atera crashes on unimplemented function shcore.dll.RegisterScaleChangeNotifications

#56273 [Sway] winewayland.drv: cursor does not work in Dead Island 2

#56328 LMMS 1.2.2 SF2 soundfonts no longer work in Wine 9.1

#56343 Multiple applications fail to start after de492f9a

 

Qt-based Nintendo Entertaiment System emulator and NSF/NSF2/NSFe Music Player (Linux, FreeBSD, OpenBSD and Windows)

Changelog

Rewritten mappers : All.
Rewritten WRAM, VRAM, PRGROM, CHROM and Nametebles management.
Rewritten FDS support.
    Furthermore, an option has been added to select the mode for write operations. Until now, all writes were stored on an external file (diff file) to preserve the integrity of the disk image, now it's possible to choose to write them directly to the FDS/QD file (making it portable to other emulators as well).
    Changed the format of the diff file, now I use the IPS format (which can always be applied to the original image).
Rewritten the format and management of save states.
WARNING save states of version 0.110 or earlier are no longer compatible.
Rewritten the audio of the VRC7.
Implemented the project "A YM2413 emulator written in C" of okaxaki :
    https://github.com/digital-sound-antiques/emu2413
Rewritten NSF player.
Added support to NSF2 format.
Added the ability to configure shortcuts and the NES pad from the command line.
Added support to Quick Disk format.
Added an option for RAM initialization (#276).
It's possible to choose between three values:
    0x00
    0xFF (default)
    Randomize
Added a screen icon that shows when fast forward is active.
Added the possibility to set default values for PPU overclocking to be applied for all roms in addition to the per-game ones already used.
Added Arabic translation (thx to Chipsum).
Added Polish translation (thx to elektronicznypank).
Added full support for the NES 2.0 header format.
Added video filter : "NTSC CRT LMP88959" and "NTSC NES LMP88959" (https://github.com/LMP88959/NTSC-CRT, Thx to LMP88959 for is great work).
Added video filter : "PAL CRT LMP88959" and "PAL NES LMP88959" (https://github.com/LMP88959/PAL-CRT, Thx to LMP88959 for is great work).
Added support to mapper : 100, 122, 157, 170, 272, 291, 311, 334, 354, 362, 366, 384, 421, 446, 471, 517, 551, 552, 555, 561.
Added support to UNIF mapper : Transformer, UNROM, AMROM, AOROM, LH09, A60AS, T4A54A, FC-28-5027, 150in1A, 212-HONG-KONG, GKCXIN, 113in1JY110, 820561C, M2C52A, S-2009.
Added full support for the Detach Barcode Reader of mapper 157.
Added support for FFmpeg 6.x libraries.
Added support for nes20db.xml and dip.cfg (many thx to NewRisingSun for his immense work).
Both files will be distributed together with the emulator and will be located in the following directories:
    Linux/BSD - {default system datadir}/puNES
    Windows - directory where the executable is placed.
    if you want to use a more updated version than the one distributed with the emulator, just copy it either in the executable directory or in the working directory of the emulator, which can also be opened from the "File -> Open working directory" menu.
Added full support for Vs System (UniSystem and DualSystem).
Added a screen icon that shows when Fast Forwarding is active.
In Fullscreen the menu bar can be accessed by moving the mouse over the top of the screen.
Updated Italian, Chinese, French, Hungarian, Portuguese and Russian translation (thx to Alex Timonin, FlameMan, stgapr29, tch_oscomp, Matheus Scattolin Anselmo, owomomo, shinyoyo, githubsilver and Benjamin Siskoo).
Changed the "Toggle menu bar" shortcut to ESC.
Windows x86_64: Update to Qt5 5.15.8 (#279).
Fixed the management of keyboard input (#317).
Fixed map of one keyboard button to multiple controllers (#277).
Fixed FDS wavetable pitch (#295).
Fixed patching of IPS files.
Fixed crackling sound when audio is enabled/disabled.
Fixed Meta button recognition on some keyboard layouts.
Fixed many many many other bugs.

2
ares-v136 (ares-emu.net)
 

ares is a cross-platform, open source, multi-system emulator, focusing on accuracy and preservation.

ares v136 has now been released.

Since v135, a total of 5 contributors have created 31 commits to the ares codebase.

If you wish to see the full changelog in a per-commit format along with their authors, similarly to how previous release notes were written, you can do so on GitHub here.

Border/Overscan overhaul

When ares was initially designed, it was geared primarily towards SNES emulation, and as such the "Overscan" option in video settings behaved like the overscan feature of the SNES: showing or hiding the lower 16 lines of display. This behavior is not how most end users expect overscan to function.

For ares v136, we have overhauled how borders and overscan is handled across all cores in ares.

The overscan option has been reworked to show or hide all non-desirable edges of the screen (in most cases this is blank borders, but it can include areas that commonly just contain garbage pixels).

Additionally, we have updated most of the emulator cores in ares to have hardware accurate border and aspect ratio when overscan is visible: this also includes PAL, so PAL games are finally rendered at the correct aspect ratio to real hardware when 'aspect ratio correction' is enabled.

NOTE: The border regions for All TMS9918 VDP based consoles are thought to be be correct, as are Master System, Mega Drive, and NES, while SNES and PC-Engine are (educated) estimates. Hiding the overscan area is not yet implemented for Atari 2600, PC-Engine, Nintendo 64 or PlayStation as more hardware verification is required.

Cheat Support

A popular request: ares finally has support for cheat codes, as well as a cheat editor. You can access the cheat editor by going to Tools -> Cheats while a game is loaded.

Cheats are currently implemented for all cores, except for Nintendo 64 and PlayStation: support for these requires larger changes to ares that did not make the cut for this release.

The cheat code format is a simple patch code format XXXXXXXX:YY where X is an address, and Y is the data to write; most emulators support this format so it shouldn't be difficult to port cheats between them.

It is possible to chain multiple codes into a single cheat entry by separating the codes with a + symbol; this is useful if a single cheat requires multiple code to work.

Cheats are saved in a cheat database file alongside the rom: for example, Game.sfc will create a cheat file titled Game.cheats.bml.

Nintendo - Game Boy Advance

Implement prefetch buffer reset on ROM accesses from the CPU.
Implement that timer 0 count-up bit cannot be set.

Nintendo - Super Famicom / SNES

Fix an issue where the Super Gameboy 2 was running at the incorrect clock frequency.

Nintendo - Nintendo 64

Implement newly discovered PI DMA behavior when crossing RDRAM row boundaries.
Fix a corner face in FPU exception handling

Sega - Mega Drive/Genesis, Mega CD, 32x

Add the Mega CD's PC RAM to the debugger memory viewer.
Implement subchannel processing for Mega CD (Allows the playback of CD+G/karaoke discs provided a valid .sub file is provided)

Sony - PlayStation

Improvements to the handling of the GPUSTAT register.

Other

Switched back to wglSwapInterval for VSync on OpenGL for Windows; the DwmFlush approach caused worse tearing for most users.
Fixed an issue where the SDL input driver considered all controllers to be the same device.
Fixed an issue where rumble events could be missed causing rumble issues in many games.
Improved VSync stability with the DirectX video driver.

 

Emulator of x86-based machines based on PCem.

What's Changed

Port DECchip 21143 "Tulip" NIC emulation from QEMU by @Cacodemon345 in #3504
net_tulip.c: Copyright header by @Cacodemon345 in #3505
net_eeprom_nmc93cxx.c: Proper logging by @Cacodemon345 in #3508
Port Realtek RTL8139C+ emulation from QEMU by @Cacodemon345 in #3509
Add DECchip 24110 NIC emulation by @Cacodemon345 in #3516
Fix 4.1 build issues and do some linting by @jriwanek in #3526
Add OPL4-ML daughterboard emulation by @Cacodemon345 in #2899
Add Dell Dimension XPS Pxxx (OEM version of Intel Premiere PCI/II) by @pankoza2-pl in #3541
Add Micronics Thunderbolt (PhoenixBIOS 4.0 Rel 6.0 for 430TX) by @luennix in #3598
Add Gateway 2000 OEM Version of Intel VS440FX by @pankoza2-pl in #3685
Fixes and GHA for SDL UI by @jriwanek in #3763
net_pcap: use standard unsigned type names by @goshhhy in #3762
S3 fixes: by @TC1995 in #3764
Small Mach32/SVGA font mapping fix. by @TC1995 in #3766
[Qt] Made fixes to Japanese and Simp. Chinese translations by @EmpyreusX in #3769
Update translation by @kzmidze in #3770
Mach64 (both GX and VT2) 24bpp mono pattern fix placed in. by @TC1995 in #3772
SCSI CD-ROM fixes (NEC): by @TC1995 in #3781
Trident TGUI9440/96x0 Bresenham update: by @TC1995 in #3782
Fix speeds other than RAM disk not being selectable for SCSI or ATAPI HDDs by @lemondrops in #3787
S3 accel command fixes: by @TC1995 in #3793
add machine Hyundai Super 286C by @goshhhy in #3789
More S3 blitting fixes: by @TC1995 in #3795
Update languages by @kzmidze in #3796
Named initializers for FPUs, and 8088 through 80286 by @jriwanek in #3800
[v4.1] Report correct cache info in CPUID on P6-family CPUs by @lemondrops in #3801
Misc 4.1 updates by @jriwanek in #3802
[v4.1] Further adjustment to the CPUID cache stuff by @lemondrops in #3804
Add the Page Global Enable flag to the Cyrix III by @lemondrops in #3807
add cpl_override in pmodeiret() when cpu_state.flags has NT_FLAG by @jgilje in #3811
qt: Add fullscreen status icons support and option by @Cacodemon345 in #2129
More and more video changes and fixes (8514/A and compatibles): by @TC1995 in #3814
Forgot to apply the correction to the ATI 68860 ramdac, should clear the compile warnings by @TC1995 in #3816
Fix ATAPI HDDs not being displayed in the status bar by @lemondrops in #3819
Update qt_mainwindow.cpp by @maximus105 in #3821
Merge Version/4.1 into master since we have decided to just go straight for 4.1 by @OBattler in #3823
Consistency cleanups and warning fixes by @lemondrops in #3832
(S)VGA paletted renderer rewrite by @iamgreaser in #3839
8-bit renderer fix about the Tseng cards: by @TC1995 in #3841
update WM_CLASS instance name from vm_name by @jgilje in #3842
(S)VGA updates and fixes, 2023-11-22 edition by @iamgreaser in #3844
Implement 4bpp graphics mode blink properly on VGA by @iamgreaser in #3845
DEC/Tulip/Intel 21140/21143 fixes: by @TC1995 in #3847
Handle SVGA 8bit RAMDAC for Voodoo Banshee cards by @iamgreaser in #3848
Rework and optimise the (S)VGA pixel renderer by @iamgreaser in #3859
Cirrus, ATI Mach8/32 and XGA fixes. by @TC1995 in #3861
Update Github Actions to macos 12 by @jriwanek in #3866
Fix codeql runs by @jriwanek in #3874
Mach8/32 fixes (again): by @TC1995 in #3882
Several fixes to compile with logging enabled by @jriwanek in #3883
Fix the initialization of the color cursor regs (ATI Mach32) by @TC1995 in #3884
More compile fixes with logging turned on by @jriwanek in #3887
Split GHA scripts into seperate files by @jriwanek in #3888
SCSI CD-ROM Toshiba fixes. by @TC1995 in #3889
Undev branch the Matrox Millennium since it is now mostly usable. by @TC1995 in #3890
Correct undevbranching of the Matrox Millenium by @jriwanek in #3891
Fixed warning in vid_mga.c. by @TC1995 in #3892
Disable blink in 8bpp modes on MGA; Re-instate main 8bpp hires renderer by @iamgreaser in #3893
MGA Fixes: by @TC1995 in #3895
Warning fixes by @jriwanek in #3896
More MGA fixes. by @TC1995 in #3897
MGA fixes 2: by @TC1995 in #3901
S3 wraparound fix. by @TC1995 in #3902
Matrox Mystique: Bus-mastering fixes by @Cacodemon345 in #3903
ESC/P: make the dot matrix font optional by @lemondrops in #3904
ATI EGA Wonder 800+ and 18800 refactoring: by @TC1995 in #3905
Matrox Mystique: Make it work under Windows NT 4.0 for real by @Cacodemon345 in #3908
Report correct S3 Trio64V2/DX revision ID by @iamgreaser in #3906
Matrox Mystique: Attempt fixing 3D busmastered drawing by @Cacodemon345 in #3909
More MGA fixes. by @TC1995 in #3910
ATI EGA Wonder 800+ fixes. by @TC1995 in #3911
Mystique: SOFTRAP register writes correctly reset the primary DMA channel by @Cacodemon345 in #3912
MGA: More Mystique busmastering fixes by @Cacodemon345 in #3914
Qt: Application icon fixes by @lemondrops in #3915
Fix M3D programs by @Cacodemon345 in #3916
Matrox Mystique: Force window resizing by @Cacodemon345 in #3918
Fix Debian Woody's matroxfb's test again. by @TC1995 in #3919
MGA: Don't reset screen size every recalctimings by @Cacodemon345 in #3920
mystique_line_compare: Re-enable line compare behaviour by @Cacodemon345 in #3921
EGA PEL fix. by @TC1995 in #3923
ATI Mach8/32 fixes regarding 1992 ATI Ultra drivers for Windows 3.1x: by @TC1995 in #3924
Matrox Mystique: Fix display flickering issues for real by @Cacodemon345 in #3925
MGA flicker fixes. by @TC1995 in #3926
MGA: Implement gamma correction for 24+ bpp modes by @Cacodemon345 in #3928
Un-dev matrox mystique by @jriwanek in #3927
MGA: Gamma-correct hardware cursor by @Cacodemon345 in #3929
Mystique: Fix flickering display on Direct3D by @Cacodemon345 in #3932
Mystique: Don't do busmastering until SOFTRAP status is read by @Cacodemon345 in #3934
MGA: Implement gamma-correction for <= 16 bpp modes by @Cacodemon345 in #3935
ESC/P: Support the new dot matrix font + other improvements by @lemondrops in #3936
Restore correct CGA compatible mode behavior in (S)VGA. by @TC1995 in #3943
MGA: Make sure dxdiag on D3D 9.0b doesn't crash the emulator by @Cacodemon345 in #3944
More ATI changes plus one IBM 8514/A fix: by @TC1995 in #3947
More ATI accel fixes and undocumented stuff. by @TC1995 in #3953
Joystick: Fix emulated POV hat configuration by @lemondrops in #3954
MGA: Add Matrox Millennium II video adapter by @Cacodemon345 in #3959
Millennium II: Don't ignore OPTION_INTERLEAVE by @Cacodemon345 in #3961
MGA: Properly report Matrox Mystique 220 in PCI revision ID by @Cacodemon345 in #3962
Millennium and Millennium 2: Enable gamma correction only for 24+ bpp by @Cacodemon345 in #3963
TVP3026: Implement gamma correction for 15/16 bpp modes by @Cacodemon345 in #3964
Actually enable gameport on init on non-PnP SB16/AWE32 by @lemondrops in #3965
Fix debian package build by @jriwanek in #3968
vid_voodoo_banshee: Implement gamma correction for 16bpp by @Cacodemon345 in #3967
Disable 32-bit Z buffer on Mystique 220 and earlier by @Cacodemon345 in #3969
Fix a dumb copy-paste mistake by @Cacodemon345 in #3970
Fix yet another dumb copy-paste mistake by @Cacodemon345 in #3972
Intel Premiere/PCI ED: update bios to 1013AF2 by @ConiKost in #3971
Don't set the application icon in qt_main.c on Mac by @lemondrops in #3973
fixes typo on mac icon fix by @brunocastello in #3975
Add Matrox Productiva G100 video adapter by @Cacodemon345 in #3976
Fix detection of MGA G100 video RAM when 16MB by @Cacodemon345 in #3977
MGA G100: Fix fog acceleration by @Cacodemon345 in #3978
MGA: Fix busmastering under Windows 2000 by @Cacodemon345 in #3979
Update the default copyright year by @lemondrops in #3980
Make Matrox Productiva G100 usable as secondary display by @Cacodemon345 in #3981
Qt: Rawinput now follows keyboard focus properly by @Cacodemon345 in #3984
Mouse capturing now works on secondary monitors by @Cacodemon345 in #3985
S3 refactoring: by @TC1995 in #3987
NCR 53c9x MCA small improvements. by @TC1995 in #3988
Small 5380 SCSI improvements. by @TC1995 in #3989
S3 mode fixes (1): by @TC1995 in #3990
PCnet-based fixes: by @TC1995 in #3991
S3 mode fixes 2 and one small accel cleanup: by @TC1995 in #3998
Huge fixes to 8514/A compatibles: by @TC1995 in #3999
EGA, (S)VGA: Fix vertical fine scroll behaviour by @iamgreaser in #4003
S3 changes again: by @TC1995 in #4009
Add initial "Unit Tester" device for analysing framebuffer contents by @iamgreaser in #4011
Fix EGA fine scrolling in text modes by @iamgreaser in #4016
Add GLaBIOS machine. by @BurnedPinguin in #4018
IBM PS/1 Model 2011: Add language ROM options. by @Cacodemon345 in #4017
Apply blanking extensions to more SVGA cards. by @Cacodemon345 in #4020
Merge feature/svga hskew into master. by @OBattler in #4022
vid_cl54xx: Revert changes made to special blanking mode by @Cacodemon345 in #4024
MGA: Do not reset DWORD expected counter while SOFTRAP read is still pending by @Cacodemon345 in #4032
Corrected S3 864 horizontal display. by @TC1995 in #4034
Implement TSS debug trap bit by @Cacodemon345 in #4035
Implement x86 debug registers by @Cacodemon345 in #4036
Use Toshiba T1200's HDC in Epson Equity LT by @Cacodemon345 in #4040
ATI Mach8/32 mode changes and cleanup: by @TC1995 in #4048
TGUI9440AGi/96xx changes: by @TC1995 in #4049
Added the RTG3105 video card and fixed some wrong stuff in the RTG3106 as well by @TC1995 in #4050
XGA changes: by @TC1995 in #4052
S3 true color update. by @TC1995 in #4055
More fixes to the RTG series: by @TC1995 in #4057
Added a proper VLB variant to the TGUI9440AGi by @TC1995 in #4058
DEC DE-435 EtherWorks Turbo (DECchip 21040) emulation by @Cacodemon345 in #4071
Fix a few bugs pertaining to EGA fine horizontal scrolling by @iamgreaser in #4075
Alphabetize XT machine_table list by @640-KB in #4076
XGA update/slight fixes: by @TC1995 in #4079
Updated CPU clock selection on Compaq 286/386 based machines. by @TC1995 in #4080
Slight cleanup of the 8514/A compatible chips. by @TC1995 in #4085
First batch of machines from the various lists. by @BurnedPinguin in #4087
Move MSI MS-4144 into dev branch by @cartifanwlr in #4089
Raise minimum RAM for MSI MS-4144 to 5 MBs by @cartifanwlr in #4090
Disable GHA win32 and makefile jobs by @cold-brewed in #4093
Block cyrix CPUs from 4saw2 by @cold-brewed in #4095
Various text fixes and improvements by @lemondrops in #4096
Fix broken translation of "ACPI shutdown" tooltip for all languages by @maximus105 in #4098
Trad-Chinese translation by @kzmidze in #4097
Machine flag cleanups and other assorted machine changes by @cartifanwlr in #4102
Rename "Phoenix 286 clone" as the machine has been identified by @cartifanwlr in #4105
Rename "AMI XT clone" as the machine has been identified by @cartifanwlr in #4106
Revert "Rename "AMI XT clone" as the machine has been identified" by @cartifanwlr in #4108
Migrate configs for the Gigabyte Socket 4/5 machines by @lemondrops in #4111
Refactor 5380-based SCSI controllers by @TC1995 in #4112
Add A-Trend 4GPV5 machine by @cartifanwlr in #4116
Fix broken translation of "PIT mode:" for all languages by @maximus105 in #4115
Merge the XTIDE XT/XT+ and AT/386 BIOS variations by @lemondrops in #4118
Further Compaq Deskpro 386 adjustments by @lemondrops in #4117
More fixes to the 5380-based core. by @TC1995 in #4123
SCSI CD-ROM fixes of the day. by @TC1995 in #4124
SVGA video card fixes of the day. by @TC1995 in #4125
Radius Video7 ISA card update about the I/O handler. by @TC1995 in #4126
Update on Cirrus banking. by @TC1995 in #4128
9001st update on Cirrus banking... by @TC1995 in #4129
Couple of changes in the video side. by @TC1995 in #4130
Mach64 temporary updates: by @TC1995 in #4131
CPUID and MSR fixes and improvements by @lemondrops in #4119
Fix SVGA code warnings. by @TC1995 in #4134
Fixed the Cirrus banking issue for good (really) by @TC1995 in #4137
Fix for freezing of some 286 machines by @maximus105 in #4138
Bumped the minimum ram to 8MB on ASUS P5A by @JoshuaMaitland in #4141
Removals by @lemondrops in #4146
Devbranch OPL4-ML daughterboard emulation by @Cacodemon345 in #4149
Chips & Technologies B69000 emulation by @Cacodemon345 in #4145
Miscellaneous fixes by @lemondrops in #4150
Matrox MGA fixes: by @TC1995 in #4152
S3 Pre-ViRGE 32bpp fixes: by @TC1995 in #4154
vid_svga.c: Hardware cursors with negative Y values work properly now by @Cacodemon345 in #4153
vid_tvp3026_ramdac: Implement warp-around for hardware cursor buffer32 drawing by @Cacodemon345 in #4156
C&T 69000: Fix VBIOS size by @Cacodemon345 in #4155
MGA updates for the vram detection and stuff. by @TC1995 in #4158
C&T: Clear bit 7 of CRTC register 0x40 on vertical blank start, fixes DirectDraw hangs by @Cacodemon345 in #4159
C&T: Implement clock select and LCD/CRT panning properly by @Cacodemon345 in #4161
More 486 machine changes that I missed by @cartifanwlr in #4160
C&T 69000: Monochrome patterns are no longer horizontally reversed by @Cacodemon345 in #4163
C&T 69000: Fix ROP 0xFF WHITENESS on 16+ bpp modes by @Cacodemon345 in #4165
Fixes and enhancements to joystick support by @lemondrops in #4168
MGA cleanup by @lemondrops in #4169
Merge network device headers to network.h by @cartifanwlr in #4171
Fix ActionPC onboard PCI slots by @cartifanwlr in #4172
workflows: Remove libvncserver from deps by @lemondrops in #4174
C&T 69000: avoid stale linear mappings by @Cacodemon345 in #4175
C&T 69000: Fix pattern drawing in 16-bpp modes by @Cacodemon345 in #4178
Some temporary video changes regarding the horizontal display. by @TC1995 in #4179
TVP3026: remove excess logs. by @TC1995 in #4180
C&T 69000: Fix black cursor on Red Hat Linux 8 by @Cacodemon345 in #4181
C&T 69000: DPMS by @Cacodemon345 in #4182

2
WinUAE 5.2.0 (www.winuae.net)
 

Amiga emulator

New features/updates:

MacroSystem DraCo emulation. Full emulation except V-Lab Motion video board which is totally undocumented. Amiga clone without Amiga custom chips.
Picmatic Marbella Vice light gun laser disc arcade game is now fully working.
American Laser Games and PicMatic statefile support.
Genlock emulation display positioning/scaling updates.
Retina Z2 and Z3/Altais RTG board emulation. (NCR 77C22E+ and 77C32BLT SVGA chips)
S3 Trio64 PCI RTG board.
On screen led font is now configurable, settings in GUI Miscellaneous panel.
A2410 updates (Latest Picasso96 driver with DMA mode enabled graphics corruption)
All emulated RTG boards now autoswitch (Automatic switch between chipset mode and RTG mode). Previously only RTG boards that have built-in switcher and PCI RTG boards autoswitched.
Do not emulate special cases in native chipset screen mode last and first line(s) unless Overscan mode is Overscan+ or higher. (For example OCS Denise top and bottom line mismatched blanking start and end)
NTSC mode screen vertical positioning improved.
Disk swapper insert/remove cursor position now works as expected. Same image can be inserted in multiple slots.

5.1.0 Bugs fixes

Fast 68020+ mode interrupt timing fix. (Some games hung or had missing or badly playing sound)
Copper timing was unreliable in non-CE modes (Mainly affected horizontally multiplexed sprites)
Dark mode was not initialized if config file was started directly (for example from command line), without opening GUI. Some sub-dialogs didn’t support dark mode.
Zero length disk DMA with enabled disk word sync never finished (some copy protections failed to work).
Game Ports panel default config overrode button 4 with on screen keyboard enable/disable option even if it was already configured in Input panel.

Older bug fixes

Any TV overscan option + NTSC mode: few pixel grapohics corruption was visible in right edge of screen.
Many hardware emulated RTG boards had problems with horizontal panning.
68040 MMU emulation fix. (MOVEM restart didn’t work correctly in all situations and MOVES 68040-only special case bus fault behavior was wrong)
CyberVision 64/3D and Picasso IV overlay fixes. P96PipDemo is now working correctly.
Ateo Pixel 64 had BGR/RGB swapped colors in most color depths.
UAE AHI ignored AHI volume slider setting.
Fixed mouse cursor jumping randomly when in tablet mode and clicking mouse button(s).
Game Ports panel input device type getting stuck or entering Test/Remap window crashing in some situations.
Some config file and registry/ini paths were always written in absolute format even if WinUAE was configured to relative path mode.
“AVI output enabled” (and few similar on/off buttons) button type changed, previously they worked unexpectedly in some situations, visible state was not always matching internal state.
Some sub dialogs (for example Gameports input mapping autofire) had old style and no high DPI support.
256 color screenshot mode created wrong colors in some situations, usually when AGA and almost all palette entries were allocated.
Changing some native display settings (Filter/Display panel) settings didn’t reset all required display parameters until full display reset (for example window was resized)

 

MAME4droid 2024 is developed by David Valdeita (Seleuco) as a port of the latest MAME emulator by MAMEDev and contributors. It emulates arcade games and systems like ZX Spectrum, Amstrad CPC, MSX etc. This version of MAME support over 40000 different ROMs.

MAME UI now is touch enabled.
Added media scraping thanks to Arcade Database by motoschifo.
Added MAME meta data resources thanks to Arcade History, MAME info and progetto-SNAPS
Custom build for sideload on MetaQuest devices. This is not use OCULUS SDK, it is just a 2D app tuned for Meta Quest devices. You need to pair a bluetooth controller to play.

 

A PalmOS emulator for the web

 

UI: implement "Sharp" video filter for better nearest interpolation at non-integer scales (thanks GranMinigun)
UI: implemented PPU viewers for palettes, tiles, backgrounds and sprites
UI: add an option to set the audio volume
UI: do not unpause emulator after loading a new ROM
Input: fix input dropping regression introduced in NBA 1.7.1
Input: move from SDL game controller to SDL joystick API (fixes broken mapping on some controllers)
APU: MP2K HLE: interpolate envelopes and use floating-point math
APU: MP2K HLE: implement a better reverb algorithm
APU: MP2K HLE: add an option to force-enable reverb
APU: remove "Zombie" mode emulation (does not appear to exist on GBA)
APU: fix mid-note envelope frequency changes
APU: FIFO writes should happen in place
APU: reset FIFOs on overflow
APU: add master-enable checks for 16-bit/32-bit IO writes
PPU: fix sprite pixels from previous scanline displayed in the last scanline
PPU: more accurate update of attribute buffer for OBJWIN sprites (fixes #275)
PPU: more accurate emulation of horizontal and vertical sprite mosaic (fixes #322)
PPU: more accurate handling of mid-frame vertical mosaic reconfiguration
PPU: fix out-of-bounds bitmap fetches in Mode 3 to 5
DMA: fix incorrect mapping of DMA channel to APU FIFO
Timer: somewhat handle timer overflow during one cycle enable delay (thanks alyosha)
Game Pak: simulate ~6 ms EEPROM device busy period after write (not yet accurate to cartridges that e.g. have been in the freezer for 30 minutes)
Game Pak: emulate the Mask ROM internal address register
Audio: fix clicking artifacts when using Sinc resampling
Audio: fix incorrect liner interpolation in Cosine resampling
PlatformCore: fixed hang when fast-forwarding while the emulator is paused
Misc: implemented support for unicode paths

view more: ‹ prev next ›