1
0
mirror of https://github.com/cc65/cc65.git synced 2024-11-19 06:31:31 +00:00

Merge pull request #16 from groessler/something_to_pull

move findfreeiocb function into its own object file
This commit is contained in:
Oliver Schmidt 2013-06-24 23:45:47 -07:00
commit a8d66d0ef4
3 changed files with 30 additions and 26 deletions

View File

@ -11,7 +11,6 @@
.import fdt_to_fdi
.export clriocb
.export fdtoiocb_down
.export findfreeiocb
.export fddecusage
.export newfd
@ -87,31 +86,6 @@ loop: sta ICHID,x
.endproc
; find a free iocb
; no entry parameters
; return ZF = 0/1 for not found/found
; index in X if found
; all registers destroyed
.proc findfreeiocb
ldx #0
ldy #$FF
loop: tya
cmp ICHID,x
beq found
txa
clc
adc #$10
tax
cmp #$80
bcc loop
inx ; return ZF cleared
found: rts
.endproc ; findfreeiocb
; decrements usage counter for fd
; if 0 reached, it's marked as unused
; get fd index in tmp2

View File

@ -0,0 +1,23 @@
; find a free iocb
; no entry parameters
; return ZF = 0/1 for not found/found
; index in X if found
; all registers destroyed
.proc findfreeiocb
ldx #0
ldy #$FF
loop: tya
cmp ICHID,x
beq found
txa
clc
adc #$10
tax
cmp #$80
bcc loop
inx ; return ZF cleared
found: rts
.endproc ; findfreeiocb

View File

@ -0,0 +1,7 @@
;
; Christian Groessler, June-2013
;
.include "atari.inc"
.export findfreeiocb
.include "findfreeiocb.inc"