2017-12-22 22:24:30 +01:00
|
|
|
|
NEW
|
2017-03-29 17:48:15 +02:00
|
|
|
|
PREFIX /A2OSX.BUILD
|
2017-12-22 22:24:30 +01:00
|
|
|
|
AUTO 4,1
|
2016-08-24 17:42:33 +02:00
|
|
|
|
*--------------------------------------
|
2016-09-26 18:00:52 +02:00
|
|
|
|
* K.PFTAdd
|
|
|
|
|
* In :
|
|
|
|
|
* Out :
|
|
|
|
|
*--------------------------------------
|
|
|
|
|
K.PFTAdd
|
|
|
|
|
clc
|
|
|
|
|
rts
|
|
|
|
|
*--------------------------------------
|
|
|
|
|
* K.PFTRemove
|
|
|
|
|
* In :
|
|
|
|
|
* Out :
|
|
|
|
|
*--------------------------------------
|
|
|
|
|
K.PFTRemove
|
|
|
|
|
clc
|
|
|
|
|
rts
|
|
|
|
|
*--------------------------------------
|
2018-09-05 17:22:46 +02:00
|
|
|
|
* PFT.CheckPathYA
|
2016-09-26 18:00:52 +02:00
|
|
|
|
* In :
|
2018-09-05 17:22:46 +02:00
|
|
|
|
* Y,A = PATH (C-String)
|
2016-09-26 18:00:52 +02:00
|
|
|
|
* Out :
|
2016-08-24 17:42:33 +02:00
|
|
|
|
*--------------------------------------
|
2018-09-05 17:22:46 +02:00
|
|
|
|
PFT.CheckPathYA >STYA ZPPtr1
|
2016-08-24 17:42:33 +02:00
|
|
|
|
|
2017-10-27 08:36:46 +02:00
|
|
|
|
>LDYAI Flt.Table
|
2017-01-12 18:43:45 +01:00
|
|
|
|
>STYA ZPPtr2
|
2016-08-24 17:42:33 +02:00
|
|
|
|
|
2017-08-24 17:29:22 +02:00
|
|
|
|
.1 lda (ZPPtr2) Get Filter char....
|
2016-08-24 17:42:33 +02:00
|
|
|
|
beq .9 End Of Table, Exit
|
|
|
|
|
|
2017-08-24 17:29:22 +02:00
|
|
|
|
ldy #0
|
|
|
|
|
|
|
|
|
|
.2 lda (ZPPtr2),y
|
|
|
|
|
beq .3 end of filter string....
|
|
|
|
|
|
|
|
|
|
lda (ZPPtr1),y
|
|
|
|
|
beq .8
|
|
|
|
|
cmp (ZPPtr2),y
|
2016-08-24 17:42:33 +02:00
|
|
|
|
bne .8
|
2017-08-24 17:29:22 +02:00
|
|
|
|
iny
|
2016-08-24 17:42:33 +02:00
|
|
|
|
bne .2
|
|
|
|
|
|
2017-08-24 17:29:22 +02:00
|
|
|
|
.3 lda (ZPPtr1),y
|
|
|
|
|
cmp #'/'
|
|
|
|
|
bne .8
|
|
|
|
|
|
2016-08-28 22:48:01 +02:00
|
|
|
|
ldy #S.PFT.HANDLER
|
2017-08-24 17:29:22 +02:00
|
|
|
|
lda (ZPPtr2),y get hLib
|
2018-06-21 17:12:10 +02:00
|
|
|
|
jsr K.GetMemPtr
|
2017-08-24 17:29:22 +02:00
|
|
|
|
>STYA .7+1
|
2016-08-24 17:42:33 +02:00
|
|
|
|
|
|
|
|
|
pla discard JSR return @
|
|
|
|
|
pla
|
|
|
|
|
|
2017-08-24 17:29:22 +02:00
|
|
|
|
>LDYA ZPPtr1 restore passed params
|
2017-10-10 17:40:23 +02:00
|
|
|
|
.7 jmp $ffff X unmodified
|
2016-08-24 17:42:33 +02:00
|
|
|
|
|
|
|
|
|
|
2017-01-12 18:43:45 +01:00
|
|
|
|
.8 lda ZPPtr2
|
2016-08-24 17:42:33 +02:00
|
|
|
|
clc
|
2017-10-10 17:40:23 +02:00
|
|
|
|
adc (ZPPtr2) Add STR len
|
2016-08-26 17:10:38 +02:00
|
|
|
|
adc #S.PFT
|
2017-01-12 18:43:45 +01:00
|
|
|
|
sta ZPPtr2
|
2016-08-26 17:10:38 +02:00
|
|
|
|
bcc .1
|
2016-08-24 17:42:33 +02:00
|
|
|
|
|
2017-10-10 17:40:23 +02:00
|
|
|
|
.9 >LDYA ZPPtr1 restore passed params
|
2016-08-24 17:42:33 +02:00
|
|
|
|
rts
|
|
|
|
|
*--------------------------------------
|
2018-09-05 17:22:46 +02:00
|
|
|
|
* PFT.CheckNodeA
|
2016-09-26 18:00:52 +02:00
|
|
|
|
* In :
|
|
|
|
|
* PULLB/A = hFILE/hDIR
|
|
|
|
|
* Out :
|
2016-08-24 17:42:33 +02:00
|
|
|
|
*--------------------------------------
|
2017-10-10 17:40:23 +02:00
|
|
|
|
PFT.CheckNodeA sta .9+1 save hFILE
|
|
|
|
|
|
2018-06-21 17:12:10 +02:00
|
|
|
|
jsr K.GetMemPtr X = unmodified
|
2017-01-12 18:43:45 +01:00
|
|
|
|
>STYA ZPPtr1
|
2018-07-20 13:51:08 +02:00
|
|
|
|
|
|
|
|
|
ldy #S.FD.HANDLER
|
|
|
|
|
lda (ZPPtr1),y
|
2017-10-10 17:40:23 +02:00
|
|
|
|
beq .9 Handler is 0, back to kernel....
|
2016-08-29 17:12:04 +02:00
|
|
|
|
|
2018-06-21 17:12:10 +02:00
|
|
|
|
jsr K.GetMemPtr
|
2016-08-29 17:12:04 +02:00
|
|
|
|
>STYA .1+1
|
|
|
|
|
|
|
|
|
|
pla discard JSR return @
|
|
|
|
|
pla
|
2016-08-24 17:42:33 +02:00
|
|
|
|
|
2017-10-10 17:40:23 +02:00
|
|
|
|
lda .9+1 restore passed hFILE
|
2016-08-29 17:12:04 +02:00
|
|
|
|
.1 jmp $ffff
|
2016-08-24 17:42:33 +02:00
|
|
|
|
|
2016-08-29 17:12:04 +02:00
|
|
|
|
|
2017-10-10 17:40:23 +02:00
|
|
|
|
.9 lda #$ff Self Modified
|
2016-08-24 17:42:33 +02:00
|
|
|
|
rts
|
|
|
|
|
*--------------------------------------
|
|
|
|
|
MAN
|
2017-03-29 17:48:15 +02:00
|
|
|
|
SAVE /A2OSX.SRC/SYS/KERNEL.S.PFT
|
|
|
|
|
LOAD /A2OSX.SRC/SYS/KERNEL.S
|
2016-08-24 17:42:33 +02:00
|
|
|
|
ASM
|