Help and Support

MS-DOS System Date Cannot Have a Year Past 2099

Article ID:58495
Last Review:May 10, 2003
Revision:2.0
This article was previously published under Q58495

SUMMARY

The year portion of the system date has 7 bits for storage (0-127). MS-DOS offsets the year from 1980; therefore, the maximum value for the year should be 2107. However, due to a ROM BIOS limitation, 2099 is the maximum value. The description for interrupt 1AH details the implementation causing the limitation.

MORE INFORMATION

The ROM-BIOS interrupt 1AH deals with BCD (binary coded decimal) numbers. Each decimal place is represented by 4 bits. The century is returned in CH (either 19 or 20). CL contains the year. Each byte can have a value ranging from 0 to 9. The numbers returned are absolute values, not offsets from 1980. Thus, the maximum value for the (decade) year is 99. With the century returning 19 or 20, the maximum year (century-year) is 2099.

APPLIES TO
Microsoft MS-DOS 3.1
Microsoft MS-DOS 3.2 Standard Edition
Microsoft MS-DOS 3.21 Standard Edition
Microsoft MS-DOS 3.3 Standard Edition
Microsoft MS-DOS 3.3a
Microsoft MS-DOS 4.0 Standard Edition
Microsoft MS-DOS 4.01 Standard Edition
Microsoft MS-DOS 5.0 Standard Edition
Microsoft MS-DOS 5.0a
Microsoft MS-DOS 6.0 Standard Edition
Microsoft MS-DOS 6.2 Standard Edition
Microsoft MS-DOS 6.21 Standard Edition
Microsoft MS-DOS 6.22 Standard Edition

Back to the top

Keywords: 
KB58495

Article Translations

 

Other Support Options

  • Need More Help?
    Contact a Support professional by Email, Online or Phone.
  • Customer Service
    For non-technical assistance with product purchases, subscriptions, online services, events, training courses, corporate sales, piracy issues, and more.
  • Newsgroups
    Pose a question to other users. Discussion groups and Forums about specific Microsoft products, technologies, and services.