Commit Graph

1765 Commits

Author SHA1 Message Date
Roberto Zandona
f9eff6c49b semplificated m90 video update routine 2008-06-07 08:53:39 +00:00
Nicola Salmoria
362b795e71 01870: skylance, skylancr: cocktail mode, player 2's shots are offset from player's position 2008-06-07 08:31:28 +00:00
Aaron Giles
bc9235ad0f gticlub:
* Converted sysreg_r/w to 8-bit handlers
 * Added hack to make network IRQs work; brings some games back to life

UML:
 * Fixed STORE opcode description to allow immediate source operands

x86/x64 back-ends:
 * Added flag support to SEXT, ROLAND, ROLINS, LZCNT opcodes

PPC DRC:
 * Rewrote lswi/stswi as subroutines
 * Made accesses to tempdata explicitly dword or qword
 * Fixed SRR0 when generating a syscall
 * Removed no longer necessary TESTs on extsb/w, rlwinm, rlwnm, rlwimi, cntlzw
 * Fixed bug where the SO flag was not being computed for compares
 * Fixed flag computations for mulhw/mulhwu/mullw
 * Fixed subtlety of shifts between 32 and 63 in srw/sraw
 * Fixed mffs/mtfsf to use FP registers
 * Fixed mtfsfi to use the immediate value properly
 * Now marking terminal count bit in DMA status register
2008-06-07 08:13:22 +00:00
Roberto Fresca
8c92fd4b40 Italian gambling games based on H8/3337 MCU + NEC D7759GC:
Corrected year and manufacturer to ntcash and wizard.
Sort the games by year.
2008-06-07 03:14:43 +00:00
Aaron Giles
0148608c39 UML:
* Added simple symbol table to the UML for improved disassembly
 * Changed optional disassembler cache parameter to a drcuml object

PPC DRC:
 * Added symbols for most common variables
 * Fixed bug in handling XER carry flag for subo. forms
 * Simplified flag insertion logic for opcodeo. forms
2008-06-06 23:00:30 +00:00
Aaron Giles
1a63c29d04 UML:
* Improved disassembly output
2008-06-06 22:13:09 +00:00
davidhay
b84eedd228 more suprnova work, no visible changes. 2008-06-06 21:50:43 +00:00
davidhay
af6e4ade25 suprnova update. now uses our own draw roz function, which supports linescroll or columnscroll, and will give me the ability to 'render' priority data (with roz applied) from the flagsmap to a temp bitmap to work with.
no visual improvements yet, although hopefully there are no regressions either.
2008-06-06 20:50:48 +00:00
Aaron Giles
cacc9b25ca UML:
* Added logic to simplify opcodes as much as possible at the UML layer.
 * Removed similar logic in the x86 and x64 back-ends.
 * Added stricter parameter validation for registers and mapvars
2008-06-06 19:45:29 +00:00
Aaron Giles
40d2b88ef5 UML:
* Added NOP opcode
2008-06-06 17:13:53 +00:00
Roberto Zandona
e40a5aa32d fixed game name 2008-06-06 16:46:57 +00:00
Roberto Zandona
6ea7ce4b3f fixed game name 2008-06-06 16:30:08 +00:00
Wilbert Pol
73625e2656 Fixed handling of the U register in the RET instructions and when taking an interrupt in the Nintendo Minx cpu core. 2008-06-06 16:28:00 +00:00
Roberto Zandona
21ca186fe2 fixed game name 2008-06-06 16:21:00 +00:00
Aaron Giles
1c1498b0fc UML:
* Removed explicit flag requests from the shorthand opcodes
 * Added optimization function to drcuml which is called at block end
 * Added logic to compute the necessary flags based on upcoming opcodes
    and only select those flags which are required
 * Updated the PPC and MIPS3 DRCs to no longer explicitly specify flags
2008-06-06 07:36:36 +00:00
Aaron Giles
ee8162eff9 UML:
* Wrote new disassembler based on enhanced opcode info structure.
 * Moved disassembler into drcuml.c and removed old code.
 * Extended disassembler buffer sizes to at least 256 bytes.
