- --
Viewing Issue Advanced Details
ID | Category [?] | Severity [?] | Reproducibility | Date Submitted | Last Update |
---|---|---|---|---|---|
00277 | Crash/Freeze | Critical (emulator) | Have not tried | Jan 28, 2008, 02:26 | May 12, 2008, 18:43 |
Tester | ShimaPong | View Status | Public | Platform | |
Assigned To | Resolution | Fixed | OS | ||
Status [?] | Resolved | Driver | |||
Version | 0.105u4 | Fixed in Version | 0.125u4 | Build | |
Fixed in Git Commit | Github Pull Request # | ||||
Summary | 00277: groundfx.c, gunbustr.c, superchs.c, taito_f3.c, undrfire.c, psikyosh.c: Cheat search causes fatal error. | ||||
Description |
On 0.104u5 or later, starting the search via the cheat engine in the game based on taito_f3 triggers fatal error. In case of undrfire on 0.105u4: Fatal error: cpu_spinuntil_int() called with no executing cpu! Caused by assert: src/cpuexec.c:1237: activecpu >= 0 Updated in 0.107u2: This problem doesn't happen during "pause" (P key). A search in "no-pausing" triggers Fatal Error. Also psikyosh.c games (daraku, gunbird2, mjgtaste etc) have the same problem. 0.124u4: Only seems to happen with ADVANCED search option in cheat. Tested with daraku: Fatal error: cpu_spinuntil_int() called with no executing cpu! (src/emu/cpuexec. c:656) |
||||
Steps To Reproduce | |||||
Additional Information | |||||
Github Commit | |||||
Flags | |||||
Regression Version | |||||
Affected Sets / Systems | groundfx.c, gunbustr.c, superchs.c, taito_f3.c, undrfire.c, psikyosh.c | ||||
Attached Files
|
|||||
Relationships
There are no relationship linked to this issue. |
Notes
3
No.00835
aaron Developer
Apr 28, 2008, 20:04
|
There's really no solution for this. The cheat code is going through and accessing memory. Most memory accesses in MAME happen on the assumption that you are accessing it during execution. In this case, the read/write handler is calling cpu_spinuntil_int() which is only valid when you are executing. |
---|---|
No.00836
Tafoid Administrator
Apr 28, 2008, 20:11
|
Would it be safe to say this bug is one that should be labeled "Not Fixable" and resolved? Just trying to clean up some of the more generic bug reports - like this one. |
No.00951
ShimaPong Tester
May 12, 2008, 18:43
edited on: May 12, 2008, 18:44 |
See driver/cps3.c.if (cpu_getexecutingcpu()>=0) // prevent cheat search crash.. if (activecpu_get_pc()==cps3_speedup_code_address) {cpu_spinuntil_int();return cps3_mainram[cps3_speedup_ram_address/4];}This driver goes through this problem. If you delete it, this problem happens even in this driver. But I think it's too bad that update all drivers which use cpu_spinuntil_*(). I have added User Search Region for my WIP cheat engine. It supports Direct Memory Access and tries to read/write a memory directly (not use core read/write function). I have succeeds to search via this new search region system in taito_f3.c games without fatal error. In the future, I will list the drivers used cpu_spinuntil_*() and add auto setting as default at the initialization. NOTE : I don't know how to submit to official so check my WIP cheat engine thread (http://www.mameworld.info/ubbthreads/showthreaded.php?Cat=&Number=147780&pag=0) |