NEW PREFIX /A2OSX.BUILD AUTO 4,1 *-------------------------------------- * K.PFTAdd * In : * Out : *-------------------------------------- K.PFTAdd clc rts *-------------------------------------- * K.PFTRemove * In : * Out : *-------------------------------------- K.PFTRemove clc rts *-------------------------------------- * PFT.CheckPath___ * In : * PULLW/Y,A = PATH (C-String) * Out : *-------------------------------------- PFT.CheckPathSTK lda (pStack) read PTR.LO on top of stack pha ldy #1 lda (pStack),y read PTR.HI on top of stack ply PFT.CheckPathYA >STYA ZPPtr1 >LDYAI Flt.Table >STYA ZPPtr2 .1 lda (ZPPtr2) Get Filter char.... beq .9 End Of Table, Exit ldy #0 .2 lda (ZPPtr2),y beq .3 end of filter string.... lda (ZPPtr1),y beq .8 cmp (ZPPtr2),y bne .8 iny bne .2 .3 lda (ZPPtr1),y cmp #'/' bne .8 ldy #S.PFT.HANDLER lda (ZPPtr2),y get hLib jsr K.GetMemPtr >STYA .7+1 pla discard JSR return @ pla >LDYA ZPPtr1 restore passed params .7 jmp $ffff X unmodified .8 lda ZPPtr2 clc adc (ZPPtr2) Add STR len adc #S.PFT sta ZPPtr2 bcc .1 .9 >LDYA ZPPtr1 restore passed params rts *-------------------------------------- * PFT.Check___ * In : * PULLB/A = hFILE/hDIR * Out : *-------------------------------------- PFT.CheckNodeSTK lda (pStack) read hFILE on top of stack PFT.CheckNodeA sta .9+1 save hFILE jsr K.GetMemPtr X = unmodified >STYA ZPPtr1 ldy #S.FD.HANDLER lda (ZPPtr1),y beq .9 Handler is 0, back to kernel.... jsr K.GetMemPtr >STYA .1+1 pla discard JSR return @ pla lda .9+1 restore passed hFILE .1 jmp $ffff .9 lda #$ff Self Modified rts *-------------------------------------- MAN SAVE /A2OSX.SRC/SYS/KERNEL.S.PFT LOAD /A2OSX.SRC/SYS/KERNEL.S ASM