mirror of
https://github.com/cc65/cc65.git
synced 2024-12-23 19:29:37 +00:00
31 lines
750 B
ArmAsm
31 lines
750 B
ArmAsm
;
|
|
; Ullrich von Bassewitz, 2002-11-29
|
|
;
|
|
; unsigned char em_unload (void);
|
|
; /* Unload the currently loaded driver. */
|
|
|
|
|
|
.import em_clear_ptr
|
|
|
|
.include "em-kernel.inc"
|
|
.include "em-error.inc"
|
|
.include "modload.inc"
|
|
|
|
_em_unload:
|
|
lda _em_drv
|
|
ora _em_drv+1
|
|
beq no_driver ; No driver
|
|
|
|
jsr emd_uninstall ; Deinstall the driver
|
|
|
|
lda _em_drv
|
|
ldx _em_drv+1
|
|
jsr _mod_free ; Free the driver
|
|
|
|
jmp em_clear_ptr ; Clear the driver pointer, return zero
|
|
|
|
no_driver:
|
|
tax ; X = 0
|
|
lda #EM_ERR_NO_DRIVER
|
|
rts
|