]> git.sur5r.net Git - cc65/commitdiff
joy_unload didn't return a valid error code.
authorcuz <cuz@b7a2c559-68d2-44c3-8de9-860c34a00d81>
Sun, 4 Jun 2006 10:33:51 +0000 (10:33 +0000)
committercuz <cuz@b7a2c559-68d2-44c3-8de9-860c34a00d81>
Sun, 4 Jun 2006 10:33:51 +0000 (10:33 +0000)
git-svn-id: svn://svn.cc65.org/cc65/trunk@3755 b7a2c559-68d2-44c3-8de9-860c34a00d81

libsrc/joystick/joy_unload.s

index 021cf5c1e7a6eac36d9ad6e2a9fb30653297190d..f9aa701ee3045c7aec5302025d4c23fe345b02a5 100644 (file)
@@ -5,31 +5,34 @@
 ; /* Unload the currently loaded driver. */
 
 
-        .import         joy_clear_ptr
-                                   
         .include        "joy-kernel.inc"
         .include        "joy-error.inc"
         .include        "modload.inc"
 
+        .import         joy_clear_ptr
+        .import         return0
+
+
+
 _joy_unload:
        lda     _joy_drv
+        pha                             ; Save pointer to driver
        ora     _joy_drv+1
                beq     no_driver               ; No driver
-
-       lda     _joy_drv
-       pha
        lda     _joy_drv+1
-       pha                             ; Save pointer to driver
+       pha
 
                jsr     _joy_uninstall          ; Uninstall the driver
 
        pla
        tax
        pla                             ; Get pointer to driver
-        jmp    _mod_free               ; Free the driver
+        jsr     _mod_free               ; Free the driver
+        jmp     return0                 ; Return JOY_ERR_OK
 
 no_driver:
        tax                             ; X = 0
+        pla                             ; Remove pushed junk
        lda     #JOY_ERR_NO_DRIVER
        rts