<< Runing ProODS 8 (2.0.3) under KEGS-OSX on a PowerMac, I see that some files have a year of 103, while others display 03. The former show up in
the catalog as <NO DATE>. Is there a optimal way to deal with this? >>
No.
Old clock card system from the time when memory was expensive. Just the last two digits (03) are present for the computer to read, so unless the program you're running is set up for it, it will assume it's 1903.
Hi, y'all!
obsbedia2@aol.com (Obsbedia2) wrote in message news:<20030709060226.00112.00000037@mb-m03.aol.com>...
<< Runing ProODS 8 (2.0.3) under KEGS-OSX on a PowerMac, I see that some files have a year of 103, while others display 03. The former show up in the catalog as <NO DATE>. Is there a optimal way to deal with this? >>
No.
Old clock card system from the time when memory was expensive. Just the last
two digits (03) are present for the computer to read, so unless the program you're running is set up for it, it will assume it's 1903.
See ProDOS Technical Note number 28, written by Dave Lyons on
September 1990. It discusses the layout of the ProDOS date field.
The year field is a 7 bit field. So it can hold values from 0 to
127. The Technical Note says that values 100 to 127 are invalid. It
is my contention that they should be valid and should represent the
years 2000 to 2027.
ProDOS versions 2.0.x will ensure that the year field is in the
range 0 to 99 when reading the clock on a IIgs. Earlier versions do
not change the year field when reading the clock on a IIgs.
Willi
Runing ProODS 8 (2.0.3) under KEGS-OSX on a PowerMac, I see that some
files have a year of 103, while others display 03. The former show up in
the catalog as <NO DATE>. Is there a optimal way to deal with this?
Sorry of this a FAQ.
Hi, y'all!
obsbedia2@aol.com (Obsbedia2) wrote in message >news:<20030709060226.00112.00000037@mb-m03.aol.com>...
<< Runing ProODS 8 (2.0.3) under KEGS-OSX on a PowerMac, I see that some >> files have a year of 103, while others display 03. The former show up in
the catalog as <NO DATE>. Is there a optimal way to deal with this? >>
No.
Old clock card system from the time when memory was expensive. Just the >last
two digits (03) are present for the computer to read, so unless the program >> you're running is set up for it, it will assume it's 1903.
See ProDOS Technical Note number 28, written by Dave Lyons on
September 1990. It discusses the layout of the ProDOS date field.
The year field is a 7 bit field. So it can hold values from 0 to
127. The Technical Note says that values 100 to 127 are invalid. It
is my contention that they should be valid and should represent the
years 2000 to 2027.
ProDOS versions 2.0.x will ensure that the year field is in the
range 0 to 99 when reading the clock on a IIgs. Earlier versions do
not change the year field when reading the clock on a IIgs.
But Apple chose to go a different route, with year values from
40-99 meaning 1940-1999 and years from 00-39 meaning
2000-2039. Relatively little software actually implements
this fold point, but having the definition out there certainly
biases the argument!
If a spate of new software or updates arrive for the Apple II,
this issue will need to be resolved. Certainly, the "official"
opinion of Apple must weigh heavily in this resolution.
"Bill Garber" <willy46pa@comcast.net> wrote in message news:K-qdnUTUh5DObZOiXTWJgQ@comcast.com...for
"Charlie" <charlied@NOSPAMbboard.com> wrote in message news:bel7pd01nou@enews2.newsguy.com...
"Michael J. Mahon" <mjmahon@aol.com> wrote in message news:257d7207.0307101716.1ea07009@posting.google.com...
"Michael Pender" <mpender@hotmail.com> wrote in messagenews:<x49Pa.71588$n%5.56799@nwrddc02.gnilink.net>...
Michael J. Mahon <mjmahon@aol.com> wrote in message news:20030710024051.00221.00000126@mb-m03.aol.com...
But Apple chose to go a different route, with year values from 40-99 meaning 1940-1999 and years from 00-39 meaning
2000-2039. Relatively little software actually implements
this fold point, but having the definition out there certainly biases the argument!
...snip...
I believe all the file creation and mod fields (date and time) take upfour
bytes which contain 5 unused bits (although they are in the field used
hardtime). Using those 5 bits in conjunction with the 7 bits alreadyallocated
would have allowed 4096 years. Why this wasn't done originally is amystery to
me.I would assume that it is because Apple didn't think anyone would still
be using/caring about the Apple II computers for this long. ;-)
I suppose you are right, Bill, At least about Apple the company but it is
to understand why the people who actually did the programming would wastefive
bits on every file that was ever created in ProDOS while at the same time skimping on the number of bits used for the year field.
Charlie
"Bill Garber" <willy46pa@comcast.net> wrote in message news:K-qdnUTUh5DObZOiXTWJgQ@comcast.com...
"Charlie" <charlied@NOSPAMbboard.com> wrote in message >>news:bel7pd01nou@enews2.newsguy.com...
"Michael J. Mahon" <mjmahon@aol.com> wrote in message >>>news:257d7207.0307101716.1ea07009@posting.google.com...
"Michael Pender" <mpender@hotmail.com> wrote in message
news:<x49Pa.71588$n%5.56799@nwrddc02.gnilink.net>...
I believe all the file creation and mod fields (date and time) take upMichael J. Mahon <mjmahon@aol.com> wrote in message >>>>>news:20030710024051.00221.00000126@mb-m03.aol.com...
But Apple chose to go a different route, with year values from >>>>>>40-99 meaning 1940-1999 and years from 00-39 meaning
2000-2039. Relatively little software actually implements
this fold point, but having the definition out there certainly >>>>>>biases the argument!
...snip...
four
bytes which contain 5 unused bits (although they are in the field used for >>>time). Using those 5 bits in conjunction with the 7 bits already
allocated
would have allowed 4096 years. Why this wasn't done originally is a
mystery to
me.
I would assume that it is because Apple didn't think anyone would still
be using/caring about the Apple II computers for this long. ;-)
I suppose you are right, Bill, At least about Apple the company but it is hard
to understand why the people who actually did the programming would waste five
bits on every file that was ever created in ProDOS while at the same time skimping on the number of bits used for the year field.
Charlie
Charlie wrote:
"Bill Garber" <willy46pa@comcast.net> wrote in message news:K-qdnUTUh5DObZOiXTWJgQ@comcast.com...
"Charlie" <charlied@NOSPAMbboard.com> wrote in message >>news:bel7pd01nou@enews2.newsguy.com...
"Michael J. Mahon" <mjmahon@aol.com> wrote in message >>>news:257d7207.0307101716.1ea07009@posting.google.com...
"Michael Pender" <mpender@hotmail.com> wrote in message
news:<x49Pa.71588$n%5.56799@nwrddc02.gnilink.net>...
I believe all the file creation and mod fields (date and time) take upMichael J. Mahon <mjmahon@aol.com> wrote in message >>>>>news:20030710024051.00221.00000126@mb-m03.aol.com...
But Apple chose to go a different route, with year values from >>>>>>40-99 meaning 1940-1999 and years from 00-39 meaning
2000-2039. Relatively little software actually implements
this fold point, but having the definition out there certainly >>>>>>biases the argument!
...snip...
four
bytes which contain 5 unused bits (although they are in the field used for >>>time). Using those 5 bits in conjunction with the 7 bits already
allocated
would have allowed 4096 years. Why this wasn't done originally is a
mystery to
me.
I would assume that it is because Apple didn't think anyone would still >>be using/caring about the Apple II computers for this long. ;-)
hardI suppose you are right, Bill, At least about Apple the company but it is
fiveto understand why the people who actually did the programming would waste
bits on every file that was ever created in ProDOS while at the same time skimping on the number of bits used for the year field.
Charlie
Actually the layout makes sense. I'll refer to the Beneath Apple ProDOS
as a reference.
Directory Headers:
$1C:Creation Date = YYYYYYYM MMMDDDDD
$1E:Creation Time = 000HHHHH 00MMMMMM
Try to manipulate the fields in 6502 and you'll see why. It's easier to
do this:
LDY #DATE
LDA (HDR),Y
AND #YEARMASK
LSR #YEARSHIFT
; A = year
than to manipulate a 32-bit word when extracting or setting date time.
Using a "window" format is used in a lot of places, MS Access and Oracle
to name a few.
Charlie wrote:may
At the time that ProDOS was written most software on the Apple II ran under >DOS
3.3 which has no support for date and time stamping. It is possible that >programs that ran under other systems (Apple III SOS, CP/M, Pascal, etc.)
have had a similarly bit challenged date system (I don't know enough about >those systems to argue the point) but from what I've seen of Apple (the >company) over the years, compatibility isn't high on their list of >priorities.
Whatever the reasons for the original design choices (like trying to keep date and time as independent 16-bit fields) or the consequences for
post-1999 systems, the fact remains that this date format was made
an externally visible interface for ProDOS, and so cannot be changed
now without either: 1) changing all applications that use the date
structure (a very unappealing choice),
or 2) adding a _new_ date
interface to ProDOS which preserves some kind (Apple's kind?)
of compatibility for unchanged applications and adds a new date
interface for applications which can be changed to take advantage
of it.
Although the second alternative is appealing, it has the problem
that it is unlikely that many applications would actually exploit
it in the coming years.
I'm also unsure of how much free space is available for ProDOS
changes these days...
Sysop: | Gate Keeper |
---|---|
Location: | Shelby, NC |
Users: | 764 |
Nodes: | 20 (0 / 20) |
Uptime: | 40:46:07 |
Calls: | 11,275 |
Calls today: | 1 |
Files: | 5,288 |
D/L today: |
81 files (10,064K bytes) |
Messages: | 521,283 |