[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Y2K ProDOS 8 (2.0.3)



"jim symolon" <jsymolon01@SPAMattbiBAIT.com> wrote in message
news:BEUPa.41713$OZ2.7395@rwcrnsc54...
> Charlie wrote:
> > "Bill Garber" <willy46pa@comcast.net> wrote in message
> > K-qdnUTUh5DObZOiXTWJgQ@comcast.com">news:K-qdnUTUh5DObZOiXTWJgQ@comcast.com...
> >
> >>"Charlie" <charlied@NOSPAMbboard.com> wrote in message
> >>bel7pd01nou@enews2.newsguy.com">news:bel7pd01nou@enews2.newsguy.com...
> >>
> >>>"Michael J. Mahon" <mjmahon@aol.com> wrote in message
> >>>257d7207.0307101716.1ea07009@posting.google.com">news:257d7207.0307101716.1ea07009@posting.google.com...
> >>>
> >>>>"Michael Pender" <mpender@hotmail.com> wrote in message
> >>>
> >>>news:<x49Pa.71588$n%5.56799@nwrddc02.gnilink.net>...
> >>>
> >>>>>Michael J. Mahon <mjmahon@aol.com> wrote in message
> >>>>>20030710024051.00221.00000126@mb-m03.aol.com">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 up
> >>
> >>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
> >
> >
> >
> >
>
> 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.

Yes, it is easier the way they did it, but when writing an disk operating
system the need to make the programmer's job easier is, I believe, a little
less important than having a system that works properly for all the rest of the
people who use it.  It probably would have taken the programmer an extra 10 or
15 minutes to write and yes it would have used a few more bytes of code but the
end result would have been well worth it.  At least in my opinion.

Charlie