Sent: Thursday, July 03, 2008 9:16 AM
To: submit@mamedev.org
Subject: fix for output.c unregister_client crash
My app is causing mame to crash when it unregisters itself as an output client.
Output.c's unregister_client() is guaranteed to crash because if it finds a
match then it ends up doing a "->next" twice -- once in the "if" body, and once
in the "for" statement. This patch to 0.125u8 fixes this problem. It simply adds
a "break" to the "if" body since at that point there is no need to continue.
Hope this can make it in for 0.126.
new clones
----------
Captain Commando (bootleg) [highwayman] (NOT WORKING)
------------------------------------------------------------------------
(it's a good dump of the bootleg Guru dumped with half size gfx roms)
sprite problems due to different hardware, left as non-working. I have code for this somewhere.
no good dumps of the PICs exist, and this is mainly for reference so that I don't forget the graphic rom loading on them. they don't work. they're basically the same set from different PCBs, so one will probably be removed eventually.
this needs a different decrypt functino. I'll see if it works with any of the existing ones.
New clones added
----------------
Star Force (encrypted, set 2) [highwayman] (NOT WORKING)
- add controls for player 2 (partially fixed bug ID 00299)
- cleaned other inputs and Dip Switches
- add GAME_NO_COCKTAIL flag (I don't know how to fix such issues)
I hope that someone will be able to commit this before next release ...
Steph from The Ultimate Patchers
Anyway, I've fixed one of the oldest bug in MAME as it existed since the game was added in MAME 0.37b1 (even if the bug reports it far after) ...
Here is the log of my changes for 'usclssic' :
- fixed bug ID 00654
- use port tags instead of indexes
- use AM_READ_PORT macro
Note that this driver still requires a lot of work to merge the memory maps and use the tags and AM_READ_PORT macros everyone, but I don't have enough time at the moment to do so ...
Steph from The Ultimate Patchers
- Roll back older periodic function
Now standard/old format work in this function
Otherwords, several operations which doesn't exist in older
function and added recently are now disabled
- Separated load_cheat_code() to 3 indipendent functions
And added new cheat options, "Load New/Standard/Old Format Code"
(Default : load all format codes)
NOTE : delete all cheat options in the database before start
or reload default options (Shift + Reload key)
in cheat general menu
- Added format strings structure to accept huge size strings
in loading a database to prevent from breaking other strings
- Changed Link in new format
Label code is now "Link-Label" and sub-label is "Label-Sub-Link"
"Standard-Link" is no longer label
- Added choose_label_index() to manage label selection
- Fixed build_label_index_table() to prevent from crashing
And disabled to build label index table in case of
standard/old format
- Fixed memory free problem in case of standard/old code
- Fixed several reported/found bugs
- updated Dip Switches for 'wlstar' and 'wondl96'
- added notes for these 2 games and updated some others
- added port tags and updated memory definitions and read handlers
- Unified MACHINE_RESET for systems 903/904/905.
- Created a new handler to manage the first 4 bits of system 905's PIA1 portB as input mux selector.
(905 is still not working)
- Updated technical notes.