Commit Graph

85630 Commits

Author SHA1 Message Date
Vas Crabb
de7b5a1ec3 Implemented probe for D3D module to detect lack of D3D9 sooner. 2023-02-01 04:27:05 +11:00
Ivan Vangelista
fa59c3fc31 mame/v*-z*: put drivers in anonymous namespaces where applicable, updated #ifndef guards to the current tree structure 2023-01-31 18:07:43 +01:00
Vas Crabb
2810c9d91b osd: Turned video modules into actual modules, fixed various issues.
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.
2023-02-01 04:00:44 +11:00
Patrick Mackinlay
12e5fa3906 z80dma: improved end of block test 2023-01-31 16:03:31 +07:00
AJR
faa0ede657 spclforc, spcfrcii: Add sound device 2023-01-30 20:06:22 -05:00
AJR
f0be18a446 se3208: Execution code cleanup
- Remove most macros, replacing a few important ones with coretmpl inlines
- Eliminate some unnecessary operand masking
2023-01-30 19:14:13 -05:00
Olivier Galibert
ec0c119bed moof: Fix the flux tracks 2023-01-30 20:14:50 +01:00
Ivan Vangelista
1a31b43897 New software list items marked not working
------------------------------------------
Pre-Computer Speller [Sean Riddle]
2023-01-30 18:14:52 +01:00
Ivan Vangelista
db6b9175c1 mame/t*,u*: put drivers in anonymous namespaces where applicable, updated #ifndef guards to the current tree structure 2023-01-30 18:02:54 +01:00
Miodrag Milanović
b1dd01fca8
plib/plist.h: Stop using deprecated std::iterator template. (#10864) 2023-01-31 01:28:01 +11:00
Patrick Mackinlay
3035a7b436 z80dma: correct end of block test again 2023-01-30 20:03:03 +07:00
wilbertpol
34c25a9a36
msx1_cass.xml: Updated metadata and notes on a lot of software releases. (#10860)
* Moved 7cardstd and 7cardstda to B sides of Samantha Fox Strip Poker.
* Renamed cityconj to citycona.
* Renamed queenglf to golfa.
* Renamed bumpygts to juegue03.
* Renamed maziacs to msxsof02.
* Renamed cubik to msxsof06.
* Renamed 007agesp to msxsof07.
* Renamed batespac to msxsw13.
* Renamed ean info lines to gtin.
* Fixed duplicate part name in tutor.
* Added developer info to Base de Datos.
2023-01-30 07:33:29 +11:00
Ivan Vangelista
c6b00ccff2 New software list items marked not working
------------------------------------------
misterx: Mega-Quiz [Team Europe]
2023-01-29 09:05:16 +01:00
Vas Crabb
57d9938c7a render/bgfx: Fixed Linux build. 2023-01-29 07:20:51 +11:00
Vas Crabb
eaa43879cd render/bgfx: Got rid of a lot of unnecessary object copying during setup. 2023-01-29 06:53:43 +11:00
MooglyGuy
5671484fc8
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.
2023-01-29 03:59:25 +11:00
ClawGrip
cc7ad69ddd
pinball/inder.cpp: Fix date in note about "Mundial 90". (#10851) 2023-01-29 03:51:34 +11:00
Vas Crabb
de9115a587 osd/modules/input: Fixed Linux build. 2023-01-29 03:40:05 +11:00
Vas Crabb
68472d3d72 Various input and OSD refactoring:
osd: Supply OSD object to modules on initialisation.  Encapsulated some
event handling in the OSD objects rather than leaving it in free
functions.  Put various stuff in namespaces.

osd/modules/input: Enabled dinput, xinput and winhybrid modules for
Windows SDL builds, and enabled background input for dinput and xinput
(and by extension winhybrid) modules.  Also fixed some COM and X11
resource leaks.

osd/modules/input/input_sdl.cpp: Flipped SDL mouse button order to match
Windows, and exposed vertical and horizontal scroll as Z and rZ axes.
Moved SDL UI event handling out of input devices into OSD object.

osd/modules/input_rawinput.cpp: Changed lightgun Z axis token so it's
correctly identified as a relative axis (it maps to the scroll wheel
equivalent).

osd: Added an option to choose the network provider module.  Mostly
useful if you build with both TUN/TAP and pcap support included, or if
you want to disable emulated networking completely.

emu/input.cpp: Use a better strategy for assembling input code names
that uses fewer temporary strings and doesn't require use of the
non-Unicode-aware space trimming function (fixes MT08552).

osd/modules/input_dinput.cpp: Improved polling logic.

osd: Made various parts of the input code less dependent on concrete emu
objects, and reduced inappropriately passing around the machine object.
Made input modules less dependent on OSD implementation.  Encapsulated
some stuff and got rid of some vestigial newui and SDL1 support code.
Cleaned up some interfaces.  Moved OSD options classes to their own
files.

Prepare to remove main.h from emu.h - it's mostly used to get the
application name, which the vast majority of emulated devices don't need
to do.
2023-01-29 03:16:14 +11:00
Ivan Vangelista
01fcb2e0de New systems marked not working
------------------------------
Primus Expert mit Stimme [Team Europe]
2023-01-28 09:33:23 +01:00
Vas Crabb
2498f2b7cf Miscellaneous fixes and refactoring:
ui/analogipt.cpp: Fixed bar graph display for fields with ranges
that wrap through zero.

emu/inputdev.cpp: Separateed analog axis deadzone and switch threshold
settings, reduced default deadzone, and fixed a potential division by
zero if the deadzone and saturation settings are equal.

emu/ioport.cpp: Fixed behaviour of absolute analog fields where range
passes through zero - it previously only worked for specific
combinations of mask, minimum and default.  Removed a workaround from
universal/getaway.cpp that is no longer necessary.

emu/input.cpp: Fixed unintuitive behaviour when an absolute field is
assigned an OR combination of a relative control folled by an absolute
control (e.g. Mouse X or Joy 1 LSX).  Also fixed reading axis input
sequences where an axis code is followed by a switch code (these can
only be produced by manually editing configuration files, not through
MAME's UI), and fixed the returned type when multiple relative axes sum
to zero.

osd/modules/input_dinput.cpp: Fixed hat switches being stuck in up
position when input is suspended in the background

taito/taitoio_yoke.cpp: Give throttle control a distinct type, and don't
auto-centre.

osd: Added option to select MIDI provider module (currently only
PortMidi and the dummy module are available).  Also put various things
in namespaces, and fixed builds including SDL sound module with native
Windows OSD.

emu/validity.cpp: Added check to catch I/O port fields using UI input
types.

emu/inpttype.ipp: Renamed inputs that were causing confusion.  "Bill"
and "Track" were causing confusion for translators and hence likely
causing confusion for many users, especially those who are not native
English speakers.  "Track" as an abbreviation for "Trackball" was
frequently being mistranslated, e.g. in the sense of a CD track
selection button or even in the sense of a railway track.  There's no
reason to abbreviate it.  "Bill" in the US English sense as a banknote
is too ambiguous and was causing confusion for translators.  It's better
to use the less ambiguous "Banknote".  Corrected Greek translations of
"Trackball".

Don't run GitHub Actions on issue template changes.
2023-01-28 08:16:53 +11:00
hap
536c6eeb55 gladiatr: patch mcu roms to fix coin issue 2023-01-27 21:58:09 +01:00
Ivan Vangelista
40068a5879 New systems marked not working
------------------------------
Fruit Genie (Version 1-1-03) [Brian Troha, The Dumping Union]
2023-01-27 18:42:51 +01:00
Ivan Vangelista
deff5d3710 mame/o*-s*: put drivers in anonymous namespaces where applicable, updated #ifndef guards to the current tree structure 2023-01-27 18:32:52 +01:00
negunma
6c370544b7
dynax/ddenlovr.cpp mmpanic: fix AY8910 clock (#10856)
* dynax/ddenlovr.cpp mmpanic: fix AY8910 clock
According to video from PCB, AY8910 clocks need to be corrected. Also, Animalandia Jr. PCB Notes shows all clock values already verified.
2023-01-27 17:36:05 +01:00
Patrick Mackinlay
3ecac2e50c labtam: add serial ports 2023-01-27 12:15:41 +07:00
hap
e577e83f40 ggm: add lasvegas keypad 2023-01-26 23:53:31 +01:00
hap
fb944b4882 gladiatr: update notes 2023-01-26 21:53:30 +01:00
hap
024bfb4854 New working software list items
-------------------------------
ggm: Capablanca-S Edition: Master Chess Endgame, Las Vegas 21: Master Blackjack [Berger, Berger]
2023-01-26 19:30:12 +01:00
Lord-Nightmare
383e09bf52 New systems marked not working
------------------------------
DECtalk DTC-03 [Lord Nightmare, crazyc]
2023-01-26 13:21:15 -05:00
Patrick Mackinlay
3e8c8b522a labtam: fix z80sbc fdcset/fdcclr/fdcatn logic 2023-01-26 11:42:36 +07:00
Patrick Mackinlay
9bebc8adf6 z80dma: correct end of block test 2023-01-26 11:36:51 +07:00
AJR
f0eab2717c New machines marked as NOT_WORKING
----------------------------------
HP 7596A DraftMaster II [Bitsavers]
2023-01-25 09:09:11 -05:00
Patrick Mackinlay
0a2dc7f25b labtam: vdu/comm refactoring and more firmware changes 2023-01-25 09:09:40 +07:00
AJR
5087e6c2f9 Add -listbios command to list alternate BIOSes for drivers and devices 2023-01-24 21:00:08 -05:00
AJR
0877e43699 nios2: Fix execution of 'or' instruction 2023-01-24 20:49:25 -05:00
Patrick Mackinlay
0e793af92a labtam: various improvements
* added 8086 CPU card variant of VDU/COMM card
* added additional firmware versions for z80sbc and ns32k cards
2023-01-24 15:22:00 +07:00
Vas Crabb
b40a6da89e bus/nabupc: Fixed debug builds (const violation in assert expression). 2023-01-24 04:31:32 +11:00
Vas Crabb
35a8c2fd21 Sorted mame.lst by project - location of all new additions has to make sense now. 2023-01-24 03:59:41 +11:00
Brian Johnson
07b19fb3ed
misc/nabupc.cpp, bus/nabupc: Added support for NABU PC and simulated host. (#10676)
New working systems
-------------------
NABU PC
2023-01-24 03:08:37 +11:00
mdeslaur
1a62e147e6
midway/omegrace.cpp: Added a previously unknown version of Omega Race. (#10838)
New working clones
-----------
Omega Race (set 3, 7/27)
2023-01-24 02:33:55 +11:00
ClawGrip
7a96459cc8
misc/babysuprem.cpp: Added skeleton driver for an Andra Z80-based slot machine. (#10839)
New NOT_WORKING machine
-------------------------------
Baby Suprem [jordigahan, ClawGrip]
2023-01-24 02:23:15 +11:00
ArcadeShadow
80ad965518
amigaecs_flop.xml: Replaced abbreviated country names in descriptions with full names. (#10847)
Replaced countries' abbreviation by their full name
2023-01-24 02:18:56 +11:00
ArcadeShadow
f6b1aa4f99
cd32.xml, cdtv.xml: Cleaned up descripitons. (#10848)
Replaced "Euro" with "Europe", use lowercase for descriptive text.
2023-01-24 02:18:07 +11:00
ArcadeShadow
48f6bc4f8c
amigaaga_flop.xml: Replaced abbreviated country names in descriptions with full names. (#10846) 2023-01-24 02:17:03 +11:00
Ivan Vangelista
1439ea5265 New working clones
------------------
Raiden II (Australia) [Ben Maff]
2023-01-23 07:19:29 +01:00
Ivan Vangelista
806bd68e14 Clones promoted to working
--------------------------
Image Fight (Japan, bootleg) [Brian Troha]
2023-01-22 08:34:07 +01:00
benrg
4b33449a76
Improve NTSC parameter descriptions and ranges in OSD (#10782)
Correct units of some parameters (they are MHz, not Hz) and correct one
default (color carrier should be 3.57 MHz, not 35.7). Use a step size of
1/8800 MHz for the color carrier so that the NTSC value of 315/88 MHz
can be exactly represented (to float precision).
2023-01-21 18:56:05 -05:00
ArcadeShadow
095dcb9e53
ibm5170.xml: 8 New working software list additions (#10726)
* ibm5170.xml: 8 New working software list additions

New working software list additions
--------------------------------------------
Caesars Palace for Windows [Ihatediskettes, sarchive.org]
PC Plus (Issue 80 - May 1993) [Tkrns, archive.org]
PC Plus (Issue 96 - September 1994) [Tkrns, archive.org]
PC Plus (Issue 102 - April 1995) [Tkrns, archive.org]
Syndicate (Europe, alt) [The Good Old Days]
Syndicate (Germany) [The Good Old Days]
Syndicate: American Revolt [The Good Old Days]
Where in Space is Carmen Sandiego? [The Good Old Days]

* Update ibm5170.xml

corrected typo on "pcplus9409" note

* Update ibm5170.xml

note correction (missing comma)
2023-01-21 22:26:07 +00:00
arbee
fb9c9c58e9 macrtc: fix clock not telling time on Windows for Mac and Apple IIgs systems. [R. Belmont] 2023-01-21 15:21:23 -05:00