smw-editor icon indicating copy to clipboard operation
smw-editor copied to clipboard

STATUS_HEAP_CORRUPTION with the dissasembler

Open auggiethecat opened this issue 2 months ago • 3 comments

I am so sorry that I can't figure this out myself. No matter which smw rom I use (even if it is a verified clean ROMs) anytime I run the program, I just get the flowing errors. I am really sorry to bother with this, probably simple issue. I just feel stuck after trying everything I can think of. 2024-04-08T23:22:40.809797700-04:00 INFO smw_editor - Opening ROM from path defined in ROM_PATH 2024-04-08T23:22:40.814219-04:00 INFO smwe_rom - Reading ROM from file: C:\Users*****\source\repos\smw-editor\smwe-rom\roms\Super_Mario_World\Super_Mario_World.smc 2024-04-08T23:22:40.816262100-04:00 INFO smwe_rom - Parsing internal ROM header 2024-04-08T23:22:40.819434100-04:00 INFO smwe_rom::internal_header - Internal ROM header found at LoROM location: PC 0x7FC0 2024-04-08T23:22:40.819924700-04:00 INFO smwe_rom - Creating disassembly map 2024-04-08T23:22:40.822067300-04:00 WARN smwe_rom::disassembler - Wrong address of next target: SNES $7F8000 2024-04-08T23:22:40.822385900-04:00 WARN smwe_rom::disassembler - Wrong address of next target: SNES $7F8000 2024-04-08T23:22:40.822544600-04:00 WARN smwe_rom::disassembler - Wrong address of next target: SNES $7F8000 2024-04-08T23:22:40.822961500-04:00 WARN smwe_rom::disassembler - Wrong address of next target: SNES $7F8000 2024-04-08T23:22:40.823579300-04:00 WARN smwe_rom::disassembler - Wrong address of next target: SNES $7F8000 2024-04-08T23:22:40.826311100-04:00 WARN smwe_rom::disassembler - Wrong address of next target: SNES $7F8000 2024-04-08T23:22:40.828407500-04:00 WARN smwe_rom::disassembler - Wrong address of next target: SNES $7F8000 2024-04-08T23:22:40.829899900-04:00 WARN smwe_rom::disassembler - Wrong address of next target: SNES $7F8000 2024-04-08T23:22:40.831377800-04:00 WARN smwe_rom::disassembler - Wrong address of next target: SNES $7F8000 2024-04-08T23:22:40.831535800-04:00 WARN smwe_rom::disassembler - Wrong address of next target: SNES $7F8000 2024-04-08T23:22:40.837583300-04:00 WARN smwe_rom::disassembler - Wrong address of next target: SNES $7F812E 2024-04-08T23:22:40.872398100-04:00 WARN smwe_rom::disassembler - Wrong address of next target: SNES $7F8000 2024-04-08T23:22:40.885176900-04:00 ERROR smwe_rom::disassembler::processor - Stack underflow at 0x1589A [-> SNES $2D89A] (DisplayInstruction(Instruction { offset: AddrPc(0x1589A) [-> SNES $2D89A], opcode: Opcode { mnemonic: PLP, mode: Implied }, m_flag: true, x_flag: true, operands: [0, 0, 0, 0] })) 2024-04-08T23:22:40.904281400-04:00 INFO smwe_rom - Parsing level data 2024-04-08T23:22:41.176442500-04:00 INFO smwe_rom - Parsing secondary entrances 2024-04-08T23:22:41.177779900-04:00 INFO smwe_rom - Parsing GFX files 2024-04-08T23:22:41.206679700-04:00 INFO smwe_rom - Parsing Map16 tilesets 2024-04-08T23:22:41.210592400-04:00 INFO smwe_rom - Success parsing ROM error: process didn't exit successfully: target\release\smw-editor.exe (exit code: 0xc0000374, STATUS_HEAP_CORRUPTION)

Also this is a very cool project. I don't have very much experience with anything like this, but if there are any simple boring tasks, I would love to help out with a project like this! Thanks!

auggiethecat avatar Apr 09 '24 03:04 auggiethecat

Hey, have you tried pulling the level branch?

