Logo

» About

» Downloads

» GitHub

» GitLab

Mottek Blog

» Mottek

» Archive

2024 2023 2022 2020 2019 2018 2016 2015 2014 2013 2012 2011 2010 2009 2008 2007 2006 2005 2004 2003

RSS

Newton Year 2010 Solution

Patch

The Y2010 problem is fixed with the [Patch 711000](/Pages/Patch 711000), [Patch 73J186](/Pages/Patch 73J186) and Patch 74J185.

Solution Outline

Solving the Newton Year 2010 Problem is achieved by applying these fixes:

  • Changing the time base for seconds based C++ functions
  • Changing the time base for NewtonScript functions
  • Replacing old C++ functions with new functions via a NewtonOS patch
  • Replacing old NewtonScript functions with new functions at startup via a NewtonOS patch
  • Ajdusting the time to fall always into a safe range
  • Fixing the entries in the system alarm soup
  • Putting safeguards in place to allow installation only on the matching OS version

Completed Steps

  • Patched C++ functions
    • FDateFromSeconds
    • FSetSysAlarm
    • FTimeInSeconds
  • Patched NewtonScript functions
    • TimeInSecondsToTime
    • TimeToTimeInSeconds
  • Registering NewtonScript functions in InitScriptGlobals
  • Time adjustment in InitScriptGlobals
  • Installation safeguard
  • Patches for MP2100D and eMate