Mercurial > repos > blastem
changeset 57:bc3bc7a60c4e
Code in runtime for checking for VDP reads was using the wrong register. This is now fixed.
author | Mike Pavone <pavone@retrodev.com> |
---|---|
date | Tue, 18 Dec 2012 22:19:52 -0800 |
parents | a28b1dfe1af2 |
children | a6a19c45d358 |
files | runtime.S |
diffstat | 1 files changed, 5 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- 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