Browse Source

fs: fix broken fopn on id > 0

pull/10/head
Virgil Dupras 5 years ago
parent
commit
2483ee699d
2 changed files with 10 additions and 1 deletions
  1. +1
    -0
      kernel/fs.asm
  2. +9
    -1
      kernel/fs_cmds.asm

+ 1
- 0
kernel/fs.asm View File

@@ -461,6 +461,7 @@ fsGetC:
; Write byte A in handle (IX) and advance the handle's position.
; Z is set on success, unset if handle is at the end of the file.
; TODO: detect end of block alloc
; TODO: grow file size if appropriate
fsPutC:
push hl
call fsPlaceH


+ 9
- 1
kernel/fs_cmds.asm View File

@@ -71,7 +71,15 @@ fopnCmd:
push de
ld a, (hl) ; file handle index
ld de, FS_HANDLES
call addDE ; DE now stores pointer to file handle
or a ; cp 0
jr z, .noInc ; DE already point to correct handle
ld b, a
.loop:
ld a, FS_HANDLE_SIZE
call addDE
djnz .loop
.noInc:
; DE now stores pointer to file handle
inc hl
call intoHL ; HL now holds the string we look for
call fsFindFN


Loading…
Cancel
Save