Professional Documents
Culture Documents
Whats New
Whats New
Whats New
252 2023-02-22
----------------
Source changes
--------------
-tceptor: correct audiocpu type [hap]
-misc/gamtor.cpp: rearrange SVGA map layout, allow beetlem to show video [angelosa]
-ms7002: Use u8-type literals and Unicode escapes for Cyrillic characters; add
translations for some key names [AJR]
-apple2gs: remove the old HLE keyboard/mouse microcontroller and run the real
microcontroller code. [R. Belmont, Peter Ferrie]
* This has been extensively tested, including with Zip acceleration
-bgfx: Adjusted per-pass blending handling - fixes MT07586 and MT07587. (#10747)
[Ryan Holtz]
-mcs48: correct opcode cycles for IN A, DBB and OUT DBB, A [devsaurus]
-Revert "-bgfx: Adjusted per-pass blending handling - fixes MT07586 and MT07587.
(#10747) [Ryan Holtz]" (#10748) [MooglyGuy]
* This reverts commit 2d893a60b4675359285737be173dfa632269cab3.
-macadb.cpp: improved SRQ behavior, added many of the Extended Keyboard keys
including function keys. [R. Belmont]
-new WORKING Software List additions (Chess King) (#10756) [David Haywood]
-nmk/cultures.cpp: updated to use memory view instead of bankdev and other small
cleanups [Ivan Vangelista]
-wing/superwng.cpp: used finder instead of tag lookup for memory bank and other
small cleanups [Ivan Vangelista]
-meijinsn: correct audiocpu irq freq, add unemulated protection flag [hap]
-pacman/pengo.cpp: Sorted Pengo sets, and changed scheme for short names (#10751)
[David Haywood]
* Export versions have replaced music/faster maze drawing.
* Japan versions have slow maze drawing and 'popcorn' music.
* The unencrypted sets are the newest releases we have of both versions - for
Japan that is ROMs 5120-5127 and for export that is
ROMs 5128-5135 (suggesting these unencrypted versions were both released at the
same time).
-andromed: Changed the ship and "ATTACK !" text colour & moved "ATTACK !" to the
top of the screen, to match the video from a
working board. Set the dip switch default so you don't receive free credits [smf]
-megaphx: remove ppi reset workaround, remove vector table ram copy workaround
[hap]
-macadb: added the Ins/Del keys and fixed some keypad keys. [R. Belmont, Kelvin
Sherlock]
-apple2gs: workaround for Finder thinking the mouse button is initially stuck down.
[R. Belmont]
-pic16c5x: small cleanup (1-line comments C++ style, switch/case spacing) [hap]
-wy50: add beep (#10771) [goldnchild]
-diimage.h: Move a few macro and delegate definitions down into subclasses [AJR]
-Updated png.py to 0.0.20 (last version before Python 3.4 support dropped) [Vas
Crabb]
-ui: Give menus an opportunity to recompute metrics on window resize. [Vas Crabb]
* Also reworked calculation of menu geometry in general, and limited width of left
panel on system/software selection menus.
* Fixes images in the right panel and icons on the system/software selection menus
not being scaled correctly when the window is
resized (MT08539 is an example of this).
* Fixes bad font size selection at low resolutions when using bitmap fonts like
uismall.bdf (GitHub #7105).
* Fixes collapse/expand arrows on left/right panels of system/softwre selection
menus getting bigger if the window is made
narrower.
-abc1600: Connect BUS0X PRAC callback, and break into debugger on bus error. [Curt
Coder]
-Win32 debugger: don't skip a history item when initially pressing down. [Vas
Crabb]
-apple2video: Created an actual API for video state information so the classes have
better separation. [R. Belmont]
-macabd: fix mouse x/y naming and don't show button 1 as always down (#10786)
[ksherlock]
-apple2gs: remove mouse button hack, the Event Manager was being tripped up by a
now-fixed macadb issue.
[R. Belmont, Kelvin Sherlock]
-apple2gs: return the last keypress in the low 7 bits of $C010. Fixes Winter
Games. [R. Belmont]
-macadb: much better SRQ semantics. Checked with all supported MCU types. Fixes
GitHub #10790. [R. Belmont]
-SPARC and sun4 fixes and boilerplate cleanup: (#10793) [Ryan Holtz]
* cpu/sparc: Implemented STBAR opcode as a no-op. Fixes illegal instruction error
in Solaris 2.4 installer.
* sun/sun4.cpp: Converted to logmacro. Added FDC dor_w hookup, fixing Solaris 2.4
installer hang.
* sun/sun4.cpp: Cleaned up duplicate handlers, split handlers, removed tags, use
abbreviated integer types.
* machine/sun4c_mmu.cpp: Converted to logmacro.
-misc/smd2144c.cpp: documented that the sets are actually missing the H8S internal
ROM [Ivan Vangelista]
-rtpc: wip, now able to boot from vrm floppy [Patrick Mackinlay]
* rtpc: improve keyboard/locator/speaker adapter emulation
* romp: fully decode memory and i/o access from processor channel
* iocc: use emumem flags for isa bus i/o width detection
* iocc: correct isa bus access endianness
* iocc: internalize tcw and csr
-Added GitHub issue template for bug reports. [Firehawke, Vas Crabb]
-bgfx: Back out some formatting changes to minimise conflicts. [Vas Crabb]
-debugbuf.cpp: Don't use paged formats for addresses in disassembler output unless
logical address width exceeds page size [AJR]
-Fixed a bug in the OS-9 file systems file name validation function that caused it
to incorrectly tolerate characters with the
seventh bit set (#10802) [npwoods]
-Apple II: fix Video-7 RGB card double hi-res modes (#10797) [benrg]
* Fix an off-by-1 error in the 160-column mode that caused the rightmost 2 pixels
to be omitted. In 140-column color and mixed
modes, use custom logic to make 140 wide pixels instead of simulating blurry
artifact color. In mixed mode, each high bit
controls 7 narrow pixels according to the manual.
-apple2gs: support the Control Panel disable jumper that ROM 3 machines have. [R.
Belmont]
-macadb: support telling ADB devices to enable/disable SRQ. [R. Belmont] Eliminates
the need for the "iigs_mode" hack since the IIgs
firmware knows the MCU program is buggy and disables mouse SRQs. [arbee]
-fix for 08543: megablst and clones: Shield powerup aura on option is missing
(#10810) [David Haywood]
-ncr53c90: Drop ATN during the message phase of Transfer Information command, per
OG's suggestion. [Ryan Holtz] (#10823) [MooglyGuy]
* Co-authored-by: Ryan Holtz <TheMogMiner>
-Fix compile error on mingw due to invalid setting for ASTCENC_SSE (#10824) [Justin
Kerk]
-vcs_ctrl/paddles: Swap ports and button bits at runtime. Avoids multiple input
defs per-device. [Ryan Holtz] (#10825) [MooglyGuy]
-osd: Better XInput and SDL game controller input enhancements: [Vas Crabb]
* Added initial support for XInput controller subtypes, starting with driving,
arcade and flight controllers.
* Check XInput capabilities to ignore buttons and hats that aren't present.
* Added preliminary SDL Game Controller joystick provider. Reconnection and mixed
Game Controller/Joystick devices are
unsupported.
* Show the input token for the highlighted control on input device menus.
-ui: Allow menus to set required space above and below menu when metrics change.
Fixes the initial bad layout on the system
selecton menu, or bad layout after resizing windows. [Vas Crabb]
-osd: Include mapping string in verbose output when enumerating SDL game
controllers. [Vas Crabb]
-3rdparty: Suppress unused variabe warnings for SQLite3 - clang 15.0.5 for Windows
considers sqlite3_os_type unused. [Vas Crabb]
-osd: Fixed names of face buttons on Switch Pro Controller with SDL Game Controller
provider. [Vas Crabb]
-osd: Fixed names of DualSense controller buttons with SDL Game Controller
provider. [Vas Crabb]
-osd: Added support for mapping files to sdlgame joystick provider and made it
default with SDL. [Vas Crabb]
* This changes behaviour, however I think it's a net positive:
- Most games using Steam Input or SDL2 to read game controllers have this
behaviour, so users have come to expect it.
- This module is better at giving meaningful names to buttons on common
controller, and assigning axes consistently.
- Button/axis mapping files using a widely-used format are supported.
- The old behaviour is still available with `-joystickprovider sdljoy` if anyone
wants it.
* The new option for controller mapping files is in the general OSD options
rather than SDL options as it can be extended to
DirectInput in the future.
-osd: Work around bad XInput capabilities report from Retro-Bit Saturn pad. [Vas
Crabb]
-vtech/vsmile.cpp: Corrected On and Off button I/O port bits. (#10796) [KanedaFr]
-osd: Recognise Joy-Con pairs with sdlgame input module. [Vas Crabb]
-Hopefully fix SDL version detection macros for controller types. [Vas Crabb]
-osd: Added option to accept SDL game controller/joystick input when losing UI
focus. [Vas Crabb]
-osd: I am officially incapable of keeping track of which OSD I'm working with on
each change (fix SDL build). [Vas Crabb]
-osd: Better button names for NVIDIA Shield and Xbox One controllers with SDL game
controller module. [Vas Crabb]
-osd: Work around another observed invalid XInput capabilities report. [Vas Crabb]
-osd: Added support for guitar and drum kit controllers via XInput. [Vas Crabb]
-m88000: add variants of some triadic instructions with un-decoded bits [Patrick
Mackinlay]
-osd: Improved XInput guitar support and added XInput Rock Band keyboard support.
[Vas Crabb]
-Apple II: factor out NTSC color simulation and add config options (#10835) [benrg]
* Make most video modes produce a 560x192 monochrome bitmap that goes through
shared artifact color simulation code, and add some
dip-switch options to control the algorithm. This allows for combinations that
weren't supported before, such as color fringes
on text and lores block boundary artifacts.
* This also implements the Video-7 foreground-background hires mode, since it was
easy to do with the shared code.
-osd: Better XInput rhythm game controller support on Windows: [Vas Crabb]
* Better support for extended controller type information.
* Support for velocity sensitive six-drum controller.
* Don't ignore button capabilites for keyboard controller.
-osd: Still more XInput rhythm game controller support for Windows: [Vas Crabb]
* Added support for DJ Hero turntable controller.
* Added support for Rock Band keyboard controller pedal.
* Fixed pickup selector switch on guitar controllers.
-ibm5170_cdrom.xml: 13 New working software list additions (#10826) [ArcadeShadow]
* ibm5170_cdrom.xml: 13 New working software list additions
-osd: Better scaling factors for XInput DJ Hero turntable dials. [DarkMoS]
-QA cleanups for various PC-based Arcade skeleton drivers (#10830) [Angelo Salese]
-gaelco/gaelcopc.cpp: add an alternate BIOS set for tokyocop [Gerald (COY), The
Dumping Union]
-misc/globalvr.cpp: Note about two games and typo fixes. (#10840) [Michael Sanborn]
-mame/irem/m72.cpp: dumped MCU for bchopper [Ordyne, rtw, TeamEurope, The Dumping
Union, David Haywood]
-mame/irem/m72.cpp: corrected MCU clock for imgfightjb, game boots [Brian Troha]
-vtech/vsmile.cpp: Use the same SYSTEM port inputs as vsmile. (#10844) [KanedaFr]
-macrtc: fix clock not telling time on Windows for Mac and Apple IIgs systems. [R.
Belmont]
-Sorted mame.lst by project - location of all new additions has to make sense now.
[Vas Crabb]
-bus/nabupc: Fixed debug builds (const violation in assert expression). [Vas Crabb]
-Add -listbios command to list alternate BIOSes for drivers and devices [AJR]
-Major D3D and BGFX code refactoring and bug fixes: (#10858) [Ryan Holtz]
* render/bgfx: Improved clearing and blending. Added prescale support. Fixes
MT07586, MT07587, MT08084.
* render/bgfx: Fixed blend and tint handling. (Fixes Github #1953).
* render/bgfx/blendreader.cpp: Support non-separated blend mode specification for
BGFX effects.
* render/bgfx: Reworked how horizontally-padded screen textures are handled.
Likely fixes MT08512 and MT08505.
* render/bgfx: Ensure that a texture's width margin is updated in all cases.
* render/d3d/d3dhlsl.cpp: Fixed tinting in HLSL post-processing mode.
* render/d3d/d3dhlsl.cpp: Avoid most redundant state-setting calls. Reduces D3D
API calls by about 90% on fruit machine drivers.
* render/d3d/d3dhlsl.cpp: Assign SourceDims and QuadDims uniforms to only those
effects that use them.
* machine/laserdsc.cpp: Always add video quad to screen container, adjust tint
based on m_videoenable instead.
-render/bgfx: Got rid of a lot of unnecessary object copying during setup. [Vas
Crabb]
-osd: Turned video modules into actual modules, fixed various issues. [Vas Crabb]
* Don't ignore the return status of OSD module initialisation. Attempt to fall
back to an alternate module if the selected module
fails to initialise. Log more useful diagnostic information at verbose level.
* Fixed BGFX crash on exit after toggling fullscreen. Also persist more settings
than just the selected chains across toggling
fullscreen.
* Turned video modules into OSD modules in the same sense as all the other OSD
modules. They now use the same selection/fallback
mechanism as all the other modules without special extra code in the OSD
implementations.
* Untangled some object ownership mess. Windows own renderers, OSD objects own
windows. Fixed a refrence loop that caused the
first window object to always leak.
* Don't create renderer object until after underlying window has been created.
Fixed issues with order of creation/destruction
when toggling fullscreen or changing prescale in fullscreen with -switchres in
SDL builds.
* Use more smart pointers in BGFX and Direct3D render modules. Most of the code
now reutrns a smart pointer when handing over
ownership or a naked pointer when retaining ownership. Fixed a few leaks and
simplified cleanup code.
* Encapsulated various OSD modules better.
-Implemented probe for D3D module to detect lack of D3D9 sooner. [Vas Crabb]
-mame/*: further updated #ifndef guards to the current tree structure [Ivan
Vangelista]
-render/drawd3d.cpp: Fixed prescaling without HLSL - WRL COM pointer has some
surprises. [Vas Crabb]
* Also added some additional error checking.
-osd: Don't swallow text input with -keyboardprovider win32 (addresses GitHub
#7911). [Vas Crabb]
-Fix upd7810 serial input failing to detect the start bit of the next byte if there
are zero serial idle state bits sent between the
serial bytes to the upd7810 receive line. [Lord Nightmare]
-docs: Added an introduction to the input system for developers. [Vas Crabb]
* emu/ioport.cpp: Removed a long-outdated comment that is now rather misleading.
-i386: don't change x87 stack pointer until after memory access in case of a page
fault [cracyc]
-am9516: start dma cycle after chain on hardware request [Patrick Mackinlay]
-misc/opercoin.cpp: Dumped and added an Oper Coin slot machine. (#10874) [ClawGrip]
-megaphx.cpp: Added ASCII PCB diagrams and placeholders for PLDs on YoYo Spell.
(#10881) [ClawGrip]
-misc/usgames.cpp: Identified the Play and the Cancel buttons [Brian Troha]
-msx1_cart.xml: If one ROM in an area needs a loading offset, put an offset on all
ROMs in the area. [Vas Crabb]
-Also rename Workbench entries from wbenc* to the much more common wb* [Dirk Best]
-sega/model2.cpp: Added Sega game ID # and ROM board ID # for Daytona USA (Revision
A) [Brian Troha]
-dataeast/scregg.cpp: Corrected ROM labels for Eggs (USA) and documented BPROM type
[Brian Troha]
-debughlp.cpp: Use ovectorstream instead of static char array and sprintf [AJR]
-validity.cpp: Be a bit more paranoid with null pointer checks; also disallow empty
strings in BIOS definitions [AJR]
-spectrum_cass.xml: Added twelve working items and replaced one item with a better
dump. (#10812) [ArcadeShadow]
* Also corrected parent/cloneof relationships, publishers, release years (based on
the info provided by spectrumcomputing.co.uk).
Redump (spectrum_cass.xml)
--------------------------
Mix And Match With Maggie [Luís Rato, Planeta Sinclair]
-imacg3.cpp, powermacg3.cpp: added Cuda, MacADB, and DIMM serial presence detect
readback. [R. Belmont]
* mpc106.cpp: fixed endianness of register access, hooked up RAM, made compatible
with RAM device. [R. Belmont]
* cuda.cpp: Added I2C I/O hookups. [R. Belmont]
* heathrow.cpp: Hack for unknown register that imac was stuck on. [R. Belmont]
* dimm_spd.cpp: New device that provides a configurable DIMM serial presence
detect readback for I2C or SMBus. [R. Belmont]
-misc/gfamily.cpp: Replaced gmfamily hard disk image with a correctly created CHD.
(#10904) [Recreativas.org]
-nes zapper: improve trigger, put bandai lightgun in its own file [hap]
-sega/naomi.cpp: dumped data ROMs from virnbap set [zozo, rtw, MetalliC]
-sega/naomi.cpp: dumped missing data ROM from hotd2p set [zozo, rtw]
-msx2_cass.xml: Update note and serials. Removed redlight and renamed redlighta to
redlight. (#10906) [wilbertpol]
-amiga_workbench.xml: Added various Workbench dumps for version 1.0, 1.1 and 1.2.
Add list of known part numbers. [Dirk Best]
-srcclean and bump copyright date on language files to 2023 [Vas Crabb]
-3rdpary/bimg: Just disable SSE on all 32-bit builds to be safe. [Vas Crabb]
-chessking_cart.xml: Use better short name for cartridge, too. [Vas Crabb]