1
0
mirror of https://github.com/cc65/cc65.git synced 2024-06-07 07:29:33 +00:00

Honor the new MOUSE_FLAG_EARLY_IRQ and MOUSE_FLAG_LATE_IRQ flags also when

uninstalling the driver.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3761 b7a2c559-68d2-44c3-8de9-860c34a00d81
This commit is contained in:
cuz 2006-08-17 19:40:16 +00:00
parent 36bbea5375
commit d1a647b073

View File

@ -159,8 +159,20 @@ copycb: lda (sreg),y
; /* Uninstall the currently loaded driver. Returns an error code. */
_mouse_uninstall:
; Depending on the late/early IRQ flag, we will disable IRQs before or after
; calling the driver mouse_uninstall routine.
bit mouse_flags ; Test MOUSE_FLAG_LATE_IRQ
bpl @L1 ; Don't disable interrupts now
jsr uninstall_irq ; Disable driver interrupts
jsr mouse_uninstall ; Call driver routine
@L1: jsr mouse_uninstall ; Call driver routine
; We don't check the flag a second time here, since disabling IRQs twice,
; or disabling them if they weren't enabled will do no harm, and the missing
; check will save a few bytes.
jsr uninstall_irq ; Disable driver interrupts
_mouse_clear_ptr: ; External entry point
lda #0
@ -170,4 +182,4 @@ _mouse_clear_ptr: ; External entry point
tax
rts ; Return zero