- --
Viewing Issue Advanced Details
ID | Category [?] | Severity [?] | Reproducibility | Date Submitted | Last Update |
---|---|---|---|---|---|
04206 | Crash/Freeze | Critical (emulation) | Always | Jan 26, 2011, 12:09 | Jul 28, 2019, 18:25 |
Tester | Scagazza | View Status | Public | Platform | MAME (Official Binary) |
Assigned To | Resolution | Reopened | OS | Windows Vista/7/8 (64-bit) | |
Status [?] | Confirmed | Driver | |||
Version | 0.141u1 | Fixed in Version | Build | 64-bit | |
Fixed in Git Commit | Github Pull Request # | ||||
Summary | 04206: mrkickera: Game hangs | ||||
Description |
The game hangs after you complete a stage randomly perhaps after you choose to continue the game after you are dead, You can esc, then if you try to run the game another time it hangs during boot with a green screen and you have to delete nvram file to get it working back. (gdb) run mrkicker -window Starting program: C:\MAME/mame.exe mrkicker -window [New Thread 2996.0x3a0] warning: Can not parse XML library list; XML support was disabled at compile time [New Thread 2996.0x20c] [New Thread 2996.0x7b0] [New Thread 2996.0x934] [New Thread 2996.0x878] [New Thread 2996.0x238] [New Thread 2996.0x5ec] [New Thread 2996.0x74c] [New Thread 2996.0x930] EXCEPTION! PPC = 00000000 PC = 0000000A This is the only backtrace I was able to produce. Originale note from source file vamphalf.c Mr. Kicker game code crashes if the eeprom values are empty, because it replaces the SP register with a bogus value at PC = $18D0 before crashing. It could be an original game bug or a hyperstone core bug |
||||
Steps To Reproduce | |||||
Additional Information | |||||
Github Commit | |||||
Flags | |||||
Regression Version | |||||
Affected Sets / Systems | mrkickera | ||||
Attached Files
|
mrkicker_inp.zip (92,504 bytes) Jan 27, 2011, 14:18 Uploaded by Scagazza | ||||
Relationships
There are no relationship linked to this issue. |
Notes
15
No.07127
Reip Developer
Jan 26, 2011, 14:05
|
There's a problem with eeprom device and 64bit builds. I can't test / fix that |
---|---|
No.07128
Fujix Administrator
Jan 26, 2011, 14:30
|
I suspect your cheat file is busted. Could you test with -nocheat? |
No.07135
Scagazza Tester
Jan 26, 2011, 15:11
|
Tested with nocheat, the game still hangs |
No.07146
Scagazza Tester
Jan 27, 2011, 13:29
|
I have an update, Probably the game hangs after you continue the game and complete a level only if you have reached a sufficient score to enter in the top list. Play till level 8 or 9 (I think it's sufficient) , lose all the life and continue the game after you have finished the level game hangs. |
No.07147
Scagazza Tester
Jan 27, 2011, 14:18
|
I have recorded an inp. Remenber that the bug it's probably 64-bit specific. |
No.07150
Haze Senior Tester
Jan 27, 2011, 18:48
|
it hangs even on a 32-bit build.. the CPU crashes |
No.07151
Haze Senior Tester
Jan 27, 2011, 19:08
|
it also has nothing to do with the speed hacks (idle skipping) because it hangs just the same without those. Could be a CPU core bug, could be that the continue feature in the game is bugged... maybe this was never really released, it's missing from many SemiCom references I've seen. |
No.07152
Scagazza Tester
Jan 27, 2011, 19:17
edited on: Jan 27, 2011, 19:18 |
Haze if you die at first level and continue the game doesn't hang so it couldn't be something written in the eeprom device when you enter your name before continue at later level? Note that after the game hanged if you restart the game it doesn't boot (remain in green screen) and you have to delete nvram file. |
No.07153
Haze Senior Tester
Jan 27, 2011, 20:56
|
yeah this is the theory I'm discussing with Reip.. the iniial problem was with the Eeprom, so I'm thinking that it might have something to do with you getting a high score and it attempting to save it, then ending up with an invalid eeprom and crashing just like it does at the start. If somebody can confirm it's to do with the highscore that would be good. |
No.09726
moa Tester
Aug 11, 2013, 14:06
|
Tested with SVN 24831, got a hiscore and everything is fine even after reboot Maybe latest Aaron EEprom rewrite Need to be confirmed for 149u2 |
No.09727
Haze Senior Tester
Aug 11, 2013, 17:40
edited on: Aug 11, 2013, 17:40 |
it does seem improved, but could still do with more testing due to the nature of the issue. if you remove the default nvram the game still can't boot, possibly suggesting there still is a problem*, although yes, I was able to play it a bit, set a high score, and reset without it writing an eeprom it couldn't read back. * they could have also done that as a security measure of course |
No.10305
Osso Moderator
Feb 18, 2014, 06:51
|
Haze marked it as working as of r27750. According to his commit note, this bug was fixed by the EEPROM device rewrite, which confirms what moa wrote above. |
No.11728
Tafoid Administrator
Jun 8, 2015, 00:39
|
I think this is still an issue, as mentioned in 05950. Reopening. |
No.15985
MetalGod Senior Tester
Jan 3, 2019, 13:06
|
The affected rom is "mrkickera" In mame 0.163 parent was changed to a clone that doesn't present this issue |
No.15988
Haze Senior Tester
Jan 3, 2019, 14:35
edited on: Jan 3, 2019, 14:38 |
right, it applies to the clone set now. It stopped happening for a while because the eeprom rewrite actually completely broke writing to the eeprom (as the inaccurate Hyperstone timing meant it was writing faster than the device could take it meaning it never changed the eeprom from our preprogrammed default) however with it hooked up in a way so that the eeprom could be written again (assume fastest timings, same required for all hyperstone games) it will corrupt it when it attempts to write it, meaning yes, the issue happens again. The reason it needs a default preprogrammed eeprom in the first place is because even the code that gets excuted to write a fresh eeprom by the game ends up writing corrupt data too, which it can't boot from so with no default eeprom it's unable to create a valid one. I'm not sure if it's some kind of security check that's been missed, or some kind of maths bug with the hyperstone CPU core causing it to calculate an invalid checksum for the EEPROM and therefore never thinking it's valid. |