2008-06-06 06:42:21 +00:00
Aaron Giles
829cf37d87 PPC DRC:
* Fixed bug where a branch and link to the link register would
    overwrite the link register before fetching the target address
2008-06-06 04:23:13 +00:00
Aaron Giles
b80ba7e56c UML changes:
* Added more extensive per-opcode information in preparation for UML 
    optimization step.
 * Made validation more thorough using the extended information.
 * Disabled back-end validation for now until it can be revisited
    using the new tables.
 * Changed GETFLGS encoding so that the mask is in parameter 2 instead
    of the flags field.
2008-06-06 04:02:06 +00:00
Jonathan Gevaryahu
89769efec7 Update comments for tms5220 and sn76496. Add a Couriersud-style pinout to tms5220.c 2008-06-06 03:16:02 +00:00
Nathan Woods
5ea9b4a12a Passing a running_machine parameter 2008-06-06 00:38:58 +00:00
Nathan Woods
136db6075d Fixed compilation error when neither HAS_PPC403GA nor HAS_PPC403GCX are defined 2008-06-06 00:38:33 +00:00
mariuszw1
fbda64287d 68681 DUART update
- converted to device interface
- converted to 8 bit device
- added input and output port
- added X1/16 timer
2008-06-05 20:58:08 +00:00
Aaron Giles
524dde249b Fix -listxml again. 2008-06-05 17:23:32 +00:00
Aaron Giles
cf4b81fba9 Separated condflags into two individual fields. 2008-06-05 17:21:35 +00:00
Aaron Giles
1bc774b32b Cleanups/version bump. 2008-06-05 15:57:00 +00:00
Aaron Giles
cfb9caf08f 01829: bermudat, gwar, ikari, victroad + clones: MAME freezes at "initializing" screen 2008-06-05 15:36:27 +00:00
R. Belmont
317607a143 64-bit GCC compile fixes. 2008-06-05 14:10:56 +00:00
Nathan Woods
5b94cc19d5 MESS-specific compilation fix 2008-06-05 11:12:33 +00:00
Aaron Giles
95ae38db10 Missed files from Atari Ace's change. 2008-06-05 09:50:25 +00:00
Aaron Giles
2deed30b29 Fixes for 64-bit MSVC compile. 2008-06-05 09:49:23 +00:00
Aaron Giles
bba83b69aa 01859: looping, loopinga, skybump: Fatal Error crash
The CPU context is not active in a timer callback. You have to set it
yourself.
2008-06-05 09:47:46 +00:00
Aaron Giles
48332dea92 Added compile-time error if PTR64 is incorrectly set. 2008-06-05 09:41:02 +00:00
Aaron Giles
a5abe031ca It is now an actual error to have duplicate input bits. 2008-06-05 09:36:23 +00:00
Aaron Giles
793cb1e330 Fixed remaining input port bit conflicts. 2008-06-05 09:34:49 +00:00
Aaron Giles
7474bb220a MAMETesters Bugs Fixed
----------------------
- 01845: [Core] all games: cheats are broken
- 01846: [Misc.] -CHEAT trigger causes MAME crash with PSX-type CPU drivers

Source Changes
--------------
Updated cheat system
  - Locked search region when malloc fails to allocate gigantic memory
    instead of fatal error. Also locked zero malloc error in case of
    search speed = all memory in 32-bit CPU. And added search region
    range checker to lock a search region with a big risk

  - Fixed a bug that old code is always converted to specified
    separator in enable/disable menu

  - Refined new cheat format.
     * Rewritten cheat format again. newest format is
       ":gamename::type::address::data::extend_data:(description:comment)"
       Expanded type field now requires 10 bytes (not 8 bytes) and
       it divides internal cpu (2 bytes) and type (8 bytes) parameters

     * Removed VWrite, VRWrite. The flag of Value Selection is merged
       into expanded type field now.

     * Added CBit (Condition Bit). This checks bit in read data then
       set or clear bit in case of true.

     * Rearranged cheat code viwer based on newest cheat format

  - Fixed unworking Load Old Format option. If you want to load old or
    older format code, set it (default is OFF)

  - Renamed functions/structures based on coding guidlines
    All structures and included parameters are completed

  - Merged resize_*_no_dispose() into resize_*()

  - Removed the hack of search region for SH-2 CPU because required
    region is now set as expected without this hack
