; ; File generated by cc65 v 2.19 - Git ab8bb268 ; .fopt compiler,"cc65 v 2.19 - Git ab8bb268" .setcpu "65C02" .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 _read .export _readdir ; --------------------------------------------------------------- ; struct dirent *__near__ __fastcall__ readdir (register struct DIR *dir) ; --------------------------------------------------------------- .segment "CODE" .proc _readdir: near .segment "CODE" jsr pushax ldy #$00 ldx #$04 jsr regswap2 lda regbank+2 ldx regbank+3 jsr pushax L0002: ldy #$04 lda (regbank+4),y sta ptr1 dey lda (regbank+4),y cmp ptr1 bne L0005 ldy #$01 lda (regbank+4),y tax lda (regbank+4) jsr pushax lda regbank+4 ldx regbank+4+1 jsr incax5 jsr pushax ldx #$02 lda #$00 jsr _read cpx #$02 bne L000B cmp #$00 beq L000C L000B: ldx #$00 txa jmp L0001 L000C: ldy #$04 sta (regbank+4),y L0005: lda regbank+4 ldx regbank+4+1 ldy #$09 jsr incaxy jsr pushax ldy #$04 lda (regbank+4),y jsr pusha0 ldy #$02 lda (regbank+4),y jsr tosumula0 jsr tosaddax sta regbank+2 stx regbank+2+1 lda regbank+4+1 sta ptr1+1 lda regbank+4 sta ptr1 ldy #$04 lda #$01 clc adc (ptr1),y sta (ptr1),y lda (regbank+2) beq L0002 lda regbank+2 ldx regbank+2+1 ldy #$1A jsr incaxy jsr pushax lda regbank+2 ldx regbank+2+1 ldy #$18 jsr incaxy jsr ldeaxi ldy #$00 jsr steaxspidx lda #$00 ldy #$18 sta (regbank+2),y ldy #$10 lda (regbank+2),y ldy #$19 sta (regbank+2),y lda (regbank+2) ldx #$00 and #$0F ina bne L0008 inx L0008: clc adc regbank+2 sta ptr1 txa adc regbank+2+1 sta ptr1+1 lda #$00 sta (ptr1) lda regbank+2 ldx regbank+2+1 ina bne L0001 inx L0001: pha ldy #$00 L000A: lda (sp),y sta regbank+2,y iny cpy #$04 bne L000A pla jmp incsp4 .endproc