comparison zruntime.S @ 375:134ffb72d7a1

Clear IFF1 and IFF2 when an interrupt is taken on the Z80
author Mike Pavone <pavone@retrodev.com>
date Sun, 02 Jun 2013 21:38:18 -0700
parents fa7ea48be9a9
children 561fe3ea3fc8
comparison
equal deleted inserted replaced
374:d42a8a3e4894 375:134ffb72d7a1
36 .global z80_handle_cycle_limit_int 36 .global z80_handle_cycle_limit_int
37 z80_handle_cycle_limit_int: 37 z80_handle_cycle_limit_int:
38 cmp 116(%rsi), %ebp 38 cmp 116(%rsi), %ebp
39 jb zskip_int 39 jb zskip_int
40 mov 112(%rsi), %ebp /* set cycle limit to sync cycle */ 40 mov 112(%rsi), %ebp /* set cycle limit to sync cycle */
41 /* not sure this is really necessary now that IFF1 and IFF2 are geting cleared */
41 movl $0xFFFFFFFF, 116(%rsi) /* make sure the interrupt doesn't fire more than once */ 42 movl $0xFFFFFFFF, 116(%rsi) /* make sure the interrupt doesn't fire more than once */
43 /* disable interrupts */
44 movb $0, 96(%rsi)
45 movb $0, 97(%rsi)
42 add $7, %ebp 46 add $7, %ebp
43 sub $2, %r9w 47 sub $2, %r9w
44 mov %r9w, %r14w 48 mov %r9w, %r14w
45 call z_inccycles 49 call z_inccycles
46 push %r13 50 push %r13