]> git.sur5r.net Git - cc65/blobdiff - libsrc/mouse/mouse_unload.s
Added library reference address to lightpen driver header.
[cc65] / libsrc / mouse / mouse_unload.s
index d704647321db38f8cc430f5d8303003553630edd..8c901848465a8daff6f74c310dbe0f8ed3f92555 100644 (file)
@@ -1,35 +1,35 @@
 ;
 ; Ullrich von Bassewitz, 2004-03-21
 ;
-; unsigned char __fastcall__ mouse_unload (void);
+; unsigned char mouse_unload (void);
 ; /* Uninstall, then unload the currently loaded driver. */
 
 
-        .import         mouse_clear_ptr
-
         .include        "mouse-kernel.inc"
         .include        "modload.inc"
 
+        .import         return0
 
-_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
+_mouse_unload:
+        lda     _mouse_drv
+        pha                             ; Save pointer to driver
+        ora     _mouse_drv+1
+        beq     no_driver               ; No driver
+        lda     _mouse_drv+1
+        pha
 
-       pla
-       tax
-       pla                             ; Get pointer to driver
-        jmp    _mod_free               ; Free the driver
+        jsr     _mouse_uninstall        ; Uninstall the driver
 
-no_driver:
-               tax                             ; X = 0
-       lda     #<MOUSE_ERR_NO_DRIVER
-       rts
+        pla
+        tax
+        pla                             ; Get pointer to driver
+        jsr     _mod_free               ; Free the driver
+        jmp     return0                 ; Return MOUSE_ERR_OK
 
+no_driver:
+        tax                             ; X = 0
+        pla                             ; Remove pushed junk
+        lda     #<MOUSE_ERR_NO_DRIVER
+        rts