]> git.sur5r.net Git - cc65/blob - libsrc/em/em_unload.s
New extended memory API
[cc65] / libsrc / em / em_unload.s
1 ;
2 ; Ullrich von Bassewitz, 2002-11-29
3 ;
4 ; unsigned char __fastcall__ em_unload (void);
5 ; /* Unload the currently loaded driver. */
6
7
8         .include        "em-kernel.inc"
9         .include        "em-error.inc"
10         .include        "modload.inc"
11
12         .import         return0
13
14
15 _em_unload:
16         lda     _em_drv
17         ora     _em_drv+1
18         beq     no_driver               ; No driver
19
20         jsr     _em_deinstall           ; Deinstall the driver
21
22         lda     _em_drv
23         ldx     _em_drv+1
24         jsr     _mod_free               ; Free the driver
25
26         jmp     return0
27
28 no_driver:
29         tax                             ; X = 0
30         lda     #EM_ERR_NO_DRIVER
31         rts
32