Commit Graph

2680 Commits

Author SHA1 Message Date
Couriersud
352756af42 Fixed a bug in debugint.c: Actually make Del and BS delete the last character. [sz72] 2010-02-19 19:25:15 +00:00
Olivier Galibert
5a6206c117 Make mips register names accessible in the debugger expressions [Olivier Galibert]
The trick is to lookup the register name before treating '$' as
announcing an hex value.  It doesn't make anything impossible or even
hard since even if you have the register name '$a0' you can still use
a bare 'a0' or an explicit '0xa0' to get to the value.  Symmetrically,
'$a0' still works for the hex value on say m68k with 'a0' as the
register.
2010-02-19 14:01:15 +00:00
Miodrag Milanovic
c9885fe958 VS2008 compiling fix [Miodrag Milanovic] (no whatsnew) 2010-02-18 18:33:18 +00:00
Curt Coder
234cdbb284 Fixed interrupt mask in Z80PIO. (no whatsnew) 2010-02-18 12:08:27 +00:00
Wilbert Pol
677d859342 v30mz: Increased MAX_INSTRUCTION_BYTES to prevent disasm crashes (no whatsnew). 2010-02-18 11:33:55 +00:00
Fabio Priuli
e09be306d8 i386: Small fix for the i386 core, correcting the LLDT
instruction. This fix sets up the LDTR base and limit values
correctly, fixing use of the LDT. [Barry Rodewald]
2010-02-18 09:23:35 +00:00
Curt Coder
651caf7f1b Fixed Z80-PIO mode 3 interrupts, and mode 1 data writes.
meritm.c: Added scanline timer-based vblank interrupt to work around the broken V9938 interrupts. Megatouch games are now working again. [Curt Coder]
2010-02-18 07:30:20 +00:00
Wilbert Pol
6b53bf3135 Fix compile error. 2010-02-17 21:03:47 +00:00
Fabio Priuli
79aa2a21c0 mos6560: Temporarily added back some original hw notes and added some sanity check (no whatsnew) 2010-02-17 17:20:59 +00:00
Fabio Priuli
f26c5bf115 attckufo: Imported MOS6560 device emulation from MESS and removed the existent custom audio/video emulation [Fabio Priuli] 2010-02-17 17:07:06 +00:00
Curt Coder
9d7196b0fe Fixed Z80-PIO save states. (no whatsnew) 2010-02-17 11:29:21 +00:00
Curt Coder
13967cff07 Cleaned up the Z80-DMA implementation. (no whatsnew) 2010-02-17 11:10:13 +00:00
Curt Coder
376c086cf9 Added save state support to the Z80-PIO. (no whatsnew) 2010-02-17 11:07:05 +00:00
Curt Coder
24daf75e02 Complete rewrite of the Z80-PIO implementation. The handshaking signals are now more accurately emulated. As a result, the Merit Megatouch games are no longer working since they relied on the earlier incorrect behavior. [Curt Coder] 2010-02-17 11:02:33 +00:00
Fabio Priuli
3a53e7d5dd z80ctc: Fixed Z80CTC read handler [Tim Schuerewegen]
side note: given that at write (lines 339-342) the timer is adjusted with (tconst * period) it seems reasonable that at read we divide by period rather than multiplying.
2010-02-17 09:28:52 +00:00
Fabio Priuli
53a1f443d2 k051649.c: fixed bogus for loop in device reset [Fabio Priuli] 2010-02-17 06:55:38 +00:00
Miodrag Milanovic
b098f73f55 info.c: Moved print_game_categories into info.c, since it can
be used by any driver anyway. [Miodrag Milanovic]
2010-02-16 15:17:37 +00:00
Miodrag Milanovic
3a4544a651 ui.c,ui.h,windows/input.c: [Miodrag Milanovic]
- removed ui_use_new_ui check used by MESS code
- moved ui_mess_handler_ingame call in proper place, so device UI callbacks works again
- removed toggle of menu bar (MESS related)
2010-02-16 12:45:38 +00:00
Jonathan Gevaryahu
6fcc0f634b Minor fix to sn76489: sn76489 wasn't using the correct noise taps
(now matches sn94624, still need to test a real chip)
Removed a piece of useless code, and fixed a comment.
[Lord Nightmare]
2010-02-16 06:05:06 +00:00
Couriersud
a1d654a6db Fixed a bug in emu/sound/disc_mth.c. This affected spiders.c fire sound. [MASH] 2010-02-15 18:39:17 +00:00
Curt Coder
767fc4b7bc Implemented Z80-DMA interrupts. [Curt Coder] 2010-02-15 14:37:47 +00:00
Curt Coder
9cfa8a0504 Fixed typo. (no whatsnew) 2010-02-15 14:35:53 +00:00
Jonathan Gevaryahu
d2c8e4def6 Fixed TI PSG (sn76489 and friends) noise and square-wave period to be
maximum length when period register is set to 0. Fixed white-noise
phase/XOR issue: got rid of noise XOR/XNOR select, as all chips seem
to use XOR. [Lord Nightmare, Michael Zapf, PlgDavid]
2010-02-15 06:45:57 +00:00
Aaron Giles
c3bb16d573 Moved global new/delete operators into inlines in emualloc.h
to avoid link errors with certain architectures. [couriersud]

Some minor cleanup/normalizing of emualloc in general.
[Aaron Giles]
2010-02-14 21:44:50 +00:00
R. Belmont
30d328738d Correct OS X compiler warnings [Scott Michel] 2010-02-14 17:46:59 +00:00
Aaron Giles
6b663f66a7 Cleanups and version bump. 2010-02-14 16:59:22 +00:00
Miodrag Milanovic
1d14f429ae Added initialization of natural keyboard into init_machine 2010-02-14 14:49:09 +00:00
Miodrag Milanovic
a347804fe3 Made uimodekey default to "auto" and let OSD decide about default key. (no credit) 2010-02-14 14:15:55 +00:00
Miodrag Milanovic
61e28b93b7 Cleaned natural keyboard implementation (no credits) 2010-02-14 12:46:34 +00:00
Aaron Giles
d114078d72 Removed annoying typedefs. 2010-02-14 08:28:54 +00:00
Aaron Giles
6b3dc3d421 Minor function rename. 2010-02-14 08:09:59 +00:00
Miodrag Milanovic
0a6b13608d - Moved natural keyboard support from MESS to MAME
- Moved OSD file functions and clipboard access functions into OSD core
2010-02-12 15:40:11 +00:00
Curt Coder
60d8b99681 Added Intel 8021/8022 CPU types. 2010-02-12 09:46:22 +00:00
Curt Coder
86ad7a0f2b Added XTAL for MESS. 2010-02-12 09:28:28 +00:00
Couriersud
0898987bc3 Internal debugger using the mame rendering infrastructure
- added support for arbitrary number of containers for render_target
- added command-line parameter -debug_internal (-di) to use the internal debugger when in debug mode
- internal debugger supports all views except memory view
- added "Debug" view to layout/vertical.lay to create more place for debug views in vertical games.