2008-06-05 08:46:48 +00:00
Aaron Giles
facab0e9fc From: abcd efgh [mailto:cix_999@yahoo.it]
Sent: Mon 6/2/2008 2:00 PM
To: submit@mamedev.org
Subject: Fixed input in wpksocv2

Fixed some dips and added correct inputs for wpksocv2, despite still missing the correct input for begin the left right movement the game is almost playable.
Bye Sonikos.
2008-06-05 08:43:19 +00:00
Aaron Giles
f1142a1bb1 From: Corrado Tomaselli [mailto:corrado.to@tiscali.it]
Sent: Monday, June 02, 2008 1:31 AM
To: submit@mamedev.org
Subject: raiden fighters 2 (Taiwan)

diff + romset

New clones added
----------------
Raiden Fighters 2 (Taiwan, SPI)
2008-06-05 08:41:51 +00:00
Aaron Giles
56279e2780 From: Atari Ace [mailto:atari_ace@verizon.net]
Subject: [patch] memory_region madness

The memory_region and memory_region_length functions are probably the
two most common functions in MAME that don't take a machine parameter
but probably should given the direction MAME has been going in
removing global variable references.  Attached are massive patches to
accomplish this.  I wish they could be smaller, but sadly, this is
butchery, not brain surgery.

The first patch makes some simplifications to help the second patch
along.  It is a general improvement as well, and hopefully can be
applied even if the second patch is rejected.  Specifically:

1.  Introduced/updated some include files for files that export
functions whose apis will need to be changed (cps1.h, decocrpt.h,
ms32.h, pgm.h, fd1089.h, konami1.h).  In the case of konami.c, I
renamed the file konami1.c and changed the api and callers to only
require one function export.
2.  Pulled memory_region*() calls out of for loops and folded the
occasional duplicated call.  The compiler can't likely infer that the
results are constant, so this should be a minor performance win as
well.
2008-06-05 08:40:22 +00:00
Aaron Giles
9073e62229 From: Corrado Tomaselli [mailto:corrado.to@tiscali.it]
Sent: Monday, June 02, 2008 1:15 AM
To: submit@mamedev.org
Subject: cross shooter diff

Verified clock frequencies on Air Raid/Cross Shooter.
2008-06-05 08:38:05 +00:00
Aaron Giles
ed6ad8b4f9 PowerPC dynamic recompiler: [Aaron Giles]
- rewrote PowerPC implementation as a dynamic recompiler on top
    of the universal recompiler engine
 - wrote a front-end to analyze PowerPC code paths and register usage
 - wrote a common shared module with C implementations of tricky
    CPU behaviors
 - added separate CPU types for the variants supported, instead of
    relying on a hidden model enum
 - rewrote the serial port emulation for the 4xx series to be more
    accurate and not rely on separate DMA handlers
 - rewrote the MMU handling to implement a software TLB that faults
    in pages and handles changed bits appropriately
 - implemented emulation of the PowerPC 603's software TLB, which
    allows the model 3 games to run without a hack to disable the MMU

Updated the PowerPC disassembler to share constants with the rest of
the core, and to more aggressively use simplified mnemonics, especially
for branches. [Aaron Giles]

