Cory Hamasaki's DC Y2K Weather Report V2, # 31
          "July 30, 1998 -  529 days to go."  WRP87
                         
    (c) 1997, 1998 Cory Hamasaki - I grant permission to distribute and
reproduce this newsletter as long as this entire document is reproduced in
its entirety.  You may optionally quote an individual article but you should
include this header down to the tearline.  I do not grant permission to a
commercial publisher to reprint this in print media.

As seen in
   USENET:comp.software.year-2000
   http://www.elmbronze.demon.co.uk/year2000/
   http://www.kiyoinc.com/HHResCo.html

Don't forget, the Y2K chat-line:  http://www.ntplx.net/~rgearity
any evening, 8-10PM EST. 
--------------------tearline -----------------------------
Please fax or email copies of this to your geek pals, especially those
idiots who keep sending you lightbulb, blonde, or Bill Gates jokes,
and urban legends like the Arizona rocket car story.

If you have a Y2K webpage, feel free to host the Weather Reports.

Did you miss Geek Out?
Project Dumbass needs you.

In this issue:

1.   Warn the Geezers.
2.   True Facts
3.   Don't Fix until Failure
4.   Citizens for Y2K Recovery
5.   DISASM
6.   The Jo Anne Effect
7.   BT's Funeral
8.   CCCC 

------- Warn the Geezers -----------------
Last weekend a geekette pal saw the POS at Trak Auto fail.

No big deal right?  How many times have you seen a store computer fail 
in the last 20 years?  I've never seen it happen.
 
Well, today I was in the Giant Grocery store, buying my day-old donuts, 
...a frozen pie, the new extra large size potato chips, a couple 2 liter
jugs of house brand soda, what we geeks call haute cuisine, and guess 
what, the geezer in front of me tried to pay with a credit card.... 
IGG0XYZI - Communications Timeout.  The clerk went into rambling mode
about bank problems getting worse ... you listening Arnold? ... how it's
happening a couple times a week now... and the geezer ... lord he was a 
natterer, one of those nobody-home types, didn't know what to do, the 
clerk instructed him to swipe his card again ... which he did after 
looking around a couple times... what was the point of looking around...
who knows but geezers do that ... it's really a problem when they're 
driving on the beltway and something unusual happens, like a big truck 
goes by, then they look around, watch-out, watch-out, watch-out. -crash-
... the leader of the pack... oops, free associating again... did I 
forget to mention that Dolly Parton was on the cover of one of the 
tabloids... check out the story.
 
I was in line for 10 minutes while the geezer swiped his card, the clerk
talked about the worsening communications problems, and finally they 
opened the base of the conveyor belt and reset the machine.
 
I told them, "have cash, in about a year you will be on a cash only 
basis."  The clerk got it, oh yeah, the computer problems are getting 
worse...  but the geezer was even more confused than before.  He did 
more looking around and I could tell he wasn't tracking me.  "Have cash,
cash is good."  The geezer blinked his eyes... nobody-home.
 
Anyone else out there notice POS or credit card system failures?
 
------- True Facts -----------------

Here are the known facts:
 
1.  Most systems have a date flaw in them.  Large complex systems 
certainly have a problem.  Large enterprises depend upon multiple large
complex systems.
 
2.  Some enterprises started early, years ago; spent a fortune,
alternately whipped their geeks and kissed them; they're not done. 
These include BankBoston, Fidelity Investments...  I know of others. 
They might make it, then again, they might not.  Do you feel lucky 
today... well do you, punk?
 
3. Most enterprises didn't start until sometime this year.  GM, 
BankAmerica may fall in this category.  It is unlikely that anyone 
starting in 1998 will complete remediation, testing, in time.
 
4. Some enterprises are yet to start, the U.S. IRS and DoD may fall into
this category.  Maybe, maybe not but the DoD's Inspector General 
raked the DoD over the coals for falsifying compliance reports.  This is
what we in the c.s.y2k call a bad sign.  You may interpret it
otherwise... most of us are not encouraged by stunts like that.
 
5. Fix on failure doesn't work.  If you could fix a mission critical 
enterprise wide system in the first 2 months of 2000, fix it before 
your creditor's lawyers tear you to pieces, why don't you fix it now... 
this weekend, this month, and slide into Y2K smooth... like a masamune
katana into a torso.
 
6. We've had indepth discussions on specific areas, Telcos, Rail
shipment, ICBM launch controls, Elevators, Nuclear Power Plants, Unix.
Invariably, the initial discussion is back and forth, with the "No
Problems Here" crowd submitting convincing arguments.  In all cases
(except maybe Firetrucks), the debate has fizzled out when specific,
unsolved flaws are reported.
 
