mirror of
https://github.com/cc65/cc65.git
synced 2024-10-31 04:04:49 +00:00
36 lines
678 B
ArmAsm
36 lines
678 B
ArmAsm
|
;
|
||
|
; Ullrich von Bassewitz, 2004-03-21
|
||
|
;
|
||
|
; unsigned char __fastcall__ mouse_unload (void);
|
||
|
; /* Uninstall, then unload the currently loaded driver. */
|
||
|
|
||
|
|
||
|
.import mouse_clear_ptr
|
||
|
|
||
|
.include "mouse-kernel.inc"
|
||
|
.include "modload.inc"
|
||
|
|
||
|
|
||
|
_mouse_unload:
|
||
|
lda _mouse_drv
|
||
|
ora _mouse_drv+1
|
||
|
beq no_driver ; No driver
|
||
|
|
||
|
lda _mouse_drv
|
||
|
pha
|
||
|
lda _mouse_drv+1
|
||
|
pha ; Save pointer to driver
|
||
|
|
||
|
jsr _mouse_uninstall ; Uninstall the driver
|
||
|
|
||
|
pla
|
||
|
tax
|
||
|
pla ; Get pointer to driver
|
||
|
jmp _mod_free ; Free the driver
|
||
|
|
||
|
no_driver:
|
||
|
tax ; X = 0
|
||
|
lda #<MOUSE_ERR_NO_DRIVER
|
||
|
rts
|
||
|
|