New Clone Added
-----------------
Wizard Fire (Over Sea v2.1) [Irongiant]
New set becomes the parent... renamed the old "JF" prefixed roms to JE. Added PCB location to rom name where needed and added a note about rom label prefixs.
To: submit@mamedev.org
Subject: LSHIFT/<< expression diff fix
Tafoid pointed out that it's currently impossible to use '<<' in a
cheat xml file, this fix adds an alternate LSHIFT to cheat.c and
express.c and also adds the working '>>' as an alternate RSHIFT to
express.c (not needed in cheat.c as >> parses fine)
diff file attached
To: submit@mamedev.org
Subject: megatech.c notes
I updated the megatech.c parts list with info from more carts and
fixed some errors in the notes for the rom definitions, and arranged
them in correct order. The diff is kind of messy so I included the c
file too.
Smitdogg
Sent: Monday, May 11, 2009 10:36 AM
To: submit@mamedev.org
Subject: MPU4 lamp smoothing
Lamp output in MPU4.c smoothed. Redrawing now only occurs on the peaks
of the 50Hz AC Power.
(Based on documentation from FME Forever)
(After fixing the silly beginnner C errors)
Sent: Sunday, May 10, 2009 5:41 PM
To: submit@mamedev.org
Cc: atariace@hotmail.com
Subject: [patch] Static qualifier update
Hi mamedev,
Here's my periodic static qualifier patch for MAME, mostly adding
static to new code introduced over the past couple of months.
~aa
Remember me, I sent you the Aliens ASIAN EPROM dump a few days ago?
Anyhow, I've just been repairing an original Data
East Robocop boardset and noticed that only the
PROM at 2A on the ROM board had been dumped - the
two PROMs on the CPU board were undumped. So I
desoldered those two from my boardset and dumped
them for you. They didn't have labels on them so
the attached filename dumps are made up of the
type of PROM followed by the IC location on the PCB.
I also noticed that the filename of the already
dumped PROM at 2A (which I verified okay against
mine) didn't include the PROM type, although it's mentioned here:
http://maws.mameworld.info/maws/driverinfo/dec0.c
so I renamed that file and re-sent it. Up to you
or the MAME team to decide whether to change the
name, although I guess it's no big deal, although
it makes life a bit easier for anyone repairing a
boardset and wishing to know the PROM type (the
boardset itself is screened wrong I believe - for
the PROM at 2A it's screened as MB7130, yet the
PROM used (and mentioned on the above page) is in fact an MB7124).
For further info, this is what happens when the
relevant PROMs are removed from the board (one at a time!):
MB7122E (EN-24) PROM at 17E on CPU board --
Removing this causes all text to disappear along
with the sprites and the foreground layer of the
background graphics to be absent (but the background layer is still visible)
MB7116E at 12C on CPU board -- Removing this causes all sprites to disappear
MB7124E at 12A on ROM Board (although the board
is screened as MB7130) -- Removing this causes the
display to disappear, although coining up makes
the correct text appear (and sound to play),
intro graphics appear on starting a game, then
nothing, it won't even play blind (although the
coin up sound still plays on coin insert)
There's also a PAL on the ROM board but
unfortunately it's protection fuse is of course
blown so I can't read it. Ah well.
If you need to credit me when these are
incorporated into the code, just put in my name Irongiant
Hope all this helps.
Cheers,
Phil
Sent: Sunday, May 10, 2009 1:28 AM
To: submit@mamedev.org
Subject: Save state for artmagic.c and runaway.c
I have added the save state to artmagic.c and runaway.c
Xander
> To: submit@mamedev.org
> CC: atariace@hotmail.com
> Subject: [patch] Search all rom sources for merges
> Date: Sat, 18 Apr 2009 20:32:15 -0700
>
> Hi mamedev,
>
> The logic for detecting merged roms does not check all the rom sources
> in the parent, leading to cases where roms from devices aren't
> detected as merged (e.g. ldv1000 in superdqs). This fixes it.
>
> ~aa
* jb int0,<self> loops are now broken out of if int0 comes and is taken
* externally-clocked counters only count when enabled
System 1 changes:
* hooked up 8751 properly
* removed old 8751 hacks
* shuffled Shooting Master sets
New Games Marked Working
------------------------
Choplifter (8751 315-5151)
Shooting Master (EVG, 8751 315-5159a)
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...