The colors are ugly. Font rendering needs improvement. There are no shortcut keys right now. There is still a lot of room for more improvements.
However, it works and does not depend on any ui toolkit. The interface has been designed to support displaying views programmatically e.g. from the ui. 

Currently, the ui render target is used. In order to support views being displayed in separate windows further changes are needed:
- the osd layer must support creating and closing windows (render targets) on demand.
- There must be a mode for render targets where their bounds follows the window size - Currently the render target size depends on the aspect of currently selected "artwork" view.
- Render target needs a name property.

Short HowTo:

- Start MAME with "-debug -di"
- Console, register and disasm views will be shown. Place them by dragging the view on the title bar.
- Views can be resized by dragging the bottom-right yellow square.
- The view having the focus has a green background title bar.
- Hit "Tab" (IPT_UI_CONFIGURE) to show the menu.
- Console and disasm views support a very simple facility to support entering commands and addresses. Just start typing. Hit "enter" when finished.
2010-02-11 23:59:36 +00:00
Miodrag Milanovic
ce85c7f748 Removed GAME_SHARE_ROMS flag and commented old check for duplicate ROM entries 2010-02-11 13:54:55 +00:00
Curt Coder
11232428dc [VIA6522] Read port A/B only if some pins are inputs. 2010-02-11 11:44:17 +00:00
Miodrag Milanovic
f058d3f6e0 Renamed GAME_CAN_SHARE_ROMS to GAME_SHARE_ROMS (sounds more logical) 2010-02-11 10:25:14 +00:00
Miodrag Milanovic
a8aedb92b0 - Renamed GAME_COMPUTER_MODIFIED to GAME_UNOFFICIAL to mark unofficial hardware modifications
- Removed GAME_COMPUTER it is distinct by IPT_KEYBOARD
- Added GAME_NO_SOUND_HW (to mark that there is no sound hardware) and marked drivers in dotrikun.c, minivadr.c and tgtpanic.c as such
- Added GAME_CAN_SHARE_ROMS - to mark that there can be other driver using same ROM as this one but with different hardware (common in computer/console world)
2010-02-11 09:44:23 +00:00
Scott Stone
3793e46ca0 Fixed 03724: mrdo: Incorrect XTALs cause for problems with refresh rate and game speed.
Added some notes regarding Mr. Do and missing XTAL values to xtal.h  [Oliver A., Tafoid]
2010-02-10 21:22:25 +00:00
Miodrag Milanovic
51f4cf5be9 Rollback of show_warning add, sorry did not know about policy of this issue. 2010-02-10 10:40:58 +00:00
Miodrag Milanovic
96413ff354 - Added skip_warnings option
- Removed MESS dependent checks
2010-02-10 10:25:00 +00:00
Miodrag Milanovic
312b80701c - Moved compatibility validation into MAME core from MESS.
- Made GAME_COMPUTER type visible for all, and removed ifdefs for it.
- Made GAME_NO_SOUND check done on MESS too.
2010-02-09 14:23:13 +00:00
Curt Coder
f1dfc7b5b3 [I8255] Clear output lines to 0 on write to mode register, and float input lines to 1. 2010-02-09 10:09:15 +00:00
Roberto Zandona
7dcb80a9ce hooked up (with a hack) gfx rom in hd63484 memory map 2010-02-07 19:20:47 +00:00
Olivier Galibert
1917e2043d Add some extra ZOOM ZSG information in comments. 2010-02-07 14:20:43 +00:00
R. Belmont
49e9851b24 Add and hook up ZOOM ZSG-2 skeleton [Olivier Galibert]
Doesn't do much at the moment, but the increase in documentation value is
significant (we're documenting the sample compression format, for one thing).
2010-02-07 04:59:42 +00:00
Couriersud
88946d721a Added DEBUG_FLAG_OSD_ENABLED to allow coexistence of debuggers going forward.
Replaced all occurrences of OPTION_DEBUG in src/osd/* by checking machine->debug_flags
Replaced all occurrences of DEBUG_FLAG_ENABLED in src/osd/* by DEBUG_FLAG_OSD_ENABLED 
For the time being, DEBUG_FLAG_OSD_ENABLED is default (set in mame.c)
Debugger: avoid clearing DEBUG_FLAG_OSD_ENABLED
2010-02-05 01:35:52 +00:00
Couriersud
7b3fa34c6a Minor changes for internal render debugger
- ui_input_frame_update is now global 
- moved element_component from rendlay.c to rendlay.h
- added ability to rendlay.c to define "container" components. These simply provide a render_container. 

  I plan to remove the above again and simply use one container covering the whole render_target. This container will be rendered after the artwork and before the ui. For this to work, DViews need move and resize support. Render_targets will than be equivalent to virtual desktops.
2010-02-05 00:08:00 +00:00
R. Belmont
e6caacc74c Removed unused #include. 2010-02-04 14:51:32 +00:00
R. Belmont
01efae2c12 Preliminary Panasonic MN10200 CPU core and Taito ZOOM ZSG-1 sound system [Olivier Galibert]
---

This is just stage one of converting OG's stuff, please do not touch any 
of it yet.  Next up is the skeleton of the ZOOM chip, finishing up 
the missing bits of the CPU core (the interrupt controller and timers), and
debugging the results.
2010-02-04 05:20:18 +00:00
Miodrag Milanovic
573018005b [PDP1] Display the PC in hex as well as octal. [Robbbert] 2010-02-01 12:41:06 +00:00
Miodrag Milanovic
a461dfee73 [APEXC] 1. Added pseudo PC register for the debugger, it will now highlight the next instruction to be executed.
2. Added "normal" addresses to disassembler output, so anyone can see the program flow. [Robbbert]
2010-01-31 13:19:16 +00:00
Phil Bennett
662a0aafda 00993: sharrier: [debug] Crashes when a specific sample is being played during gameplay. 2010-01-30 19:52:06 +00:00
Miodrag Milanovic
3c29474089 Fixed disassembly of PDP1,TX0 and APEXC [Robbbert] 2010-01-30 14:29:45 +00:00
Miodrag Milanovic
6e568917c8 Fixed forgotten device_config to running_device change (no whatsnew) 2010-01-30 14:04:06 +00:00
R. Belmont
940c2b4e9a am29k: fix PPC GCC compile error 2010-01-28 18:01:51 +00:00
Aaron Giles
24352008a0 Compile fix for 64-bit Win32 SDL. 2010-01-28 09:41:37 +00:00
Aaron Giles
fe3d7c4af4 Cleanups and version bump. 2010-01-28 08:03:44 +00:00
Couriersud
9dae23fc0e Small optimization, no credit 2010-01-27 23:57:17 +00:00
Couriersud
77cc6538e1 UI menu interface changes
- all ui functions now expect a render_container
- removed all macros referencing render_container_get_ui
- ui_menu_alloc now is passed a container to which to render the menu.
This is a first round of changes to allow using ui_* functions in a more generic way.
2010-01-27 23:52:28 +00:00
Miodrag Milanovic
b981d4f5a1 Fixed compile for s14001a.c and updated MESS dependent code in wave.c (no whatsnew needed) 2010-01-27 09:44:06 +00:00
Jonathan Gevaryahu
57ec780797 comment was cut off. no whatsnew. 2010-01-27 07:07:03 +00:00
Jonathan Gevaryahu
ca5665910f s14001a: updated comments; got rid of the squealing noise (hidden behind a #define now, code is still there) until some other issues can be resolved. [Lord Nightmare] 2010-01-27 07:03:18 +00:00
Roberto Fresca
da865ee557 Some clean-ups... :) 2010-01-26 08:29:55 +00:00
Roberto Fresca
e717512127 Moved HD63484 ACRTC device from mame/video to emu/video. 2010-01-26 07:46:49 +00:00
Curt Coder
eace925516 Popmessages can now be used in drivers which have an MC6845. 2010-01-25 12:58:56 +00:00
Jonathan Gevaryahu
f79dfb098a Fixed sn76489a periodic noise once again (and simplified a bit of code), now should be closer to or match real chips as sampled.
Added true clock divider emulation, so emulation may be a bit slower. [Lord Nightmare, PlgDavid, Kold666]
2010-01-24 10:38:09 +00:00
R. Belmont
0f6b9fc7a8 ARM: preliminary SA-1110 support 2010-01-23 03:40:02 +00:00
Curt Coder
b05bd546aa CIA 6526: Fixed serial port transfer. 2010-01-21 18:30:50 +00:00
Aaron Giles
771a8b4ecc Whoops, typo. 2010-01-21 06:21:26 +00:00
Aaron Giles
1a2c20441f Remove some aliases between CPUINFO_ and DEVINFO_ to help clarify
usage.

Also converted a few more places to use the new accessors.
2010-01-21 06:05:57 +00:00
Aaron Giles
a5668c2eb9 Made direct accessors for device configuration state. Currently they
just call through to the get info function. Removed old macros that
wrapped calls.
2010-01-21 03:56:53 +00:00
Aaron Giles
c6cd01a95d Make an actual enum type for endianness. 2010-01-20 17:24:42 +00:00
Miodrag Milanovic
87e0102733 Fixed listmedia dependent code (no whatsnew needed) 2010-01-20 15:29:00 +00:00
Curt Coder
aa31b23824 CIA 6526: fixed serial transfer 2010-01-20 13:55:42 +00:00
Aaron Giles
392f02e3ff Fix bug that mistook a non-NULL token to mean that a device was started.
Fixes -video ddraw issue.
2010-01-20 06:11:44 +00:00
Aaron Giles
9dd322ab7f Mark these virtual before I forget and later waste time debugging it. 2010-01-20 03:42:17 +00:00
Couriersud
0328f34acb Autodetection of PTR64 can be inhibited now by specifying PTR64=0.
On mixed 32bit/64bit targets identifying themselves as 64bit this can be used to build a 32bit executable.
2010-01-19 22:09:45 +00:00
Aaron Giles
409add88bb Convrted the rest of devintrf to classes and moved management
functions into methods of those classes. The most wide-ranging
change was converting device_reset() to device->reset(). Apart
from that it was mostly internal shuffling in the core.
2010-01-19 15:08:18 +00:00
Fabio Priuli
576dfd4d9d Added back the hook to -listmedia option used by MESS 2010-01-19 14:37:52 +00:00
Curt Coder
2244f9274d Refactored the CIA 6526 interface, adding SP/CNT callbacks. 2010-01-19 14:26:51 +00:00
Scott Stone
c6c534dbb6 Minor documentation change. No whatsnew needed. 2010-01-19 14:20:11 +00:00
Curt Coder
22f672af59 Fixed compilation error. 2010-01-19 14:14:59 +00:00
Miodrag Milanovic
04875f17b7 - Added MESS dependent code missing in emu.h
- Fixed compiling CPU core of V30MZ (only used by MESS)
- Fixed MESS dependent code of wave.c
- Added include of emu.h in sid (used only by MESS)

no whatsnew needed
2010-01-19 13:00:22 +00:00
Aaron Giles
6c47c80e04 Fix bug where memory regions were not properly enumerated for the
memory view.

Also, stop creating empty regions for disk regions.
2010-01-18 17:34:04 +00:00
Aaron Giles
bfc69c877f Fix bug introduced with astring changes that caused malformed tokens
when writing out cfg files.
2010-01-18 17:01:31 +00:00
Aaron Giles
e738b79785 Correct a long-standing design flaw: device configuration state
is now separate from runtime device state. I have larger plans
for devices, so there is some temporary scaffolding to hold
everything together, but this first step does separate things
out.

There is a new class 'running_device' which represents the
state of a live device. A list of these running_devices sits
in machine->devicelist and is created when a running_machine
is instantiated.

To access the configuration state, use device->baseconfig()
which returns a reference to the configuration.

The list of running_devices in machine->devicelist has a 1:1
correspondance with the list of device configurations in
machine->config->devicelist, and most navigation options work
equally on either (scanning by class, type, etc.)

For the most part, drivers will now deal with running_device
objects instead of const device_config objects. In fact, in
order to do this patch, I did the following global search &
replace:

  const device_config -> running_device
  device->static_config -> device->baseconfig().static_config
  device->inline_config -> device->baseconfig().inline_config

and then fixed up the compiler errors that fell out.

Some specifics:

  Removed device_get_info_* functions and replaced them with
  methods called get_config_*.
  
  Added methods for get_runtime_* to access runtime state from
  the running_device.
  
  DEVICE_GET_INFO callbacks are only passed a device_config *.
  This means they have no access to the token or runtime state
  at all. For most cases this is fine.
  
  Added new DEVICE_GET_RUNTIME_INFO callback that is passed
  the running_device for accessing data that is live at runtime.
  In the future this will go away to make room for a cleaner
  mechanism.
  
  Cleaned up the handoff of memory regions from the memory
  subsystem to the devices.
2010-01-18 09:34:43 +00:00
Couriersud
5eebfe6ba6 Fix a bug preventing SUBTARGET=tiny compiles 2010-01-17 20:11:00 +00:00
Couriersud
89d20f9866 Undef two defines from Solaris stdlib.h which collide with mame. 2010-01-17 19:21:04 +00:00
Couriersud
91c5f19bf3 All files modified here solely depend on osdcore.h. Therefore changed all malloc/free to osd_malloc and osd_free. 2010-01-17 19:19:48 +00:00
Phil Bennett
2860295205 New games added or promoted from NOT_WORKING
--------------------------------------------
F-15 Strike Eagle (2 sets) [Phil Bennett]
Battle of the Solar System (rev. 1.1) [Phil Bennett]
Tank Battle (prototype rev. 4/21/92) [Phil Bennett]


Added Am29000 CPU core [Phil Bennett]
2010-01-17 16:21:57 +00:00
Aaron Giles
4ec052a035 device_find_child_by_tag() -> device->subdevice() 2010-01-17 15:50:08 +00:00
Aaron Giles
d061ced592 Created new template class tagged_list which manages a simple list
along with a tagmap. Changed memory regions, input ports, and devices
to use this class. For devices, converted typenext and classnext
fields into methods which dynamically search for the next item.
Changed a number of macros to use the features of the class, removing
the need for a bunch of helper functions.
2010-01-17 09:26:29 +00:00
R. Belmont
14e2b9acf3 Changed DSP56k macros to avoid collision with OS X 10.6+ system headers 2010-01-17 02:58:59 +00:00
Aaron Giles
0c191eac42 Compile fix for MSVC psikyosh (dynamic array sizes are a later
extension).

Improved stack walking on crash in Windows. Now using StackWalk64 to
do the stack walk, resulting in cleaner logs. Also will try to use
system function to look up symbol and source/line information if
present. End results:

- 32-bit gcc: parses symbol info from map file as before (this would
work better if we could coax gcc into outputting static functions in
the map)

- 64-bit gcc: has runtime issue that causes the exception handler to
not be invoked. Will work with mingw folks on it.

- 32/64-bit MSVC: nice stack dumps with symbol and source/line info,
if the PDB file is present. If not, falls back to the MAP file.
2010-01-16 21:14:23 +00:00
R. Belmont
6ec1f9c3a4 Missed another one (no whatsnew) 2010-01-16 18:58:37 +00:00
R. Belmont
c6d4f5faa8 YM2612: More accurate LFO implementation and channel clipping [Eke-Eke, Nemesis, R. Belmont] 2010-01-16 05:01:55 +00:00
Aaron Giles
aebc07a897 Cleanups and version bump. 2010-01-16 04:12:04 +00:00
Aaron Giles
d35a800134 Added casting operators to the region_info class so you can assign
a region to a generic type pointer and have it automatically convert.
Also added a bytes() method which is safe if the region is NULL
(useful for saying machine->region("foo")->bytes() and not crashing
if foo doesn't exist).

Changed the region field in the device_config to be a region_info *,
and removed the regionbytes field. Updated all users of these fields
to use the new casting operators and bytes() methods instead.

Added subdevice and subregion methods to the device_config class, so
you can easily query for devices and regions that are device-specific.
The device prefix ("devicename:") is automatically prepended.
2010-01-16 00:53:57 +00:00
R. Belmont
51fd1fa822 More PPC GCC warning fixes. 2010-01-15 23:48:40 +00:00
R. Belmont
64c285cf17 More PPC GCC warning fixes. 2010-01-15 23:18:08 +00:00
Jonathan Gevaryahu
4b257e2c66 Fixed period for both sn76489 and sn76489A periodic noise; fixes pitch in 'smooth criminal' demo for colecovision and fixes pitch (but not the waveform, which will require more work) of music in dorunrun; More work is required before the code will be bit accurate due to the way the real LFSR and periodic generator work. [Lord Nightmare, Kold666, PlgDavid] 2010-01-15 21:31:39 +00:00
Dirk Best
3997330a94 i386: Improved accuracy of the various emulated models, makes CPU detection programs detect the correct CPU (in MESS).
- eflags mask added
- Initial values for the EAX and EDX registers fixed
- cpuid values improved
- feature flags improved
- initial value for the cr0 register improved
- changed 486 to not support the cpuid instruction by default
- take a trap on invalid instructions instead of throwing a fatalerror
- emulated the undefined flag behavior for the DIV/IDIV instructions on Intel CPUs
2010-01-15 18:54:23 +00:00
Ryan Holtz
8d183da738 Added a mostly-complete SunPlus u'nSP core based on the one in Segher's "Unununium". [Harmony] 2010-01-14 05:35:34 +00:00
Paul Priest
84352b22f3 MT03233: Fix multisession crash in SE3208 affecting crystal.c [anonymous] 2010-01-12 21:26:20 +00:00
Paul Priest
a9baa7b23d Fix for MT00111 - rom region overrun in YMF278B core on loop j=0 of SAMPLE_UPDATE(). Fixes sporadic crashes in many psikyosh games which had been worked around with the exception of gunbird2 which is now also fixed [PsikyoFan]
RB: Feel free to help me correct it if you believe this isn't correct.
2010-01-12 14:31:13 +00:00
Curt Coder
5cdcb8ab63 Added xtal for MESS. 2010-01-12 14:11:14 +00:00
Aaron Giles
1f1672d6cc Enforce that numbers are all the same exact width when loading fonts. 2010-01-12 07:03:11 +00:00
Aaron Giles
470f843262 Within src/emu, basic conversions:
devtag_get_device ... machine->device()
  memory_find_address_space ... device->space()
2010-01-12 06:54:57 +00:00
Aaron Giles
46b81c390e Explicitly allow PAIR and PAIR64 in save states. 2010-01-12 03:32:07 +00:00
Aaron Giles
a9c5a5a27e Fixed memory freeing so that is it released in the opposite order
it was originally allocated.

Changed machine->region() to return a pointer to the now-public
region_info class.

Added new member function space() to the device_config, along with
shorter constants to be used (AS_PROGRAM, AS_DATA, AS_IO). With no 
parameters, space() returns the first address space, which is 
commonly the only space present. Updated a few devices that referenced 
the old space[] array to call the new function instead.

Added #define to emualloc to ensure delete can't be freely used.
2010-01-11 18:02:38 +00:00
Angelo Salese
968ef7b835 03649: gekisha: Unknown DIP 4-2 toggles Auto Tsumo after Reach. If it is enabled and declare Reach, MAME crashes. 2010-01-11 13:33:43 +00:00
Phil Bennett
d51770b70f Added the mameconfig version to the -listxml output [Oliver Stoneberg]
---------- Forwarded message ----------
From: Oliver Stöneberg <oliverst@online.de>
Date: Thu, Dec 31, 2009 at 2:45 PM
Subject: mameconfig version in -listxml
To: submit@mamedev.org


This patch adds the mameconfig version to the -listxml output
2010-01-11 12:55:43 +00:00
Phil Bennett
7304faaece Added a PCM sample end/loop callback to the RF5C68 core [Barry Rodewald]
---------- Forwarded message ----------
From: Barry Rodewald <bsr@xnet.co.nz>
Date: Sat, Jan 2, 2010 at 10:13 AM
Subject: RF5C68 addition
To: submit@mamedev.org


Hi,

Here is a small update for the RF5C68 PCM core.  For the FM Towns MESS
driver, there needs to be some way to tell when a PCM sample has ended
or looped, as the system can generate an interrupt at this point,
usually to end the sample playback on the specified channel.  From the
RF5C68(A) datasheet, there appears to be no obvious way for an IRQ
signal to be sent, so I figure the PCM IRQ setup must be external to
the PCM chip itself.

Thus, I've added a simple callback, which should be called when the
end of a sample is reached, and with a parameter for the device
itself, and the channel on which the sample has ended.

Example of the result, with callback implemented:
http://mahlemiut.marpirc.net/mess_raiden.mp3  (sound effects are done
by the RF5C68, music is CD-DA).

Thanks,
Barry Rodewald
mailto:bsr@xnet.co.nz
2010-01-11 12:24:53 +00:00
Aaron Giles
317da101d8 Try using type_traits for detection of valid save types. 2010-01-11 09:53:25 +00:00
Aaron Giles
51e6cbf6cd Fixed bogus empty ROM region warnings. 2010-01-11 08:42:05 +00:00
Aaron Giles
d51551f303 Fix cheat crash and comment display. 2010-01-11 02:37:17 +00:00
Paul Priest
6605a2e3e5 Fix crash if exit scheduled before cpus ready.e.g. clicking close on window. No whatsnew. 2010-01-10 23:40:01 +00:00
Aaron Giles
bec93ce35b Fix a few stray delete's that didn't pair with global_alloc/auto_alloc.
Fixes "attempt to free untracked memory" in several games.
2010-01-10 22:57:03 +00:00
Aaron Giles
c845d1c4fd sprintf -> vsprintf, oops. Requires a recompile, but at least
fatalerrors will have the right text.
2010-01-10 21:48:28 +00:00
Aaron Giles
567ab7c3c8 Fix typo causing crash in laserdisc games. 2010-01-10 21:32:09 +00:00
Aaron Giles
2b23d7c017 Bulk driver.h -> emu.h switch. 2010-01-10 18:00:42 +00:00
Aaron Giles
4498faacd9 First round of an attempted cleanup of header files in the system.
- Created new central header "emu.h"; this should be included
    by pretty much any driver or device as the first include. This
    file in turn includes pretty much everything a driver or device
    will need, minus any other devices it references. Note that
    emu.h should *never* be included by another header file.
 - Updated all files in the core (src/emu) to use emu.h.
 - Removed a ton of redundant and poorly-tracked header includes
    from within other header files.
 - Temporarily changed driver.h to map to emu.h until we update
    files outside of the core.

Added class wrapper around tagmap so it can be directly included
and accessed within objects that need it. Updated all users to
embed tagmap objects and changed them to call through the class.

Added nicer functions for finding devices, ports, and regions in
a machine:

   machine->device("tag") -- return the named device, or NULL
   machine->port("tag") -- return the named port, or NULL
   machine->region("tag"[, &length[, &flags]]) -- return the
      named region and optionally its length and flags
      
Made the device tag an astring. This required touching a lot of 
code that printed the device to explicitly fetch the C-string
from it. (Thank you gcc for flagging that issue!)
2010-01-10 00:29:26 +00:00
Aaron Giles
e338ba361a Compile fix. 2010-01-08 21:57:29 +00:00
Aaron Giles
838b3b13c2 Oops, forgot this. 2010-01-08 17:19:41 +00:00
Aaron Giles
a92de5930c Extended the astring class wrapper into something useful, and
useable as a stack object. Also designed the interfaces to allow
for chaining operations. And added a casting operator to const
char * for seamless use in most functions that take plain old C
strings.

Changed all uses of astring to use the object directly on the
stack or embedded in objects instead of explicitly allocating 
and deallocating it. Removed a lot of annoying memory management
code as a result.

Changed interfaces that accepted/returned an astring * to
use an astring & instead.

Removed auto_alloc_astring(machine). Use 
auto_alloc(machine, astring) instead.
2010-01-08 17:18:54 +00:00
Couriersud
a0a40f8815 Provide location in "attempt to free untracked memory" message 2010-01-08 14:53:52 +00:00
Couriersud
4f32209c06 Fix an issue which may cause a division by zero or undefined behaviour. 2010-01-08 14:38:52 +00:00
Aaron Giles
8e261f62c8 Re-enabled malloc/free but routed them to the file+line versions. 2010-01-08 08:24:22 +00:00
Aaron Giles
ab68710ce5 Oops, forgot these files. 2010-01-08 06:11:00 +00:00
Aaron Giles
91a1b8d634 NOTE: This change requires two new osd functions: osd_malloc() and
osd_free(). They take the same parameters as malloc() and free().

Renamed mamecore.h -> emucore.h.

New C++-aware memory manager, implemented in emualloc.*. This is a
simple manager that allows you to add any type of object to a
resource pool. Most commonly, allocated objects are added, and so
a set of allocation macros is provided to allow you to manage
objects in a particular pool:

  pool_alloc(p, t) = allocate object of type 't' and add to pool 'p'
  pool_alloc_clear(p, t) = same as above, but clear the memory first
  pool_alloc_array(p, t, c) = allocate an array of 'c' objects of type
                              't' and add to pool 'p'
  pool_alloc_array_clear(p, t, c) = same, but with clearing
  pool_free(p, v) = free object 'v' and remove it from the pool

Note that pool_alloc[_clear] is roughly equivalent to "new t" and
pool_alloc_array[_clear] is roughly equivalent to "new t[c]". Also
note that pool_free works for single objects and arrays.

There is a single global_resource_pool defined which should be used
for any global allocations. It has equivalent macros to the pool_*
macros above that automatically target the global pool.

In addition, the memory module defines global new/delete overrides
that access file and line number parameters so that allocations can
be tracked. Currently this tracking is only done if MAME_DEBUG is
enabled. In debug builds, any unfreed memory will be printed at
the end of the session.

emualloc.h also has #defines to disable malloc/free/realloc/calloc.
Since emualloc.h is included by emucore.h, this means pretty much
all code within the emulator is forced to use the new allocators.
Although straight new/delete do work, their use is discouraged, as
any allocations made with them will not be tracked.

Changed the familar auto_alloc_* macros to map to the resource pool
model described above. The running_machine is now a class and contains
a resource pool which is automatically destructed upon deletion. If
you are a driver writer, all your allocations should be done with
auto_alloc_*.

Changed all drivers and files in the core using malloc/realloc or the 
old alloc_*_or_die macros to use (preferably) the auto_alloc_* macros 
instead, or the global_alloc_* macros if necessary.

Added simple C++ wrappers for astring and bitmap_t, as these need
proper constructors/destructors to be used for auto_alloc_astring and
auto_alloc_bitmap.

Removed references to the winalloc prefix file. Most of its 
functionality has moved into the core, save for the guard page 
allocations, which are now implemented in osd_alloc and osd_free.
2010-01-08 06:05:29 +00:00
smf-
6c5d471f03 The starting value for an output port is now the default value, which is based on whether it is active high or low. So the device will be called the first time the line becomes active.
Changed the eeprom device to assume that the reset and clock are cleared until it's told otherwise.
Reverted the eeprom workround in cps1
2010-01-07 19:51:57 +00:00
Curt Coder
a37b9332fa VIA6522: Refactored interface to use READ/WRITE_LINE. 2010-01-07 13:06:45 +00:00
Phil Bennett
5be4dc8d54 Added some missing header declarations and static qualifiers. Added validity.h to the core for consistency as well as an explicit foo.h in each foo.c. [Atari Ace]
---------- Forwarded message ----------
From: Atari Ace <atari_ace@verizon.net>

Date: Sat, Dec 26, 2009 at 5:01 PM
Subject: [patch] Header/static cleanups
To: submit@mamedev.org
Cc: atariace@hotmail.com

- Hide quoted text -
Hi mamedev,

This patch add some missing header declarations and static qualifiers,
and adjusts a few names.  In the core, it adds validity.h for
consistency as well as an explicit foo.h in each foo.c.

~aa
2010-01-06 21:09:25 +00:00
smf-
8d88859471 moved the fix for the crash when you toggle cheats inside cheat.c, to avoid duplicating the checks and looking up whether cheats are enabled. 2010-01-06 17:30:05 +00:00
Fabio Priuli
49b2d89ab2 Fix for MT03621: Hitting F6 without -cheat trigger causes crash
now cheat toggling has no effect if there is no OPTION_CHEAT among mame_options().
2010-01-06 16:03:02 +00:00
Fabio Priuli
a406d628ff Replaced all occurrences of cputag_get_cpu with devtag_get_device: the former function was just an alias and now cpus are no different from other devices
Removed cputag_get_cpu and cputag_reset (another alias, not even used in the source) from cpuexec.h
2010-01-06 13:26:30 +00:00
Miodrag Milanovic
fd4e438cdb [PIT8253] Corrected timer update, makes at586 show correct speed (no whatsnew needed) 2010-01-06 09:54:04 +00:00
Phil Bennett
52613ad118 Changed berlwall, arkanoid, bakubrkr, mgcrystl to use YM2149 [Corrado Tomaselli]
Verified and corrected clocks in halleys and exctsccr [Corrado Tomaselli]

New clones added
----------------

Exciting Soccer (Japan set 2) [Corrado Tomaselli]
2010-01-05 12:48:14 +00:00
Miodrag Milanovic
be42e6caae Forgot to save last changes in latest commit. 2010-01-04 13:32:31 +00:00
Miodrag Milanovic
bd0c65cb91 [PIT8253] Update PIT counter even if there was no elapsed cycles (this only affects fast drivers like at586 in MESS) 2010-01-04 13:05:45 +00:00
Aaron Giles
200b21dff7 Get rid of setjmp/longjmp for error handling in favor of exceptions.
Fatalerror now maps to throwing an exception. Requires a full
recompile.
2010-01-04 07:05:53 +00:00
Aaron Giles
a3b0cf0aea Make MSVC compile once again. 2010-01-04 01:30:53 +00:00
Aaron Giles
fe40adfb2b Fix codegen bug that broke kinst. 2010-01-04 00:27:45 +00:00
Aaron Giles
ba0d55cad5 Fix linker warning. 2010-01-04 00:09:40 +00:00
Aaron Giles
a1cdc22b5a Fix typo in 8-bit eeprom case. 2010-01-03 22:42:52 +00:00
Aaron Giles
b4099c91bc Changes to sync with new toolchain:
1. Removed CPP_COMPILE option. All files (except expat and zlib)
are now compiled as C++ by default. For now, imagine nothing has
changed. The goal is not to go hog-wild with C++isms, but to
leverage it where it makes the most sense.

2. Mapped INLINE to plain old C++ inline now, fixing several
cases where this was problematic.

3. Marked global const structures explicitly extern since consts
are locally-scoped by default in C++.

4. Added new 'default' make target which just builds the emulator.
Use 'make all' to build everything including the tools.

5. 64-bit builds now get a '64' suffix on them. We might want to
just make this true for Windows builds, but it's on for everyone
at the moment.

6. (Windows) Removed UNICODE option. UNICODE is enabled by default
on all Windows builds now. The 32-bit version links against
libunicows.a for continued Win9x compatibility.

7. (Windows) Removed hacks surrounding unicode handling of main().
They are no longer necessary with the new tools.
2010-01-03 21:31:44 +00:00
Wilbert Pol
2baf956ec5 Configured port A on the uPD7801 to an output port. 2010-01-03 10:15:24 +00:00
Aaron Giles
3df8953bca Removed the various HAS_xxxx for sound cores. To select sound cores,
just choose them in the make system. Further granularity is not
necessary. This also means that the samples core is always required.
2010-01-02 20:21:00 +00:00
Wilbert Pol
22c5856130 Implemented uPD7801 timers. 2010-01-02 10:02:47 +00:00
Wilbert Pol
a83b755c7d uPD7801 core changes:
- Fixed incorrect disassembly of some instructions.
- Updated the handling of interrupts to match the documentation.
2010-01-02 08:58:38 +00:00
Aaron Giles
cb6fcbbcfa Allocate inline_config separately to avoid alignment issues. 2010-01-01 19:29:12 +00:00
R. Belmont
b08f51e0aa Trivial BIGENDIAN=1 rsp compile fix, no whatsnew needed. 2010-01-01 16:36:08 +00:00
Aaron Giles
0f6f7ba842 Converted RSP callbacks into device callbacks. Removed a ton of
tag-based queries in favor of using the device passed.
2010-01-01 00:18:16 +00:00
Aaron Giles
b3a8dd2113 Oops, fixed misaligned 32-bit accesses in RSP DRC.
Also  disabled DRC_SQV implementation as it breaks music in mtetrisc.
2010-01-01 00:16:45 +00:00
Aaron Giles
289a309cd3 Cleanups and version bump. 2009-12-31 22:03:37 +00:00
Phil Bennett
4106d2aaf6 Added additional information to the dipswitches and configurations sections in the -listxml output [Oliver Stoneberg]
---------- Forwarded message ----------
From: Oliver Stöneberg <oliverst@online.de>
Date: Thu, Dec 31, 2009 at 1:06 AM
Subject: enhanced dipswitch/configuration information in -listxml
To: submit@mamedev.org


This patch adds some additional information to the dipswitches and
configurations in the -listxml output, so I can test
dipswitches/configurations in mame_regtest by creating .cfg files.

By using this I already found two issues in MESS and the 1943
"Service Mode" issue in MAME would have been detected.

I am also wondering, if there are any dipswitches, that rely on more
than one port. If that's the case I might have to look at them and
change the output.
2009-12-31 11:15:12 +00:00
Phil Bennett
f7b4dbfea1 Fixed x86 HLT instruction handling [Phill Harvey-Smith]
Date: Mon, 28 Dec 2009 00:29:31 +0000
From: Phill Harvey-Smith <afra@aurigae.demon.co.uk>
To: submit@mamedev.org
Subject: i86 patch

Hi,

Attatched is a patch correcting the operation of the hlt instruction in 
the i86 core. I have done test builds with both the current mame and 
mess source for both debug and normal builds, and all seems to be ok.

Cheers.

Phill.

-- 
Phill Harvey-Smith, Programmer, Hardware hacker, and general eccentric !

"You can twist perceptions, but reality won't budge" -- Rush.
2009-12-31 00:56:09 +00:00
Phil Bennett
6f4011f247 Corrected a couple of typos in tilemap.c (not whatsnew worthy) 2009-12-31 00:33:55 +00:00
Ryan Holtz
c0d0d89d1b Fixed a few DRC-ized vector load/store opcodes in the RSP core. [Harmony] 2009-12-30 07:56:09 +00:00
Aaron Giles
152d8a7db0 Explicitly sign-extend 32-bit indexes for load/loads/store on 64-bit
machines to prevent overflow issues. Fixes DRC crash in mtetrisc.
2009-12-30 06:51:42 +00:00
Aaron Giles
31c7c2c219 Fixed error in codegen for drol/dror opcodes in the x86 back-end.
Re-implemented misaligned memory handling in the RSP DRC as before.
2009-12-30 06:19:08 +00:00
Aaron Giles
ad010bc54e Fix some errors the 4.4.3 compiler complains about in C++ mode. 2009-12-30 02:57:38 +00:00
Roberto Zandona
1284b17000 added two opcodes in the nec cpu; this is a temporary fix; we need to check if cb2001 use a custom cpu; in this case we need to split different cpu
cb2001: added more opcodes
2009-12-29 21:39:49 +00:00
Aaron Giles
81523f2e10 gcc 4.5.0 compilation fixes. 2009-12-29 14:35:54 +00:00
Ryan Holtz
50fbe1b27c Fixes the debug build. 2009-12-28 22:08:29 +00:00
Aaron Giles
f5730e89ef Exposed an address space for EEPROM devices. This has several
side-effects:
 - EEPROM memory is now visible in the debugger
 - EEPROM memory can be accessed like any CPU/device memory
    (i.e., use eeprom.b@<addr> instead of eeprom.eb@<addr>)

Removed support in the expression engine for EEPROM-specific
accesses.

Updated all systems that muck directly with EEPROM memory to
use memory accessors instead on the EEPROM address space.

Extended the devtempl.h file to support device address spaces.

Cleaned up romload a bit to make it clear that region flags are
enforced for any device with an address space, not just CPUs.
2009-12-28 18:04:50 +00:00
Ryan Holtz
7858c436fc Converted a number of vector opcodes to the RSP DRC core. [Harmony]
Unrolled and optimized a number of vector opcodes in the interpreter RSP core. [Harmony]
2009-12-28 16:50:06 +00:00
Aaron Giles
45d1ff4d1e Cleaned up braces in the code so that they are properly balanced. [Atari Ace] 2009-12-28 09:09:20 +00:00
Aaron Giles
bd24fb23c1 Results of running the latest srcclean. 2009-12-28 09:04:00 +00:00
Aaron Giles
93d465ad3c Whitespace cleanup. (No, a release is not yet imminent.) 2009-12-28 08:49:12 +00:00
Aaron Giles
7819b1fce7 Fix for INP recording ports that have changed notification. Also prevents
new inputs from affecting recorded inputs during playback. [mahlemiut]
2009-12-28 08:23:42 +00:00
Aaron Giles
f20a2e6b17 Fixes so we can compile as C++ again. 2009-12-28 07:34:17 +00:00
Aaron Giles
4e9be151f7 Renamed tilemap -> tilemap_t, as the name 'tilemap' is too commonly
used for statics and structure members, and some compilers (esp. C++
compilers) don't allow that.
2009-12-28 05:45:20 +00:00
Fabio Priuli
0c6ad781dc Converted Fujitsu MB87078 Volume Controller to be a device and updated taito_b.c to use the new code (it's the only driver emulating this chip atm) 2009-12-27 23:58:00 +00:00
Aaron Giles
86a9e3e217 Rename eepromdev.c/h back to eeprom.c/h 2009-12-27 23:20:05 +00:00
Aaron Giles
4717d53cac Rename functions and other references to eepromdev_* back to eeprom_* 2009-12-27 23:16:59 +00:00
Aaron Giles
ccc24c02f1 Remove old eeprom implementation. 2009-12-27 23:11:58 +00:00
Aaron Giles
96f9302a8c Allow any device memory (not just CPU's) to be accessed via debug expressions.
Change eeprom accessors to require the eeprom device name.
2009-12-27 23:10:25 +00:00
Wilbert Pol
dd7b96b1b1 i8237: removed old MESS hack leftover. No whatsnew. 2009-12-26 13:16:04 +00:00
Aaron Giles
aee2295323 Converted darkhors to eeprom device. Also trimmed obvious overdump of
EEPROM data.

Updated EEPROM device to initialize EEPROM at NVRAM load time rather
than init time, giving DEVICE_INIT handlers a chance to muck with the
data first.
2009-12-26 08:19:13 +00:00
Miodrag Milanovic
48a799c97d - Removed sysconfig section from game_driver struct
- Made compatible_with attribute available for MAME too (with NULL value set in GAMEL macro)

This patch require full recompile due to change of GAMEL macro
2009-12-25 19:59:44 +00:00
Aaron Giles
43dda8844d Removed _NODEFAULT_ forms of EEPROM driver macros. If you need to add
default data, follow the MDRV_EEPROM_ADD() with MDRV_EEPROM_DATA().
2009-12-25 01:08:43 +00:00
Scott Stone
f548c1cce3 taito_1.c - Added XTALs to driver, fixing MT bug #03598.
Comment:  Added a MACHINE_START for LAGIRL, which doesn't want to work properly (assumes I have service mode ON?)  The working method is still in place (using cachat's startup).  The clock changes were per the source notes above the ROM_START.  If anyone wants to get it working with the proper speeds, be my guest.
2009-12-24 23:33:36 +00:00
Scott Stone
64f770d382 Reverted 'bad code' mistakenly submitted in r7745. I'll keep the other code I submitted mistakenly as commented below:
sub.c - Put in board ETAL and came up with some seeming better clock speed approximations until board readings can be done.
tron.c - Sets tron3 and tron4 don't appear to have a valid working cocktail mode video or controls (upright player2 works fine).  Flagged as GAME_NO_COCKTAIL.
subs.c - Added DIP LOCATIONS.
2009-12-24 14:52:02 +00:00
Fabio Priuli
b99e364eae Split ADC1038, Konami 033906 and Konami 056230 emulation from gticlub.c and konppc.c. Also, converted them to be devices and updated PPC Konami games to use the new code
Just out of curiosity: did sscope/sscope2 ever pass through the initial hw checks or did they regressed at some point?
2009-12-24 11:38:43 +00:00
Aaron Giles
047af689a7 Converted gaelco2, xorworld, and vamphalf over to the eeprom device. 2009-12-24 04:39:59 +00:00
Scott Stone
25a430ea9b Fixed 03597: outrun, outrunra, outruno, outrundx, outrunb: Incorrect vsync speed on Outrun
Comment:  I failed to look at the video timing when Guru's readme, this should correct the behavior.  I also added the cpu/video bd numbers listed on Stefan Lindberg's reference board for Outrun.
2009-12-24 03:51:45 +00:00
Aaron Giles
75b4c8078e Fixed auto EEPROM region to properly handle 16-bit data.
Updated mitchell.c to use the EEPROM device. Removed spang hacks in
favor of preloaded eeprom data.
2009-12-24 03:36:44 +00:00
Aaron Giles
c285eb9bcd Cleanups and version bump. 2009-12-23 18:10:25 +00:00
Aaron Giles
79b8f09ad8 From: Samuele Zannoli <samuele.zannoli@sparkbio.it>
Date: Tue, Dec 22, 2009 at 11:57 AM
Subject: Core for PIC 16c62x series of processors
To: submit@mamedev.org


Hello,
         this patch contains a core for the PIC 16c62x series of processors.

It has been made starting from the pic16c5x that is already present.
This version stil misses the various internal devices, however the
opcodes and i/o ports work, and it is enough to run the emulation of
the security pics used with the gd-roms.

Bye,
       Samuele Zannoli
2009-12-23 18:01:49 +00:00
Aaron Giles
505f0d7caf From: Atari Ace <atari_ace@verizon.net>
Date: Tue, Dec 22, 2009 at 4:44 PM
Subject: [patch] Fix srcclean/src2html bugs, misbalanced tokens and
visible whitespace errors
To: submit@mamedev.org
Cc: atariace@hotmail.com


Hi mamedev,

While experimenting with srcclean and src2html as indentation
validators, I stumbled across a couple of bugs.  The first is that
srcclean doesn't properly handle /*...*//.  It sees the last / char at
the end as the second / of an inline comment, where it might be a
division token or the start of either type of comment.

The second bug is that src2html improperly handles strings with
embedded quotes preceded by escaped backslashes, e.g. "ab\\\"cd".  It
believes the string terminated in the middle, and the last quote
starts a new string.  This issue is unlikely in actual code, but
should be handled correctly.

The first patch fixes these, and a some cases where there are
dangling/missing tokens which my validation tools are noticing.  These
occur in some unused macros, dead code sections, and in some macros
that are deliberately misbalanced (v9938.c, psx.c).  In the deliberate
cases, I balanced the braces by making exactly one open and one close
macro and using those throughout.

The second patch is then a set of visible whitespace "problems". Cases
where the closing brace isn't at the same indent level as the open
brace, and some cases where the indent level isn't a multiple of four.
In the case of ssv.c I folded the assignments into init_ssv() to
simplify the code and restore the brace balance, otherwise I kept to
simply adding or removing whitespace.

~aa
2009-12-23 17:59:08 +00:00
Aaron Giles
a825a2427f ---------- Forwarded message ----------
From: Barry Rodewald <bsr@xnet.co.nz>
Date: Wed, Dec 23, 2009 at 2:37 AM
Subject: Yet more i386 fixes
To: submit@mamedev.org


Hi,

Here's two more small i386 fixes.

First, is an implementation of the LSL protected mode instruction.
While it's far from perfect (ie: it doesn't check for anything other
than a null segment selector), it does help get a little bit further
for some FM Towns applications.

