Donkey Kong dies with invalid opcode
In addition to flickering, it dies like so:
FATAL ERROR during execution: Invalid opcode FC at C813
It also crashed the emulator once like so:
WARNING: no device present at FF5B (emulator bug? incompatible GB?) WARNING: no device present at FF5A (emulator bug? incompatible GB?) WARNING: [ 3] attempted doofus write of 03 to non-existant device at FF5A (a real GB ignores this) WARNING: [ 3] attempted doofus write of 00 to non-existant device at FF5B (a real GB ignores this) WARNING: no device present at FF5B (emulator bug? incompatible GB?) WARNING: no device present at FF5A (emulator bug? incompatible GB?) WARNING: [FFFF] attempted doofus write of FF to non-existant device at FF5A (a real GB ignores this) WARNING: [FFFF] attempted doofus write of FF to non-existant device at FF5B (a real GB ignores this) WARNING: [ 271] attempted doofus write of 40 to non-existant device at FF58 (a real GB ignores this) WARNING: [ 271] attempted doofus write of 4C to non-existant device at FF59 (a real GB ignores this) WARNING: [ 272] attempted doofus write of C9 to non-existant device at FF56 (a real GB ignores this) WARNING: [ 272] attempted doofus write of FF to non-existant device at FF57 (a real GB ignores this) WARNING: [ 273] attempted doofus write of 4A to non-existant device at FF54 (a real GB ignores this) WARNING: [ 273] attempted doofus write of C7 to non-existant device at FF55 (a real GB ignores this) WARNING: [ 274] attempted doofus write of B4 to non-existant device at FF52 (a real GB ignores this) WARNING: [ 274] attempted doofus write of 66 to non-existant device at FF53 (a real GB ignores this) WARNING: [ 284] attempted doofus write of 84 to non-existant device at FF50 (a real GB ignores this) WARNING: [ 284] attempted doofus write of 02 to non-existant device at FF51 (a real GB ignores this) WARNING: [C841] attempted doofus write of 41 to non-existant device at FF4E (a real GB ignores this) WARNING: no device present at FF4E (emulator bug? incompatible GB?) ASAN:SIGSEGV
==9321==ERROR: AddressSanitizer: SEGV on unknown address 0x7f22f90bdb63 (pc 0x000000417099 sp 0x7fff9ac76cd0 bp 0x000000008202 T0) #0 0x417098 in vram_write /home/elizabeth/projects/dev/supergameherm/src/lcdc.c:533 #1 (closed) 0x417c3f in mem_write8 /home/elizabeth/projects/dev/supergameherm/src/memory.c:388 #2 (closed) 0x417ea8 in mem_write16 /home/elizabeth/projects/dev/supergameherm/src/memory.c:445 #3 (closed) 0x40c85a in ld_d16_sp /home/elizabeth/projects/dev/supergameherm/src/instr_ld.c:42 #4 (closed) 0x4146a8 in execute /home/elizabeth/projects/dev/supergameherm/src/ctl_unit.c:323 #5 (closed) 0x404eb8 in step_emulator /home/elizabeth/projects/dev/supergameherm/src/sgherm.c:68 #6 (closed) 0x40419c in sdl2_event_loop /home/elizabeth/projects/dev/supergameherm/src/frontends/sdl2/event.c:21 #7 0x403a2a in main /home/elizabeth/projects/dev/supergameherm/src/frontends/sdl2/main.c:48 #8 0x7f22f75ccec4 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x21ec4) #9 0x403788 (/home/elizabeth/projects/dev/supergameherm/sgherm-sdl2+0x403788)
AddressSanitizer can not provide additional info. SUMMARY: AddressSanitizer: SEGV /home/elizabeth/projects/dev/supergameherm/src/lcdc.c:533 vram_write ==9321==ABORTING