Commit Graph

916 Commits

Author SHA1 Message Date
Vas Crabb
4ea3cd0bc1 Streamline machine configuration macros - everyone's a device edition.
Start replacing special device macros with additional constructors,
starting with ISA, INTELLEC 4 and RS-232 buses.

Allow an object finder to take on the target of another object finder.

(For a combination of the previous two things in action, see either the
INTELLEC 4 driver, or the Apple 2 PC Exporter card.  Also check out
looping over a device finder array to instantiate devices in some
places.  Lots of things no longer need to pass tags around.)

Start supplying default clocks for things that have a standard clock or
have all clocks internal.

Eliminate the separate DEV versions of the DEVCB_ macros.  Previously,
the plain versions were a shortcut for DEVICE_SELF as the target.  You
can now supply a string tag (relative to current device being
configured), an object finder (takes on the base and relative tag), or
a reference to a device/interface (only do this if you know the device
won't be replaced out from under it, but that's a safe assumption for
your subdevices).  In almost all cases, you can get the effect you want
by supplying *this as the target.

Eliminate sound and CPU versions of macros.  They serve no useful
purpose, provide no extra checks, make error messages longer, add
indirection, and mislead newbies into thinking there's a difference.

Remove a lot of now-unnecessary ":" prefixes binding things relative to
machine root.

Clean up some miscellaneous rot.

Examples of new functionality in use in (some more subtle than others):
* src/mame/drivers/intellec4.cpp
* src/mame/drivers/tranz330.cpp
* src/mame/drivers/osboren1.cpp
* src/mame/drivers/zorba.cpp
* src/mame/devices/smioc.cpp
* src/devices/bus/a2bus/pc_xporter.cpp
* src/devices/bus/isa/isa.h
* src/devices/bus/isa/isa.h
* src/devices/bus/intellec4/intellec4.h
2018-05-06 00:51:27 +10:00
R. Belmont
cc4996ff5b
Merge pull request #3516 from DavidHaywood/030518_2
new machines marked as NOT WORKING
2018-05-04 16:38:19 -04:00
AJR
1ae8286955 cit101: Somewhat major improvements
- High level emulation of serial keyboard (only sort of works; probably should be less sophisticated)
- Add double height and double width attributes
- Adjustable start of screen pointer (necessary for SET-UP mode)
- Reconfigure screen for 80/132-column and 50/60 Hz modes

dikeyboard: Add scan_complete callback (nw, sort of hacky but cit101 keyboard works worse without it)
2018-05-04 09:52:49 -04:00
DavidHaywood
ee0469ad4a new NOT WORKING 2018-05-03 21:30:25 +01:00
AJR
20f49a2f4e Rename machine/latch.* to machine/output_latch.* (nw)
- Use device_resolve_objects to resolve callbacks in output_latch_device (nw)