Second, is a fix for the REP instruction when used with a segment
prefix.  Essentially, it reverses the use of the segment_override and
segment_prefix variables compared to other instructions.  This fixes
sprite data copied into sprite RAM on the FM Towns version of Raiden
Trad.

Thanks,
Barry Rodewald
mailto:bsr@xnet.co.nz
2009-12-23 17:53:33 +00:00
Aaron Giles
de3ffd84b3 Removed old index-based DISCRETE_ADJUSTMENT, and renamed
DISCRETE_ADJUSTMENT_TAG to replace it. Updated all callers.

Removed input_port_by_index, as it is no longer needed.
2009-12-23 17:23:51 +00:00
Aaron Giles
6f4ff3c823 Moved machine->gfx initialization out of the video module and
into drawgfx. We now call this before devices are initialized,
so that devices can dynamically append to the machine->gfx as
needed.
2009-12-23 17:15:41 +00:00
Aaron Giles
201ea424db Get rid of explicit resource tracking for state saving. Now we just use
the auto_ allocators, since registration is restricted to initialization.
2009-12-23 16:44:55 +00:00
Aaron Giles
680184085a Added "new" command -listdevices (or -ld) to list the devices attached
to a driver. I notice that MESS has a command with the same name; hopefully
the behaviors can be combined eventually.
2009-12-23 16:37:09 +00:00
Aaron Giles
caf41f8f39 Fixed recent regression reports.
Converted rtc65271 to a device.
2009-12-23 16:16:12 +00:00
Aaron Giles
7eace0d29e EEPROM device now looks for a matching memory region to fetch the
default values from. Fixed bug in ROM loader that would change the
memory region flags to match devices with no address bus. Updated
groundfx to use the new default loading scheme.
2009-12-23 06:06:20 +00:00