Commit Graph

14723 Commits

Author SHA1 Message Date
Aaron Giles
651e9aa99b Move screen update to happen prior to calling the vblank callbacks.
Solves MT04639 and probably a lot more issues. In fact, most of hap's
recent changes to handling things on the falling edge are unnecessary 
now.
2012-01-25 05:54:23 +00:00
Aaron Giles
9a976893cd MT04643 2012-01-25 05:43:16 +00:00
Aaron Giles
d60015dc9d Add -Woverloaded-virtual to catch mismatched overloaded
function signatures.
2012-01-25 05:11:03 +00:00
Scott Stone
28e649cdc6 Deadly printf spam when running ironfortj (~250mb of text!) (nw) 2012-01-25 02:12:30 +00:00
Brian Troha
ee71b3726b new clone added: Rapid Fire V1.1 Build 238
New Clone Added
-------------------------------
Rapid Fire v1.1 (Build 238) [Brian Troha, The Dumping Union]
2012-01-24 23:35:28 +00:00
Angelo Salese
e4e7328eac Support for CGA emulation for VGA, nw 2012-01-24 22:18:23 +00:00
Angelo Salese
2a99ac99ef Improvements to Super Bubble Pop from iq_132, nw 2012-01-24 21:56:14 +00:00
Aaron Giles
48a2c8260d Disable -createcdflac for now. The CHDs produced are not
compatible with existing v4 CHD readers, so I don't want
these out in the wild. We will need a version bump to add 
this support properly.

I'll tackle this next (after fixing recent regressions).
2012-01-24 20:31:12 +00:00
Aaron Giles
ed0207f126 Move devices into a proper hierarchy and handle naming
and paths consistently for devices, I/O ports, memory
regions, memory banks, and memory shares. [Aaron Giles]

NOTE: there are likely regressions lurking here, mostly
due to devices not being properly found. I have temporarily
added more logging to -verbose to help understand what's
going on. Please let me know ASAP if anything that is being
actively worked on got broken.

As before, the driver device is the root device and all 
other devices are owned by it. Previously all devices
were kept in a single master list, and the hierarchy was
purely logical. With this change, each device owns its
own list of subdevices, and the hierarchy is explicitly
manifest. This means when a device is removed, all of its
subdevices are automatically removed as well.

A side effect of this is that walking the device list is
no longer simple. To address this, a new set of iterator
classes is provided, which walks the device tree in a depth
first manner. There is a general device_iterator class for
walking all devices, plus templates for a device_type_iterator
and a device_interface_iterator which are used to build
iterators for identifying only devices of a given type or
with a given interface. Typedefs for commonly-used cases
(e.g., screen_device_iterator, memory_interface_iterator)
are provided. Iterators can also provide counts, and can
perform indexed lookups.

All device name lookups are now done relative to another 
device. The maching_config and running_machine classes now
have a root_device() method to get the root of the hierarchy. 
The  existing machine->device("name") is now equivalent to
machine->root_device().subdevice("name").

A proper and normalized device path structure is now
supported. Device names that start with a colon are
treated as absolute paths from the root device. Device
names can also use a caret (^) to refer to the owning
device. Querying the device's tag() returns the device's
full path from the root. A new method basetag() returns
just the final tag.

The new pathing system is built on top of the 
device_t::subtag() method, so anyone using that will 
automatically support the new pathing rules. Each device
has its own internal map to cache successful lookups so
that subsequent lookups should be very fast.

Updated every place I could find that referenced devices,
memory regions, I/O ports, memory banks and memory shares
to leverage subtag/subdevice (or siblingtag/siblingdevice
which are built on top).

Removed the device_list class, as it doesn't apply any
more. Moved some of its methods into running_machine
instead.

Simplified the device callback system since the new 
pathing can describe all of the special-case devices that
were previously handled manually.

Changed the core output function callbacks to be delegates.

Completely rewrote the validity checking mechanism. The
validity checker is now a proper C++ class, and temporarily
takes over the error and warning outputs. All errors and 
warnings are collected during a session, and then output in
a consistent manner, with an explicit driver and source file
listed for each one, as well as additional device and/or
I/O port contexts where appropriate. Validity checkers 
should no longer explicitly output this information, just
the error, assuming that the context is provided.

Rewrote the software_list_device as a modern device, getting
rid of the software_list_config abstraction and simplifying
things.

