are broken.
Changed READ/WRITE handlers to accept an address_space * instead of a
machine *. The address_space object was enhanced to contain a machine
and a pointer to the relevant CPU object.
Fixed a number of errors found by the compiler, mostly in the core and
CPU/sound handlers, but there is a lot remaining to fix.
Added new function cpu_get_address_space() to fetch the address space
for calling in manually to these functions. In some instances, code
which should eventually be converted to a device is hard-coding fetching
the program space of CPU #0 in order to have something valid to pass.
* Better management of hblank/vblank bits;
* Makes dynamic resolutions to be called with a timer instead of run-time;
* Makes dynamic resolutions to not be changed at every frame but only when there's an actual change;
This fixes Golden Axe: the Duel gameplay speed at the cost of breaking up Groove on Fight coin counter at start-up.
----------
Beast Busters (US, Version 2) [Brian Hargrove]
(he hasn't confirmed if he's OK being credited with his real name yet, so if the situation changes I'll mail the list)
I've also DEMOTED Beast Busters to non-working. As soon as you calibrate the guns the game fails, and without calibrated guns you can't really play. The gun reading is hacked, as are the gun interrupts. This needs fixing *properly*, at which poin I imagine it will actually work, and no just hang after calibration. From what I can tell it's never worked after calibration hence the demotion.
original dump was fine, there just needed to be a gap in the rom loading.. there are still some 'nasty' sounds, but this seems typical of our ymz280b emulation, I'm still pretty sure the ADPCM decode is broken, it must be 'special'.
I've also promoted them to playable.. so
New Playable Games
------------------
Jackie Chan - The Kung-Fu Master [David Haywood, Andreas Naive, stephh, Angelo Salese]
Jackie Chan in Fists of Fire [David Haywood, Andreas Naive, stephh, Angelo Salese]
this documents the CPS2 Phoenix sets, and what happens to a dead CPS2 board.
I think it's important we start keeping track of these now as they're finding their way onto bootleg boards, with further hacks and modifications made along the way.
Far from an ideal situation, but, our job is to document the facts, not discriminate by ignoring them.
- removed unnecessary deprecat.h includes
- replaces Machine with existing running_machine* instances
- re-adds a peroid I accidentally removed when changed a message to
use defines
- adds a running_machine* to win_window_info and debugwin_info to get
rid of most Machine occurances and clean up the running_machine*
parameters I added in the past
[Oliver Stoeneberg]
With Aaron's change to macroize the cpu apis, the cpu/sound interfaces
are now using different idioms. This patch fixes that. It uses the
prefix SND_ instead of SOUND_, to avoid changing SOUND_START,
SOUND_RESET in driver.h. While working on it, I noticed that the
reset routines for k053260, msm5205, upd7759 and vlm5030 aren't hooked
up, but I decided this was an oversight and macroized the functions
anyways (but left them unhooked).
related APIs now take a device pointer instead of an index.
All functions that take a CPU device are prefixed with cpu_*
All functions that are globally related to cpu execution
are prefixed with cpuexec_*. Below is a list of some of the
mappings:
cpu_boost_interleave -> cpuexec_boost_interleave
cpunum_suspend -> cpu_suspend
cpunum_resume -> cpu_resume
cpunum_is_suspended -> cpu_is_suspended
cpunum_get_clock -> cpu_get_clock
cpunum_set_clock -> cpu_set_clock
cpunum_get_clockscale -> cpu_get_clockscale
cpunum_set_clockscale -> cpu_set_clockscale
cpunum_get_localtime -> cpu_get_local_time
cpunum_gettotalcycles -> cpu_get_total_cycles
activecpu_eat_cycles -> cpu_eat_cycles
activecpu_adjust_icount -> cpu_adjust_icount
cpu_trigger -> cpuexec_trigger
cpu_triggertime -> cpuexec_triggertime
cpunum_set_input_line -> cpu_set_input_line
cpunum_set_irq_callback -> cpu_set_irq_callback
In addition, a number of functions retain the same name but
now require a specific CPU parameter to be passed in:
cpu_yield
cpu_spin
cpu_spinuntil_time
cpu_spinuntil_int
cpu_spinuntil_trigger
cpu_triggerint
Merged cpuint.c into cpuexec.c. One side-effect of this
change is that driver reset callbacks are called AFTER the
CPUs and devices are reset. This means that if you make
changes to the CPU state and expect the reset vectors to
recognize the changes in your reset routine, you will need
to manually reset the CPU after making the change (since it
has already been reset).
Added a number of inline helper functions to cpuintrf.h for
managing addresses
Removed cpu_gettotalcpu(). This information is rarely needed
outside of the core and can be obtained by looking at the
machine->cpu[] array.
Changed CPU interrupt acknowledge callbacks to pass a CPU
device instead of machine/cpunum pair.
Changed VBLANK and periodic timer callbacks to pass a CPU
device instead of machine/cpunum pair.
Renamed all information getters from cpu_* to cpu_get_* and
from cputype_* to cputype_get_*.
Added Simulation of Toybox external data rom decryption from Andreas
Converted Blood Warrior, Bonk's Adventure, Great 1000 Miles Rally 1+2 to use the new code.
Updated suprnova rendering to allow 2 sprite chips.
Started work on Jackie Chan & Gals Panic 3
* sndindex now considered as well in state save
* expose discrete_sound_n_r(void *chip, ...) to enable accessing multiple discrete sound cores
Curt Coder, is this sufficient?
* changed the 6845 type to R6545_1 (Rockwell as mentioned in the driver).
* use transparent addressing
* lightpen code now generates a "lightpen_assert" at the right screen position.
* Completely hooked up 6545 without wrappers.
* implemented support for phi1/phi2 transparent addressing
* added callback to communicate address back to driver
Implementation is not and can not be "clock" accurate since the timing is totally up to the hardware implementation. It is the main cpu and hardware which determines phi clocking and when data is written to video ram. The only support in the 6545 is that the update address is latched out to the ma lines during phi2.
(program roms are identical to Vs. Super Mario Bros. (alt),just the graphical roms are completely reworked,I don't know if it is worth supporting...)
(PS: do not credit me on this)
context ones (which are going away), the disassembler (which should
have no dependencies on the live CPU), and the validity check.
Removed global token from all pointer-ified CPU cores that don't
have internal read/write callbacks (which still need to reference it).
* added a set of cpu_* calls which accept a CPU device object;
these are now the preferred means of manipulating a CPU
* removed the cpunum_* calls; added an array of cpu[] to the
running_machine object; converted all existing cpunum_* calls
to cpu_* calls, pulling the CPU device object from the new
array in the running_machine
* removed the activecpu_* calls; added an activecpu member to
the running_machine object; converted all existing activecpu_*
calls to cpu_* calls, pulling the active CPU device object
from the running_machine
* changed cpuintrf_push_context() to cpu_push_context(), taking
a CPU object pointer; changed cpuintrf_pop_context() to
cpu_pop_context(); eventually these will go away
* many other similar changes moving toward a model where all CPU
references are done by the CPU object and not by index
* cpu/i8x41 should be renamed to UPI-4x, since UPI-41/42 was an intel chip family
postponed for now until core moved to pointers.
* removed I8041 definition from mcs48
* removed I8x41 cpu definition and config struct
* added I8041, I8741, I8042, I8242 and I8742 cpus to i8x41.c
* added internal memory maps
* internal ram now uses DATA memory space
* updated drivers
* increased interleave to 70 in decocass. This fixes decocass hanging in countdown around 13
No idea when this bug was introduced.
Sent: Friday, November 07, 2008 9:47 PM
To: submit@mamedev.org
Cc: atariace@hotmail.com
Subject: [patch] More header files for mame
Hi mamedev,
Here's another set of about 20 new include files for MAME. As before,
the only issues discovered by the migration were some dead prototypes.
~aa
Sent: Wednesday, November 05, 2008 7:21 PM
To: submit@mamedev.org
Cc: atariace@hotmail.com
Subject: [patch] New include files for drivers
Hi mamedev,
Here's a patch that adjusts a few existing include files, but
principally adds new include files for about twenty existing drivers.
This found a few dead prototypes, but otherwise didn't reveal any
errors.
~aa
Sent: Wednesday, November 05, 2008 8:22 AM
To: submit@mamedev.org
Cc: atariace@hotmail.com
Subject: [patch] Add ADDRESS_MAP_NAME macro
Hi mamedev,
In theory, MAME's interface macros should completely hide the naming
conventions from the drivers and sound/cpu cores. So as an
experiment, I renamed all the core apis and looked to see what broke.
The most common api coupling was with address maps in the CPU cores,
which this patch addresses by introducing a new macro,
ADDRESS_MAP_NAME (mimicing what is done in devintrf.h). There were a
handful of related problems in some drivers which this patch also
fixes. Some remaining issues I left alone (laserdisk apis reference
rom, video_update, machine_config, ksys573 use of nvram_handler,
megadriv use of ipt), in principle all the apis need _NAME variants to
encode the conventions.
~aa
Sent: Wednesday, November 05, 2008 1:53 AM
To: submit@mamedev.org
Subject: fix for MT 2626
Hi,
enclosed please find a patch to fix missing buttons for crime fighter 2p (Button 3 and Start)
Regards,
Fabio
To: "Nicola Salmoria" <nicola.salmoria@virgilio.it>
Sent: Tuesday, November 04, 2008 5:48 PM
Subject: CPS2 driver.
> Hi,
>
> I have updated the CPS2 driver to bring all ROM names back in line with
> Capcom's naming system (which they print on the stickers). The changes are
> quite minor and include bringing the SIMM dump names into one format. Also
> included is a fix to Gigawing ROM names and Street Fighter Zero 2 Alpha,
> which ROM names broke after the split from Street Fighter Zero 2 in the
> last
> MAME update.
>
> I though it would be good to do this as the same seems to be going on in
> the
> NeoGeo driver. Around ten sets are affected in total.
>
> Regards, Raz
>
Sent: Sunday, November 02, 2008 9:56 AM
To: submit@mamedev.org
Subject: expro02 missing?
Hi!
I don't know what is happened with my last diff, but this one fixed the missing part.
Bye Sonikos
Sent: Saturday, November 01, 2008 7:14 PM
To: submit@mamedev.org
Subject: psycho nics oscar revision change
I changed Psicho Nics Oscar (japan revision 0) to (world revision 0)
since there is no japan disclaimer
please find herewith attached a new game dumped from Russia.
The PCB has been lent by "Soviet Arcade Games Museum" www.15kop.ru
Dump and diff by "Antro" (my Italian friend living in Moskow)
Snezhnaja Koroleva [Antro]
* Added proper clock speed to plygonet.c and internal divider to dsp56k.c
* Fixed up disassembler add/sub, 05xx, and bsr ops.
* Handle mysterious uuuuF instruction found in plygonet add op.
* Partially implemented add, sub, mac, mpy, inc, cmpm, macr, asr16, jscc, lea, and movec ops.
* Added dual X memory read and data move with short displacement parallel moves.
* Merged DS5002FP
* Disassembler now uses type specific memory names
* Merged DS5002FP disasm
* added 83C751 memory names to disassembler
* delete DS5002FP specific files
* removed unnecessary cpu callback in wrally
* DATA_MAP ==> IO_MAP in wrally
* Fixed bitmap zooming in Virtual Mahjong 2 - My Fair Lady;
* Worked around a major graphic bug in ElanDoree;
* Added some missing alpha blending effects,Pro Mahjong Kiwame S title screen needs it but it doesn't work yet due to other problems (still investigating)
* Fixed a crash bug with Astra Super Stars when the debugger is active.
(this is to sync with svn tree,ST-V will be further improved on a later stage)
working on something, hold off syncing.
Defined macros for core CPU functions: CPU_INIT, CPU_RESET, CPU_EXIT,
CPU_EXECUTE, along with macros for the name and for calling, in the
spirit of the devintrf.h macros. More will come later.
Changed init, reset, exit, and execute interfaces to be passed a
const device_config * object. This is a fake object for the moment,
but encapsulates the machine pointer and token. Eventually this will
be a real device.
Changed the CPU IRQ callbacks to a proper type, and added a device
parameter to them.
Updated all CPU cores to the new macros and parameters.
Note that this changes the way we "pointer"-ify cores. I'll send an
update shortly.
Began the process of pruning options from the 68000 core, hard-coding it
for MAME's needs. We've hacked on it sufficiently that it is no longer
generic, so this is a good opportunity to simplify the code so that it
can actually be followed.
means of setting the minimum useful scheduling quantum, and clamping
all quanta to that value.
Changed interleave/boost handling to use scheduling quanta instead
of timers.
Added machine parameter to cpu_boost_interleave.
Updated cpuexec to compute the "perfect" interleave value taking into
account the minimum number of cycles per instruction specified by the
CPU core. Updated Z80 core to indicate that the minimum cpi is 2. Fixed
incorrect minimum cpi in the 68020+ cores.
Simplified a bit of logic in cpuexec_timeslice.
Sent: Sunday, November 02, 2008 1:04 AM
To: Aaron Giles
Subject: Z80 CPU change
Hello Aaron,
For a long time there was undiscovered internal register (MEMPTR) inside Z80 CPU which was visible by using BIT n,(HL) instruction in undocumented bits of flag, in
last few months lot of things have been discovered by team of Russian programmers. There was a test on real machine which showed status of flags after each instruction.
I am sending you now patch for Z80 with MEMPTR implemented, there is also one more bug fixed (BIT 6,(XY+o) was not implemented good it used BIT 4,(XY+o) code).
As a proof that things are now valid, I am sending screens before patch on Z80 cpu core, and after with compare of results on real machine.
I am also sending you a TZX file (for ZX Spectrum) since tests are done inside that driver.
Please inform me about status. Hope this could fix some issues in drivers using Z80, since some games used this flags.
Regards,
Miodrag Milanovic
* Hooked up 6845 in a daisy chain way into existing "6845 emulation"
* Clocks from schematics
* Video size issues - 6845 code related, discussion started on list
AICA: fix missing instruments in DTPK driver games [R. Belmont, Deunan Knute, kingshriek]
Naomi: unmapped words in the AICA address range must read as zero [R. Belmont]
With these changes Toy Fighter's music is much better.
Sent: Saturday, November 01, 2008 4:14 PM
To: submit@mamedev.org
Cc: atariace@hotmail.com
Subject: [patch] Toaplan2 save state fix
Hi mamedev,
I realized after sending my toaplan2 save state patch that I had
ignored the implications of memory_set_bankptr (grrr). This followup
patch fixes the most significant case of that, I'll fix up the
remaining ones later. Alternately, you can drop the patches for now
and I'll resubmit them later.
~aa
Sent: Saturday, November 01, 2008 11:29 AM
To: submit@mamedev.org
Cc: atariace@hotmail.com
Subject: [patch] State save support for toaplan2
Hi mamedev,
Attached is a small patch to add a toaplan2.h include file and save
state support for the driver. A number of variables changed from int
to specific sizes to support this, and I also fixed a harmless typo in
the mem_mask size.
~aa
Sent: Sunday, October 26, 2008 3:01 PM
To: submit@mamedev.org
Subject: expro02
Hi folk!
Another work in expro02 drive:
- Fixed dips in all galsnew sets and fantasia.
- Added dips location.
- A little drive clean up.
Bye Sonikos
adds/removes entries in header files, and fixes a few potential
multisession issues by explicitly adding initializers. asic65.c has
significant changes to accomodate using a struct instead of 16
variables, otherwise the changes in this patch are modest and obvious.
[Atari Ace]
There's an issue with the debugger handling of the 6502 instructions as
there's a mismatch between the core and what the debugger shows.
The changes are detailed in the spreadsheets that I've attached that
compares the core to the dasm.
Attachments:
m6502fix.zip contains the diff file
6502 debugger disassembly changes.zip contains an excel spreadsheet
(in both xls and xml formats) detailing the reasons/changes.
* bbusters.diff:
- Fixed service mode issues enabling extra RAM that was previously unmapped.
- Properly implemented all sound communications.
- Fixed ID 00387. (there are no sound issues, the bug in my opinion is no more valid)
* nmk16.diff
- Fixed ID 00224. (PCB behaviour verified by Corrado Tomaselli)
* renegade.diff
- Fixed ID 01679. (old code was an hack, cpu_getiloops is more acceptable)
* suprnova.diff
- Fixed ID 02042. (no other games are broken)
* twin16.diff
- Cleaned up a bit code to make it more readable.
- Reorganized CPUs order in all games. (main, sub, audio)
- Fixed ID 02268. (guesswork, a PCB is needed to understand how priorities work)
and removed an unnecessary hack from the driver.Probably one of Arbee's SCSP changes fixed it.
New games added or promoted from NOT_WORKING status
---------------------------------------------------
Virtual Mahjong 2 - My Fair Lady
(i.e. Do not credit me on this)
- Reworked inputs to allow 6 players through a selector.
- Hooked all lamps (even the ball simulator array).
- Added a internal layout and support for external artwork.
- Extended the hardware to support Buena Suerte '94.
- Cleaned up the driver.
New games added or promoted from NOT_WORKING status
---------------------------------------------------
Buena Suerte '94 [Grull Osgo, Roberto Fresca]
Hello, with this patch finally cvs2gd stops looping forever. However with
no 3d emulation nothing is shown on the screen.
Then i have implemented the naomi RTC and there are a few verbose messages
about transfers not implemented yet.
* improved prefetch timing calculation
* prefetch timing now also used by V20 and V33
* moved some static variables into cpu context
* nec_reset now explicitly clears context variables
* all cpus now share nec_execute
Would whoever checked this in double-check my change? I believe I got the intent of the code (which is not how it was written ;-) but I could be wrong.
--This line, and those belo
M disc_flt.c
* The whole startup cycle now works. No more timeouts and erratic behavior.
* lohtb2 will however not display the "Warning" screen due to a priority issue. With color/attribute of 0x80 in videoram at 0xd0000 and 0xd8000, videoram at 0xd80000 will be displayed. Some tilemap guru has to look into this.
Credit Jim (or however he wants his name listed ;-)
Also specifies the difference between the two Ghox sets (in toaplan2.c). One set is 8-way joystick controls and the parent is a spinner with forward/backward single axis control
* Fixed tilemaps paging / tilemap positioning;
* Fixed a protection issue in Mahjong Daireikai,not giving correct colors for the girls in-game;
* Fixed a rom-loading issue in Mahjong Daireikai;
* Fixed 'ZA' sound banking behaviour,this fixes at least the sound in kakumei2;
* Removed VIDEO_EOF and added a TIMER_DEVICE_CALLBACK function for MCU simulations;
* Added WIP code for the priority system;
* Added a NO_DUMP for the MCU for all the sets;
- emulates Braze Technologies addon board
- eeprom hooked up
- implemented bank switching
I am still unsure about whether this should be added or not.
Interestingly, D2K shows a "(C) 1981 Nintendo" copyright message.
Still, it is actively marketed.
Putting this up for discussion again.
- Added sound support to magicfly and 7mezzo.
- Hooked coin counters to magicfly and 7mezzo.
- Inverted the graphics banks to be straight with the hardware accesses.
- Updated the memory map description and technical notes.
- Added game notes and documented the test/settings/bookkeeping modes.
Ruleta RE-900 from Entretenimientos GEMINI.
Is a roulette game based on i8051 and TMS9928, that has a phisical roulette with leds simulating the ball.
Game is working properly with full sound support.
Need better inputs implementation, leds, external artwork for the roulette and technical notes (I'm taking care of them).
If someone want to give a try, turn the operator key to allow enter credits.
New games added or promoted from NOT_WORKING status
---------------------------------------------------
Ruleta RE-900 [Grull Osgo]
Sent: Sunday, October 19, 2008 9:01 AM
To: submit@mamedev.org
Subject: Sound Support for Cosmic Alien
Hello,
I own a cosmic alien PCB and so I thought it would be a good idea to add
sound support
to this game by changing the corresponding driver ("drivers\cosmic.c").
I also have recorded the different sound effects as wave - files.
I have attached two files to this mail. The file "cosmica.zip" contains
the samples
(so it can be simply copied to the "samples" folder) and
the other one "cosmica_diff.zip" contain the "diff" file taken against
the 0128 sources.
So you can check it and maybe you want to implement the changes in a
further release?
best regards
T.Bellm
Sent: Mon 10/20/2008 9:45 AM
To: submit@mamedev.org
Subject: fix for mt 2577
the wrong tags were used for maketrax when indexed inputs were converted to tagged ones (0.125u7): input 2 was 'dsw1' but 'in1' was used. probably a mistake I made. sorry.
regards
Fabio
Sent: Fri 10/17/2008 11:45 AM
To: submit@mamedev.org
Subject: 65c02 core bugfix
Hi,
This patch fixes a subtle bug in the 65c02 emulation where the result of
the BIT instruction differs on the 65c02 (from the 6502), when executed
in immediate mode.
Cheers,
Phill.
Sent: Sunday, October 12, 2008 1:15 PM
To: submit@mamedev.org
Subject: dakkochn gfx improve
Improve dakkochn gfx, the priority are ok but there are various offset so i marked also the game as "inperfect gfx".
Bye Sonikos
Game is now working
New games added or promoted from NOT_WORKING status
---------------------------------------------------
Mirage Youjuu Mahjongden [Angelo Salese]
Created default EEPROM which is required to get it going.
New games added or promoted from NOT_WORKING status
---------------------------------------------------
Super Megatouch IV (9255-41-07 ROG, New Jersey version) [Mariusz Wojcieszek]
Game is now playable
New games added or promoted from NOT_WORKING status
---------------------------------------------------
Double Dealer [Angelo Salese,David Haywood]
* Remaining games checked and adapted to changes in cpu core
* Cardline still broken. I need the exact and complete cpu name.
* Added more variants 803X, 80CXX, AT89C4051
* Fix segas18.c (segaic16.c) mcu maps.
* Fix sslam.c
* Fix limenko.c videopkr.c : Issue with core allocation of ram (duplicate savestate)
Yet another 8-bit Incredible Technologies board. Different in several
significant ways from previous models:
* YM2608B for audio, replacing YM3812+OKI6295
* TMS34070 for palettes instead of PC RAMDAC
* Different video memory layout
* improved serial port timing (f15se (micro3d.c) sound board now works)
* better infrastructure for adding more variants like DS5002
* Fixed port reading
* Rewrote Macros for better readibility
* Fixed and rewrote Interrupt handling
* Now returns INTERNAL_DIVIDER, adjusted cycle counts
* Remove unnecessary and duplicated code
* Remove unnecessary functions
* Rewrite to have sfr-registers stored in int_ram.
* Debugger may now watch sfr-registers as well.
* implemented interrupt callbacks (HOLD_LINE now supported)
* Runtime switch for processor type - remove ifdefs
* internal memory maps for internal rom versions (internal ram now displayed in debugger)
* more timer cleanups from manual
micro3d:
* serial port communication between main cpu and sound board works
* sound board now works
m72 - lohtb2:
* full emulation of protection device
* Samples are now piped through the mcu
* Added additional branch, move and bitfield ops.
* Plygonet now passes its memory test and uploads a new program.
[[Next step is to install an opbase handler and let the dsp56k run further into its new proggie.]]
Game is now playable
New games added or promoted from NOT_WORKING status
---------------------------------------------------
(Medal) Yumefuda [Bet] [Angelo Salese]
* Complete rewrite focusing on legibility and extensibility.
* 27/121 opcodes (mostly) implemented.
* Bugfix for reset status of interrupt priority bits.
* Bugfix for disassembly of register-to-register parallel data move.
[[These changes bring the driver up to the point where the plygonet hardware begins banking memory. The behavior is understood, so I should have the driver back to where it was before the rewrite soon. Then real progress can be made.]]
(also added a to-check note, 16-bit wide DMA is currently using 32-bit functions, is this correct?)
Removed Speedups from CPS3 / PsikyoSH, while they do still give a decent speed boost they're not really needed with the DRC and just clutter the code.
Sent: Saturday, October 11, 2008 12:01 PM
To: submit@mamedev.org
Subject: 6821 PIA changes
Hi,
Can this change be added to the 6821 pia code, it adds a function that
allows the client code to get the status of CA2, taking account of the
internal pull up resistor. This code only adds a function and does not
change any existing code so should not have any impact on existing
drivers.
This change is needed for a couple of the mess drivers.
Thanks.
Phill.
--
Phill Harvey-Smith, Programmer, Hardware hacker, and general eccentric !
Game is now playable.
New games added or promoted from NOT_WORKING status
---------------------------------------------------
Good [David Haywood,Angelo Salese]
comments mentioning duplicate dips configurations. Not fully understanding
how the FREE PLAY was implemented, I left that not to show a location.
This .DIFF is based on 0.127u7 sources.
Tafoid
tafoid@yahoo.com
- Added discrete sound support to Golden Poker hardware games based on schematics.
- Added discrete sound support to Potten's Poker hardware games based on PCB analysis.
- Added discrete circuitry diagrams for both hardware types.
- Adjusted the CPU adressing to 15 bits for pmpoker/goldenpkr hardware.
- Adjusted the CPU adressing to 14 bits for pottnpkr hardware.
- Rewrote all the ROM loads based on these changes.
- Defined MASTER Xtal & CPU clock.
- Fixed the visible area based on M6845 registers.
- Improved the lamps layouts to be more realistic.
- Added Good Luck (potten's poker hybrid running in goldnpkr hardware).
- Added Buena Suerte (spanish) x 2 sets.
- Added set Royale.
- Added Witch Card and spanish variants.
- Added Super Loco 93 (spanish) x 2 sets.
- Renamed set goldnpkc to pottnpkr (parent Jack Potten's Poker set).
- Renamed set jokerpkr to potnpkra, since is another Jack Potten's Poker set.
- Added other 2 clones of Jack Potten's Poker.
- Renamed/cleaned all sets based on code/hardware analysis.
- Added intensity bit to the color system.
- Implemented the blue killer bit for Witch Card hardware.
- Implemented the extended graphics addressing bit for Witch Card hardware.
- Added proper visible area to sloco93.
- Rewrote the graphics & color decode system based on schematics. No more patched codes.
- Changed the char gfx bank structure and rom load according to the new routines.
- Adjusted the amount of color codes and PROM region size accordingly.
- Updated all notes.
New games added or promoted from NOT_WORKING status
---------------------------------------------------
Good Luck! [Roberto Fresca]
Buena Suerte! (spanish) [Roberto Fresca]
Witch Card (english) [Roberto Fresca]
Super Loco 93 (spanish) [Roberto Fresca]
New clones added
----------------
Jack Potten's Poker (2 sets) [Roberto Fresca]
Witch Card (spanish)(2 sets) [Roberto Fresca]
Buena Suerte (spanish, set 2) [Roberto Fresca]
Super Loco 93 (spanish, set 2) [Roberto Fresca]
New games marked as GAME_NOT_WORKING
------------------------------------
Royale [Roberto Fresca]
added comment about other roms on this hardware. (anonymous)
-----------
(testing the water, if Arika aren't happy with comments mentioning them, then there isn't much chance of them ever being supported, seems smarter than just adding them outright)
Affected files:
mame\src\mame\drivers\neodrvr.c
mame\src\mame\includes\neogeo.h
mame\src\mame\machine\neoboot.c
mame\src\mame\machine\neoprot.c
Changes:
. Completed general cleanup
Sorting OEM / bootleg sets
Renaming roms on non OEM / bootleg sets to ONE naming sheme
Renamed functions
Cleaned up bootleg sets
Added some comments
Renamed sma in garou/garouo, added comment
Fixed several things in the jalmah.c driver:
*Fixed Mahjong Daireikai pseudo-random number generator;
*Fixed Otogizoushi Urashima Mahjong to make it playable;
*Fixed a start-up crashing bug in mjzoomin/urashima/daireika
MAMETesters Bugs Fixed
----------------------
- 01820: [Crash/Freeze] mjzoomin: Game stops at PCB test (Angelo Salese)
New games added or promoted from NOT_WORKING status
---------------------------------------------------
Mahjong Daireikai [Angelo Salese]
Otogizoushi Urashima Mahjong [Angelo Salese]
Sent: Tue 10/7/2008 10:45 AM
To: submit@mamedev.org
Subject: snes special chips emulation
Hi,
the attached patch adds emulation for snes special chips DSP-2 & OBC-1. Changes:
- added sources snesdsp2.c & snesobc1.c (directly included in machine/snes.c as per Arbee's guidelines). credits mostly goes to byuu, which released to Public Domain his sources
- removed special chips detection from MAME (no nss / bootleg carts have special chips so far) and only left a variable has_addon_chip whose possible values are in includes/snes.h (it is initialized to HAS_NONE for MAME games)
- modified memory handlers to account for the new chips
Regards
Fabio
Sent: Sunday, October 05, 2008 1:46 PM
To: submit@mamedev.org
Subject: 2 small patches
Here are two small patches.
The first one remove a profiler_mark that has been forgotten in one of
the
last update in the tx1.c video driver.
The second is a small speed up in the neo-geo driver which gives a 0.5%
speed up on my machine.
- replace a loop with an equivalent memset
- remove a useless parameter I forgot to remove in a previous patch
Hope this help.
Best regards,
CJ
- Reworked the button-lamps matrix system.
- Documented both output ports.
- Connected coin in, key in and payout counters.
- Improved the lamps layout to be more realistic.
- Updated technical notes.
Sent: Sunday, October 05, 2008 3:46 AM
To: submit@mamedev.org
Subject: Delete previous submission! Space Duel: Add the P10/11 dip
switch
Delete previous submission! Functionally the same, just reordered
some source and added a comment. Thanks!
Space Duel: Add the P10/11 dip switch (only 4 switches instead of the
standard 8)
Let me know if you have any questions.
Franklin
> Sent: Saturday, October 04, 2008 10:16 PM
> To: submit@mamedev.org
> Cc: ANY
> Subject: Some stuff
>
> Diff aganist 127u6
>
> New stuff
>
> Mk3 p4.0 (revision 1.0 in test menu, but marked P4.0 on chip label)
> Decathlete V1.001
>
> revisited stuff
>
> Gpworld brake-gas issue should be fine, I cannot enter into the test
> menu to
> find out is gas is gas and brake is brake or swapped
>
> Thanks Andrea
Note that this is caused by leaving entries in the bitmap
with an index larger than the palette size. This is forbidden
and now can lead to a crash in debug builds.
Added preliminary LD-V1000 emulation. Not fully working yet, but mostly
there.
Cleaned up and normalized the three existing laserdisc emulations.
Removed obsolete code from the laserdisc core.
New games added or promoted from NOT_WORKING status
---------------------------------------------------
Sonic Blast Man 2 Special Turbo (SNES bootleg) [Andreas Naive, Tomasz Slanina]
- Added Baby Poker Game.
- Added sound support to Baby Poker Game.
- Reworked the color routines.
- Added Baby Dado Game.
- Added new color routines for Baby Games.
- Redumped the videocba color PROM.
- Added color switch. (It changes background color in some games).
- Added "hopper full" switch support (for diverter function).
- Added diverter function decoder.
- Added full functional mechanical counters decoding.
- Added 7 Segment decoder and 7 Digit Counter functions.
- Added button-lamps layout & mechanical counters simulation on layout.
Mechanical counters to layout: Coin-In, Coin-Out and Coin to Drop.
- Added NVRAM support to mechanical counters.
New games added or promoted from NOT_WORKING status
---------------------------------------------------
Baby Poker [Grull Osgo, Roberto Fresca]
Baby Dado [Grull Osgo, Roberto Fresca]
still not really convinced by this conditional dip stuff.. it stands no chance of working on games where the coinage mode is in eeprom... (but i have no better suggestions)
02483: gunlock, rayforcj: Title screen trouble
02482: bubblemj: Demonstration screen trouble
* Check for whether tile is opaque must honour extra planes.
- added rom decryption
- patched protection checks
- mapped extra inputs
Game is not playable due to heavy gfx glitches caused by bugs in SNES hw emulation.
[Andreas Naive, Tomasz Slanina]
* added missing button mappings
* corrected dip switch
This seems to be a prototype. The number of remaining ships displayed is not correct.
New games added or promoted from NOT_WORKING status
---------------------------------------------------
Astropal (Sidam?) [Couriersud]
Affected files:
mame\src\mame\drivers\neodrvr.c
mame\src\mame\includes\neogeo.h
mame\src\mame\machine\neocrypt.c
mame\src\mame\machine\neoboot.c
Changes:
. Begin of a general cleanup
Sorting OEM / Bootleg sets
Renaming roms on non OEM / Bootleg sets to ONE naming sheme
Renaming functions
Added some comments
Cleanup is not completed.
configuration builder to use these functions. Also changed the laserdisc
player devices to use them. Updated Z80 CTC/SIO code to assume that the
CPU provided for the clock is relative to the device that the CTC/SIO
belong to. Updated memory code to assume that regions and devices
referenced by the memory map are relative to the device the associated
CPU belongs to.
Readded UI_ON_SCREEN_DISPLAY to be changed again in the "Inputs" menu as per Aaron's request.
A clean build is required and cfg/default.cfg has to be deleted !
New games added or promoted from NOT_WORKING status
---------------------------------------------------
Megatouch 5 (9255-60-07 RON, New Jersey version) [Brian Troha]
New clones added
----------------
Megatouch III (9255-20-07 ROG, New Jersey version) [Brian Troha]
Super Megatouch IV (9255-41-07 ROG, New Jersey version) [Brian Troha] (Not Working)
Sent: Mon 9/29/2008 9:45 AM
To: submit@mamedev.org
Subject: Small SNES changes
Hi,
enclosed please find a patch which changes a bit the way SNES
carts (NSS & bootlegs) are loaded at init time. Currently, data
are loaded once at start and then the read handlers perform various
mirroring tricks. With the attached patch, the cart is loaded at
init and mirrored as many times as it is necessary, while handlers
simply read from the plain offset. Also, blocks of data are mirrored
until they fill all the available banks. Implementing this behavior
both simplifies the handlers code and is more faithful to the hardware
(see mirroring note included in the DRIVER_INIT).
I also slightly changed some handlers to take into account the new
mirroring system. OTOH sram_handlers haven't been updated (they will
be eventually) because with carts as small as the ones in nss.c and
snesb.c, they basically have no overlapping with the new mirroring
approach... as soon as I come up with a satisfactory implementation
that works in MESS (which has to deal with much larger carts), I will
also submit the MAME side.
No regressions appear with the patch, as far as I could test.
Regards
Fabio
--
From: Fabio Priuli [mailto:doge.fabio@gmail.com]
Sent: Wednesday, October 01, 2008 12:01 AM
To: submit@mamedev.org
Subject: further snes changes
Hi,
enclosed please find a patch which rewrites memory handlers in
machine/snes.c to take into account the additional cart/memory layouts
(mode 22 & 25) which were available for the home console (almost no
impact on nss.c & snesb.c, which only use mode 20 & 21). rather than
only add a bunch of if(snes_cart.mode == XXXX), I preferred to slightly
rewrite the handlers. main changes on the MAME side are:
* merged regions 0x700000 up to 0x7dffff in snes_map (this allows to
make memory maps in nss.c and snesb.c identical: the zone previously
NOPed in nss.c is now handled by snes_r_bank5, because it was not
reserved for all cart types)
* split region 0x800000-0xbfffff from 0xc00000-0xffffff in snes_map.
This simplifies a bit handlers used by MAME and it will be necessary
when MESS supports special chips like SDD-1 (which dynamically changes
the part of cart loaded in the latter region)
* slightly enlarged SRAM regions (in this case, it only affects what
happens inside the handler, NOT snes_map) to support carts with 512kbits
of SRAM (e.g. Thoroughbred Breeder III for MESS). I'm still not 100%
satisfied with SRAM mirroring, but this is closer to the real thing
than the previous way to handle it
No regressions are present, neither in MAME nor in MESS, as far as I
could test (well, for MAME weren't expected, since most changes affected
mode 22 & 25).
Regards,
Fabio
Sent: Sunday, September 28, 2008 6:01 AM
To: submit@mamedev.org
Subject: System1 Dips Location
Hi folk!
I continuing the work on System1
- Added dips location in all game
- Moved in generic Cabinet dip for eliminate the redundancy
- Better implementation of generic input
Bye Sonikos
Sent: Friday, September 26, 2008 11:01 PM
To: submit@mamedev.org
Subject: fix for sbasketb
As pointed out by ShimaPong on mameworld forums, dips are
read in the wrong way in sbasketb.c. It seems that when
DipLocations were added, the tags were changed in the input
ports but not in the memory map.
The enclosed patch fixes this regression
Regards,
Fabio
Sent: Fri 9/26/2008 10:15 AM
To: submit@mamedev.org
Cc: Philip Bennett
Subject: fix for Cube Quest Line CPU emulation
I found a bug in the emulation of the Cube Quest Line CPU.
Proof of bug:
After looking at .diff,
Assume 'ci' is 1, and assume 'r' and 's' are both 0xFFF
(0xFFF equals -1, as these numbers are 12-bit signed).
The result should be mathematically equivalent to -1 - (-1)
which is 0.
~0xFFF is 0xF000, so you'd have 0xF000 + 0x0FFF + 1 which equals
0x10000 but since 'res' is 16-bits this is truncated to 0x0.
'C' then becomes 0 and 'V' becomes 1 (as I recall). The result of
0 is correct, but the flags are wrong; V should be 0 and C should
be 1.
Under my proposed fix, you'd have 0x000 + 0x0FFF + 1, which equals
0x1000, so the lower 12 bits are 0 (correct) and C is 1 and V is 0
(correct).
I discovered this bug while disassembling the line CPU's ROM.
means that multiple changes without any execution will be seen as
atomic. It also means that PULSE_LINE no longer works for signalling
IRQs.
Added checks in the debug build to catch people who try to use
PULSE_LINE for non-NMI and non-RESET input lines on CPUs that no
longer support direct interrupt generation. Over time expect this
list to increase.
machine/device handlers. Unfortunately, the implementation relies on
sentinel values to distinguish a port tag versus a pointer to function
code. However, since this is a very common situation, it will hopefully
be worth the slight grossness. New macros are defined in inptport.h:
DEVICE8_PORT(name) - use this to specify the name of a port to read
wherever a read8_device_func would normally be used
MACHINE8_PORT(name) - same as DEVICE8_PORT except it can be used
wherever a read8_machine_func would normally be used
IS_HANDLER_PORT(ptr) - accepts a read8_device_func or read8_machine_func
and determines if it is an actual function or a reference to a port;
intended for use by devices that accept DEVICE8_PORT-style functions
CALL_DEVICE8_READ(ptr,device,offset) - either calls through the given
read8_device_func, or calls input_port_read with the appropriate
tag, depending on the result of IS_HANDLER_PORT; intended for use
by devices that accept DEVICE8_PORT-style functions
CALL_MACHINE8_READ(ptr,machine,offset) - same as CALL_DEVICE8_READ
except for read8_machine_func
Note that in order for these to be useful, the consumer of the function
pointer must be enhanced to use the CALL_* macros above instead of directly
calling through the function. So far, only the 8255 PPI is set up to do
this, as part of the cleanup below. Also note that the sentinel value is
currently 4 consecutive 0 bytes; this may need to change in the future, in
either length or value, so it is important to stick to the macros above.
8255 PPI interface cleanup:
- added MDRV_PPI8255_ADD, MDRV_PPI8255_RECONFIG and
MDRV_PPI8255_REMOVE macros; updated all drivers to use them
- changed callbacks to device read/write handlers intead of
machine read/write handlers; updated all drivers accordingly
- normalized function and variable names to be lower_under
- removed a number of redundant interfaces from the galaxian/
scamble line of games
LD-V1000: added some (compile-time removed) information about the
ROM and memory map
* Hooked up 6845
* Hooked up lscnblk line
* Fixed Phraze Craze gfx rom ordering
* Clocks from schematics
* Ram palette moved to static var. This should not be in RAM.
* Added save state support
New Clones
----------
Capcom Sports Club (EURO 971017) [Corrado Tomaselli]
This is newer than any of the other sets, it probably fixes the euro specific crash in the special extended bonus round (at a guess)
expro02.c
- fixed DIPSW
- added graphics decode routine (probably it can be simpler)
video/kaneko16.c
- tilemap scroll position is different for expro02, so added new
function (is it better to fix current one?)
TODO
- in gfx data banking function (newly added), some strange gfx are shown.
Timing issue?
New games added or promoted from NOT_WORKING status
---------------------------------------------------
Gals Panic (US, EXPRO-02 PCB)
Added new item to the interface which is the tag of a CPU
to take the base clock from. Are there any known cases
where the base clock does NOT come from the CPU directly?
Changed Z80 daisy chain interface to simply be a list of
devices in the chain. Interrupt callback functions are now
fetched via the standard device interface and referenced by
the daisy chain code.
Changed Z80 PIO interrupt callback to pass a device instead
of the machine. All device callbacks should provide the
device.
decoded VBI data. Added plumbing for allowing for overall brightness/
contrast/gamma corrections on laserdisc video. Fixed bug when combining
brightness values in the palette logic.
deprecat.h.
Changed render_texture_set_bitmap() to accept a palette object
instead of a palette index. The renderer remains optimized for the
system palette but will work if objects have their own palette as
well.
Changed renderer to permit palettes for RGB and YUY textures. If
specified, these palettes specify a 32-entry (RGB15) or 256-entry
(others) lookup for applying additional brightness/contrast/gamma
on a per-texture basis.
Removed rescale notification. It never really worked that well and
violated proper layering.
Renamed palette_set_brightness() to palette_set_pen_contrast() for
clarity.
Changed palette objects to support global brightness/contrast/gamma
in addition to per-group and per-entry controls.
- uses back-end decoding for CHDs directly to bitmaps
- changed min/max detection to only check 0/255
- fixed off-by-one bug in min/max computation
- separated white code detection from frame number detection
- track cadence with frame numbers as well as white codes
- use vbiparse.h constants where appropriate
- UI_ON_SCREEN_DISPLAY (there is now a "Slider Controls" menu)
- UI_ADD_CHEAT, UI_DELETE_CHEAT, UI_SAVE_CHEAT, UI_WATCH_VALUE, UI_EDIT_CHEAT, UI_RELOAD_CHEAT (these keys belonged to the old cheat engine)
A clean build is required and cfg/default.cfg has to be deleted !
- fix Mantis bug ID 02323 (this might not be the best way though).
- reworked 'geebee', 'navarone' and 'warpwarp' INPUT_PORTS definitions by using conditional Dip Switches.
- added 'geebeeb' INPUT_PORTS definition (this game has specific "Replay" settings).
palette.c to preserve the alpha when transforming palette values.
These changes should be transparent to almost all drivers and rendering
(ha-ha), but there may be an occasional instance where a driver relied
on the alpha being 0 in the system palette. This also means that the
palette_set_color() function preserves any alpha value that is set.
Changed Firefox to RGB32 to allow for mid-screen palette changes. Because
of the above change, the hacky alpha manipulation that was previously
required is no longer necessary; the alpha is set directly in the palette
entry.
(Guru, can you check that ms5pcb you have, the roms in MAME are now marked as NO DUMP)
Updated Neo-Geo game pcb infos
2020bba: Marked MVS and AES version
sonicwi2: Added correct sized v2
kof95 / kof95a:
. Renamed kof95 to kof95h
. Renamed p1 to correct chip label
. Added note
. Renamed kof95a to kof95
. Renamed p1
samsho3 / samsho3a:
. Renamed samsho3a to samsho3
. Renamed samsho3 to samsho3h
. Renamed p1 to correct chip label
. Marked AES version
kof98 / kof98n:
. Renamed m1 in kof98 to correct chip label
. Renamed m1 in kof98n to correct chip label
(kof98n should be latest revision, cart had very high SN 1xx.xxx)
kof97: Marked MVS version
samsho5 / samsho5h:
. Correct text layer size
. Marked samsho5h AES version
neogeo:
. Updated system set to what is found on NEO-MVH MV1FS
. Added note
ms5pcb:
. Hooked up bios dip
. Renamed bios to correct chip label
. Renamed p1 / p2 to correct chip label, marked NO_DUMP
. Added note
compared to other emulator (i.e. kawak), mame does not perform very well in
terms of speed of emulation against Neo Geo games.
Looking at profiling data for these neo geo games, we can see :
---------------------------------------------------------
% cumulative self self total
time seconds seconds calls s/call s/call name
18.40 18.80 18.80 971070 0.00 0.00 video_update_neogeo
10.42 29.45 10.65 4416 0.00 0.00 texture_set_data
10.06 39.73 10.28 1144463 0.00 0.00
sprite_line_timer_callback
6.24 46.10 6.37 187970965 0.00 0.00 astring_cmpc
3.77 49.95 3.85 35732143 0.00 0.00 memory_region
---------------------------------------------------------
I was wondering why functions like 'astring_cmpc' and 'memory_region' where
in the top 5 of the most time consuming functions.
The answer is found in the function 'draw_sprites' from
'mame/video/neogeo.c' where 'memory_region' is called for each sprites for
each VIDEO_UPDATE.
I patched mame in order to keep track of this 'memory_region'. This is done
in VIDEO_START via a global variable (region_zoomy) just like in some other
drivers.
Sent: Thursday, September 25, 2008 3:15 AM
To: submit@mamedev.org
Subject: using macros in UI message
This patch changes the message, that appears when no roms have been
found, to use the macros instead of hard-coded strings
Sent: Wed 9/24/2008 2:00 PM
To: submit@mamedev.org
Subject: Speed up fillbitmap
Hi,
there are many places in mame which make use of "fill_bitmap" or the
equivalent "fillbitmap"
An optimisation is done when the depth of the bitmap is 16 or 32 bpp and
when the UINT16 or UINT32 corresponding to the color is composed of same
bytes (i.e 0xffff for example). This is usefull because most of the calls
are for color 0 (black).
In all other cases, the bitmap is filled one pixel at a time using a loop
with a code like :
================
for (y = fill.min_y; y <= fill.max_y; y++)
{
UINT16 *destrow = BITMAP_ADDR16(dest, y, 0);
for (x = fill.min_x; x <= fill.max_x; x++)
destrow[x] = (UINT16)color;
}
================
However, each rows of the final bitmap will be the same. So I modified this
simple assigned to work as follow :
1) fill the first row one pixel at a time
2) fill all the other rows by copying the first one.
This makes us use memcpy instead of a hard coded loop for most of the
filling process.
Sent: Tue 9/23/2008 1:16 PM
To: submit@mamedev.org
Subject: More naomi ...
Hi.
This patch shows the contents of the framebuffer if the 3d accelerator is
not used so that now the atomiswave logo and messages are shown (if you
wait enough).
Removes a maple bug (no more strange messages in cvs2gd).
Improves documentation of the communication registers with the dimm board.
And if DEBUG_VERTICES is defined as 1 the vertices sent to the tile
accelerator are collected and then drawn connected by a segment to give a
wireframe-like view of the scene.
Bye,
Samuele Zannoli
Sent: Tuesday, September 23, 2008 4:46 AM
To: Aaron Giles
Subject: 8080 bug
To fix this bug : http://mametesters.org/mantis/view.php?id=2322
a part of my code should be removed.
It seams that this feature I have added is only available on KP580BM80A (Russian clone of this processor).
So until I make a new patch (that support this clone processor) please apply this to fix MAME drivers.
Thanks,
Miodrag
Sent: Mon 9/22/2008 3:15 PM
To: submit@mamedev.org
Subject: Better Input clean in system1
I've re-made the job better than last time (i hope), clean up the inputs in system1, next time i'll fix all dips location.
Bye Sonikos.
Sent: Sunday, September 21, 2008 10:45 AM
To: submit@mamedev.org
Cc: atariace@hotmail.com
Subject: [patch] More static qualifiers
Hi mamedev,
Another static function update from yours truly, almost entirely
affecting code added in the last few months to MAME. The fixes are
the usual lot, changing enum definitions so they aren't declared,
decorating dead code/declarations with #if...#endif, and of course,
adding static where appropriate. In addition, I fixed a bunch of
UNUSED_FUNCTON symbols to be spelled correctly (I didn't introduce
this).
~aa
Sent: Thursday, September 18, 2008 6:01 AM
To: submit@mamedev.org
Subject: fix for MT 2252
1 line fix (silly mistake that I was sure I had fixed BEFORE sending the patch) :(
Regards,
Fabio
---
From: Fabio Priuli [mailto:doge.fabio@gmail.com]
Sent: Friday, September 19, 2008 1:15 AM
To: submit@mamedev.org
Subject: Fix for MT 2258
Regressed in 126u3 due to a wrong tag. Fixed.
Fabio
---
enclosed please find a patch which makes non-static two pointers to i/o handlers and includes them in megadriv.h. This makes possible for external drivers (in particular MESS genesis emulation) to define elsewhere their own input handlers and to feed them to the megadriv.c routines.
---
From: Fabio Priuli [mailto:doge.fabio@gmail.com]
Sent: Mon 9/22/2008 2:15 PM
To: submit@mamedev.org
Subject: fix for MT 2254
Hi,
enclosed please find a patch which fixes bug 2254. Tags were switched. Thanks to Haze for noticing the root of the problem.
Regards,
Fabio
fine and basic searching/playback/skipping is functional. Still a bit
glitchy.
Firefox improvements:
- removed need for deprecat.h
- memory map is complete from schematics
- gutted laserdisc hacks in favor of actual laserdisc implementation
- fixed all CPU and sound clocks
Removed old laserdsc.c implementation.
Added generic timer devices, which simply allocate a timer but don't
prime it. This is the preferred method for allocating timers, and may
eventually be the only mechanism for doing so in the future.
System 23:
* Added Rapid River readme
* Adjusted Gorgon h/w MIPS clock to 133 MHz based on readme
* Renamed GP500 to 500GP, which is it's correct name
Game Cristal:
* Use correct BIOS [f205v]
Uploaded to roms/current/g.
Includes mamedriv.c I missed with the System 23 checkin.
New games marked as GAME_NOT_WORKING
------------------------------------
GameCristal (version 2.613) [ANY, f205v]
* Fixed text layer to show (colors are wrong)
* Added very preliminary support for Gorgon h/w
* Added Rapid River and an alternate Time Crisis 2
New games marked as GAME_NOT_WORKING
------------------------------------
Rapid River (RD3 Ver. C) [Guru, R. Belmont]
Time Crisis 2 (TSS2 Ver. B) [Guru]
* Removes arbitrary opcode groupings in favor of flat decode model.
* Fixes a number of small issues with unknown opcodes.
* Added the final ALU parallel move ops.
I've ported Andreas' code over, it doesn't work for ms5pcb, there is probably an additional lineswap or something, I've asked him to look at it. Some of the bootlegs are still using decrypted roms but that should be correct IMO.
Sent: Thursday, September 18, 2008 6:01 AM
To: submit@mamedev.org
Subject: fix for MT 2252
1 line fix (silly mistake that I was sure I had fixed BEFORE sending the patch) :(
Regards,
Fabio
Sent: Wednesday, September 17, 2008 10:31 PM
To: submit@mamedev.org
Subject: Shadow Force clocks
Verified cpu clocks and corrected/verified OKI M6295 frequencies and pin
7 status. Updated Xtal.h file
Sent: Sat 9/13/2008 5:15 PM
To: submit@mamedev.org
Cc: atariace@hotmail.com
Subject: [patch] Make NBA Jam TE a set
Hi mamedev,
This patch treats NBA Jam TE versions as a set, rather than treating
them as clones of NBA Jam. The treatment of sets varies throughout
MAME, this choice is emphasizing the fact that the games were distinct
from NBA Jam, with different marquees et cetera.
~aa
After adding these, I downloaded all manuals for the driver (couldn't find a
Boulder Dash manual) and I validated the DIPs with the manual and ensured that
the service mode (when available) matched up as well. I also added DIP
LOCATIONS for all sets in the driver. There were also a couple DIP items set
up in the source which did not show in the manuals I obtained - so I noted
these facts in the driver.
This .DIFF is based on 0.127u3 sources and resolves MAMETesters Bug #01897.
Tafoid
tafoid@yahoo.com
due to bad roms had a fully working service mode. I also noticed the DIP
locations were well documented on-screen and differed some from the ones in
source. I took the time to read up on how to assign DIPs correctly - but I was
frustrated initially thinking I didn't understand it. I spoke to ETABETA about
this and it seems I picked an uncommon game/driver which doesn't have normal
mapping locations (for whatever reason) and that I'd need to find out what each
value is actually doing. As a result and some work and some more help - I was
able to understand how to do this and reworked the DIPs to what is output in the
service mode for all games (except for Revenger) which did not work enough at all.
While I was there, I added DIP LOCATIONS for all sets. I would assume this
eventually benefit from a PORT_CUSTOM implementation.
This .DIFF is based on 0.127u3 sources.
Tafoid
tafoid@yahoo.com
Sent: Monday, September 15, 2008 5:31 AM
To: submit@mamedev.org
Subject: Patch for new dumps
Hi,
I have attached a patch which adds support for the following;
* The "Three Wonders (Hack?)" dump from the EMMA dumping team (I'm not
100% sure of the CPS B-ID this should use)
* The "Marvel vs. Capcom (Euro 980123)" dump by bonky_0013 (this becomes
the parent set).
Regards,
Barry Harris
installing a handler in the SOUND_START function.
02249: All Sets in zn.c: Game Hangs
02248: All sets in m58.c: No sound in game
02241: kncljoe, kncljoea: Missing AY-3-8910A sound effects.
02240: All Sets in namcos12.c: Game Freeze
02239: stunrun: No OKI6295 sound.
metadata with pre-decoded frame information. Modified chdman to
automatically produce this for CHDs that are of the appropriate
parameters. To fix up existing CHDs, use chdman -fixavdata on the
CHD.
Modified the laserdisc core to leverage the pre-decoded frame
metadata, which is now required. This improves seek times when
searching and allows the player-specific emulation access to the
VBI data as soon as it would really be available. Changed update
callback timing to fire just before the first line of VBI data
would be read; at that point, the frame selection is assumed to
be committed.
Converted PR-8210 emulation over to using the actual MCU from the
laserdisc player. This MCU controls low-level functions such as
slider position and laser on/off, and receives decoded vertical
blanking data in order to make decisions. Removed old HLE behavior.
Note that the overlay text is displayed via the UI; this is
temporary and will be fixed shortly.
Converted Simutrek-hacked laserdisc emulation to using the actual
MCU from the game, which in turn hands off commands to the PR-8210
MCU. This is still not 100% but is pretty close at this point and
achieves the correct behaviors in most cases.
Fixed Cube Quest overlay scaling to cover the whole screen.
Changed laserdisc video parameters to position the screen area at
the bottom rather than the top, since this corresponds more closely
to standard line numbering.
Extended the vbiparse code to support pack/unpack, and to more
fully document all the meanings of the VBI codes.
Updated ldplayer to support slow/fast forward movement, frame/chapter
display, and separate controls for scanning/stepping.
Added new built-in variable "frame" to the debugger.
Fixed device-based ROM loading to support loading ROMs from the
game's ZIP as well.
Full controls, plus complete DIP switches and port locations. Promoted to working.
This set has adjustable prize.
New clones added
----------------
Hot Mind (adjustable prize) [David Haywood, Roberto Fresca]
- Added new clone: Pool 10 (italian, set 4).
- Improved lamps layout for all games.
- Added Pool 10 pinout and DIP switches info.
- Updated technical notes.
New clones added
----------------
Pool 10 (italian, set 4) [Roberto Fresca]
True world set with World, USA & Canada, Korea, Hong Kong, or Taiwan
Minor clean up of port include dipswitch defs
New clones added
----------------
Tengai (World) [Jet Black / Tormod]
Subject: Several patchlets
ledutil.diff
- checking if memory is allocated before using it is good, freeing what
has
been allocated in the error path is better