; ; File generated by cc65 v 2.19 - Git ab8bb268 ; .fopt compiler,"cc65 v 2.19 - Git ab8bb268" .setcpu "6502" .smart on .autoimport on .case on .debuginfo off .importzp sp, sreg, regsave, regbank .importzp tmp1, tmp2, tmp3, tmp4, ptr1, ptr2, ptr3, ptr4 .macpack longbranch .import _open .import _close .import __errno .export _seekdir .import __dirread ; --------------------------------------------------------------- ; void __near__ __fastcall__ seekdir (register struct DIR *dir, long offs) ; --------------------------------------------------------------- .segment "CODE" .proc _seekdir: near .segment "CODE" jsr pusheax ldy #$04 ldx #$04 jsr regswap2 ldy #$83 jsr subysp ldy #$86 jsr ldeaxysp cmp #$01 txa sbc #$10 lda sreg sbc #$00 lda sreg+1 sbc #$00 bcc L0002 ldx #$00 lda #$07 sta __errno stx __errno+1 jmp L0005 L0002: ldy #$01 lda (regbank+4),y tax dey lda (regbank+4),y jsr _close lda regbank+4 ldx regbank+4+1 jsr pushax lda regbank+4 ldx regbank+4+1 jsr incax4 jsr pushax lda #$01 jsr pusha0 ldy #$04 jsr _open ldy #$00 jsr staxspidx iny lda (regbank+4),y tax cpx #$80 bcs L0005 lda regbank+4 ldx regbank+4+1 jsr pushax ldy #$86 jsr ldaxysp ldy #$02 jsr staxspidx ldy #$81 jsr staxysp jmp L0009 L0004: ldy #$82 jsr ldaxysp cmp #$81 txa sbc #$00 bcc L0007 lda #$80 tay sta (sp),y ldx #$00 iny jsr subeqysp jmp L0008 L0007: ldy #$81 lda (sp),y dey sta (sp),y ldx #$00 txa iny jsr staxysp L0008: lda regbank+4 ldx regbank+4+1 jsr pushax lda #$02 jsr leaa0sp jsr pushax ldy #$84 lda (sp),y jsr __dirread tax beq L0005 L0009: ldy #$82 lda (sp),y dey ora (sp),y bne L0004 L0005: ldy #$87 lda (sp),y sta regbank+4 iny lda (sp),y sta regbank+5 iny jmp addysp .endproc