Commit Graph

3378 Commits

Author SHA1 Message Date
Vas Crabb
6adc508015 emu/rendlay.cpp: Added parameter animation and state masks.
Components may have multiple bounds and/or color child elements with
state attributes, allowing for piecewise linear position/size/colour
animation.

Components may have a statemask attribute, allowing for things like
using external images to draw a multi-segment LED/VFD display without
requiring dozens of outputs for the individual lines or thousands of
images for all possible states.  (Texture caching still never releases
anything, so MAME can still exceed the maximum number of textures, but
that’s a separate issue.)

Image components with alpha now blend over previously drawn components.

Layouts have been changed to use yes/no for inputraw to match what's
used for flipx/flipy.  External layouts with 1/0 will still work, but
complay.py will complain.
2020-09-16 02:55:04 +10:00
AJR
7e121d68bb kl5c80a12, kl5c80a16: Added emulation of KP63(A) Timer/Counter unit. This improves timings in animalc, haekaka, pyenaget and tdoboon.
* animalc: Pile kludge upon kludge for poorly understood video timing register
* gocowboy, itazuram: Increase frequency of one timer interrupt (and hopper timing in gocowboy)
* kc82, kp69: Modernize state_add syntax
2020-09-14 23:32:58 -04:00
couriersud
48fada3c34 netlist: remove obsolete headers from netlist.lua 2020-09-13 12:20:11 +02:00
cam900
612bf6546f Device-fied PRO-CT0
for protection, aka ALPHA-8921(in Some later 80s alpha denshi PCBs) or SNK-9201
prot_fatfury2.cpp: Convert protection into alpha_8921.cpp device
2020-09-13 18:51:53 +10:00
couriersud
ca31c844cd netlist: move to generated header and link support files files.
* Removed device and macro header files.
* All of those can be generated automatically so going forward there is
no need for these any longer.
* Introduced the modules concept. Modules are netlists for which
automatic lib entries are generated.
* Going forward you just store them in macro/modules and they will be
automatically registered as device elements.
* You need to do a "make generated" is src/lib/netlist/build
* Some_device.cpp still needs to be added to netlist.lua
* Added documentation on how to add devices to netlist.
* Please refer to adding_devices.md for more information.
2020-09-12 23:20:16 +02:00
AJR
8edc2c5f91 New machines marked as NOT_WORKING
----------------------------------
Sony Trinitron Color Video Monitor BVM-20F1E [Corrado Tomaselli]
2020-09-12 09:20:55 -04:00
hap
c4373361d4 New machines marked as NOT_WORKING
----------------------------------
Constellation Expert [hap, Berger]
2020-09-10 22:29:29 +02:00
Vas Crabb
b68c48f5f8 Remove last remaining uses of <background> elements in layouts, and print warning messages on encountering deprecated elements. 2020-09-10 05:23:47 +10:00
Ivan Vangelista
8a5d4df2f7 New machines marked as NOT_WORKING
----------------------------------
Matrix [bytestorm]

New working clones
------------------
Midnight Run: Road Fighter 2 (AAA, Asia v1.10, newer sound program) [Guru]
Street Fighter II': Champion Edition (bootleg, set 1) [f205v, maru79]
Street Fighter II': Champion Edition (bootleg, set 2) [f205v, maru79]
Street Fighter II': Champion Edition (bootleg, set 3) [Janniz, f205v, maru79]
2020-09-09 18:14:20 +02:00
Vas Crabb
b2158bd6ed -Eliminate remaining <bezel> elements from internal layouts.
These layouts have changes to element stacking order that can't be
avoided without changing the group structure in the layout files.  I
think it's harmless, but it's possible it could have had a detrimental
effect on risc2500 (I tested it and didn't see any changes, but I might
not have known what to look for).

-complay.py: Added basic checks for dupicate collection names.

As with other checks of this kind, it doesn't actually instantiate the
layout so it doesn't check things when variable substitution is
involved.
2020-09-09 21:29:45 +10:00
Dirk Best
a39330c19a New machines marked as NOT_WORKING
----------------------------------
Informer 213 AE [Dirk Best, MattisLind]
2020-09-08 09:13:20 +02:00
Ryan Holtz
18d3857d42 New machines added as MACHINE_NOT_WORKING
-----------------------------------------
Newton Notepad [Pablo Marx]
MessagePad [Pablo Marx]
ExpertPad PI-7000 [Pablo Marx]
MessagePad 110 [Pablo Marx]
MessagePad 120 [Pablo Marx]
Marco [Pablo Marx]
MessagePad 130 [Pablo Marx]
eMate 300 [Pablo Marx]
MessagePad 2000 [Pablo Marx]
MessagePad 2100 [Pablo Marx]
2020-09-08 06:40:56 +02:00
Nigel Barnes
e5b039078f bus/electron/cart: Added the Pace RS423 Communications cartridge. 2020-09-07 16:58:02 +01:00
Dirk Best
bb65a67489 New machines marked as NOT_WORKING
----------------------------------
Informer 207/100 [Bitsavers]
2020-09-07 09:37:53 +02:00
Vas Crabb
67ec5e5b43 Finished adding new mechanism for allowing parts of views to be hidden.
Changed name of element to "collection" and initial visibility attribute
to "visible", and added them to documentation.  Also added them to
complay.py.

