diff runtime.S @ 198:209a37eed3e7

Add support for breaking into the debugger while game is running
author Mike Pavone <pavone@retrodev.com>
date Sun, 20 Jan 2013 19:10:29 -0800
parents 811163790e6c
children c82f65a87a53
line wrap: on
line diff
--- a/runtime.S	Thu Jan 17 20:00:07 2013 -0800
+++ b/runtime.S	Sun Jan 20 19:10:29 2013 -0800
@@ -7,6 +7,7 @@
 do_sync:
 	call m68k_save_context
 	mov %rsi, %rdi
+	xor %esi, %esi
 	call sync_components
 	mov %rax, %rsi
 	call m68k_load_context
@@ -51,7 +52,14 @@
 	ret
 skip_int:
 	cmp 84(%rsi), %eax
-	jnb do_sync
+	jb skip_sync_int
+	call m68k_save_context
+	mov %rsi, %rdi
+	mov %ecx, %esi
+	call sync_components
+	mov %rax, %rsi
+	call m68k_load_context
+skip_sync_int:
 	ret
 	
 	.global m68k_trap
@@ -554,6 +562,7 @@
 	call m68k_save_context
 	push %rcx
 	mov %rsi, %rdi
+	xor %esi, %esi
 	call sync_components
 	pop %rsi
 	push %rax