A good example is Telco's.  We're in the last stages of the Telco 
debate, the "No Problems Here" crowd are now reporting that Telco Switch
vendors have *announced* products with Y2K fixes, due in 3-6 months...
any day.... real soon...  trust us....
 
Based on the evidence....  nothing will work.  We doomed.... run, run 
Dogbert, run for your life.
 
...but optimistic FOOL that *I* am, I'm hoping that something will be
done in the next 520 days.
 
Summary - At this point, there is *no* debate.  The systems will fail 
and civilization will collapse...  The only question on the floor is:
 
 Will enough be done to fix enough of the essential systems to prevent 
 complete collapse?
 
Oh, by the way, Al Gore says that the Federal Government will be done by
March 1999.
 
Flash, Ray Long says the FAA will be done September 1998, done, 
complete, just some testing left.

------- Don't Fix Until Failure -------------

Instead of Y2K'ing, a very large computer services vendor is
kicking back, sure, they'll do some work for a select group of loyal old
clients but new clients?  Nah, they're.... as they say, fully engaged.
 
Then in 520 days when the failures occur and the clients start screaming
"We're doomed! We're doomed!"  This very large computer services vendor 
will stroll in and help out... but not for $100/hour... not for
$200/hour,  for significantly more.  They'll be calm, professional, and
will have "take it or leave it" contracts, contracts with large boxes 
for the amounts.
 
This strategy gets solves the legal liability issues because ... the
systems will already be broken.  ...this is a strong reason that the 
work is *not* being done now... why fix code for $100/hour when you can 
wait a few months and do the same work for much, much more.  Wait a few 
months and not have any liability.
 
So the smart players are sitting this game out, liability, low rates, 
sit this game out and let the lightweights debate the morality of 
scaremongering...  Let the nubies, who don't even know what the game is,
have their day, and in 520 days, they'll bring in the big-guns.  In 520
days, they'll say, you're mine, punk.
 
    ....sign over the firm.

--------- Citizens for Y2K Recovery -----------

Finally someone is doing something.... At the last WDC Y2K, I spoke with
the reps from "Citizens for Y2K Recovery".  These are people who are not
debating the problem, not running for cover, not fixing code... they're 
prepping their communities for survival and recovery.  They asked me to 
speak at their conference September 26th.  Others will be there, Jim 
Lord, Tony Keys, Rick Cowles, Bruce Webster and more.  A full line up of
the concerned and hopefully less confused than me. 

Their webpage is at http://www.y2krecovery.org

The issue isn't will the systems fail, they will.   The issue is 
preparing for the event and making the most of the next 520 days.

I've signed up to talk about emergency communications.

----------- DISASM --------------------------

I have a copy of an S/370 disassember. It's written in S/370 assembly 
language.  I haven't piped it over to the mainframe yet.   I also have a
copy of the public domain S/370 emulator and assembler that runs on 
Intel DOS. I was thinking of compiling the emulator in Mark Williams C.
I have Borland's Turbo C++ for Windows and IBM's CSet++ 2.1.  Mark
Williams is a complete DOS C and should be adequate for the emulator.

The disassembler, emulator, and assembler would make a nice S/370 fixit
kit.

Here's some text for the disassembler:

******************************************************************      07690002
*                                                                *      07700002
* THIS ROUTINE FORMATS RR-FORMAT INSTRUCTIONS FOR OUTPUT.        *      07710002
*                                                                *      07720002
******************************************************************      07730002
*                                                                       07740002
RROPND   EQU   *                       *** RR FORMAT INSTRUCTIONS ***   07750002
         CLI   0(R7),X'05'             IS IT BALR                       07760002
         BNE   RRSTRT                                                   07770002
         CLI   1(R7),X'EF'             IS IT BALR 14,15                 07780002
         BE    RRSTDL                  YES                              07790002
         TM    1(R7),X'0F'             NO, IS R2 = 0                    07800002
         BNZ   RRNSTD                  NO                               07810002
         MVC   COMMENT(11),=C'ADDRESS SET'                              07820002
         B     RRSTRT                  CONTINUE                         07830002
RRSTDL   MVC   COMMENT(11),=C'STD LINKAGE'                              07840002
         B     RRSTRT                  CONTINUE                         07850002
