@Don_Adan, post #240
@mailman, post #245
@tukinem, post #246
; A0 at even address tst.b (A0) beq.b quit cmp.l #"-lh0",2(A0) bne.b quit moveq #0,D7 move.b (A0),D7 lea 2(A0,D7.W),A3 ; pointer to file data, if no subdirectory move.b 7(A0),D1 ror.l #8, D1 ;obrot w prawo o 8 bitow, czyli o bajt move.b 8(A0),D1 ror.l #8, D1 ;obrot w prawo o 8 bitow, czyli o bajt move.b 9(A0),D1 ror.l #8, D1 ;obrot w prawo o 8 bitow, czyli o bajt move.b 10(A0),D1 ror.l #8, D1 ; skip size move.b 11(A0),D0 ror.l #8, D0 ;obrot w prawo o 8 bitow, czyli o bajt move.b 12(A0),D0 ror.l #8, D0 ;obrot w prawo o 8 bitow, czyli o bajt move.b 13(A0),D0 ror.l #8, D0 ;obrot w prawo o 8 bitow, czyli o bajt move.b 14(A0),D0 ror.l #8, D0 ; file size move.b 21(A0),D7 ; length of file name lea 22(A0),A2 ; pointer to file name sub.l D0,D1 beq.b CopyName add.l A3,D1 cmp.b #2,(A3)+ bne.b quit CopyPath move.b (A3)+,(A1)+ cmp.b #-1,(A3) bne.b CopyPath move.b #"/",(A1)+ ; insert slash move.l D1,A3 CopyName move.b (A2)+,(A1)+ subq.b #1,D7 bne.b CopyName quit rts
@Don_Adan, post #249
lea 2(A0,D7.W),A3 ; pointer to file data, if no subdirectory
@tukinem, post #250
; move.l A0,A3 addq.l #2,D7 add.l D7,A3
@Don_Adan, post #251
@tukinem, post #252
@Don_Adan, post #253
@tukinem, post #254
@Don_Adan, post #257
@Don_Adan, post #259
@tukinem, post #260
@Don_Adan, post #261
@mailman, post #264
@tukinem, post #265
; A0 - pointer to current file in buffer ; D7 - size of available buffer Repeat tst.b (A0) beq.b quit cmp.b #"-",2(A0) bne.b quit cmp.b #"l",3(A0) bne.b quit cmp.b #"h",4(A0) bne.b quit cmp.b #"0",5(A0) bne.b quit moveq #2,D2 add.b (A0),D2 move.l A0,A2 add.l D2,A2 ; pointer to file data, if no subdirectory move.b 7(A0),D1 ror.l #8, D1 ;obrot w prawo o 8 bitow, czyli o bajt move.b 8(A0),D1 ror.l #8, D1 ;obrot w prawo o 8 bitow, czyli o bajt move.b 9(A0),D1 ror.l #8, D1 ;obrot w prawo o 8 bitow, czyli o bajt move.b 10(A0),D1 ror.l #8, D1 ; skip size add.l D1,D2 sub.l D2,D7 bpl.b InBuffy jsr ReloadBuffer ; read next part of file from new file offset to A0 and set new D7 bra.b Repeat InBuffy move.b 11(A0),D0 ror.l #8, D0 ;obrot w prawo o 8 bitow, czyli o bajt move.b 12(A0),D0 ror.l #8, D0 ;obrot w prawo o 8 bitow, czyli o bajt move.b 13(A0),D0 ror.l #8, D0 ;obrot w prawo o 8 bitow, czyli o bajt move.b 14(A0),D0 ror.l #8, D0 ; file size move.b 21(A0),D2 ; length of file name lea 22(A0),A0 ; pointer to file name sub.l D0,D1 beq.b CopyName add.l A2,D1 cmp.b #2,(A2)+ bne.b quit CopyPath move.b (A2)+,(A1)+ cmp.b #-1,(A2) bne.b CopyPath move.b #"/",(A1)+ ; insert slash move.l D1,A2 CopyName move.b (A0)+,(A1)+ subq.b #1,D2 bne.b CopyName quit rts
@Krashan, post #266
@Don_Adan, post #267
@tukinem, post #269