From 0b17f91797af20905e4619b0c311c6f3bfd39f31 Mon Sep 17 00:00:00 2001 From: cuz Date: Sun, 4 Jun 2006 10:31:33 +0000 Subject: [PATCH] ser_unload didn't return a valid error code. git-svn-id: svn://svn.cc65.org/cc65/trunk@3754 b7a2c559-68d2-44c3-8de9-860c34a00d81 --- libsrc/serial/ser_unload.s | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/libsrc/serial/ser_unload.s b/libsrc/serial/ser_unload.s index 70e8abbd5..325c3d667 100644 --- a/libsrc/serial/ser_unload.s +++ b/libsrc/serial/ser_unload.s @@ -5,32 +5,34 @@ ; /* Unload the currently loaded driver. */ - .import ser_clear_ptr - .include "ser-kernel.inc" .include "ser-error.inc" .include "modload.inc" + .import ser_clear_ptr + .import return0 + + _ser_unload: lda _ser_drv + pha ; Save pointer to driver ora _ser_drv+1 beq no_driver ; No driver - - lda _ser_drv - pha lda _ser_drv+1 - pha ; Save pointer to driver + pha + + jsr _ser_uninstall ; Uninstall the driver - jsr _ser_uninstall ; Deinstall the driver - pla - tax + tax pla ; Get pointer to driver - jmp _mod_free ; Free the driver + jsr _mod_free ; Free the driver + jmp return0 ; Return SER_ERR_OK no_driver: tax ; X = 0 + pla ; Remove pushed junk lda #