Changed the way FLAC compiles so that it works like other
external libraries, and also compiles successfully for MSVC
builds.
2012-01-24 20:18:55 +00:00
Angelo Salese
f2ed9c39ed Fix for MESS from Judge, nw 2012-01-24 19:56:14 +00:00
Scott Stone
fc7912c26d Add 3 missing sets to mame.lst (nw) 2012-01-24 19:33:47 +00:00
Miodrag Milanovic
f5bc617cd6 changes from MESS (nw) 2012-01-24 15:48:12 +00:00
Miodrag Milanovic
baede7ac49 typo (nw) 2012-01-24 15:11:54 +00:00
Yasuhiro Ogawa
2a17e22a1f added some info (no whatsnew)
anonymous contributor gave me bunch of CD-ROMs, DVD-ROMs, GD-ROMs and dongles. I'll eventually dump them (or send them to someone to dump).
2012-01-24 14:57:39 +00:00
Miodrag Milanovic
af659db4a0 Exposing read/write handlers of pc_vga (no whatsnew) 2012-01-24 14:33:41 +00:00
Miodrag Milanovic
76c4166f7f Some VGA cleanup and refactoring (no whatsnew) 2012-01-24 14:16:25 +00:00
Miodrag Milanovic
9368cce90f sync with MESS, it's just cleanup :) (nw) 2012-01-24 08:52:33 +00:00
Miodrag Milanovic
be86025142 Added DMF support in pc_dsk (no whatsnew) 2012-01-24 08:38:33 +00:00
Roberto Fresca
aeb14e2f82 Added Pluto 5 technical notes about clocks, EPROM config,
and addresses/data scrambling for different EPROM types
on 16-bit mode. [Roberto Fresca]
2012-01-24 03:13:11 +00:00
Michaël Banaan Ananas
94c182fdd5 MT 4620 2012-01-24 03:02:39 +00:00
Michaël Banaan Ananas
953b957e80 fix s1945bl missing sprites 2012-01-24 01:37:06 +00:00
smf-
ba3261d1ef fixed build 2012-01-23 22:17:02 +00:00
Angelo Salese
4e9be9c5c3 Port from MESS, nw 2012-01-23 22:12:23 +00:00
Angelo Salese
20b95d1868 New NOT WORKING game
--------------------
Super Bubble Pop
2012-01-23 21:55:58 +00:00
Olivier Galibert
c8822a8937 mess sync (nw) 2012-01-23 21:49:46 +00:00
Olivier Galibert
2e80c5ff0e fix 64-bit GCC compile (nw) 2012-01-23 21:49:38 +00:00
Olivier Galibert
afb7d8fb6a floppy: Do specific UI handling [O. Galibert] 2012-01-23 21:49:30 +00:00
Angelo Salese
2cad56dabb New WORKING game
--------------------
Steal See (& Get Land) [N. A. Jimenez, M. Krug, ShiggsUnderground, C. Stefano, Ted Bailey, R. Mucciarelli, Smitdogg, The Dumping Union]
2012-01-23 21:38:15 +00:00
Angelo Salese
fcae791400 new clones
---------------
Carrier Air Wing (bootleg) [Bonky0013] (not working)
Flying Shark (bootleg, set 2) [Bonky0013]
Arcana Heart [Dumping Union]
2012-01-23 21:34:13 +00:00
Angelo Salese
6a40406da2 Further Stepper clean-ups [J. Wallace] 2012-01-23 21:22:54 +00:00
Curt Coder
c8b7ff0797 Fixed debug build. (nw) 2012-01-23 18:32:53 +00:00
Fabio Priuli
336cddc752 ppu2c0x: converted NES PPU to be a modern device. [Fabio Priuli] 2012-01-23 12:25:48 +00:00
Michaël Banaan Ananas
202a695a94 last one 2012-01-23 09:27:00 +00:00
Michaël Banaan Ananas
0bd783c69f screen eof regressions 2012-01-23 08:20:51 +00:00
mahlemiut
1174a05034 i386: Stopped IOPL from being changed by IRET when CPL is zero. 2012-01-23 08:04:00 +00:00
Michaël Banaan Ananas
b5c66b9930 screen eof regressions 2012-01-23 06:47:21 +00:00
Michaël Banaan Ananas
a8af9850d1 screen eof regressions 2012-01-23 06:06:04 +00:00
Michaël Banaan Ananas
d04fd53baa screen eof regressions 2012-01-23 05:16:12 +00:00
Michaël Banaan Ananas
edd727ec39 screen eof regressions 2012-01-23 03:31:09 +00:00
mahlemiut
765c81026c i386: Made stack limit checks better handle the difference between 16 and 32-bit stacks in IRET and RETF. 2012-01-23 01:35:43 +00:00
mahlemiut
f0553bafb5 i386: More page fault work. [Carl] 2012-01-22 22:49:12 +00:00
R. Belmont
d83925d546 fix compile on PPC OS X (nw) 2012-01-22 19:42:24 +00:00
R. Belmont
d1a7a2ad36 Missing files from the last checkin (nw) 2012-01-22 19:24:20 +00:00
R. Belmont
8703f92910 Added FLAC (lossless audio) codec support plus experimental hooks in samples and chdman. Bumped up CHD-CD hunk size to get better compression ratios on both zlib and flac. [David Haywood, R. Belmont] 2012-01-22 18:38:22 +00:00
Nathan Woods
91ac2846be Made codes in the 'input' debugger command case insensitive 2012-01-22 14:11:04 +00:00
mahlemiut
f8b4906f8f i386: Yet more fixes from MESS. 2012-01-22 10:56:10 +00:00
Michaël Banaan Ananas
183fecd71c screen eof regression 2012-01-22 00:55:50 +00:00
Michaël Banaan Ananas
9fd71b4905 screen eof regressions 2012-01-21 22:07:28 +00:00
R. Belmont
87c3d68343 Changes for GCC 4.7 compatibility [Belegdol] 2012-01-21 20:39:52 +00:00
Michaël Banaan Ananas
08262d3cd2 screen eof regressions 2012-01-21 16:26:46 +00:00