Skip to content

Commit 3091e67

Browse files
Fixed ti_Seek #23
1 parent 01b3ef8 commit 3091e67

File tree

3 files changed

+21
-24
lines changed

3 files changed

+21
-24
lines changed

CEdev/include/std/stdio.h

+4-4
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,10 @@
1414
#define BUFSIZ 128 /* buffer size */
1515
#define EOF (-1) /* end of file */
1616
#define L_tmpnam 12
17-
#define SEEK_CUR 0
18-
#define SEEK_END 1
19-
#define SEEK_SET 2
20-
#define SYS_OPEN 3 /* max open files */
17+
#define SEEK_CUR 1
18+
#define SEEK_END 2
19+
#define SEEK_SET 0
20+
#define SYS_OPEN 5 /* max open files */
2121
#define FOPEN_MAX SYS_OPEN
2222
#define TMP_MAX 50
2323

CEdev/lib/ce/fileioc.h

+3-3
Original file line numberDiff line numberDiff line change
@@ -151,9 +151,9 @@ int ti_GetC(const ti_var_t slot);
151151

152152
/**
153153
* Seeks to an offset from the origin:
154-
* SEEK_SET (2) - Seek from beginning of file
155-
* SEEK_END (1) - Seek from end of file
156-
* SEEK_CUR (0) - Seek from current offset in file
154+
* SEEK_SET (0) - Seek from beginning of file
155+
* SEEK_CUR (1) - Seek from current offset in file
156+
* SEEK_END (2) - Seek from end of file
157157
* slot:
158158
* varaible slot seeking in
159159
*/

CEdev/lib/src/libraries/fileio_src/v2/fileio_lib.asm

+14-17
Original file line numberDiff line numberDiff line change
@@ -507,41 +507,38 @@ _Seek:
507507
ld iy,0
508508
add iy,sp
509509
ld de,(iy+3)
510-
ld c,(ix+9)
510+
ld c,(iy+9)
511511
call _CheckIfSlotOpen \.r
512512
jp z,_ReturnNEG1L \.r
513513
ld a,(iy+6)
514514
or a,a
515-
jr z,SeekCur
515+
jr z,SeekSet
516516
dec a
517-
jr z,SeekEnd
517+
jr z,SeekCur
518518
dec a
519519
jp nz,_ReturnNEG1L \.r
520-
_SeekHandler_ASM:
520+
SeekEnd:
521+
push de
522+
call _GetSlotSize_ASM \.r
523+
SeekSet_ASM:
524+
pop hl
525+
add hl,bc
526+
ex de,hl
527+
SeekSet:
521528
call _GetSlotSize_ASM \.r
522529
push bc
523530
pop hl
524531
or a,a
525-
sbc hl,de
532+
sbc hl,de
526533
push de
527534
pop bc
528535
jp c,_ReturnNEG1L \.r
529536
jp _SetSlotOffset_ASM \.r
530537
SeekCur:
531538
push de
532539
call _GetSlotOffset_ASM \.r
533-
pop hl
534-
add hl,bc
535-
ex de,hl
536-
jr _SeekHandler_ASM
537-
SeekEnd:
538-
push de
539-
call _GetSlotSize_ASM \.r
540-
pop hl
541-
add hl,bc
542-
ex de,hl
543-
jr _SeekHandler_ASM
544-
540+
jr SeekSet_ASM
541+
545542
;-------------------------------------------------------------------------------
546543
_PutChar:
547544
; Performs an fputc on an AppVar

0 commit comments

Comments
 (0)