Commit Graph

3390 Commits

Author SHA1 Message Date
couriersud
63efcfcb85 netlist: code refactoring.
- rename mat_cr.h to pmatrix_cr.h
- Optimization to the gmres solver.
- Simplifcation of vector operation code
2020-09-20 17:34:54 +02:00
couriersud
0348faf9ae
Merge pull request #7214 from Lord-Nightmare/master
netlist: devices for MCM14524, CD4029, CD4030, CD4042, CD4049, CD4076 [Lord Nightmare]
2020-09-18 18:44:58 +02:00
couriersud
ed6900b990
emscripten: netlist and OpenGL improvements. (#7254)
* Most OpenGL link issues fixed. Two remain from drawogl.cpp.
    This isn't working anyhow.
* "-video accel" now uses WebGL. This allows GL based scaling and
    provides a performance improvement.
* Fixed pong and other games by adding another function to the
    exception whitelist
* Target now is mame.html. This allows emrun to be used for testing.
    mame.js is created as well and thus the current behaviour
    unchanged.
2020-09-18 23:06:48 +10:00
Lord-Nightmare
bff0710c57 Netlist devices for MCM14524, CD4029, CD4030, CD4042, CD4049, CD4076 [Lord Nightmare] 2020-09-17 22:56:49 -04:00
couriersud
c127811083 netlist: Move ICL8038_DIP and NE556_DIP to core.
* Remove code duplication.
2020-09-17 19:44:51 +02:00
AJR
069511dace New machines marked as NOT_WORKING
----------------------------------
Roland JD-800 Programmable Synthesizer [DBWBP]
2020-09-17 12:28:53 -04:00
Patrick Mackinlay
eb3d3ccb50 machine.lua: revert unwanted addition 2020-09-17 19:09:37 +07:00
Patrick Mackinlay
4b9cef80f2 news_68k: incorporate dmac changes
* NEWS-OS now boots and runs in serial console mode
2020-09-17 19:06:09 +07:00
Dirk Best
c6b0ecdc6f New machines marked as NOT_WORKING
----------------------------------
Informer 213 [Bitsavers]
2020-09-17 12:31:14 +02:00
MetalliC
bd89e921a3 fix build 2020-09-17 12:22:03 +03:00
Erwin Jansen
9a0c63f673
Add MDCR support for P2000t (#7215)
This adds support for the mini digital cassette recorder that can be
found inside a P2000t. This implementation is based on documentation
that can be found in https://github.com/p2000t/documentation.

In memory of NPM Jansen, who taught me all the magic of bits and bytes.
2020-09-17 18:39:48 +10:00
hap
485a7bebf5 arcade.lua: remove nonexistent file 2020-09-16 10:49:58 +02:00
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