- --
Viewing Issue Advanced Details
[ Jump to Notes ]
ID | Category [?] | Severity [?] | Reproducibility | Date Submitted | Last Update |
---|---|---|---|---|---|
06361 | Cheat System | Critical (emulator) | Always | Sep 2, 2016, 05:31 | Mar 2, 2017, 12:38 |
Tester | msutton | View Status | Public | Platform | MESS (Official Binary) |
Assigned To | Pugsy | Resolution | Fixed | OS | Windows 10 (64-bit) |
Status [?] | Resolved | Driver | |||
Version | 0.177 | Fixed in Version | 0.184 | Build | 64-bit |
Fixed in Git Commit | Github Pull Request # | ||||
Summary | 06361: Cartrdige memory accessed directly with cheats will crash MAME | ||||
Description |
When running a NES game with cheats enabled mame crashes with no errors. I am using the latest Pugsy's Cheats. Looking at the cheat files, the cheats want to modify nes_slot:cart:prg_rom It looks like this region is not loaded before the cheat file is loaded. I know this is not a solution but points to possibly where the error is occurring. This affects not only NES, but all cheat that reference cart memory directly. |
||||
Steps To Reproduce | mame64 nes -cart1 smb1 -cheat -v | ||||
Additional Information | |||||
Github Commit | |||||
Flags | |||||
Regression Version | |||||
Affected Sets / Systems | |||||
Attached Files
|
output-crash.txt (3,278 bytes) Sep 2, 2016, 05:31 Uploaded by msutton Output when crashes [Show Content] [Hide Content]E:\MAME_Org>mame64 nes -cart1 smb1 -cheat -v -debug Video: Monitor 000000000c2c94c0 = "\\.\DISPLAY1" (primary) Using Windows OpenGL driver unzip: opened archive file E:\Mame_Data\artwork\nes.zip unzip: found E:\Mame_Data\artwork\nes.zip ECD unzip: E:\Mame_Data\artwork\nes.zip has no ZIP64 ECD locator unzip: read E:\Mame_Data\artwork\nes.zip central directory unzip: closing archive file E:\Mame_Data\artwork\nes.zip and sending to cache Physical width 1920, height 1020 OpenGL: NVIDIA Corporation OpenGL: GeForce GTX 550 Ti/PCIe/SSE2 OpenGL: 4.5.0 NVIDIA 372.54 OpenGL: texture rectangle supported OpenGL: non-power-of-2 textures supported (new method) OpenGL: vertex buffer supported OpenGL: pixel buffers supported OpenGL: framebuffer object supported OpenGL: GLSL supported, but disabled OpenGL: max texture size 16384 x 16384 Leave renderer_ogl::create RawInput: APIs detected RawInput: APIs detected RawInput: APIs detected Sound: XAudio2 created initial buffers. total size: 46080, count 10, size each 4608 Sound: XAudio2 initialized. 46 ms. Input: Adding Kbd #0: HID Keyboard Device Input: Adding Mouse #0: HID-compliant mouse Input: Adding Mouse #1: HID-compliant mouse Input: Adding Mouse #2: HID-compliant mouse Input: Adding Gun #0: HID-compliant mouse Input: Adding Gun #1: HID-compliant mouse Input: Adding Gun #2: HID-compliant mouse Input: Adding Joy #0: Mayflash Wiimote PC Adapter Input: Adding Joy #1: Mayflash Wiimote PC Adapter Input: Adding Joy #2: Mayflash Wiimote PC Adapter Input: Adding Joy #3: ATRAK Device #2 Skipping DirectInput for XInput compatible joystick Controller (XBOX 360 For Windows). Input: Adding Joy #4: Mayflash Wiimote PC Adapter Input: Adding Joy #5: ATRAK Device #1 Input: Adding Joy #6: XInput Player 1 unzip: found E:\Mame_Data\artwork\nes.zip in cache unzip: opened archive file E:\Mame_Data\artwork\nes.zip unzip: closing archive file E:\Mame_Data\artwork\nes.zip and sending to cache OpenGL: VBO supported OpenGL: PBO supported OpenGL: FBO supported OpenGL: using vid filter: 1 Region ':maincpu' created Region ':nes_slot:prg' created unzip: opened archive file E:\Mame_Data\software_roms\nes\smb1.zip unzip: found E:\Mame_Data\software_roms\nes\smb1.zip ECD unzip: E:\Mame_Data\software_roms\nes\smb1.zip has no ZIP64 ECD locator unzip: read E:\Mame_Data\software_roms\nes\smb1.zip central directory unzip: closing archive file E:\Mame_Data\software_roms\nes\smb1.zip and sending to cache Region ':nes_slot:chr' created unzip: found E:\Mame_Data\software_roms\nes\smb1.zip in cache unzip: opened archive file E:\Mame_Data\software_roms\nes\smb1.zip unzip: closing archive file E:\Mame_Data\software_roms\nes\smb1.zip and sending to cache Mameinfo.dat games found = 9725 Mameinfo.dat drivers found = 1335 Rev = v0.176 Command.dat games found = 630 Story.dat games found = 2322 Messinfo.dat games found = 2396 Messinfo.dat drivers found = 691 Rev = v0.175 Sysinfo.dat games found = 735 Rev = 2012-09-11. History.dat systems found = 27272 History.dat software packages found = 46635 Rev = 1.76 Gameinit.dat games found = 146 Rev = un7z: opened archive file cheat.7z un7z: closing archive file cheat.7z and sending to cache Loading cheats file from cheat | ||||
output-working.txt (5,441 bytes) Sep 2, 2016, 05:32 Uploaded by msutton output after modifying the source code [Show Content] [Hide Content]E:\MAME_Org>mame64 nes -cart1 smb1 -cheat -v -debug Video: Monitor 000000000c00bc80 = "\\.\DISPLAY1" (primary) Using Windows OpenGL driver unzip: opened archive file E:\Mame_Data\artwork\nes.zip unzip: found E:\Mame_Data\artwork\nes.zip ECD unzip: E:\Mame_Data\artwork\nes.zip has no ZIP64 ECD locator unzip: read E:\Mame_Data\artwork\nes.zip central directory unzip: closing archive file E:\Mame_Data\artwork\nes.zip and sending to cache Physical width 1920, height 1020 OpenGL: NVIDIA Corporation OpenGL: GeForce GTX 550 Ti/PCIe/SSE2 OpenGL: 4.5.0 NVIDIA 372.54 OpenGL: texture rectangle supported OpenGL: non-power-of-2 textures supported (new method) OpenGL: vertex buffer supported OpenGL: pixel buffers supported OpenGL: framebuffer object supported OpenGL: GLSL supported, but disabled OpenGL: max texture size 16384 x 16384 Leave renderer_ogl::create RawInput: APIs detected RawInput: APIs detected RawInput: APIs detected Sound: XAudio2 created initial buffers. total size: 46080, count 10, size each 4608 Sound: XAudio2 initialized. 32 ms. Input: Adding Kbd #0: HID Keyboard Device Input: Adding Mouse #0: HID-compliant mouse Input: Adding Mouse #1: HID-compliant mouse Input: Adding Mouse #2: HID-compliant mouse Input: Adding Gun #0: HID-compliant mouse Input: Adding Gun #1: HID-compliant mouse Input: Adding Gun #2: HID-compliant mouse Input: Adding Joy #0: Mayflash Wiimote PC Adapter Input: Adding Joy #1: Mayflash Wiimote PC Adapter Input: Adding Joy #2: Mayflash Wiimote PC Adapter Input: Adding Joy #3: ATRAK Device #2 Input: Adding Joy #4: Mayflash Wiimote PC Adapter Input: Adding Joy #5: ATRAK Device #1 unzip: found E:\Mame_Data\artwork\nes.zip in cache unzip: opened archive file E:\Mame_Data\artwork\nes.zip unzip: closing archive file E:\Mame_Data\artwork\nes.zip and sending to cache OpenGL: VBO supported OpenGL: PBO supported OpenGL: FBO supported OpenGL: using vid filter: 1 Region ':maincpu' created Region ':nes_slot:prg' created unzip: opened archive file E:\Mame_Data\software_roms\nes\smb1.zip unzip: found E:\Mame_Data\software_roms\nes\smb1.zip ECD unzip: E:\Mame_Data\software_roms\nes\smb1.zip has no ZIP64 ECD locator unzip: read E:\Mame_Data\software_roms\nes\smb1.zip central directory unzip: closing archive file E:\Mame_Data\software_roms\nes\smb1.zip and sending to cache Region ':nes_slot:chr' created unzip: found E:\Mame_Data\software_roms\nes\smb1.zip in cache unzip: opened archive file E:\Mame_Data\software_roms\nes\smb1.zip unzip: closing archive file E:\Mame_Data\software_roms\nes\smb1.zip and sending to cache Mameinfo.dat games found = 9725 Mameinfo.dat drivers found = 1335 Rev = v0.176 Command.dat games found = 630 Story.dat games found = 2322 Messinfo.dat games found = 2396 Messinfo.dat drivers found = 691 Rev = v0.175 Sysinfo.dat games found = 735 Rev = 2012-09-11. History.dat systems found = 27272 History.dat software packages found = 46635 Rev = 1.76 Gameinit.dat games found = 146 Rev = un7z: opened archive file cheat.7z un7z: closing archive file cheat.7z and sending to cache Loading cheats file from cheat un7z: found cheat.7z in cache un7z: closing archive file cheat.7z and sending to cache Starting Nintendo Entertainment System / Famicom (NTSC) ':' Optional device ':disk' not found Optional device ':exp' not found (missing dependencies; rescheduling) Starting N2A03 ':maincpu' (missing dependencies; rescheduling) Starting N2A03 APU ':maincpu:nesapu' Starting Video Screen ':screen' (missing dependencies; rescheduling) Starting palette ':palette' Starting 2C02 PPU ':ppu' (missing dependencies; rescheduling) Starting Speaker ':mono' Starting Nintendo NES/FC control port ':ctrl1' Starting Nintendo NES / FC Control Pad ':ctrl1:joypad' Starting Nintendo NES/FC control port ':ctrl2' Starting Nintendo NES / FC Control Pad ':ctrl2:joypad' Starting NES Cartridge Slot ':nes_slot' Starting NES Cart NROM PCB ':nes_slot:nrom' Starting Software list ':cart_list' Starting Software list ':ade_list' Starting Software list ':ntb_list' Starting Software list ':kstudio_list' Starting Software list ':datach_list' Starting Nintendo Entertainment System / Famicom (NTSC) ':' Optional device ':disk' not found Optional device ':exp' not found (missing dependencies; rescheduling) Starting N2A03 ':maincpu' Starting Video Screen ':screen' Starting 2C02 PPU ':ppu' Starting Nintendo Entertainment System / Famicom (NTSC) ':' Optional device ':disk' not found Optional device ':exp' not found Region ':nes_slot:cart:prg_rom' created Region ':nes_slot:cart:chr_rom' created un7z: found cheat.7z in cache un7z: closing archive file cheat.7z and sending to cache un7z: found cheat.7z in cache un7z: reopened archive file cheat.7z un7z: closing archive file cheat.7z and sending to cache un7z: found cheat.7z in cache un7z: closing archive file cheat.7z and sending to cache Starting Nintendo Entertainment System / Famicom (NTSC) GL texture: copy 1, shader 0, dynamic 1, 256x240 256x240 [PALETTE16, Equal: 0, Palette: 1, scale 1x1, border 0, pitch 256,256/16384], bytes/pix 4 GL texture: copy 1, shader 0, dynamic 1, 256x240 256x240 [PALETTE16, Equal: 0, Palette: 1, scale 1x1, border 0, pitch 256,256/16384], bytes/pix 4 Average speed: 100.07% (5 seconds) Sound: overflows=0, underflows=1 Sound: XAudio2 deinitialized | |||||
Relationships
|
Notes
5
No.13096
Tafoid Administrator
Sep 2, 2016, 11:35
|
For now, you can use the built in cheat plugin -plugins -plugin cheat to avoid this issue. |
---|---|
No.13099
msutton Tester
Sep 2, 2016, 18:41
|
I tried the suggestion to use the cheat plugin. When I use the cheat plugin I do not get a list of cheats in game to chose from under the plugin menu. I get a message that says,"This non-arcade system has been added during the amalgamation of MESS into MAME. If there is a softwarelist with games in, then cheats may well appear when you load the game." I am getting console output that it is finding the cheat.7z file and sending it to cache. Maybe I do not have something configured correctly. |
No.13101
Tafoid Administrator
Sep 2, 2016, 19:29
|
It loads NES cheats for me in my testing with latest official 0.177 as well as current GIT sources + cheat.7z from Pugsy's mame nes smb1 -plugins -plugin cheat You mentioned you modified your source locally? Perhaps you are using that? |
No.13102
msutton Tester
Sep 2, 2016, 20:51
edited on: Sep 2, 2016, 20:52 |
I see I was using mame64 nes -cart1 smb1 -plugins -plugin cheat to make it work I needed to add the software title by itself, software title as parameter of -cart1 is not enough mame64 nes smb1 -cart1 smb1 -plugins -plugin cheat now it is working as expected, thanks for your help. |
No.13676
Tafoid Administrator
Mar 2, 2017, 12:35
|
Crashes were fixed with 06477 The nes (and other cheats which adjusted cart memory directly) were still showing up invalid memory name. This was fixed with this pull request/commit in which the startup order of initialization was adjusted so that memory names were not 'forgotten' https://github.com/mamedev/mame/pull/2088 |