RRNSTD   MVC   COMMENT(14),=C'NONSTD LINKAGE'                           07860002
RRSTRT   EQU   *                                                        07870002
         LA    R15,TEXT+1              POINT TO TEXT                    07880002
         LR    R11,R1                  COPY INSTRUCTION TYPE            07890002
         CH    R11,=H'48'              RRE TYPE?                        07900002
         BL    *+8                     NO, JUST RR                      07910002
         LA    R15,2(R15)              ADJ FO 2 BYTE OPCODE             07920002
         SR    R1,R1                   CLEAR WORK                       07930002
         IC    R1,0(R15)               GET 2ND BYTE                     07940002
         SRL   R1,4                    SHIFT OUT R2                     07950002
         CVD   R1,DBLWD                CONVERT                          07960002
         OI    DBLWD+7,X'0F'           CLEAR SIGN                       07970002
         UNPK  DBLWD(2),DBLWD+6(2)     UNPACK                           07980002
         MVI   OPNDS,C'R'              BEGIN R1 OPERAND                 07990002
         CH    R1,H10                  REG NBR > 9                      08000002
         BL    RR11                    NO, 0-9                          08010002
         MVC   OPNDS+1(2),DBLWD        YES, 10-15                       08020002
         LA    R1,OPNDS+3              TO NEXT POS                      08030002
         B     RRCMA                   CONTINUE                         08040002
RR11     MVC   OPNDS+1(1),DBLWD+1      MOVE REG NBR                     08050002
         LA    R1,OPNDS+2              TO NEXT POS                      08060002
RRCMA    EQU   *                                                        08070002
         CH    R11,=H'48'              RRE WITH ONE OPERAND?            08080002
         BE    RRXIT                   YES                              08090002
         CLI   TEXT,X'04'              IS IT SPM                        08100002
         BNE   RRCMA1                  NO                               08110002
         TM    1(R7),X'0F'             YES, IS R2 FIELD = 0             08120002
         BZ    RRXIT                   YES, GOOD INSTR                  08130002
         B     4(R9)                   ERROR RETURN (NOT INSTR)         08140002
RRCMA1   MVC   0(2,R1),=C',R'          DELIMITERS                       08150002
         PACK  DBLWD(1),0(1,R15)       FLIP 2ND BYTE                    08160002
         SR    R15,R15                 CLEAR WORK                       08170002
         IC    R15,DBLWD               GET R2R1                         08180002
         SRL   R15,4                   SHIFT OUT R1                     08190002
         CVD   R15,DBLWD               CONVERT                          08200002
         OI    DBLWD+7,X'0F'           CLEAR SIGN                       08210002
         UNPK  DBLWD(2),DBLWD+6(2)     UNPACK                           08220002
         CH    R15,H10                 R2 > 9                           08230002
         BL    RR21                    NO, 0-9                          08240002
         MVC   2(2,R1),DBLWD           YES, MOVE REG 10-15              08250002
         BR    R9                      EXIT                             08260002
RR21     MVC   2(1,R1),DBLWD+1         MOVE REG 0-9                     08270002
RRXIT    BR    R9                      EXIT                             08280002

I think it's public domain source.

What's neat about a disassembler is that it's almost the same as an 
emulator.  It has to understand the format of the binary, opcodes, 
operands, and data.  What's differendt is that the disassembler 
generates source code while an emulator makes state changes in the 
psuedo machine.

There's been a discussion on c.s.y2k on disassemblers, Arnold did a 
hand disassembly on a module.   This is a tiny part of a program that 
does it mechanically.

Please denial-heads, feel free to explain the above code fragment.  Tell
us about how your big W95 using brain has it all figured out,

------------- the Jo Anne Effect --------------

I'm expecting the failures to take this pattern.  This graph is not to 
scale, it's the shape that counts.

jul X          <---<<< we're here
aug X
sep XX
oct XX
nov XXX
dec XXXXX
1999           The Jo Anne effect.
jan XXXXXXXX
feb XXXXX
mar XXX
apr XXX
may XXX
jun XXX
jul XXX
aug XXXX        GPS
sep XXXXXXX     fiscal year stuff.
oct XXXX
nov XXXXX
dec XXXXXXXXXX  first 2000 transactions.
2000
jan XXXXXXXXXXXXXX
feb XXXXXXXXXXX
mar XXXXXXXXX
apr XXXXXXXXX
may XXXXXXXXXX
jun XXXXXXXXX
jul XXXXXXXX
aug XXXXXX
sep XXXXXX
oct XXXX
nov XXXXXX
dec XXXXXXXXXXX
2001
jan XXXXXXXXXXXXXXX  lookbacks
feb XXXXXXXXXXX
mar XXXXXXXXX

