TIP: Click on subject to list as thread! ANSI
echo: dos_internet
to: mark lewis
from: Leonard Erickson
date: 2003-05-18 23:51:12
subject: NETMAIL?

-=> Quoting mark lewis to Leonard Erickson <=-

 LE> MS chose not to support dates past 2099, because 2100 *isn't*
 LE> a leap year. So come Mar 1, 2100 the computer would think it
 LE> was Feb 29. Oops.

 ml> whether or not m$ chose to support them, following the leap year
 ml> rules, 2100 isn't a leap year and any program that would think it is
 ml> is very broken... 

To save space, they just refuse to accept dates past 2099, and thus
avoided haveing to implement the 100/400 rules.

 LE> And of course, Dec 31, 2107 will be a *real* pain. Try setting
 LE> a DOS system to one of the "critical" dates and watch the fun.
 LE> Note that you can't use the Date command to set a date past
 LE> Dec 31, 2099. You have to write your own program to use the low
 LE> level system calls.

 ml> doable... but i'm not aware of the problem with dec 31, 2107... other
 ml> than it being the last one before 2108 rolls around... 

Simple. The year field in a DOS file date is seven bits. the value
stored there is stored as an *unsigned* 7 bit integer offset from 1980.

Thus, a value of 0 equals the year 1980. A value of 127 equals the
year 2107. There *isn't* way to represent values outside the range 1980
thru 2107.


--- FMailX 1.60
* Origin: Shadowgard (1:105/50)
SEEN-BY: 633/267 270
@PATH: 105/50 360 106/2000 633/267

SOURCE: echomail via fidonet.ozzmosis.com

Email questions or comments to sysop@ipingthereforeiam.com
All parts of this website painstakingly hand-crafted in the U.S.A.!
IPTIA BBS/MUD/Terminal/Game Server List, © 2025 IPTIA Consulting™.