Note that this renaming is not just for human convenience; genie seems to get confused by modifications to a header called latch.h and decides to recompile everything involving gen_latch.h as well.
2018-05-02 00:05:32 -04:00
AJR
5652b70ed6 New machines marked as NOT_WORKING
----------------------------------
Air Hockey (6.03, encrypted)
2018-05-01 16:57:54 -04:00
AJR
ed8bb86e08 cmi.cpp: Separate source file for CMI-01A device (nw) 2018-04-27 16:50:50 -04:00
yz70s
c663e1d7cc New device, SMSC FDC37C93x Plug and Play Compatible Ultra I/O Controller ! [Samuele Zannoli]
It is not complete yet but the floppy disk and keyboard work and is enough to boot the m55hi-plus motherboard.
2018-04-27 09:43:50 +02:00
fulivi
c7fd7ad2c8 hp_ipc: added HPIB interface chip & remotizer device 2018-04-26 16:27:47 +02:00
Dirk Best
02004c6c51 Devicify Sega 315-5649 2018-04-25 21:57:04 +02:00
mooglyguy
8e39405a42 -vp415: Added proper dumps of Module S and Module W MCUs, which have identical programs. [Ryan Holtz, Simon Inns] 2018-04-24 19:58:44 +02:00
mooglyguy
31579ede9a -indy_indigo2: General cleanup, device-ified HAL2 and HPC3, and moved HAL2, HPC3, and IOC2 devices into their own files. [Ryan Holtz] 2018-04-23 23:05:20 +02:00
angelosa
eda7537f38 Missed committing this one (nw) 2018-04-21 17:27:04 +02:00
angelosa
1b3c344ba3 Bulk move includes/nb141*m*.h -> machine/nb141*m.h (nw) 2018-04-21 17:26:01 +02:00
AJR
f45be6f709 hp48_port: Eliminate driver_data calls; separate source files; reduce dependency on driver class somewhat but not ideally enough (nw) 2018-04-20 12:57:29 -04:00
ajrhacker
9195314887
Merge pull request #3469 from shattered/_3ab0ba4
ms6102: add EAROM device + minor keyboard fix (nw)
2018-04-18 15:44:53 -04:00
Sergey Svishchev
05631edc1a ms6102: add EAROM device + minor keyboard fix (nw) 2018-04-18 22:38:32 +03:00
mooglyguy
5ae175ff11 vp415 skeleton updates, nw 2018-04-18 19:17:11 +02:00
Dirk Best
f0a77cb766 model1/model2: Emulate Model 1 I/O board, remove I/O RAM device
This includes an emulation of the Sega 315-5338A I/O controller which is
also hooked up to the ufo21 driver now.
2018-04-18 00:25:33 +02:00
David Haywood
261bcfa3cd XaviX - current checkpoint, tidying, reorganization etc. (+ general TV game work) (#3450)
* xavix - tidy ups, reorganization, current notes etc.

* didn't mean to push a copy (nw)

* shift some common code around for palette handling (nw)

* lean less heavily on memory system (nw)

* revert 'shift some common code around for palette handling (nw)' to be revisited later.

* add missed include guards (nw)

* new machines marked as NOT WORKING
Skannerz TV [Sean RIddle, Peter Wilhelmsen]

This will need the communication protocol with the barcode scanner unit reverse engeering (the scanner unit has it's own MCU that isn't dumped and for which we have no method of dumping) this also probably means it will need improvements to the general vii.cpp handling of interrupts and serial ports (which Cricket needs too)
2018-04-16 22:34:42 -04:00
Ryan Holtz
c2c576dad4 Added skeleton SAA1403 device, nw 2018-04-13 21:04:46 +02:00
Dirk Best
d4d7f94c5f Rename 315-5338a to m1io since it doesn't actually represent that device 2018-04-08 23:31:39 +02:00
Lord-Nightmare
dac78a0aae typo (nw) 2018-04-08 14:15:23 -04:00
Dirk Best
d2e0e1f182 Devicify Sega 315-5338A 2018-04-08 17:40:23 +02:00
David Haywood
26d3f01402 new WORKING machines (#3427)
* new WORKING machines
Master Boy (1987, Z80 hardware) [David Haywood, ARPA, Recreativas.org, The Dumping Union]

* info update (nw)
2018-04-07 11:52:32 +02:00
Olivier Galibert
1d338061af mb86233/4 rewrite [O. Galibert]
model1: Use the real 315-5573 Virtua Racing coprocessor program [Team Caps0ff]
model2: Rewamp the coprocessors communications [O. Galibert]
2018-04-05 15:01:26 +02:00
AJR
bc2acfcb76 atarivad: Separate source files from atarigen (nw) 2018-04-03 17:34:54 -04:00
Dirk Best
e3ec44528c Fix tiny build 2018-04-02 12:40:03 +02:00
Ariane Fugmann
2ad88fd875 M1COMM: Add preliminary MB89374 emulation (#3378)
* M1COMM: Add preliminary MB89374 emulation (nw)

* M1COMM: moved knowns roms to device. (nw)

* MB89374: arrays and savestates (nw)
2018-03-24 08:40:45 -04:00
AJR
57f7d29b11 mess.lua: Pull a few drivers out of the grab bag (nw) 2018-03-21 20:23:12 -04:00
Nigel Barnes
7ad824c85b New machines marked as NOT_WORKING
----------------------------------
Poly Proteus (Standalone) [Nigel Barnes, Andrew Trotman]
2018-03-21 20:53:11 +00:00
Dirk Best
edbb11a107 Casio CZ-101: Skeleton driver 2018-03-21 15:11:32 +01:00
AJR
3a41359c74 Update mame.lst, mess.lua, mess.flt (argh) 2018-03-20 16:56:59 -04:00
Dirk Best
8c70c1418b Casio HT-6000: Skeleton driver 2018-03-18 12:01:37 +01:00
David Haywood
13cbded6cc use a handcrafted c-chip rom for Rainbow Islands Extra, pending a real dump, allows removal of simulation code and general cleanups. (#3338)
also made rainbow islands extra a parent, since it has it's own game code, own c-chip and is generally considered a semi-sequel rather than a bugfix / revision of the original game.

(best I can tell behavior matches the differences between original and extra that were present in the simulation at least, but obviously the real chip could be hiding more secrets)
2018-03-17 18:35:46 -04:00
Ivan Vangelista
f25097f2f2 merged tcl.cpp into goldstar.cpp, since it's same hardware (nw) 2018-03-17 14:25:37 +01:00
Ivan Vangelista
2d0dbde7d6 new not working machine
------------------------------------
Lucky Draw (Pinball) [PinMAME]
2018-03-17 11:14:43 +01:00
Dirk Best
3ffd6b839f uPD934G: Preliminary emulation 2018-03-17 09:10:18 +01:00
Vas Crabb
245f822e7d use more constexpr and literal classes in UML to give compiler more optimisation opportunities (nw) 2018-03-17 00:58:54 +11:00
AJR
b6d5d656c7 New machines marked as NOT_WORKING
----------------------------------
CIT-101 [Doug Crawford]
2018-03-15 17:56:27 -04:00
Dirk Best
6e58642b35 rz1: Skeleton driver [Arashikage, Dirk Best] 2018-03-13 14:07:13 +01:00
David Haywood
0b5b391ffd use real dumped c-chip for bonzeadv, remove simulation [Team Caps0ff] (#3318)
* use real dumped c-chip for bonzeadv, remove simulation [Team Caps0ff]

this most likely fixes  MT00377,  MT00205

* typo (nw)

* missed a file (nw)

* no longer fights (nw)

* tidy here too (nw)

* c+p typo (nw)
2018-03-11 17:05:54 +01:00
AJR
b4a7ef663d vt100_kbd: Rewrite as UART-based serial device 2018-03-09 20:30:29 -05:00
angelosa
c912d19d26 new NOT WORKING game
--------------------
Badlands (Konami) [Angelo Salese]
2018-03-06 15:50:09 +01:00
David Haywood
db566d4954 c-chip: use dumped c-chip for Volfied and Superman, remove simulation [Team Caps0ff] (#3298)
* c-chip: use dumped c-chip for Volfied [Team Caps0ff]

interrupt source still needs to be verified, but I've tested this to the end and it works fine with the real dump.

* less static (nw)

* hook the coin counters back up (nw)

* tweaks (nw)

* was too close after tweak (nw)

* add support for dumped superman c-chip too, removed simulation [Team Caps0ff]

also made the 68k and upd7810 use different banked windows into the RAM, this seems to prevent the fighting I was seeing, and also superman suggests that it might be correct, as it puts response values in a bank for the 68k but then changes the window so the 68k can't see them.  needs further testing tho (other c-chip dumps might tell us more later)

* use the 68k side handlers on megab too, even if it really doesn't care about anything (nw)

* remove debug structure (nw)
2018-03-05 20:32:52 -05:00
cracyc
946340b119 alphatpx: slower yet (nw) 2018-03-01 14:57:26 -06:00
Ivan Vangelista
37f5dca1ba new not working machine
-------------------------------------
Milton Bradley Electronic Milton [Sean Riddle]
2018-03-01 19:04:19 +01:00
R. Belmont
5ffc8a79a4
Merge pull request #3266 from JoakimLarsson/diablo_1
WIP: Diablo printer CPU
2018-02-28 14:03:10 -05:00
cam900
5a8890c31c hyprduel : Cleanups, Add imagetek_i4220_device, Allocate sound output… (#3272)
* hyprduel : Cleanups, Add imagetek_i4220_device, Allocate sound output form real PCB(real PCB only has mono sound output)
imagetek_i4100.cpp : Boost tilemap drawing routines when VIDEO_UPDATE_SCANLINE case of screen video attributes, Add notes

* Minor cleanup, Add notes

* imagetek_i4100 : Fix tilemap drawing at tilemap offset X/Y !=0 case

* hyprduel : Fix mistake

* magerror : Remove MACHINE_NOT_WORKING Flags
2018-02-28 14:02:02 -05:00
angelosa
bc3cc38a6c model2.cpp: added geo dasm dump to a custom debugger command [Angelo Salese] 2018-02-27 19:57:41 +01:00