New Clone Added:
--------------------
Hatris (World) [Andrew Welburn]
Also corrected the the difficulties in the dipswitches to stated "Hat Fall Velocity" and "End Line Position" as found in a scanned PDF manual.
--------------
Otenami Haiken (V2.04J) [Joerg Hartenberger]
Shanghai Sangokuhai Tougi (Ver 2.01J) [Joerg Hartenberger]
they're g-net games and the metadata is currently wrong (used ident from another game) but I'll fix it when I get sent the proper one. Both work fine.
Changed bilinear filter to use faster rgbutil.h version. It would
be even faster if the texture code downconverted to fixed-point
earlier and then used the integer values when doing the texture
lookups.
right now cvs title screen
48% main CPU
11% Memory Read
16% Memory WRITE64_HANDLER
20% User1 (Start Render->End Render)
at 8% speed
So.. main CPU and Memory Access are still the main bottlenecks, although the video rendering is significant.
Sent: Wednesday, May 06, 2009 12:01 PM
To: submit@mamedev.org
Subject: MAME Debugger
In some processors (like Z80), it is not possible to put the BPs to
0x000A, 0x000B, 0x000C, 0x000D, 0x000E with the key F9, and if it
is inserted more than 10 BP, the BP A, B, C, D, E cannot be removed
with the key F9.
Xander
Smitdogg, cricri_pingouin, incog, B. Sparks, ANY. I have some carts to
go through for the driver notes but no time today to update the
source. For these 2 carts, both pcb's are 171-5782. Shadow Dancer uses
an intel 27256 and a MASK uPD27c4000, sticker on the pcb is
837-6963-43. Streets of Rage uses TMS 27c256 and MASK uPD27c4000. pcb
sticker is 837-6963-51.
Smitdogg
Sent: Tuesday, April 28, 2009 6:20 AM
To: submit@mamedev.org
Subject: Some protection fixes for galpani2
Hi, I'm submitting a fix for the current protection emulation in
galpani2 driver, based in MAME0131.
I've modified somewhat the protection handling, geeting rid of
the need to call galpani2_mcu_run from VIDEO_UPDATE, as
that function is performed by CPU2's INT7 and it now works.
And added support for command 2, making gp2se go into
demo mode and allowing to go ingame, nice skulls! ;-)
Unfortunately, this set is still not playable because of missing
gals in the background and sometimes there's an ADDRESS
ERROR, causing a reset. Included in these changes, I added
support for MCU triggering by CPU2 .
Also:
- changed some 8 bit writes disguised as 16 bit to
AM_WRITE8 and AM_DEVWRITE8 and some
AM_WRITE(SMH_NOP)s to AM_WRITENOP.
- "crystallized" the clocks of the M68000s and OKIs,
deriving the latter from the former.
- fixed a Copy&Paste mistake I made in the previous
submission, in the sound rom mappings for galpani2/2t/2g.
- reduced the input port definition duplication by using
PORT_INCLUDE where applicable instead of defining
everything again.
- reduced the CPU#2 Code region size to the effectively
used size, and expanded the CPU#2 Backgrounds Data
region size to the maximum usable size, making it the
same for all sets.
Keep on the good work!
Regards,
Luis Faria
Special Criminal Investigation (Negro Torino hack)
I added this hack running on the original pcb. There are some changes in
the gfx of the game.
The company is the same that did Puzznic hack (again running on original
pcb). An arcade owner once told me Negro s.a.s from Turin was once the
official dealer of Taito games. I wonder if taito knew they hacked their
games ;)
Cabal (bootleg set 2) [Klaus]
this one is closer to the original sets, basically it's just a version of the game with the sound cpu pre-decrypted & split into decrypted data / encrypted data. Came from a legitimate bootleg board tho.
===============================================================================
Notice that I'm not sure about who I should properly credit for the dump (Dr. Decapitator or Decapping Project?).
New Clone Added
===============
Pit Fighter (Rev 5) [Smitdogg, The Dumping Union]
Adds Rev 5 of Pit Fighter to the driver. It works as well as the other sets ;-P
Also added correct 4megabit mask rom dumps to Rev 5 & 6.
----------------
Noraut Joker Poker [Alan Griffin]
===============================================
I don't know if he wants to be credited with his name, I guess so...
I'll also contact him for the initialize info...
It doesn't work at all the way the real hardware works and it's still
buggy as hell, but at least Kale will be able to see more than the
flat sprites.
Other people are welcome to work on something which could try to
pretend to be accurate.
=========================================================================================
Any help here is appreciated, I don't know why the gameplay looks pretty much broken,
i8085a irq bug?
New games marked as GAME_NOT_WORKING
------------------------------------
Panic Park (PNP2 Ver. A) [Guru]
If anyone wants to mess with this driver, please feel free. A few things that could use attention:
- Palette RAM is definitely not right
- The text layer isn't correct
- The I/O board now recieves a startup packet from the subcpu but doesn't send anything back, which in turn means the subcpu won't let the MIPS advance. What else does the I/O board want? It's a tiny program, shouldn't be too hard to work out.
- All the games download a giant mass of binary data through the 3D FIFO on startup. Assuming it's a DSP program, identifying what kind it's for would be nice.
* karnov.c
* kchamp.c
* kingobox.c
* klax.c
* koikoi.c
* konamigq.c
* ladyfrog.c
* liberate.c
Fixed Yellow Cab (Japan) booting, promoted to working status [Angelo Salese]
Attempted to fix colors in Koi Koi Part 2 [Angelo Salese]
Lowered DAC volume in Karate Champ from 0.50 to 0.15, it was having sound clipping problems since day one. [Angelo Salese]
(Fixed Karnov sound regression)
Note: the current code uses IPT_PADDLE. This causes the game to start with the thrust at 50%. This is not correct. The control is really a hand operated pedal.
* senjyo.c
* seta2.c
* sfkick.c
* shangha3.c
Properly hooked-up player 2 mahjong panel in mj4simai
Moved paletteram_IIBBGGRR_w() from senjyo.c to emu/video/generic.c
===================================
I'm not sure if sfkick.c memory map is 100% correct, needs double checking (it's the same on MSX MESS driver)
Also anybody is interested in rewrite senjyo.c driver from scratch? ;P
* shaolins.c
* shisen.c
* shootout.c (and cleaned-up the NMIs on coin insertions)
* sidearms.c
* sidepckt.c (merged the two per-game memory maps and moved the protection simulation hook-up to be called on DRIVER_INIT)
* skyarmy.c
* skyfox.c (and cleaned-up the NMIs on coin insertions)
* skyraid.c
* slapfght.c (also cleaned-up the ram sharing)
* slapshot.c
* spbactn.c
* spcforce.c
* spdodgeb.c
* speedspn.c
Modified my coin_insertion() function to use ASSERT & CLEAR instead of PULSE_LINE in cntsteer.c & ssozumo.c
Small region map rename for funystrp.
* groundfx.c (also fixed 00487: groundfx: It has wrong default NVRAM settings, especially about the lap number (1) and the coin/credit settings (1/2).)
* lastduel.c
* macrossp.c
* madmotor.c (also cleaned-up some video variables in it)
* mcatadv.c (also reduced a 1.0 clipping out volume setting)
* moo.c
Converted ssingles.c case of AM_READ(SMH_ROM)
sbishi is a 2 player set, it uses the 'player 3' inputs for the 2nd player.
attempting to use the inputs mapped as 'player 2' in the parent set causes the game to break in strange ways, treating that player as both player 1 and/or player 2 depending on the situation, not awarding any score etc.
this removes the broken inputs for the 2 player set and renumbers the players correctly, as they are clearly not meant to be connected in this case.
- f1gp.c, fastlane.c, firetrap.c, flkatck.c, flstory.c, freekick.c, fromanc2.c, fromance.c, funkybee.c, funkyjet.c, funybubl.c, fuukifg2.c, fuukifg3.c
Non-whatsnew note:
There were a number of conflicts, but apart from the auto_malloc in funybubl.c, all of them were corrected with selecting "Your entire file", as all of them appeared to have to do with the SMH_BANK conversion that went away thanks to memory-map merging anyway.
====================================================================================
Will do the sound cpus tomorrow. I should admit that I could have broke something in the process...
This update changes the way we handle memory allocation. Rather
than allocating in terms of bytes, allocations are now done in
terms of objects. This is done via new set of macros that replace
the malloc_or_die() macro:
alloc_or_die(t) - allocate memory for an object of type 't'
alloc_array_or_die(t,c) - allocate memory for an array of 'c' objects of type 't'
alloc_clear_or_die(t) - same as alloc_or_die but memset's the memory to 0
alloc_array_clear_or_die(t,c) - same as alloc_array_or_die but memset's the memory to 0
All original callers of malloc_or_die have been updated to call these
new macros. If you just need an array of bytes, you can use
alloc_array_or_die(UINT8, numbytes).
Made a similar change to the auto_* allocation macros. In addition,
added 'machine' as a required parameter to the auto-allocation macros,
as the resource pools will eventually be owned by the machine object.
The new macros are:
auto_alloc(m,t) - allocate memory for an object of type 't'
auto_alloc_array(m,t,c) - allocate memory for an array of 'c' objects of type 't'
auto_alloc_clear(m,t) - allocate and memset
auto_alloc_array_clear(m,t,c) - allocate and memset
All original calls or auto_malloc have been updated to use the new
macros. In addition, auto_realloc(), auto_strdup(), auto_astring_alloc(),
and auto_bitmap_alloc() have been updated to take a machine parameter.
Changed validity check allocations to not rely on auto_alloc* anymore
because they are not done in the context of a machine.
One final change that is included is the removal of SMH_BANKn macros.
Just use SMH_BANK(n) instead, which is what the previous macros mapped
to anyhow.
* groundfx.c (also fixed 00487: groundfx: It has wrong default NVRAM settings, especially about the lap number (1) and the coin/credit settings (1/2).)
* lastduel.c
* macrossp.c
* madmotor.c (also cleaned-up some video variables in it)
* mcatadv.c (also reduced a 1.0 clipping out volume setting)
* moo.c
Converted ssingles.c case of AM_READ(SMH_ROM)
-- Stripped out some old HNG64 code / some improvements
-- disabled the floor stuff in Fatal Fury Wild Ambition (looking for a cleaner implementation)
-- disabled zooming code for the same reasons (it was causing many issues)
-- understood and implemented the 'auto-animate' registers for the tilemaps (animated waterfalls etc. in Fatal Fury Wild Ambition)
-- reorganized graphic decoding
goldstar.c improvements / changes
-- added scroll registers for the girl when enabled in attract mode
-- documented how you can swap the blue/green bonus colours (but left the code disabled, I think versions with it swapped probably just have different proms)
-- added gfxdecode for cmasterc
Xtreme Rally / Off Beat Racer! [Guru]
Beast Busters 2nd Nightmare [Guru]
also hacked out the sprite zooming in hng64 video, it's wrong. looks like beast busters might give me something to work with tho.
Non-whatsnew note:
I'm all for some manner of inheritance when a lot of memory maps have many similar entries, but it probably shouldn't be done via a huge #define.
- cave.c, circusc.c, citycon.c, cninja.c, combatsc.c, compgolf.c, contra.c, cop01.c, cosmic.c, cps2.c, crimfght.c, crospang.c, crshrace.c, and cshooter.c
All drivers from # to C should now have properly-merged memory maps.
function here. Remaining devices have been converted to have
device-specific functions to do the same thing with proper type
checking.
CPUs still have a set_info function but it is CPU-specific now and
no longer piggybacks on the general device function.
Sent: Monday, April 20, 2009 4:22 PM
To: submit@mamedev.org
Subject: 4/20 diff
Crystallized 1945kiii.c, maygay1b.c, maygayv1.c, mwarr.c, n8080.c
(20.16MHz crystal confirmed with schematics), pacman.c, panicr.c,
rallyx.c
[2399] Changed qmhayaku's sound CPU back to 4MHz, sounds work now
Sent: Monday, April 20, 2009 3:49 AM
To: submit@mamedev.org
Subject: Patch file with minor updates to the PAL's on Xenophobe
Hi,
Contained in this patch file are some updates to the PALs located on Xenophobe.
Now the actual labels on the chips are used and a couple of additional PALs a
re documented as needing to be dumped.
Kevin Eshbach
Sent: Monday, April 20, 2009 2:04 AM
To: submit@mamedev.org
Subject: small fix to debug screenless systems
Hello,
this small fix is needed to enable debugging screenless systems again:
and thief drivers.
Bunch of improvements to the Status system emulation. Correct
video timing, hooked up TMS9927, corrected colors, etc. Still
some work to do.
New games
=========
Status Blackjack
Status Fun Casino
------------------------------------
Azumanga Daioh Puzzle Bobble [iMp95]
The dumper don't want the image to be available to the public.
If you want the image, PM me.
I promised that this wouldn't be added until it's sold. Now Alex' seems very annoyed that somebody has been spreading his list of keys.
PLEASE stop adding stuff to the Naomi drivers, I'll add it. Yasu, I know you're trying to help, but you're just causing merge conflicts every time I try and sync.
for a memory region named "nvram". If it is found and is of
the same length as the generic_nvram_size, data is copied
from there instead of filling the RAM with the fallback
pattern.
Sent: Friday, April 10, 2009 10:47 AM
To: submit@mamedev.org
Subject: Mystic Warriors (JAA) and Field Combat redump
This adds Guru's dump of Mystic Warriors (JAA) and Field Combat
redump. The Field Combat redump fixes a title screen glitch, possibly
other things.
Smitdogg
* each opcode fetch is 2 cycles with /M1 low, so each byte of
opcode fetching causes slightly longer delays than the previous
tables
* implemented approximate wait state timing for videoram access;
further accuracy will rely on getting a dump of the PAL16R4
that controls the horizontal video timing
Currently an analog control creates the axis;inc;dec menu items all under the same ref. This means the UI still thinks it is adding items when you move between any of the three for the same control. You have to move to a different control before sequences are no longer added to that control.
Harder to describe then to try. Try the current code. Map an INC button, move to DEC and map a button. Go back to INC and the old value is not cleared first.
The originally intended behavior is that a new field that intersected a
previous field would completely wipe out the original field. Recently a
change was made that changed the behavior to only remove a portion of the
bits from the original field. This is actually problematic behavior, so
the original behavior was restored.
Currently I put this behind a compile-time define until we see that we
haven't come to rely on the newer behavior.
* Cannon Spike / Gun Spike
* Heavy Metal Geomatrix
==========================================================================
They are both heavily protected, Cannon Spike doesn't even enter into
specific test mode...
* Power Stone
* Power Stone 2
* Samba de Amigo
* Spawn
==========================================================================================
Power Stone and Samba de Amigo executes some of their code and displays some wire-frame polygons too,
they both dies on the proper gameplay for whatever reason (protection or jvs)
------------------------------------
OutTrigger [Guru]
(or:)
"Fully dumped the following Naomi carts [Guru]:
* OutTrigger
* ...",
no idea about what's best for the whatsnew in this circumstance...
This rom is available at: http://citylan.it/crollerb/crollerb.zip
The set shares 6 parts with Magic Brush (mbrush) including all 4 GFX
roms and 2 MAINCPU roms, 1 part (a PROM) from Crush Roller (Sidam Bootleg)
(crushs) and 2 other roms filling in the missing MAINCPU roms.
Other Information about the dump is at http://citylan.it/lista.php?id=799
I play tested the game a bit - getting to level 3 and tested the DIPs to
assure they worked. No crashes and everything seemed stable.
Credit should goto f205v for the dump.
This .DIFF is based on 0.130u2 sources.
Tafoid
tafoid@yahoo.com
- toki_fix matches MAME to the on-screen copyright date (changed from
1989 to 1990. Also defined it as a Datsu bootleg, again from in-game
title)
These .DIFFs is based on 0.130u2 sources.
Tafoid
tafoid@yahoo.com
Sent: Monday, March 09, 2009 8:39 PM
To: submit@mamedev.org
Subject: Pit Fighter (rev 7)
I dumped and added a new Pit Fighter set. It is the newest revision we have dumped.
I made it the new parent and the old parent was renamed to pitfigh6. As far as I can
tell, the old parent isn't rev 5 and should have been named rev 6 when it was added.
If we are going by program rom names to name them their rev, then whoever added it
named it incorrectly because its program roms all start with a 6 after the dash. The
real rev 5 is not dumped yet (I attached a pic proving that it exists and is different
but I don't currently own the board).
That is unless there is another source of where you are supposed to derive the rev
info, if there is can someone let me know what/where it is. All I could find were
some dates in service mode.
Smitdogg
Sent: Sunday, March 29, 2009 4:12 AM
To: submit@mamedev.org
Subject: Fw: Another speed up in 'src\mame\video\mcatadv.c'
Hi, in the attached patch I sent on 16th February 2009 (see mail below), I
made a mistake.
The purpose of the patch was to reorder code in order to avoid useless
computation. It was *not* to modify the behaviour of the code.
The following lines were included in my patch at line 140. They should have
not !
- destline[drawxpos] = (pix + (pen<<4));
+ destline[drawxpos] = (pix + pen);
So please, revert this part of the patch and put back the now missing
(pen<<4) in the code.
Games like 'nost' just look horrible without it !
Sorry for the mistake in the previous patch, it was a mix of two patches...
Best regards.
CJ
I have another minor patch to MAME which does the following:
* Put tables used for RGB utilities in a single object file rather
than compiling them as statics in every object that uses them.
Vas Crabb
* accurate collision detection in all games
* correct full memory maps
* hooked up 8255 and Z80 PIO correctly
* unified many hacked variants into common hardware models
* proper mixing using the mixing PROM
* converted to tilemaps
* fixed shtngmst sprites
* correct Z80 timing
* proper sound interrupt signaling and feedback
* full description of video hardware
We now have:
* proper input hookup in dakkochn
* cleaned up rendering code
* fixed cocktail mode in pretty much all games
* fixed stuck sprites in some games
* partial 8751 simulation for choplift
* proper global muting (attract sound off works in older games)
Sent: Sunday, March 08, 2009 5:58 PM
To: submit@mamedev.org
Subject: Patch with minor documentation changes
Attached is a patch file with the following minor documentation changes:
* Added placeholders for the two PAL's on Atari's version of Pole
Position 1 and 2 (I could not read the last digit of the PAL at 5c.)
* Added board numbers to SEGA's Quartet 2 documentation
* Corrected the rom names for Tutankham (A guess was made on the names
for Konami's version of the roms at 3h and 6h.)
Kevin Eshbach
Super Megatouch IV Tournament Edition (9255-51-01 ROB, Standard version) [Brian Troha]
also replaced nvram dumps with settings changed to default and cleared high scores for the 3 Mega Touch 4 sets that use actual NVRAM dumps.
other 2 BPROMs are same as current set (and other titles running on this hardware)
This new BPROM sits between sample ROM and M6295, and works like PAL.
The eepromdev.* files are the device impementation for the serial eeproms
The i2cmemdev.* files are the device impementation for the i2c memory
These aren't currently hooked up
I'm committing this so that the Naomi changes don't accidentally get applied. The idea seems good, but they conflict with the current driver and I'd rather not have them accidentally slipping in and breaking things just yet.
The envelopes aren't actually emulated, but the sound is silenced after a key-off (by placing the sound in a 'release' state) This prevents audiable sound from looping forever.
Not extensively tested, but good for my sanity when running some of the gnet additions, and the tgmj siren looping.
I may consider doing a better implementation if I can manage to get my head around all the envelope stuff.
* Added source file konamipt.h to unify Konami inputs where possible (e.g. most 80s-90s games were using basically the same coinage settings and joystick inputs).
* While at it, verified all 0x00 coinage effects in drivers which now use konamipt.h (fixing a few mistakes: hexion, mikie, crimfgtj...).
* Added finalizb service coin. Removed roadf coin4 & asterix coin3 (neither used by the games nor present in service mode).
* Fixed gberetb coin inputs (they were switched).
* Added port_condition to hcrash so that brake appears only when present in the chosen cabinet.
* Cleaned up mystwarr.c & moo.c input handlers.
Exciting Soccer (Japan) [Uki]
- verified clock frequency (including 4KHz NMI)
- position 6A is not populated in JAPAN ver.
- sound tempo is wrong in all sets (with or without this change)
- derived clocks where possible
- complete memory maps from the schematics
- hooked up proper sound command latching
- reimplemented 6802-based ADPCM samples for the bootlegs
- merged memory maps
- extended NVRAM to the full RAM range (according to schematics)
- created common include file and modified drivers to use it instead of explicit externs
===================================================================================
At the moment I've only checked Ikaruga, and it seems to work fine (with wire-frame)... ;)