The Jo Anne effect is caused by systems that attempt to sort data into 
last year, this year, and next year piles.  This is different from 
lookaheads and predictive systems.   This is strictly a wild guess but
I think the Jo Anne effect will be less than December 31, 1999
failures.

------------ BT's Funeral -------

It was well done... BT had retired from the Navy and his pallbarers were
dressed in Navy whites.  I stood respectfully to the side and took 
pictures, maybe I can get them scanned in.  The chaplain spoke, the 
honor guard saluted and folded the flag, there was a 21 gun salute, they
rang the chapel bells, the lone bugler played taps...  BT's family and 
geek friends said their goodbyes.

It was a hot, sad, DC summer day in Arlington National Cemetery.  I was 
the last one to leave the grave site.

BT was working on a rehost for a mission critical system, trying to beat
Y2K but not working on the core system that he, Shmuel and I worked on 
in the 1980's.  This was a side sub-system.  It will be that much harder
without one less pair of hands at the keyboard.  One less geek who knows
PL/I, C/C++, and S/370 assembler.  BT had unusual application specific
knowledge, he was a domain expert who could program.  There are very few
people in the world who knew what he knew... perhaps two or three.

------------ CCCC ---------------

More clueless than normal... that's me.  520 days, it's going bad... 20
days until the 500 day decision point.

The magic that keeps the world's population fed and the life support 
systems going is about to run out.   There were large cities in ancient
times, but what were the numbers... what was the population of Imperial
Rome, Socrates' Athens, Tikal, 17th century London?

I've been to Tikal, seen the ruins, climbed to the top of the temple of
the Giant Jaguar, seen the reconstructions, what happened? How fast did
it go bad?  Was it disease?  War?  or was it something more ominous, the
pendulum swung back and took the civilization with it.

Suppose it's not personal, suppose it's just chance, just the luck of 
the draw and our luck is running out.  Random chance and the power of 
cycles and we're looking at 20 years of a decreasing standard of living. 

Decreasing or a sudden drop in 520 days and a stair step down from that
as each month passes.  That's the model for sepsis... you get a little 
cut, your normal skin flora invade and overwhelm your defenses but just 
at that one spot; the debris and toxic byproducts of the localized
battle kill more cells and that leads to more debris. It's like a fire 
eating its way out from that spot, septic shock sets in, your heart 
pounds itself to death.

Look at you. You're a system of systems, layers interlocking, complex,
signals, electro, chemical, self regulating and self repairing... one
failure can be bypassed, a dozen might be noticed, but thousands and
thousands of system failures, a vitamin deficiency, overwork, too much
fat, a pneumococcus, an endocrine imbalance, fatigue, lots and lots of
things just a little out of spec and you die.

In 520 days, civilization will be out of spec in millions of ways.

What's the solution?

Fix code like a maniac?  Sure, if they'll let you... I know geeks, real 
power-geeks, who have been ordered not to make Y2K fixes.  ...
replacement systems are in the wings, they'll be ready real soon now,
trust us... Remediation is running on less than half power, it's not a 
problem, let's have a meeting, look out the window... hey, is that the 
new Porsche?  They're not working on the code.  It's business as usual 
in 75% of the shops... what's this Y2K anyway.

Run for the hills?  Maybe... can you outrun a 1 megaton airburst... how
about something more scary... a nice resistant staph ... more soldiers 
die from disease than bullets.  Maybe if you have an isolated place,
clean water, and lots of fresh air...

Organize your community, pre position fuel, water purification supplies,
food, have a real plan to include specifics, regular SETs (simulated 
emergency tests)  When I say plan, I don't mean pop-biz-jive unrelated 
to reality, metrics, mission statements...  I mean hard specifics.

September - Purchase n-tons of emergency food.
October - Generators, fuel tanks.
November - back up communications, CB and Ham radio.

Hard specifics, supplies in place, a plan to disconnect the community 
from the grid, take care of the retirees, the children, make it work.

scale back, simpler, living within bounds... fresh produce in season and
dried or canned out of season.

What's really going on?

The FAA won't make September 1998, Ray Long was telling a joke.

The Feds won't make March 1999, koshecan, gore, what kidders you are.

The SIA Street test was a failure, the news blackout is the first 
clue... the whispers from insiders in NY is the second, ...check back 
through the old DC Y2K WRPs, the superprogrammer's grapevine hasn't 
missed yet. Read Dilbert, geek to geek, speak in the code of the geeks, 
what's really going on?  The NYSE is about to take a hit in the machine 
check handler and HIR will be UNsuccessful.  The message is, "HIR 
FAILED, SYSTEM ENTERING WAIT STATE."

cory hamasaki 519 days now...