2002-12-20 20:59:11 +00:00
|
|
|
;
|
|
|
|
; Ullrich von Bassewitz, 2002-11-29
|
|
|
|
;
|
|
|
|
; unsigned char __fastcall__ joy_unload (void);
|
|
|
|
; /* Unload the currently loaded driver. */
|
|
|
|
|
|
|
|
|
|
|
|
.include "joy-kernel.inc"
|
|
|
|
.include "joy-error.inc"
|
|
|
|
.include "modload.inc"
|
|
|
|
|
2006-06-04 10:33:51 +00:00
|
|
|
.import joy_clear_ptr
|
|
|
|
.import return0
|
|
|
|
|
|
|
|
|
|
|
|
|
2002-12-20 20:59:11 +00:00
|
|
|
_joy_unload:
|
|
|
|
lda _joy_drv
|
2006-06-04 10:33:51 +00:00
|
|
|
pha ; Save pointer to driver
|
2002-12-20 20:59:11 +00:00
|
|
|
ora _joy_drv+1
|
2006-06-04 10:14:30 +00:00
|
|
|
beq no_driver ; No driver
|
|
|
|
lda _joy_drv+1
|
2006-06-04 10:33:51 +00:00
|
|
|
pha
|
2002-12-20 20:59:11 +00:00
|
|
|
|
2006-06-04 10:14:30 +00:00
|
|
|
jsr _joy_uninstall ; Uninstall the driver
|
2002-12-20 20:59:11 +00:00
|
|
|
|
2006-06-04 10:14:30 +00:00
|
|
|
pla
|
|
|
|
tax
|
|
|
|
pla ; Get pointer to driver
|
2006-06-04 10:33:51 +00:00
|
|
|
jsr _mod_free ; Free the driver
|
|
|
|
jmp return0 ; Return JOY_ERR_OK
|
2002-12-20 20:59:11 +00:00
|
|
|
|
|
|
|
no_driver:
|
2006-06-04 10:14:30 +00:00
|
|
|
tax ; X = 0
|
2006-06-04 10:33:51 +00:00
|
|
|
pla ; Remove pushed junk
|
2002-12-20 20:59:11 +00:00
|
|
|
lda #JOY_ERR_NO_DRIVER
|
|
|
|
rts
|
|
|
|
|
2003-02-10 22:11:12 +00:00
|
|
|
|