Universal recompiler:
 - fixed frontend to handle opcode widths different from bus width
 - added several new opcodes:
    * (D)GETFLGS - copies the UML flags to a destination operand
    * FDRNDS - rounds a double precision value to single precision
 - renamed several opcodes:
    * SETC   -> CARRY
    * XTRACT -> ROLAND
    * INSERT -> ROLINS
 - consolidated the following opcodes:
    * LOAD?U -> LOAD
    * LOAD?S -> LOADS
    * STORE? -> STORE
    * READ?U -> READ
    * READ?M -> READM
    * WRITE? -> WRITE
    * WRITM? -> WRITEM
    * SEXT?  -> SEXT
    * FTOI?? -> FTOINT
    * FFRI?  -> FFRINT
    * FFRF?  -> FFRFLT
 - removed some opcodes:
    * FLAGS - can be done with GETFLGS/LOAD4/ROLINS
    * ZEXT - can be achieved with AND
    * READ?S - can be achieved with READ/SEXT
 - updated C, x86, and x64 back-ends to support these opcode changes
 - updated disassembler to support these opcode changes
 
MIPS3 dynamic recompiler:
 - updated to use new/changed opcode forms
 - changed context switch so that it only swaps a single pointer

Konami Hornet changes: [Aaron Giles]
 - updated to new PowerPC configurations
 - updated some memory handlers to be native 8-bit handlers
 - cleaned up JVS implementation to work with new serial code
 - added fast RAM for the work RAM to give a small speed boost

Konami GTI Club changes: [Aaron Giles]
 - updated to new PowerPC configurations
 - updated some memory handlers to be native 8-bit handlers

Konami Viper/ZR107 changes: [Aaron Giles]
 - updated to new PowerPC configurations

Sega Model 3 changes: [Aaron Giles]
 - updated to new PowerPC configurations
 - reimplemented/centralized interrupt handling
 - these games are broken for the moment

Fixed crasher due to some Konami games using 8 layers in
the K056832 implementation, even though it was only written
for 4. [Aaron Giles]

Added fisttp opcode to i386 disassembler. [Aaron Giles]
2008-06-05 08:34:13 +00:00
Nicola Salmoria
8ea2d9e334 optimised tilemap_draw rowscroll case to avoid overhead when used with clip rects smaller than the tilemap. This reduces by an order of magnitude the time taken to render the bg in Gunnail stage 5. 2008-06-05 08:04:46 +00:00
Nicola Salmoria
707c11bd06 increased gunnail 68000 clock to 12MHz to match readme. This avoids slowdowns.
added support for per-scanline y scroll. Fixes level 5 and boss explosions.
00778: gunnail: The background in stage 5 is wrong. 
00779: gunnail: After you kill a boss, always a number of vertical lines will appear.
2008-06-05 05:33:23 +00:00
Roberto Fresca
466bc7737c Italian gambling games based on H8 MCU:
Cleaned-up and organized both drivers.
Added more technical notes.
Hooked Xtals and sound devices/interfaces.
Added elvis to the h8/3337 driver.


New games marked as GAME_NOT_WORKING
------------------------------------
Elvis? [Roberto Fresca]
2008-06-05 03:24:17 +00:00
davidhay
5c6d0a9a51 changed suprnova blending implementation a bit.. still not right. 2008-06-04 22:50:14 +00:00
davidhay
1bd4adbe8b suprnova changes.. work in progress 2008-06-04 21:57:18 +00:00
Wilbert Pol
752af71d6e Fixed flag results for INC, DEC, AND, OR, and XOR instructions in the Nintendo Minx cpu core. 2008-06-04 21:32:22 +00:00
Curt Coder
113d019062 Used cpunum_ instead of active_cpu_. 2008-06-04 20:24:31 +00:00
Curt Coder
6d6a5b237d - Added HALT opcode and halt mode to the COP410
- Added Microbus support, clock divisor selection, and CKO mode selection to the COP420
- Changed Thayer's Quest keyboard interface to at least slightly resemble the schematics
2008-06-04 20:15:15 +00:00
davidhay
5817f03b73 adds Black Touch
Working games added
-------------------

Black Touch (Korea) [David Haywood] (bootleg / hack of Dragon Punch)
2008-06-04 19:34:46 +00:00
Wilbert Pol
114c783141 Fixed opcodes 45, 4D, 55, 5D, B5, B6, B7, FC, FD, and CF 70-7F in the Nintendo Minx cpu core. 2008-06-04 18:41:38 +00:00