Gemini Clock command

From: Frits Vosman x5136 <frits.vosman_at_varianinc.com>
Date: Fri, 24 Aug 2001 18:18:15 -0700 (PDT)

Thought it would be nice to know
-- Frits Vosman
   Varian.


YEAR 2000 READINESS ON GEMINI SYSTEMS:

  Even though the systems remain perfectly usable in virtually all aspects,
GEMINI systems (PASCAL-based, not the Sun-based GEMINI 2000 systems) are NOT
year 2000 ready in a strict sense. The main reason for this is that the
"CLOCK" command (which displays the current time and date) has the digits "19"
for the century hardcoded, so that "CLOCK" now displays the year 1901.
  We don't have the resources to distribute modified versions of that software
for fixing the "CLOCK" command - but you can patch the command yourself.
First, you need to find out what the date stamp for the "CLOCK" command is, by
typing
        DIR(ANNEX2,CLOCK,'L')
If the output line contains a number (date code) "5723", you can proceed with
the recipe in the last paragraph below. If the date code is different (the
command has been altered between different software releases), the recipe is
more elaborate. You need to find a sequence of (hexadecimal) numbers
        0004 0013 0004 0017
in the (P-code) command by typing
        HDIS(ANNEX2.CLOCK,1,1)
Type "N" to see the second part of the command segment. This gives you the
first sector (256 16-bit words) of P-code in that command. Use
        HDIS(ANNEX2.CLOCK,2,2)
        HDIS(ANNEX2.CLOCK,3,3)
        ...
to see the contents of subsequent sectors. In the case of the version with
date code "5723" the above sequence of numbers was found with
        HDIS(ANNEX2.CLOCK,8,8)
starting with "0013" as word 1 on line 27, on the second page (obtained with
"N").
  You now need to calculate the offset for the first number in the above
sequence. The offset is
        256*(sector#-1) + 8*(line#-1) + word# - 1
For version "5723" the above sequence was found in sector 8, starting with
"0013" as word 1 on line 27. The offset therefore evaluates to
        256*7 + 8*26 + 1 - 1 = 2000 (sic!)
  Once you have this offset you can first back up the original version of the
"CLOCK" command and then patch it with
        COPY(ANNEX2.CLOCK,ANNEX2.CLOCKA)
        PATCH(ANNEX2.CLOCK,2000,20)
That is, change the 2000th word to 20 (to make the command year 2000 ready -
what a coincidence!!). The system echoes two lines, the last one reads
        003720 000023 000024
This is the location (2000), the old value (19) and the new value (20), all
in octal. Now the "CLOCK" command should display the year correctly.
Received on Mon Aug 27 2001 - 13:29:35 MST

This archive was generated by hypermail 2.4.0 : Sun Jun 04 2023 - 16:12:20 MST