Adanos020 avatar Apr 09 '24 07:04 Adanos020

Well I did, but it just threw a similar error:

warning: smwe-rom (lib) generated 1 warning Finished dev [unoptimized + debuginfo] target(s) in 0.50s Running target\debug\smw-editor.exe --level 2024-04-09T08:09:30.489620700-04:00 INFO smw_editor - Opening ROM from path defined in ROM_PATH 2024-04-09T08:09:30.491385900-04:00 INFO smwe_rom - Reading ROM from file: C:\Users*****\source\repos\smw-editor-level\crates\smwe-rom\roms\Super Mario World (U) [!].smc 2024-04-09T08:09:30.494115900-04:00 INFO smwe_rom - Parsing internal ROM header 2024-04-09T08:09:30.498079300-04:00 INFO smwe_rom::internal_header - Internal ROM header found at LoROM location: PC 0x7FC0 2024-04-09T08:09:30.499371500-04:00 INFO smwe_rom - Creating disassembly map 2024-04-09T08:09:30.503800300-04:00 WARN smwe_rom::disassembler - Wrong address of next target: SNES $7F8000 2024-04-09T08:09:30.504370900-04:00 WARN smwe_rom::disassembler - Wrong address of next target: SNES $7F8000 2024-04-09T08:09:30.507382-04:00 WARN smwe_rom::disassembler - Wrong address of next target: SNES $7F8000 2024-04-09T08:09:30.509058400-04:00 WARN smwe_rom::disassembler - Wrong address of next target: SNES $7F8000 2024-04-09T08:09:30.511515400-04:00 WARN smwe_rom::disassembler - Wrong address of next target: SNES $7F8000 2024-04-09T08:09:30.511944200-04:00 WARN smwe_rom::disassembler - Wrong address of next target: SNES $7F8000 2024-04-09T08:09:30.515722400-04:00 WARN smwe_rom::disassembler - Wrong address of next target: SNES $7F8000 2024-04-09T08:09:30.520387700-04:00 WARN smwe_rom::disassembler - Wrong address of next target: SNES $7F8000 2024-04-09T08:09:30.531543500-04:00 WARN smwe_rom::disassembler - Wrong address of next target: SNES $7F8000 2024-04-09T08:09:30.531965900-04:00 WARN smwe_rom::disassembler - Wrong address of next target: SNES $7F8000 2024-04-09T08:09:30.571286800-04:00 WARN smwe_rom::disassembler - Wrong address of next target: SNES $7F812E 2024-04-09T08:09:30.716324900-04:00 WARN smwe_rom::disassembler - Wrong address of next target: SNES $7F8000 2024-04-09T08:09:30.785401500-04:00 ERROR smwe_rom::disassembler::processor - Stack underflow at 0x1589A [-> SNES $2D89A] (DisplayInstruction(Instruction { offset: AddrPc(0x1589A) [-> SNES $2D89A], opcode: Opcode { mnemonic: PLP, mode: Implied }, m_flag: true, x_flag: true, operands: [0, 0, 0, 0] })) 2024-04-09T08:09:30.856439100-04:00 INFO smwe_rom - Parsing level data 2024-04-09T08:09:34.701287700-04:00 INFO smwe_rom - Parsing secondary entrances 2024-04-09T08:09:34.725883400-04:00 INFO smwe_rom - Parsing GFX files 2024-04-09T08:09:34.907976600-04:00 INFO smwe_rom - Parsing Map16 tilesets 2024-04-09T08:09:34.984296-04:00 INFO smwe_rom - Success parsing ROM error: process didn't exit successfully: target\debug\smw-editor.exe --level (exit code: 0xc0000374, STATUS_HEAP_CORRUPTION)

Even after my 4th SMW rom. Thanks!

auggiethecat avatar Apr 09 '24 12:04 auggiethecat

I've upgraded all dependencies on branch level and managed to run the application with no problems. Try it now, making sure you use an up-to-date compiler, and if it keeps crashing with the same error, then I've no idea what's going on. Doesn't seem like anything caused by our code.

Adanos020 avatar Apr 09 '24 13:04 Adanos020