# HG changeset patch # User Mike Pavone # Date 1355897992 28800 # Node ID bc3bc7a60c4e9d21b2dba9ab4b9f43c94c4c53b0 # Parent a28b1dfe1af2d8d6c6937b1bfa404b6800d5fb46 Code in runtime for checking for VDP reads was using the wrong register. This is now fixed. diff -r a28b1dfe1af2 -r bc3bc7a60c4e runtime.S --- a/runtime.S Tue Dec 18 19:51:33 2012 -0800 +++ b/runtime.S Tue Dec 18 22:19:52 2012 -0800 @@ -17,6 +17,7 @@ ret do_vdp_port_read: + mov %ecx, %edi call m68k_save_context call vdp_port_read mov %rax, %rsi @@ -28,7 +29,7 @@ .asciz "Program tried to access illegal 68K address %X\n" .global m68k_write_word - .global vdp_psg_w + .global try_fifo_write m68k_write_word: and $0xFFFFFF, %rdi cmp $0x400000, %edi @@ -133,7 +134,7 @@ jle cart cmp $0xE00000, %ecx jge workram - cmp $0xC00000, %edi + cmp $0xC00000, %ecx jge vdp_psg xor %cx, %cx dec %cx @@ -143,9 +144,9 @@ mov (%r9, %rcx), %cx jmp inccycles vdp_psg: - test $0x2700E0, %edi + test $0x2700E0, %ecx jnz crash - and $0x1F, %edi + and $0x1F, %ecx jmp do_vdp_port_read cart: mov (%r8, %rcx), %cx