From 7286bddc1131c9129b23c466e6d53c7865b4f4b4 Mon Sep 17 00:00:00 2001 From: Kelvin Sherlock Date: Fri, 4 Sep 2015 11:26:00 -0400 Subject: [PATCH] skip . and .. for dir entry purposes. It's too confusing for finder! --- get_dir_entry.aii | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/get_dir_entry.aii b/get_dir_entry.aii index c0782b7..010182d 100644 --- a/get_dir_entry.aii +++ b/get_dir_entry.aii @@ -425,6 +425,11 @@ next done + ; - 2 for . and .. + dec dirent_entry + dec dirent_entry + + ; also reset the displacement to 0. lda #0 ldy #fcr.dirent_entry @@ -634,6 +639,10 @@ exit ; therefore the only special case is dirent_entry == 0 (since displacement 1 -> read entry 0) ; ; +; 9/4/2015 -- The first two entries (. and ..) should be skipped. +; +; + find_absolute_dirent procname with data @@ -665,6 +674,10 @@ find_next_dirent proc @first dec displacement bmi eod + ; set dirent_offset = dirent_size * 2 to skip over . and .. + lda dirent_size + asl a ; x 2 + sta dirent_offset @ok ; make sure dir not empty (should never happen...)