Unloading the joystick driver didn't reset the interrupts, so the program may
crash later. git-svn-id: svn://svn.cc65.org/cc65/trunk@3751 b7a2c559-68d2-44c3-8de9-860c34a00d81
This commit is contained in:
@@ -14,18 +14,22 @@
|
|||||||
_joy_unload:
|
_joy_unload:
|
||||||
lda _joy_drv
|
lda _joy_drv
|
||||||
ora _joy_drv+1
|
ora _joy_drv+1
|
||||||
beq no_driver ; No driver
|
beq no_driver ; No driver
|
||||||
|
|
||||||
jsr joy_uninstall ; Uninstall the driver
|
lda _joy_drv
|
||||||
|
pha
|
||||||
|
lda _joy_drv+1
|
||||||
|
pha ; Save pointer to driver
|
||||||
|
|
||||||
lda _joy_drv
|
jsr _joy_uninstall ; Uninstall the driver
|
||||||
ldx _joy_drv+1
|
|
||||||
jsr _mod_free ; Free the driver
|
|
||||||
|
|
||||||
jmp joy_clear_ptr ; Clear driver pointer, return zero
|
pla
|
||||||
|
tax
|
||||||
|
pla ; Get pointer to driver
|
||||||
|
jmp _mod_free ; Free the driver
|
||||||
|
|
||||||
no_driver:
|
no_driver:
|
||||||
tax ; X = 0
|
tax ; X = 0
|
||||||
lda #JOY_ERR_NO_DRIVER
|
lda #JOY_ERR_NO_DRIVER
|
||||||
rts
|
rts
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user