aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/alf.118
-rw-r--r--src/alf.rst18
-rw-r--r--src/listalf.c7
3 files changed, 29 insertions, 14 deletions
diff --git a/src/alf.1 b/src/alf.1
index ea5eef4..e87b333 100644
--- a/src/alf.1
+++ b/src/alf.1
@@ -205,11 +205,19 @@ instantaneous, 0.05 seconds, which is more typical of the files you\(aqd
actually use this with.
.SS Timestamps
.sp
-The date/time stamps stored in the archive are the \fBmtime\fPs of
-the files (which is the same time \fBls\fP(1) shows, by default), and
-your local timezone is assumed. Only a 2\-digit year is displayed by
-\fBunalf\fP, but the year stored in the \fIALF\fP file doesn\(aqt have a Y2K
-problem. It does, however, have a Y2108 problem...
+The date/time stamps stored in the archive are the \fBmtime\fPs of the
+files (which is the same time \fBls\fP(1) shows, by default), and your
+local timezone is assumed (but see the \fB\-td\fP, \fB\-tu\fP, \fB\-tz\fP
+options above). There\(aqs no way to store timezone or daylight savings
+info in the \fIALF\fP file.
+.sp
+The year stored in the \fIALF\fP file doesn\(aqt have a Y2K problem. It does,
+however, have a Y2108 problem: the range is from 1980 to 2107.
+.sp
+The timestamp only has 2\-second resolution. Files with odd\-numbered
+seconds in the \fImtime\fP will have the number before that (1 => 0, 31 =>
+30, etc). This is a limitation of the \fIALF\fP file format. Also of the
+\fIARC\fP format (I didn\(aqt know that, did you?)
.SH COPYRIGHT
.sp
The original AlfCrunch (\fBDZ.COM\fP and \fBLZ.COM\fP) for the Atari 8\-bit
diff --git a/src/alf.rst b/src/alf.rst
index 59dc2af..4bf2c6c 100644
--- a/src/alf.rst
+++ b/src/alf.rst
@@ -182,11 +182,19 @@ actually use this with.
Timestamps
----------
-The date/time stamps stored in the archive are the **mtime**\s of
-the files (which is the same time **ls**\(1) shows, by default), and
-your local timezone is assumed. Only a 2-digit year is displayed by
-**unalf**, but the year stored in the *ALF* file doesn't have a Y2K
-problem. It does, however, have a Y2108 problem...
+The date/time stamps stored in the archive are the **mtime**\s of the
+files (which is the same time **ls**\(1) shows, by default), and your
+local timezone is assumed (but see the **-td**\, **-tu**\, **-tz**
+options above). There's no way to store timezone or daylight savings
+info in the *ALF* file.
+
+The year stored in the *ALF* file doesn't have a Y2K problem. It does,
+however, have a Y2108 problem: the range is from 1980 to 2107.
+
+The timestamp only has 2-second resolution. Files with odd-numbered
+seconds in the *mtime* will have the number before that (1 => 0, 31 =>
+30, etc). This is a limitation of the *ALF* file format. Also of the
+*ARC* format (I didn't know that, did you?)
COPYRIGHT
=========
diff --git a/src/listalf.c b/src/listalf.c
index fa469d7..34078e5 100644
--- a/src/listalf.c
+++ b/src/listalf.c
@@ -49,7 +49,6 @@ void format_msdos_date(char *buf) {
/* year actually ranges 1980 to 2107... */
year = (d >> 9) + 1980;
- year %= 100; /* ...but only print last 2 digits */
/* valid months range 1 to 12. values 0, 13, 14, 15 are possible
but invalid (print as ???) */
@@ -58,7 +57,7 @@ void format_msdos_date(char *buf) {
/* valid day range is 1 to 31. 0 is invalid, print as-is. */
day = d & 0x1f;
- snprintf(buf, 10, "%2d %3s %02d", day, monthnames[month], year);
+ snprintf(buf, 12, "%2d %3s %04d", day, monthnames[month], year);
}
/* small files may be "compressed" larger than the original, so this
@@ -77,8 +76,8 @@ void list_alf(void) {
extern char *out_filename;
if(opts.verbose_list) {
- puts("Name Length Size now Comp Date Time CkSum");
- puts("============ ======== ======== ==== ========= ========= =====");
+ puts("Name Length Size now Comp Date Time CkSum");
+ puts("============ ======== ======== ==== =========== ========= =====");
}
while(read_alf_header()) {