Fixed issue with collection inside group, and improved initial view
selection behaviour.

Updated some internal layouts to demonstrate new features, including
et3400, irrmaze, ltcasino, mekd3/mekd4, seawolf and vgmplay.

Removed all uses of cpanel, marquee and overlay from internal layouts
and removed them from complay.py to actively discourage use.  Also
cleaned up view names in layouts that were using them in place of
spaces, and removed some superfluous name attributes on elements that
won't do anything useful with an output value anyway.

Made vgmplay cycle visualiser modes when visualiser screen is clicked.

Fixed a copy/paste error in bus/rs232/hlemouse.cpp while I'm at it.
2020-09-07 01:40:41 +10:00
Dirk Best
fc855bc922 New not working machine
-----------------------
Informer 207/376  [Dirk Best]
2020-09-06 03:39:07 +02:00
Ivan Vangelista
aa236aa593 New machines marked as NOT_WORKING
----------------------------------
unknown Hobby Play slot machine [jordigahan, ClawGrip]
2020-09-03 23:00:40 +02:00
Michael Zapf
82b7fb4ece ti99: Added SID Master expansion card. 2020-09-02 00:04:02 +02:00
Lord-Nightmare
63a89f22da New machines marked as NOT_WORKING
----------------------------------
Votrax/Phonic Mirror HandiVoice HC-110 [Kevin Horton]
Votrax/Phonic Mirror HandiVoice HC-120 [Kevin Horton]
2020-09-01 16:08:08 -04:00
AJR
08d419517e New machines marked as NOT_WORKING
----------------------------------
Roland TR-505 Rhythm Composer [DBWBP]
2020-08-30 21:36:36 -04:00
Rhett Aultman
49466dc4ad
bus/a2bus: Added Uthernet card emulation for Apple IIgs (#7090)
* Ported Cirrus Logic CS8900A Crystal LAN MAC emulation from VICE and hooked it up to Apple II card device.
* Adds Ethernet networking support for Apple IIgs.
2020-08-31 11:22:32 +10:00
AJR
7a93c921fd tr707, tr727, mks7: Add skeleton MB63H114 device 2020-08-30 20:31:55 -04:00
David Haywood
87762e25b4
new WORKING machines (Plug & Play Double Dance Mania x2) (#7158)
* new WORKING machines
-----
Double Dance Mania: Supreme / Dance Supreme [Sean Riddle, David Haywood, Kamaal Brown]
Double Dance Mania: Mega 12 [Sean Riddle, David Haywood]

* new NOT WORKING
-----
My Arcade Wireless Video Game Station 200-in-1 (DGUN-2572) [Sean Riddle, David Haywood]
2020-08-30 11:08:26 -04:00
Vas Crabb
97a409b2a9 formats/flopimg.cpp: Use appropriate standard exceptions for reporting errors, allowing libemu to be removed from imgtool and floptool. 2020-08-30 17:22:17 +10:00
AJR
4957234b6a New machines marked as NOT_WORKING
----------------------------------
GEM RealPiano RP200 [DBWBP]
2020-08-29 09:37:23 -04:00
Vas Crabb
fa8337f62f makedep.py: Deal with loops when there are parent directory references in #include directives.
As an aside, it would be nice if the loops weren't there in the first place.
2020-08-29 18:10:28 +10:00
Robbbert
d9f4c96fac kim1: minor cleanup; added usage. 2020-08-28 19:58:21 +10:00
David Haywood
f634b3ee94
new NOT WORKING machines (#7142)
New NOT WORKING machines
----
Zeebo (Brazil) [Triple Oxygen]
2020-08-27 16:03:19 -04:00
Nigel Barnes
471781f99a bus/bbc/userport: Added the Sprow LCD Display. 2020-08-27 19:47:53 +01:00
couriersud
0aa5aea84f netlist: Fix various issues around include directories.
* removed include directory src/lib/netlist from various genie files to
avoid potential issues.
* Code using netlist should use #include "netlist/*".
* Updated includes.
* Fixed standalone makefile depend target to properly deal with relative
paths.
2020-08-25 19:41:32 +02:00
Nigel Barnes
2027f49eb3 bus/electron: Added the P.R.E.S. AP1/AP6 and First Byte Printer Interface devices. 2020-08-23 22:15:36 +01:00
Vas Crabb
164ef47ad2 srcclean for 0.224 2020-08-23 11:13:56 +10:00
Julian Sikorski
a264090e78
Enable ppc64le for travis (#7113)
* Added akkaarrh to the ci target.
* Switched Travis CI to Ubuntu Focal.
* Allow ppc64le CI build to fail.
* Report CI status as soon as a job has failed or remaining jobs are allowed to fail.
2020-08-22 13:23:11 +10:00
Aaron Giles
f7b263de20
Sound and other improvements to Sega G-80 games. (#7103)
Sound and other improvements to Sega G-80 games: [Aaron Giles, couriersud]
* Added netlist-based sound to Eliminator, Zektor, Space Fury, and Astro Blaster.
* Split the Sega Universal Sound Board and Speech Boards into their own separate files.
* Improved Universal Sound Board implementation for better accuracy in Star Trek and Tac/Scan.
* Wrote netlist-based backend for Universal Sound Board; currently disabled due to limitations in the system.
* Wrote netlist-based backend for Speech Board; currently disabled pending future sound system changes.
* Implemented wait states and the vector DRAW flag to help improve timing.

SP0250 Improvements: [Aaron Giles]
* Matched clock divider to real chip measurements.
* Fixed behavior when not fed enough data; addresses "gapping" in speech in Sega games.
* Implemented accurate LFR noise generator according to real chip measurements.
* Added pulse-width modulation DAC output mode for future consumption by netlist.

Netlist additions: [Aaron Giles]
* Added compile-time option to record nltool-compatible CSV files.
* Improved CD4020 implementation.
* Fixed CD4053 behavior.
* Added 74139 device.
* Added TL082 device.

8253 PIT changes: [Aaron Giles]
* Added explicit synchronization to all writes.
* Cleaned up some timing calculations to avoid double<->attotime conversions.
2020-08-19 19:33:13 -07:00
Nigel Barnes
fc785cecbc bus/electron: Added the JAFA Mode 7 Display Unit. 2020-08-19 22:59:51 +01:00
Vas Crabb
c8218dabdb Clean up clang options now that clang 5 is a hard requirement, and suppress xor-used-as-pow warning introduced in clang 10 2020-08-18 01:10:47 +10:00
Colin Douglas Howell
f7d786d3d0
sspeedr: new netlist audio implementation (#7081)
* sspeedr: new netlist audio implementation

Netlist-based audio implementation for sspeedr (Super Speed Race, 1979)
derived from Midway audio schematics, and based on that used for
280zzzap (280-ZZZAP) and lagunar (Laguna Racer) in the mw8080bw driver.
The Super Speed Race audio circuits are clearly derived from those games;
the biggest difference is the use of a linear feedback shift register
for noise generation.

* Updated netlist static solvers with recent netlist changes.
2020-08-16 21:32:45 -04:00
couriersud
c44d930015 netlist: Add tank to nl subtarget, update static_solvers. 2020-08-17 01:34:04 +02:00
arbee
9006bf69c1 apple2: added HAL Labs Gizmo digital joystick adapter [R. Belmont, Golden Child] 2020-08-16 14:59:44 -04:00
Ryan Holtz
e2231ddcd2 -atarittl: Added netlist for Tank. currently runs at about 0.005% of full speed, unsure why. 2020-08-16 20:04:34 +02:00
Nigel Barnes
ea75086da7 bus/bbc/fdc: Added the Kenda Professional DMFS and Microware/UDM DDFS boards. 2020-08-16 16:14:07 +01:00
ajrhacker
90a55f779d
Merge pull request #7063 from belegdol/disable-obsolete-imgui-functions-consistently
Define IMGUI_DISABLE_OBSOLETE_FUNCTIONS consistently
2020-08-12 15:00:54 -04:00
ajrhacker
d75377c53f
Merge pull request #7064 from belegdol/ci-target-fix
Fix ci build
2020-08-12 15:00:12 -04:00
couriersud
87b702b31f netlist: more include untangling.
* nl_base.h now basically only includes files from core.
* all headers in core compile on their own.
2020-08-12 20:17:10 +02:00
Julian Sikorski
fb3b53c6ad Fix ci build 2020-08-12 20:03:41 +02:00
Julian Sikorski
65b0df8761
Fix non-x86 build and try to make sure it does not break silently again (#7041)
* Do not build x64 DRC backend when C backend is forced
* New CI target (mametiny + kinst)
* Switch travis to CI target
* Switch appveyor to CI target
2020-08-12 12:54:22 -04:00
Julian Sikorski
1096db17b6 Define IMGUI_DISABLE_OBSOLETE_FUNCTIONS consistently
IMGUI_DISABLE_OBSOLETE_FUNCTIONS was defined in osd/modules.lua but not
in 3rdparty.lua. As a result, two different variants of struct ImGuiIO
were being defined, causing a C++ One Definition Rule violation
2020-08-12 18:22:59 +02:00
hap
138a281c6c odyssey2: add preliminary Videopac+ C7420 Home Computer Module emulation 2020-08-12 14:41:56 +02:00
David Haywood
bcb1d091c2
new NOT WORKING machines (#7049)
* new NOT WORKING machines
-----
PCP 8728 - 788 in 1 [David Shah]
unknown unSP based handheld [unknown]

* new NOT WORKING machines
------
Virtual Ping Pong (Protocol) [Sean Riddle, David Haywood]
My Arcade Gamer Mini 160-in-1 (DGUN-2953) [Sean Riddle, David Haywood]
2020-08-12 08:17:18 -04:00
AJR
1125310173 New machines marked as NOT_WORKING
----------------------------------
Lee Data 1220 Display Terminal [Bitsavers]
2020-08-11 18:47:46 -04:00