]> git.sur5r.net Git - cc65/blob - libsrc/common/_fdesc.s
Use macpack for debugging, cosmetic changes
[cc65] / libsrc / common / _fdesc.s
1 ;
2 ; Ullrich von Bassewitz, 17.06.1998
3 ;
4 ; int _fdesc (void);
5 ; /* Find a free descriptor slot */
6
7
8         .export         __fdesc
9         .import         return0, __filetab
10         .importzp       tmp1
11
12 __fdesc:
13         ldy     #0
14 L1:     lda     __filetab+1,y   ; load flags
15         beq     L2              ; jump if empty (== CLOSED)
16         iny
17         iny
18         cpy     #16             ; Done?
19         bne     L1
20
21 ; File table is full
22
23         jmp     return0
24
25 ; Free slot found
26
27 L2:     sty     tmp1            ; Offset
28         lda     #<__filetab
29         ldx     #>__filetab
30         clc
31         adc     tmp1
32         tay
33         txa
34         adc     #0
35         tax
36         tya
37         rts
38
39