UME is the complete/combined version of the MAME / MESS project.
Another unofficial update so soon? Why yes, that is what I’m announcing here. I did say I’d try and make sure people got new binaries for important bug fixes. In this case the Vector HLSL support has been fixed (by hap) over the last few days, and I consider that a worthwhile fix to put out a new build for the benefit of readers here.
Update 0.150×2, and it’s based off SVN revision 25563.
The changelog (simply a copy/paste of the SVN log) can be read here. This isn’t formatted as a whatsnew, but as usual I’ll summarize the main points below.
UME 0.150×2 Windows binaries – 32-bit, 64-bit and all tools
UME 0.150×2 sources
Points of Interest
As mentioned above the main reason I’m offering this the is fix for the vector HLSL that was made over the past few days. Other than that it’s only a minor update compared to the build put out just under a week ago; there have only been 63 SVN commits in that period.
This doesn’t fix the multi-screen problem with effects are used, but as vector HLSL is one of the recent ‘showcase’ features I feel it is still important progress on the road to getting things working. Unfortunately one of the showcase vector games, Tempest, still has emulation issues in current versions of MAME once you reach the later levels (the game resets) I suspect this is due to a flaw in the Atari Pokey emulation, possibly introduced when “Liberator” was fixed so the later levels worked there because that too uses the Pokey as a protection device and it’s possible there is some conflict in what they expect. Just a hunch, could be wrong.
Maybe the most important thing that has happened in this brief period is Couriersud returning to commit something. In this case the submission is only an optimization to the netlist emulation leading to a small performance improvement in the Pong simulation but the implications are greater. There are very few people involved with MAME who understand these old discrete logic games, I’d go as far as saying Couriersud is almost a one-man team as far as MAME work on them goes so his continued contributions are important if we’re to see progress in that area.
smf has also been tweaking the Playstation emulation a bit, fixing recent regressions in Tenkomori Shooting and Konami 80’s AC Special. Barry has continued to work on the Pinball drivers I mentioned in the 0.150×1 update.
The MESS side has also seen various misc fixes and additions, including work on the DECtalk ISA card for PC platforms and listing of some potentially useful disks etc. too. There was also a fix for loading tapes in the C64 driver thanks to a comprehensive bug report that made it relatively easy for Curt Coder to fix the issue. As always make sure to read the changelog because some of the systems / devices where changes have been made I’m simply not familiar enough with to write about.
Some CPUs were also modernized, I guess there’s a slight risk of breakage there (because any large scale refactor runs the risk of introducing some issues) For reference, the ‘NEC’ series CPUs are widely used in MAME, while the ‘Saturn’ CPU is not related to the Sega Saturn but instead a lesser known / more obscure system in MESS.
Personally I’ve been working with iq_132 on the PGM emulation, helping to improve the IGS025 / IGS022 emulation for Dragon World 3 / Dragon World 3 EX. iq_132 managed to get the games to enter gameplay with various improvements, while I implemented a missing DMA mode used to transfer some 68k code into RAM for execution as part of the copy protection. The emulation is still incomplete and the game will fail in certain situations e.g. when you continue, but it’s steady progress. I also refactored the emulation of these devices a bit to hopefully make it easier for iq_132 to hook them up in Luca’s igs017.c driver where 2 of the Mahjong game sets also use the 025/022 combo for protection.
Dragon World 3
Dragon World 3 EX
(iq_132 has been improving the PGM IGS025 / IGS022 protection emulation for Dragon World 3 with me providing some assistance, still not really working properly tho)
There’s also the fix I made for Thunder Dragon 2, mentioned in the a previous article here, and -mt was finally turned back off by default (although obviously if you have a config with it turned on, or turn it back on yourself you’re not going to see the benefit from it being disabled) both could be considered quite important improvements along with everything else I’ve mentioned.
Current State of MAME / MESS / UME
While current MAME & MESS builds are definitely good we’re still some way from having a perfect build. There are quite a few key MESS drivers (X68000 being a prime example) that used to work better a year or two back, although often because they relied on hacks. It’s a shame because if you want to use MESS it’s painful to go back that far because it’s only in more recent times that MESS has really started coming on leaps and bounds as a whole, even if it does have a long way to go. Likewise in MAME there are still some recent regressions that need nailing down such as the CoJag drivers not working properly. I’m not sure if these are another victim of the recent HDD changes or some modernizations. There was a fix to help with idle detection in the Jaguar DSP cores, but it doesn’t appear to improve the CoJag titles. Issues like the problems with the Mario discrete sound emulation are also starting to become worrying long-term regressions, likewise the Tempest bug I mentioned earlier. Things are however as a whole heading in the right direction.