CAC 2016-02-22

round_robin

Tried 4 processors; hung over night:

bce (boot) 2254.5: M-> [auto-input] boot star

2255.2  start_cpu: Added CPU B.
2255.3  start_cpu: Added CPU C.
2255.3  start_cpu: Added CPU D.

dbg shows:

(gdb) p/o cpus[0].PPR
$3 = {PRR = 0, PSR = 044, P = 01, IC = 01276}
(gdb) p/o cpus[1].PPR
$4 = {PRR = 0, PSR = 042, P = 01, IC = 036621}
(gdb) p/o cpus[2].PPR
$5 = {PRR = 0, PSR = 044, P = 01, IC = 01301}
(gdb) p/o cpus[3].PPR
$6 = {PRR = 0, PSR = 061, P = 01, IC = 0310}
(gdb)

044 is pxss; 042 is bound_page_control; 061 is init_processor

CPU D has been added — why is it in init_processor?

mvne error

EWTOSR k 2 c 0                             initailize
_btd n 0 before 000000000000
EWTOSR k 0 c 60                           '0'
_btd n 0 after  040040060000
_btd n 2 before 040040060000   "__0x'
EWTOSR k 0 c 62                          '20'
_btd n 2 after  040062060000
_btd n 3 before 040062060000   "_20x'
EWTOSR k 0 c 63                       '320'
_btd n 3 after  063062060000
_btd n 2 before 063062060000  '320x'
EWTOSR k 0 c 62                      '2320'
_btd n 2 after  063062060000
_btd n 7 before 063062060000   '320x'
EWTOSR k 0 c 67                        '72320'
_btd n 7 after  063062060000
_btd n 3 before 063062060000 '320x'
EWTOSR k 0 c 63
_btd n 3 after  063062060000
_btd n 3 before 063062060000
EWTOSR k 0 c 63
_btd n 3 after  063062060000
_btd n 0 before 063062060000
EWTOSR k 0 c 60
_btd n 0 after  063062060000
_btd n 3 before 063062060000
EWTOSR k 0 c 63
_btd n 3 after  063062060000
_btd n 4 before 063062060000
EWTOSR k 0 c 64
_btd n 4 after  063062060000
_btd sgn before 063062060000
EWTOSR k 0 c 53
_btd sgn after  063062060000
btd writes 063062060000
N 3 n 0 c 3 (3)
Fault 10(012), sub 4(04), dfc N, 'loadInputBufferNumeric(3): illegal char in input'
N 3 CN 0 TN 0 maxPos 4 numWords 1 lastWordOffset 0 lastChar 2^M

Hmm. btd claims it needs 3 chars, then writes 11 of them….

          time_picture.hour = hour;

000041  aa  000 100 301 500   btd       (pr),(pr)
000042  aa  6 00100 00 0004   desc9a    pr6|64,4            hour
000043  aa  6 00114 01 0003   desc9ls   pr6|76,3,0

load9x n 4
load9x data 040040040040
load9x byte 040
load9x byte 040
load9x byte 040
load9x byte 040

Hour came from

          call decode_clock_value_$time (clock (), hour, minute, second, microsecond, (""), code);

From decode_clock_value_.pl1

      231       call date_time_$from_clock (clock, out_zone, addr (tv), lcode);

...
      241          hour = tv.Hd;

Try a different approach

l Clayton sa

r 17:43 0.521 0

isolts_

Error:  size condition by pl1_time_$|41
(>system_library_standard>bound_pl1_runtime_)
size condition
Precision of target insufficient for number of integral digits assigned to it.
system handler for error returns to command level
r 17:43 0.685 33 level 2

probe
Condition size raised at pl1_time_|11207 (level 6).
sk all
 13          command_processor_
 12          release_stack
 11          unclaimed_signal
 10          wall
  9          any_other.2
  8.1        signal_
  8          wall                                          error
  7          any_other.2
  6.6        signal_
  6.5        pl1_signal_from_ops_                          size
  6.4        size
  6.3        sct_manager_$call_handler
  6.2        signal_
  6.1        return_to_ring_0_ (ring 0) (Other)
  6          pl1_time_                                     size
  5          on_off
  4          isolts_
  3          command_processor_
  2          listen_
  1          initialize_process_

on_off: entry (exec, state, ttl_date);

      tim = time;

/* output message */

      call ioa_ ("^/***^a executive version ^a ^a ^a at ^a", exec, ttl_date, state, date,
       substr (tim, 1, 2) || "." || substr (tim, 3, 3));

      return;

That seems pretty straight-forward.

test: procedure options(main);
dcl date builtin;
dcl isolts_ entry;
dcl  tolts_util_$get_ttl_date entry (entry, char (6));
dcl  ttl_date char (6);
dcl  pname char (6) static options (constant) init ("isolts");
dcl  tim char (12);
dcl time builtin;
dcl ioa_ entry options(variable);
tim = time;
      call tolts_util_$get_ttl_date (isolts_, ttl_date);
call ioa_ ("^/***^a executive version ^a ^a ^a at ^a", pname, ttl_date, "on", date,
substr (tim, 1, 2) || "." || substr (tim, 3, 3));
end test;

Works on SVE, fails on round robin….

r 18:18 0.162 16

test

***isolts executive version 881028 on 160222 at 18.180
r 18:19 1.328 157

test

Error:  size condition by pl1_time_$|41
(>system_library_standard>bound_pl1_runtime_)
size condition
Precision of target insufficient for number of integral digits assigned to it.
system handler for error returns to command level
DBG(95498155)> CPU0 TRACE: 00402:011207 4 000100301500 (BTD PR0|100) 000100 301(1) 0 0 0 00
DBG(95498155)> CPU0 APPENDING: Read (Actual) Read:  iefpFinalAddress=13747074  readData=040040040000

search backwards for 13747074

DBG(95479895)> CPU0 TRACE: 00402:011163 4 600114755100 (STA PR6|114) 600114 755(0) 1 0 0 00
DBG(95479895)> CPU0 APPENDING: Write(Actual) Write: iefpFinalAddress=13747074 writeData=040040040000

   402 >system_library_standard>bound_pl1_runtime_
pl1_time_

The btd is at 41; 11207-41 -> 11146
11163-11146 -> 15

          call decode_clock_value_$time (clock (), hour, minute, second, microsecond, (""), code);

000012  aa  0 01435 7001 00   tsx0      pr0|797             clock_mac
000013  aa  6 00112 7571 00   staq      pr6|74
000014  aa   777764 2350 04   lda       -12,ic              000000 = 040040040000
000015  aa  6 00114 7551 00   sta       pr6|76

Okay; hour is being initialized to blanks (weird) -- ergo someone is failing to write to it....

Working forward...

The call to decode_clock_value_$time

DBG(95488731)> CPU0 TRACE: 00402:011206 4 000623700100 (TSX0 PR0|623) 000623 700(0) 1 0 0 00

The entry:

DBG(95488751)> CPU0 TRACE: 00335:062522 4 000320627000 (EAX7 000320) 000320 627(0) 0 0 0 00

   335 >system_library_1>bound_date_time_
decode_clock_value_

encode_clock_value_              61672    720    130      0   1146    144

000605  aa   000320 6270 00   eax7      208
000606  aa  7 00034 3521 20   epp2      pr7|28,*
000607  aa  2 01045 2721 00   tsp2      pr2|549             ext_entry

DBG(95488751)> CPU0 TRACE: 00335:062522 4 000320627000 (EAX7 000320) 000320 627(0) 0 0 0 00
DBG(95488753)> CPU0 TRACE: 00335:062523 4 700034352120 (EPP2 PR7|34,N*) 700034 352(0) 1 0 1 00
DBG(95488755)> CPU0 TRACE: 00335:062524 4 201045272100 (TSP2 PR2|1045) 201045 272(0) 1 0 0 00

000612  aa  6 00032 3735 20   epp7      pr6|26,*
000613  aa  7 00002 3715 20   epp5      pr7|2,*
000614  aa  6 00250 6515 00   spri5     pr6|168
000615  aa  7 00004 3535 20   epp3      pr7|4,*
000616  aa  6 00234 2535 00   spri3     pr6|156
000617  aa  7 00006 3515 20   epp1      pr7|6,*
000620  aa  6 00236 2515 00   spri1     pr6|158
000621  aa  7 00010 3715 20   epp5      pr7|8,*
000622  aa  6 00240 6515 00   spri5     pr6|160
000623  aa  7 00012 3535 20   epp3      pr7|10,*
000624  aa  6 00242 2535 00   spri3     pr6|162
000625  aa  7 00014 3515 20   epp1      pr7|12,*
000626  aa  6 00246 2515 00   spri1     pr6|166
000627  aa  7 00016 3715 20   epp5      pr7|14,*
000630  aa  6 00252 6515 00   spri5     pr6|170

DBG(95488799)> CPU0 TRACE: 00335:062527 4 600032373520 (EPP7 PR6|32,N*) 600032 373(1) 1 0 1 00
DBG(95488801)> CPU0 TRACE: 00335:062530 4 700002371520 (EPP5 PR7|2,N*) 700002 371(1) 1 0 1 00
DBG(95488803)> CPU0 TRACE: 00335:062531 4 600250651500 (SPRI5 PR6|250) 600250 651(1) 1 0 0 00
DBG(95488805)> CPU0 TRACE: 00335:062532 4 700004353520 (EPP3 PR7|4,N*) 700004 353(1) 1 0 1 00
DBG(95488807)> CPU0 TRACE: 00335:062533 4 600234253500 (SPRI3 PR6|234) 600234 253(1) 1 0 0 00
DBG(95488809)> CPU0 TRACE: 00335:062534 4 700006351520 (EPP1 PR7|6,N*) 700006 351(1) 1 0 1 00
DBG(95488811)> CPU0 TRACE: 00335:062535 4 600236251500 (SPRI1 PR6|236) 600236 251(1) 1 0 0 00
DBG(95488813)> CPU0 TRACE: 00335:062536 4 700010371520 (EPP5 PR7|10,N*) 700010 371(1) 1 0 1 00
DBG(95488815)> CPU0 TRACE: 00335:062537 4 600240651500 (SPRI5 PR6|240) 600240 651(1) 1 0 0 00
DBG(95488817)> CPU0 TRACE: 00335:062540 4 700012353520 (EPP3 PR7|12,N*) 700012 353(1) 1 0 1 00
DBG(95488819)> CPU0 TRACE: 00335:062541 4 600242253500 (SPRI3 PR6|242) 600242 253(1) 1 0 0 00
DBG(95488821)> CPU0 TRACE: 00335:062542 4 700014351520 (EPP1 PR7|14,N*) 700014 351(1) 1 0 1 00
DBG(95488823)> CPU0 TRACE: 00335:062543 4 600246251500 (SPRI1 PR6|246) 600246 251(1) 1 0 0 00
DBG(95488825)> CPU0 TRACE: 00335:062544 4 700016371520 (EPP5 PR7|16,N*) 700016 371(1) 1 0 1 00
DBG(95488827)> CPU0 TRACE: 00335:062545 4 600252651500 (SPRI5 PR6|252) 600252 651(1) 1 0 0 00

                                                            STATEMENT 1 ON LINE 268
      time_sw = "1"b;

000631  aa   400000 2350 03   lda       131072,du
000632  aa  6 00101 7551 00   sta       pr6|65              time_sw

DBG(95488829)> CPU0 TRACE: 00335:062546 4 400000235003 (LDA 400000,DU) 400000 235(0) 0 0 0 03
DBG(95488831)> CPU0 TRACE: 00335:062547 4 600101755100 (STA PR6|101) 600101 755(0) 1 0 0 00

                                                            STATEMENT 1 ON LINE 269
      all_sw = "0"b;

000633  aa  6 00102 4501 00   stz       pr6|66              all_sw

DBG(95488833)> CPU0 TRACE: 00335:062550 4 600102450100 (STZ PR6|102) 600102 450(0) 1 0 0 00

                                                            STATEMENT 1 ON LINE 270
      dcv_sw = "0"b;^L
000634  aa  6 00103 4501 00   stz       pr6|67              dcv_sw

DBG(95488835)> CPU0 TRACE: 00335:062551 4 600103450100 (STZ PR6|103) 600103 450(0) 1 0 0 00

                                                            STATEMENT 1 ON LINE 271
      out_zone = zone;

000635  aa  6 00246 3735 20   epp7      pr6|166,*
000636  aa  040 100 100 500   mlr       (pr),(pr),fill(040)
000637  aa  7 00000 00 0003   desc9a    pr7|0,3             zone
000640  aa  6 00104 00 0004   desc9a    pr6|68,4            out_zone

DBG(95488837)> CPU0 TRACE: 00335:062552 4 600246373520 (EPP7 PR6|246,N*) 600246 373(1) 1 0 1 00
DBG(95488839)> CPU0 TRACE: 00335:062553 4 040100100500 (MLR PR0|40100) 040100 100(1) 0 0 0 00

                                                            STATEMENT 1 ON LINE 272
      goto dcv_common;

000641  aa   777537 7100 04   tra       -161,ic             000400

DBG(95488841)> CPU0 TRACE: 00335:062556 4 777537710004 (TRA 777537,IC) 777537 710(0) 0 0 0 04

000400  aa   777402 2370 04   ldaq      -254,ic             000002 = 164151155145 166141154063
000401  aa  6 00106 7571 00   staq      pr6|70              tv.version
                                                            STATEMENT 1 ON LINE 231
      call date_time_$from_clock (clock, out_zone, addr (tv), lcode);
000402  aa  6 00106 3735 00   epp7      pr6|70              tv
000403  aa  6 00254 6535 00   spri7     pr6|172
000404  aa  6 00250 3521 20   epp2      pr6|168,*           clock
000405  aa  6 00270 2521 00   spri2     pr6|184
000406  aa  6 00104 3521 00   epp2      pr6|68              out_zone
000407  aa  6 00272 2521 00   spri2     pr6|186
000410  aa  6 00254 3521 00   epp2      pr6|172
000411  aa  6 00274 2521 00   spri2     pr6|188
000412  aa  6 00100 3521 00   epp2      pr6|64              lcode
000413  aa  6 00276 2521 00   spri2     pr6|190
000414  aa   777377 3520 04   epp2      -257,ic             000013 = 410000000107
000415  aa  6 00300 2521 00   spri2     pr6|192
000416  aa   777370 3520 04   epp2      -264,ic             000006 = 526000000004
000417  aa  6 00302 2521 00   spri2     pr6|194
000420  aa   777370 3520 04   epp2      -264,ic             000010 = 464000000000
000421  aa  6 00304 2521 00   spri2     pr6|196
000422  aa   777367 3520 04   epp2      -265,ic             000011 = 404000000043
000423  aa  6 00306 2521 00   spri2     pr6|198
000424  aa  6 00266 6211 00   eax1      pr6|182
000425  aa   020000 4310 07   fld       8192,dl
000426  aa  6 00044 3701 20   epp4      pr6|36,*
000427  la  4 00014 3521 20   epp2      pr4|12,*            date_time_$from_clock
000430  aa  0 00622 7001 00   tsx0      pr0|402             call_ext_out_desc

DBG(95488843)> CPU0 TRACE: 00335:062315 4 777403237004 (LDAQ 777403,IC) 777403 237(0) 0 0 0 04
DBG(95488845)> CPU0 TRACE: 00335:062316 4 600106757100 (STAQ PR6|106) 600106 757(0) 1 0 0 00
DBG(95488847)> CPU0 TRACE: 00335:062317 4 600106373500 (EPP7 PR6|106) 600106 373(1) 1 0 0 00
DBG(95488849)> CPU0 TRACE: 00335:062320 4 600254653500 (SPRI7 PR6|254) 600254 653(1) 1 0 0 00
DBG(95488851)> CPU0 TRACE: 00335:062321 4 600250352120 (EPP2 PR6|250,N*) 600250 352(0) 1 0 1 00
DBG(95488853)> CPU0 TRACE: 00335:062322 4 600270252100 (SPRI2 PR6|270) 600270 252(0) 1 0 0 00
DBG(95488855)> CPU0 TRACE: 00335:062323 4 600104352100 (EPP2 PR6|104) 600104 352(0) 1 0 0 00
DBG(95488857)> CPU0 TRACE: 00335:062324 4 600272252100 (SPRI2 PR6|272) 600272 252(0) 1 0 0 00
DBG(95488859)> CPU0 TRACE: 00335:062325 4 600254352100 (EPP2 PR6|254) 600254 352(0) 1 0 0 00
DBG(95488861)> CPU0 TRACE: 00335:062326 4 600274252100 (SPRI2 PR6|274) 600274 252(0) 1 0 0 00
DBG(95488863)> CPU0 TRACE: 00335:062327 4 600100352100 (EPP2 PR6|100) 600100 352(0) 1 0 0 00
DBG(95488865)> CPU0 TRACE: 00335:062330 4 600276252100 (SPRI2 PR6|276) 600276 252(0) 1 0 0 00
DBG(95488867)> CPU0 TRACE: 00335:062331 4 777377352004 (EPP2 777377,IC) 777377 352(0) 0 0 0 04
DBG(95488869)> CPU0 TRACE: 00335:062332 4 600300252100 (SPRI2 PR6|300) 600300 252(0) 1 0 0 00
DBG(95488871)> CPU0 TRACE: 00335:062333 4 777374352004 (EPP2 777374,IC) 777374 352(0) 0 0 0 04
DBG(95488873)> CPU0 TRACE: 00335:062334 4 600302252100 (SPRI2 PR6|302) 600302 252(0) 1 0 0 00
DBG(95488875)> CPU0 TRACE: 00335:062335 4 777370352004 (EPP2 777370,IC) 777370 352(0) 0 0 0 04
DBG(95488877)> CPU0 TRACE: 00335:062336 4 600304252100 (SPRI2 PR6|304) 600304 252(0) 1 0 0 00
DBG(95488879)> CPU0 TRACE: 00335:062337 4 777367352004 (EPP2 777367,IC) 777367 352(0) 0 0 0 04
DBG(95488881)> CPU0 TRACE: 00335:062340 4 600306252100 (SPRI2 PR6|306) 600306 252(0) 1 0 0 00
DBG(95488883)> CPU0 TRACE: 00335:062341 4 600266621100 (EAX1 PR6|266) 600266 621(0) 1 0 0 00
DBG(95488885)> CPU0 TRACE: 00335:062342 4 020000431007 (FLD 020000,DL) 020000 431(0) 0 0 0 07
DBG(95488887)> CPU0 TRACE: 00335:062343 4 600044370120 (EPP4 PR6|44,N*) 600044 370(0) 1 0 1 00
DBG(95488889)> CPU0 TRACE: 00335:062344 4 044077352000 (EPP2 044077) 044077 352(0) 0 0 0 00
DBG(95488891)> CPU0 TRACE: 00335:062345 4 000622700100 (TSX0 PR0|622) 000622 700(0) 1 0 0 00

                                                            STATEMENT 1 ON LINE 232
      if ^time_sw
      then do;

000431  aa  6 00101 2351 00   lda       pr6|65              time_sw
000432  aa   000011 6010 04   tnz       9,ic                000443

DBG(95498091)> CPU0 TRACE: 00335:062346 4 600101235100 (LDA PR6|101) 600101 235(0) 1 0 0 00
DBG(95498093)> CPU0 TRACE: 00335:062347 4 000011601004 (TNZ 000011,IC) 000011 601(0) 0 0 0 04

                                                            STATEMENT 1 ON LINE 239
      if ^dcv_sw
      then do;

000443  aa  6 00103 2351 00   lda       pr6|67              dcv_sw
000444  aa   000015 6010 04   tnz       13,ic               000461

DBG(95498095)> CPU0 TRACE: 00335:062360 4 600103235100 (LDA PR6|103) 600103 235(0) 1 0 0 00
DBG(95498097)> CPU0 TRACE: 00335:062361 4 000015601004 (TNZ 000015,IC) 000015 601(0) 0 0 0 04

                                                            STATEMENT 1 ON LINE 241
         hour = tv.Hd;

000445  aa  6 00113 2361 00   ldq       pr6|75              tv.Hd
000446  aa  6 00234 7561 20   stq       pr6|156,*           hour

DBG(95498099)> CPU0 TRACE: 00335:062362 4 600113236100 (LDQ PR6|113) 600113 236(0) 1 0 0 00
DBG(95498099)> CPU0 APPENDING: doAppendCycle(H:FAP): (00234:011233) finalAddress=13747233
DBG(95498099)> CPU0 APPENDING: Read (Actual) Read:  iefpFinalAddress=13747233  readData=011126000000
Q=011126000000

DBG(95498101)> CPU0 TRACE: 00335:062363 4 600234756120 (STQ PR6|234,N*) 600234 756(0) 1 0 1 00
DBG(95498101)> CPU0 APPENDING: doAppendCycle(H:FAP): (00234:011060) finalAddress=13747060
DBG(95498101)> CPU0 APPENDING: Write(Actual) Write: iefpFinalAddress=13747060 writeData=011126000000

That's a clearly bogus value for hours. Where did it come from? Tracking address 13747233 back...Not found....

date_time_$from_clock should have set it....

Entry to date_time_$from_clock 

001713  aa   003300 6270 00   eax7      1728
001714  aa  7 00034 3521 20   epp2      pr7|28,*
001715  aa  2 01046 2721 00   tsp2      pr2|550             ext_entry_desc

DBG(95488913)> CPU0 TRACE: 00335:044077 4 003300627000 (EAX7 003300) 003300 627(0) 0 0 0 00
DBG(95488915)> CPU0 TRACE: 00335:044100 4 700034352120 (EPP2 PR7|34,N*) 700034 352(0) 1 0 1 00
DBG(95488917)> CPU0 TRACE: 00335:044101 4 201046272100 (TSP2 PR2|1046) 201046 272(0) 1 0 0 00

001720  aa  6 00032 3735 20   epp7      pr6|26,*
001721  aa  7 00002 3715 20   epp5      pr7|2,*
001722  aa  6 01260 6515 00   spri5     pr6|688
001723  aa  7 00004 3535 20   epp3      pr7|4,*^L001724  aa  6 01264 2535 00   spri3     pr6|692
001725  aa  6 00042 3515 20   epp1      pr6|34,*
001726  aa  1 00002 3715 20   epp5      pr1|2,*
001727  aa  6 01262 6515 00   spri5     pr6|690
001730  aa  7 00006 3535 20   epp3      pr7|6,*
001731  aa  6 01276 2535 00   spri3     pr6|702
001732  aa  7 00010 3515 20   epp1      pr7|8,*
001733  aa  6 01274 2515 00   spri1     pr6|700
001734  aa   000003 2360 07   ldq       3,dl
001735  aa  6 01256 7561 00   stq       pr6|686

DBG(95488973)> CPU0 TRACE: 00335:044104 4 600032373520 (EPP7 PR6|32,N*) 600032 373(1) 1 0 1 00
DBG(95488975)> CPU0 TRACE: 00335:044105 4 700002371520 (EPP5 PR7|2,N*) 700002 371(1) 1 0 1 00
DBG(95488977)> CPU0 TRACE: 00335:044106 4 601260651500 (SPRI5 PR6|1260) 601260 651(1) 1 0 0 00
DBG(95488979)> CPU0 TRACE: 00335:044107 4 700004353520 (EPP3 PR7|4,N*) 700004 353(1) 1 0 1 00
DBG(95488981)> CPU0 TRACE: 00335:044110 4 601264253500 (SPRI3 PR6|1264) 601264 253(1) 1 0 0 00
DBG(95488983)> CPU0 TRACE: 00335:044111 4 600042351520 (EPP1 PR6|42,N*) 600042 351(1) 1 0 1 00
DBG(95488985)> CPU0 TRACE: 00335:044112 4 100002371520 (EPP5 PR1|2,N*) 100002 371(1) 1 0 1 00
DBG(95488987)> CPU0 TRACE: 00335:044113 4 601262651500 (SPRI5 PR6|1262) 601262 651(1) 1 0 0 00
DBG(95488989)> CPU0 TRACE: 00335:044114 4 700006353520 (EPP3 PR7|6,N*) 700006 353(1) 1 0 1 00
DBG(95488991)> CPU0 TRACE: 00335:044115 4 601276253500 (SPRI3 PR6|1276) 601276 253(1) 1 0 0 00
DBG(95488993)> CPU0 TRACE: 00335:044116 4 700010351520 (EPP1 PR7|10,N*) 700010 351(1) 1 0 1 00
DBG(95488995)> CPU0 TRACE: 00335:044117 4 601274251500 (SPRI1 PR6|1274) 601274 251(1) 1 0 0 00
DBG(95488997)> CPU0 TRACE: 00335:044120 4 000003236007 (LDQ 000003,DL) 000003 236(0) 0 0 0 07
DBG(95488999)> CPU0 TRACE: 00335:044121 4 601256756100 (STQ PR6|1256) 601256 756(0) 1 0 0 00

                                                            STATEMENT 1 ON LINE 690
from_clock_rtn: begin;

BEGIN BLOCK  5                                              STATEMENT 1 ON LINE 696
      Ptime_value = APtime_value;

001736  aa  6 01276 3735 20   epp7      pr6|702,*           APtime_value
001737  aa  7 00000 3735 20   epp7      pr7|0,*             APtime_value
001740  aa  6 01252 6535 00   spri7     pr6|682             Ptime_value

DBG(95489001)> CPU0 TRACE: 00335:044122 4 601276373520 (EPP7 PR6|1276,N*) 601276 373(1) 1 0 1 00
DBG(95489003)> CPU0 TRACE: 00335:044123 4 700000373520 (EPP7 PR7|0,N*) 700000 373(1) 1 0 1 00 
DBG(95489005)> CPU0 TRACE: 00335:044124 4 601252653500 (SPRI7 PR6|1252) 601252 653(1) 1 0 0 00

                                                            STATEMENT 1 ON LINE 697
      if (time_value.version ^= Vtime_value_3) & (time_value.version ^= "3")
      then do;

001741  aa  7 00000 2351 00   lda       pr7|0               time_value.version
001742  aa  7 00001 2361 00   ldq       pr7|1               time_value.version
001743  aa   776141 1170 04   cmpaq     -927,ic             000104 = 164151155145 166141154063
001744  aa   000032 6000 04   tze       26,ic               001776
001745  aa   063000 2350 03   lda       26112,du
001746  aa  0 00022 3771 00   anaq      pr0|18              = 777000000000 000000000000
001747  aa  0 00442 2771 00   oraq      pr0|290             = 000040040040 040040040040
001750  aa  7 00000 1151 00   cmpa      pr7|0               time_value.version
001751  aa   000002 6010 04   tnz       2,ic                001753
001752  aa  7 00001 1161 00   cmpq      pr7|1               time_value.version
001753  aa   000023 6000 04   tze       19,ic               001776

DBG(95489007)> CPU0 TRACE: 00335:044125 4 700000235100 (LDA PR7|0) 700000 235(0) 1 0 0 00 
DBG(95489009)> CPU0 TRACE: 00335:044126 4 700001236100 (LDQ PR7|1) 700001 236(0) 1 0 0 00 
DBG(95489011)> CPU0 TRACE: 00335:044127 4 776141117004 (CMPAQ 776141,IC) 776141 117(0) 0 0 0 04
DBG(95489013)> CPU0 TRACE: 00335:044130 4 000032600004 (TZE 000032,IC) 000032 600(0) 0 0 0 04

                                                            STATEMENT 1 ON LINE 702
      if (time_defaults_$zone_delta = -1)
      then call date_time_$set_time_defaults;

001776  aa   000001 3360 07   lcq       1,dl
001777  aa   000044 7770 00   llr       36
002000  aa   000044 7330 00   lrs       36
002001  aa  6 00044 3701 20   epp4      pr6|36,*
002002  la  4 00066 1171 20   cmpaq     pr4|54,*            time_defaults_$zone_delta
002003  aa   000005 6010 04   tnz       5,ic                002010
002004  aa  6 00056 6211 00   eax1      pr6|46
002005  aa   000000 4310 07   fld       0,dl
002006  la  4 00022 3521 20   epp2      pr4|18,*            date_time_$set_time_defaults
002007  aa  0 00623 7001 00   tsx0      pr0|403             call_ext_out

DBG(95489015)> CPU0 TRACE: 00335:044162 4 000001336007 (LCQ 000001,DL) 000001 336(0) 0 0 0 07
DBG(95489017)> CPU0 TRACE: 00335:044163 4 000044777000 (LLR 000044) 000044 777(0) 0 0 0 00 
DBG(95489019)> CPU0 TRACE: 00335:044164 4 000044733000 (LRS 000044) 000044 733(0) 0 0 0 00 
DBG(95489021)> CPU0 TRACE: 00335:044165 4 600044370120 (EPP4 PR6|44,N*) 600044 370(0) 1 0 1 00
DBG(95489023)> CPU0 TRACE: 00335:044166 4 400126117100 (CMPAQ PR4|126) 400126 117(0) 1 0 0 00
DBG(95489025)> CPU0 TRACE: 00335:044167 4 000005601004 (TNZ 000005,IC) 000005 601(0) 0 0 0 04

                                                            STATEMENT 1 ON LINE 704
      lang_index = time_defaults_$language_index;

002010  aa  6 00044 3701 20   epp4      pr6|36,*
002011  la  4 00060 2361 20   ldq       pr4|48,*            time_defaults_$language_index
002012  aa  6 00330 7561 00   stq       pr6|216             lang_index

DBG(95489027)> CPU0 TRACE: 00335:044174 4 600044370120 (EPP4 PR6|44,N*) 600044 370(0) 1 0 1 00
DBG(95489029)> CPU0 TRACE: 00335:044175 4 400111236100 (LDQ PR4|111) 400111 236(0) 1 0 0 00 
DBG(95489031)> CPU0 TRACE: 00335:044176 4 600330756100 (STQ PR6|330) 600330 756(0) 1 0 0 00 

                                                            STATEMENT 1 ON LINE 705
      zone_index = get_word_index ((zone), Zone_table);

002013  aa  6 01262 2361 20   ldq       pr6|690,*
002014  aa   000002 6040 04   tmi       2,ic                002016
002015  aa   777777 3760 07   anq       262143,dl
002016  aa  0 00250 3761 00   anq       pr0|168             = 000077777777
002017  aa  6 01264 3735 20   epp7      pr6|692,*
002020  aa  040 100 100 540   mlr       (pr,rl),(pr),fill(040)
002021  aa  7 00000 00 0006   desc9a    pr7|0,ql            zone
002022  aa  6 02124 00 0040   desc9a    pr6|1108,32
002023  aa   015173 3520 04   epp2      6779,ic             017216 = 000006000000
002024  aa   006230 6700 04   tsp4      3224,ic             010254

DBG(95489033)> CPU0 TRACE: 00335:044177 4 601262236120 (LDQ PR6|1262,N*) 601262 236(0) 1 0 1 00
DBG(95489035)> CPU0 TRACE: 00335:044200 4 000002604004 (TMI 000002,IC) 000002 604(0) 0 0 0 04
DBG(95489037)> CPU0 TRACE: 00335:044202 4 000250376100 (ANQ PR0|250) 000250 376(0) 1 0 0 00
DBG(95489039)> CPU0 TRACE: 00335:044203 4 601264373520 (EPP7 PR6|1264,N*) 601264 373(1) 1 0 1 00
DBG(95489041)> CPU0 TRACE: 00335:044204 4 040100100540 (MLR PR0|40100,F1) 040100 100(1) 0 0 0 00
DBG(95489043)> CPU0 TRACE: 00335:044207 4 015173352004 (EPP2 015173,IC) 015173 352(0) 0 0 0 04
DBG(95489045)> CPU0 TRACE: 00335:044210 4 006230670004 (TSP4 006230,IC) 006230 670(0) 0 0 0 04

ENTRY TO get_word_index                                     STATEMENT 1 ON LINE 2256
get_word_index: proc (Atoken, Atable) returns (fixed bin);

010254  aa  6 01322 6501 00   spri4     pr6|722
010255  aa  6 01324 2521 00   spri2     pr6|724

DBG(95489047)> CPU0 TRACE: 00335:052440 4 601322650100 (SPRI4 PR6|1322) 601322 650(0) 1 0 0 00
DBG(95489049)> CPU0 TRACE: 00335:052441 4 601324252100 (SPRI2 PR6|1324) 601324 252(0) 1 0 0 00

                                                            STATEMENT 1 ON LINE 2266
      if (Atable = Language_table)
      then do;

010256  aa  2 00004 2361 20   ldq       pr2|4,*             Atable
010257  aa   000002 1160 07   cmpq      2,dl
010260  aa   000022 6010 04   tnz       18,ic               010302

DBG(95489051)> CPU0 TRACE: 00335:052442 4 200004236120 (LDQ PR2|4,N*) 200004 236(0) 1 0 1 00
DBG(95489053)> CPU0 TRACE: 00335:052443 4 000002116007 (CMPQ 000002,DL) 000002 116(0) 0 0 0 07
DBG(95489055)> CPU0 TRACE: 00335:052444 4 000022601004 (TNZ 000022,IC) 000022 601(0) 0 0 0 04

                                                            STATEMENT 1 ON LINE 2273
      if (Atable = Zone_table)
      then do;

010302  aa   000006 1160 07   cmpq      6,dl
010303  aa   000024 6010 04   tnz       20,ic               010327

DBG(95489057)> CPU0 TRACE: 00335:052466 4 000006116007 (CMPQ 000006,DL) 000006 116(0) 0 0 0 07
DBG(95489059)> CPU0 TRACE: 00335:052467 4 000024601004 (TNZ 000024,IC) 000024 601(0) 0 0 0 04

                                                            STATEMENT 1 ON LINE 2275
         if (Atoken = "")               /* User wants process default.       */
         then return (time_defaults_$zone_index);

010304  aa  2 00002 3735 20   epp7      pr2|2,*
010305  aa  040 004 106 500   cmpc      (pr),(ic),fill(040)
010306  aa  7 00000 00 0040   desc9a    pr7|0,32            Atoken
010307  aa   007214 00 0000   desc9a    3724,0              017521 = 117000000000
010310  aa   000005 6010 04   tnz       5,ic                010315
010311  aa  6 00044 3701 20   epp4      pr6|36,*
010312  la  4 00070 2361 20   ldq       pr4|56,*            time_defaults_$zone_index^L010313  aa  2 00006 7561 20   stq       pr2|6,*
010314  aa  6 01322 6101 00   rtcd      pr6|722

DBG(95489061)> CPU0 TRACE: 00335:052470 4 200002373520 (EPP7 PR2|2,N*) 200002 373(1) 1 0 1 00
DBG(95489063)> CPU0 TRACE: 00335:052471 4 040004106500 (CMPC PR0|40004) 040004 106(1) 0 0 0 00
DBG(95489065)> CPU0 TRACE: 00335:052474 4 000005601004 (TNZ 000005,IC) 000005 601(0) 0 0 0 04

                                                            STATEMENT 1 ON LINE 2277
         if (Atoken = "system_zone")
         then do;

010315  aa  040 004 106 500   cmpc      (pr),(ic),fill(040)
010316  aa  7 00000 00 0040   desc9a    pr7|0,32            Atoken
010317  aa   770020 00 0013   desc9a    -4080,11            000335 = 163171163164
010320  aa   000007 6010 04   tnz       7,ic                010327

DBG(95489067)> CPU0 TRACE: 00335:052501 4 040004106500 (CMPC PR0|40004) 040004 106(1) 0 0 0 00
DBG(95489069)> CPU0 TRACE: 00335:052504 4 000007601004 (TNZ 000007,IC) 000007 601(0) 0 0 0 04

                                                            STATEMENT 1 ON LINE 2283
      item_p = null ();

010327  aa   767771 2370 04   ldaq      -4103,ic            000320 = 077777000043 000001000000
010330  aa  6 01250 7571 00   staq      pr6|680             item_p

DBG(95489071)> CPU0 TRACE: 00335:052513 4 767771237004 (LDAQ 767771,IC) 767771 237(0) 0 0 0 04
DBG(95489073)> CPU0 TRACE: 00335:052514 4 601250757100 (STAQ PR6|1250) 601250 757(0) 1 0 0 00

                                                            STATEMENT 1 ON LINE 2284
      symb = translate (Atoken, az, AZ);

010331  aa  2 00002 3735 20   epp7      pr2|2,*
010332  aa  040 100 160 500   mvt       (pr),(pr),fill(040)
010333  aa  7 00000 00 0040   desc9a    pr7|0,32            Atoken
010334  aa  6 01332 00 0040   desc9a    pr6|730,32          symb
010335  aa   006376 0000 04   arg       3326,ic             016730 = 000001002003

DBG(95489075)> CPU0 TRACE: 00335:052515 4 200002373520 (EPP7 PR2|2,N*) 200002 373(1) 1 0 1 00
DBG(95489077)> CPU0 TRACE: 00335:052516 4 040100160500 (MVT PR0|40100) 040100 160(1) 0 0 0 00

                                                            STATEMENT 1 ON LINE 2285
search:
      ti_token_p = addr (time_info_$tokens);

010336  aa  6 00044 3701 20   epp4      pr6|36,*
010337  la  4 00046 3715 20   epp5      pr4|38,*            time_info_$tokens
010340  aa  6 01246 6515 00   spri5     pr6|678             ti_token_p

DBG(95489079)> CPU0 TRACE: 00335:052522 4 600044370120 (EPP4 PR6|44,N*) 600044 370(0) 1 0 1 00
DBG(95489081)> CPU0 TRACE: 00335:052523 4 032474371400 (EPP5 032474) 032474 371(1) 0 0 0 00 
DBG(95489083)> CPU0 TRACE: 00335:052524 4 601246651500 (SPRI5 PR6|1246) 601246 651(1) 1 0 0 00

                                                            STATEMENT 1 ON LINE 2287
      lb = 1;

010341  aa   000001 2360 07   ldq       1,dl
010342  aa  6 01330 7561 00   stq       pr6|728             lb

DBG(95489085)> CPU0 TRACE: 00335:052525 4 000001236007 (LDQ 000001,DL) 000001 236(0) 0 0 0 07
DBG(95489087)> CPU0 TRACE: 00335:052526 4 601330756100 (STQ PR6|1330) 601330 756(0) 1 0 0 00

                                                            STATEMENT 1 ON LINE 2288
      hb = ti_token.count;

010343  aa  5 00000 2361 00   ldq       pr5|0               ti_token.count
010344  aa  6 01331 7561 00   stq       pr6|729             hb

DBG(95489089)> CPU0 TRACE: 00335:052527 4 500000236100 (LDQ PR5|0) 500000 236(0) 1 0 0 00 
DBG(95489091)> CPU0 TRACE: 00335:052530 4 601331756100 (STQ PR6|1331) 601331 756(0) 1 0 0 00

                                                            STATEMENT 1 ON LINE 2289
      do while (lb <= hb);^L
010345  aa   000000 0110 03   nop       0,du
010346  aa  6 01330 2361 00   ldq       pr6|728             lb
010347  aa  6 01331 1161 00   cmpq      pr6|729             hb
010350  aa   000036 6054 04   tpnz      30,ic               010406

DBG(95489093)> CPU0 TRACE: 00335:052531 4 000000011003 (NOP 000000,DU) 000000 011(0) 0 0 0 03
DBG(95489095)> CPU0 TRACE: 00335:052532 4 601330236100 (LDQ PR6|1330) 601330 236(0) 1 0 0 00
DBG(95489097)> CPU0 TRACE: 00335:052533 4 601331116100 (CMPQ PR6|1331) 601331 116(0) 1 0 0 00
DBG(95489099)> CPU0 TRACE: 00335:052534 4 000036605404 (TPNZ 000036,IC) 000036 605(1) 0 0 0 04

... 

                                                            STATEMENT 1 ON LINE 2301
      return (-1);

010406  aa   000001 3360 07   lcq       1,dl
010407  aa  6 01324 3735 20   epp7      pr6|724,*
010410  aa  7 00006 7561 20   stq       pr7|6,*
010411  aa  6 01322 6101 00   rtcd      pr6|722

DBG(95489373)> CPU0 TRACE: 00335:052572 4 000001336007 (LCQ 000001,DL) 000001 336(0) 0 0 0 07
DBG(95489375)> CPU0 TRACE: 00335:052573 4 601324373520 (EPP7 PR6|1324,N*) 601324 373(1) 1 0 1 00
DBG(95489377)> CPU0 APPENDING: doPtrReg(): PR[7] SNR=00335 RNR=4 WORDNO=061402 BITNO=00
DBG(95489379)> CPU0 TRACE: 00335:052575 4 601322610100 (RTCD PR6|1322) 601322 610(0) 1 0 0 00

                                                            STATEMENT 1 ON LINE 706
      if zone_index < 1                 /* zone given is not in table.       */
      then do;

002025  aa  6 01054 2361 00   ldq       pr6|556             zone_index
002026  aa   000001 1160 07   cmpq      1,dl
002027  aa   000043 6050 04   tpl       35,ic               002072

DBG(95489381)> CPU0 TRACE: 00335:044211 4 601054236100 (LDQ PR6|1054) 601054 236(0) 1 0 0 00
DBG(95489383)> CPU0 TRACE: 00335:044212 4 000001116007 (CMPQ 000001,DL) 000001 116(0) 0 0 0 07
DBG(95489385)> CPU0 TRACE: 00335:044213 4 000043605004 (TPL 000043,IC) 000043 605(0) 0 0 0 04

                                                            STATEMENT 1 ON LINE 709
         if (verify (zone, "-+0123456789") ^= 0)
         then do;

002030  aa  6 01262 2361 20   ldq       pr6|690,*
002031  aa   000002 6040 04   tmi       2,ic                002033
002032  aa   777777 3760 07   anq       262143,dl
002033  aa  0 00250 3761 00   anq       pr0|168             = 000077777777
002034  aa  6 01264 3735 20   epp7      pr6|692,*
002035  aa  000 000 164 540   tct       (pr,rl)
002036  aa  7 00000 00 0006   desc9a    pr7|0,ql            zone
002037  aa   015243 0000 04   arg       6819,ic             017300 = 777777777777
002040  aa  6 00056 0001 00   arg       pr6|46
002041  aa  6 00056 2361 00   ldq       pr6|46
002042  aa  0 00242 3761 00   anq       pr0|162             = 000777777777
002043  aa   000002 6070 04   ttf       2,ic                002045
002044  aa   000001 3360 07   lcq       1,dl
002045  aa   000001 0760 07   adq       1,dl
002046  aa   000023 6000 04   tze       19,ic               002071

DBG(95489387)> CPU0 TRACE: 00335:044214 4 601262236120 (LDQ PR6|1262,N*) 601262 236(0) 1 0 1 00
DBG(95489389)> CPU0 TRACE: 00335:044215 4 000002604004 (TMI 000002,IC) 000002 604(0) 0 0 0 04
DBG(95489391)> CPU0 TRACE: 00335:044217 4 000250376100 (ANQ PR0|250) 000250 376(0) 1 0 0 00
DBG(95489393)> CPU0 TRACE: 00335:044220 4 601264373520 (EPP7 PR6|1264,N*) 601264 373(1) 1 0 1 00
DBG(95489395)> CPU0 TRACE: 00335:044221 4 000000164540 (TCT PR0|0,F1) 000000 164(1) 0 0 0 00
DBG(95489397)> CPU0 TRACE: 00335:044225 4 600056236100 (LDQ PR6|56) 600056 236(0) 1 0 0 00
DBG(95489399)> CPU0 TRACE: 00335:044226 4 000242376100 (ANQ PR0|242) 000242 376(0) 1 0 0 00
DBG(95489401)> CPU0 TRACE: 00335:044227 4 000002607004 (TTF 000002,IC) 000002 607(0) 0 0 0 04
DBG(95489403)> CPU0 TRACE: 00335:044231 4 000001076007 (ADQ 000001,DL) 000001 076(0) 0 0 0 07
DBG(95489405)> CPU0 TRACE: 00335:044232 4 000023600004 (TZE 000023,IC) 000023 600(0) 0 0 0 04

                                                            STATEMENT 1 ON LINE 711
            code = binary (error_table_$unknown_zone);

002047  aa  6 00044 3701 20   epp4      pr6|36,*
002050  la  4 00110 2361 20   ldq       pr4|72,*            error_table_$unknown_zone
002051  aa  6 01274 7561 20   stq       pr6|700,*           code

DBG(95489407)> CPU0 TRACE: 00335:044233 4 600044370120 (EPP4 PR6|44,N*) 600044 370(0) 1 0 1 00
DBG(95489409)> CPU0 TRACE: 00335:044234 4 400210236120 (LDQ PR4|210,N*) 400210 236(0) 1 0 1 00
DBG(95489411)> CPU0 TRACE: 044234 000560657220 (SCU 000560,N*) 000560 657(0) 0 1 1 00
DBG(95489412)> CPU0 TRACE: 044234 000460710220 (TRA 000460,N*) 000460 710(0) 0 1 1 00
DBG(95498053)> CPU0 TRACE: 00335:044234 4 037136236020 (LDQ 037136,N*) 037136 236(0) 0 0 1 00
DBG(95498055)> CPU0 TRACE: 00335:044235 4 601274756120 (STQ PR6|1274,N*) 601274 756(0) 1 0 1 00

                                                            STATEMENT 1 ON LINE 712
            return;

002052  aa  6 01256 2361 00   ldq       pr6|686
002053  aa   000006 6010 04   tnz       6,ic                002061
002054  aa   000027 7260 07   lxl6      23,dl
002055  aa   776310 3520 04   epp2      -824,ic             000365 = 162145164165
002056  aa  0 00716 7001 00   tsx0      pr0|462             signal_op
002057  aa   000000 2360 07   ldq       0,dl
002060  aa  0 00630 7101 00   tra       pr0|408             begin_return_mac
002061  aa   000001 1160 07   cmpq      1,dl
002062  aa   000002 6010 04   tnz       2,ic                002064
002063  aa   777771 7100 04   tra       -7,ic               002054
002064  aa   000002 1160 07   cmpq      2,dl
002065  aa   000002 6010 04   tnz       2,ic                002067
002066  aa   777766 7100 04   tra       -10,ic              002054
002067  aa   000000 2360 07   ldq       0,dl
002070  aa  0 00630 7101 00   tra       pr0|408             begin_return_mac

DBG(95498057)> CPU0 TRACE: 00335:044236 4 601256236100 (LDQ PR6|1256) 601256 236(0) 1 0 0 00 
DBG(95498059)> CPU0 TRACE: 00335:044237 4 000006601004 (TNZ 000006,IC) 000006 601(0) 0 0 0 04
DBG(95498061)> CPU0 TRACE: 00335:044245 4 000001116007 (CMPQ 000001,DL) 000001 116(0) 0 0 0 07
DBG(95498063)> CPU0 TRACE: 00335:044246 4 000002601004 (TNZ 000002,IC) 000002 601(0) 0 0 0 04
DBG(95498065)> CPU0 TRACE: 00335:044250 4 000002116007 (CMPQ 000002,DL) 000002 116(0) 0 0 0 07
DBG(95498067)> CPU0 TRACE: 00335:044251 4 000002601004 (TNZ 000002,IC) 000002 601(0) 0 0 0 04
DBG(95498069)> CPU0 TRACE: 00335:044253 4 000000236007 (LDQ 000000,DL) 000000 236(0) 0 0 0 07
DBG(95498071)> CPU0 TRACE: 00335:044254 4 000630710100 (TRA PR0|630) 000630 710(0) 1 0 0 00

And we return to the wrong address?

DBG(95498091)> CPU0 TRACE: 00335:062346 4 600101235100 (LDA PR6|101) 600101 235(0) 1 0 0 00

test called pl1_time_
DBG(95474839)> CPU0 TRACE: 00401:000034 4 000623700100 (TSX0 PR0|623) 000623 700(0) 1 0 0 00
never returns..

pl1_time_ entry: 
DBG(95479827)> CPU0 TRACE: 00402:011153 4 000140627000 (EAX7 000140) 000140 627(0) 0 0 0 00

pl1_time calls decode_clock_value_$time
          call decode_clock_value_$time (clock (), hour, minute, second, microsecond, (""), code);

clock() returns:
A=000000150303 Q=720704661234

decode_clock_value_$time entry:

DBG(95488751)> CPU0 TRACE: 00335:062522 4 000320627000 (EAX7 000320) 000320 627(0) 0 0 0 00

decode_clock_value_$time calls date_time_$from_clock 

DBG(95488891)> CPU0 TRACE: 00335:062345 4 000622700100 (TSX0 PR0|622) 000622 700(0) 1 0 0 00

entry  to from_clock

DBG(95488913)> CPU0 TRACE: 00335:044077 4 003300627000 (EAX7 003300) 003300 627(0) 0 0 0 00

from_clock does:

            code = binary (error_table_$unknown_zone);
            return;

002070  aa  0 00630 7101 00   tra       pr0|408             begin_return_mac
DBG(95498071)> CPU0 TRACE: 00335:044254 4 000630710100 (TRA PR0|630) 000630 710(0) 1 0 0 00

We would expect to return to decode_clock_value_  at 00335:062346

And we do; I was confused:

DBG(95498091)> CPU0 TRACE: 00335:062346 4 600101235100 (LDA PR6|101) 600101 235(0) 1 0 0 00

decode_clock_value_ sets 'code', returns.

pl1_time_  calls decode_clock_value_$time and ignores the returned error code.

Why is decode_clock_value_$time returning an error?

code = binary (error_table_$unknown_zone);

What is the zone?

call decode_clock_value_$time (clock (), hour, minute, second, microsecond, (""), code);

zone is ("")

pl1_time entry:

DBG(95479827)> CPU0 TRACE: 00402:011153 4 000140627000 (EAX7 000140) 000140 627(0) 0 0 0 00

                                                            STATEMENT 1 ON LINE 35
          call decode_clock_value_$time (clock (), hour, minute, second, microsecond, (""), code);

000012  aa  0 01435 7001 00   tsx0      pr0|797             clock_mac
000013  aa  6 00112 7571 00   staq      pr6|74
000014  aa   777764 2350 04   lda       -12,ic              000000 = 040040040000
000015  aa  6 00114 7551 00   sta       pr6|76
000016  aa  6 00112 3521 00   epp2      pr6|74
000017  aa  6 00120 2521 00   spri2     pr6|80
000020  aa  6 00100 3521 00   epp2      pr6|64              hour
000021  aa  6 00122 2521 00   spri2     pr6|82
000022  aa  6 00101 3521 00   epp2      pr6|65              minute
000023  aa  6 00124 2521 00   spri2     pr6|84
000024  aa  6 00102 3521 00   epp2      pr6|66              second
000025  aa  6 00126 2521 00   spri2     pr6|86
000026  aa  6 00104 3521 00   epp2      pr6|68              microsecond
000027  aa  6 00130 2521 00   spri2     pr6|88
000030  aa  6 00114 3521 00   epp2      pr6|76
000031  aa  6 00132 2521 00   spri2     pr6|90
000032  aa  6 00106 3521 00   epp2      pr6|70              code
000033  aa  6 00134 2521 00   spri2     pr6|92
000034  aa  6 00116 6211 00   eax1      pr6|78
000035  aa   034000 4310 07   fld       14336,dl
000036  aa  6 00044 3701 20   epp4      pr6|36,*
000037  la  4 00010 3521 20   epp2      pr4|8,*             decode_clock_value_$time
000040  aa  0 00623 7001 00   tsx0      pr0|403             call_ext_out

Presumably 
000030  aa  6 00114 3521 00   epp2      pr6|76
it the argument pointer to ""; set up at:

000014  aa   777764 2350 04   lda       -12,ic              000000 = 040040040000
000015  aa  6 00114 7551 00   sta       pr6|76

DBG(95479893)> CPU0 TRACE: 00402:011162 4 777764235004 (LDA 777764,IC) 777764 235(0) 0 0 0 04
DBG(95479895)> CPU0 TRACE: 00402:011163 4 600114755100 (STA PR6|114) 600114 755(0) 1 0 0 00
DBG(95479895)> CPU0 APPENDING: doAppendCycle(H:FAP): (00234:011074) finalAddress=13747074
DBG(95479895)> CPU0 APPENDING: Write(Actual) Write: iefpFinalAddress=13747074 writeData=040040040000

Is it read?

In decode clock value...

                                                            STATEMENT 1 ON LINE 271
      out_zone = zone;

000635  aa  6 00246 3735 20   epp7      pr6|166,*
000636  aa  040 100 100 500   mlr       (pr),(pr),fill(040)
000637  aa  7 00000 00 0003   desc9a    pr7|0,3             zone
000640  aa  6 00104 00 0004   desc9a    pr6|68,4            out_zone

DBG(95488837)> CPU0 TRACE: 00335:062552 4 600246373520 (EPP7 PR6|246,N*) 600246 373(1) 1 0 1 00
DBG(95488839)> CPU0 TRACE: 00335:062553 4 040100100500 (MLR PR0|40100) 040100 100(1) 0 0 0 00

DBG(95488839)> CPU0 APPENDING: doAppendCycle(H:FAP): (00234:011224) finalAddress=13747224
DBG(95488839)> CPU0 APPENDING: Write(Actual) Write: iefpFinalAddress=13747224 writeData=040040040000

out_zone is passed to from_clock:

      231       call date_time_$from_clock (clock, out_zone, addr (tv), lcode);

from_clock looks it up in a table:

      705       zone_index = get_word_index ((zone), Zone_table);

      662 /* zone (input)                                                              */
      663 /*    the  short  name of  the zone  in which  output time  value is         */
      664 /*    expressed.  "system_zone"  means use the  system default zone.         */
      665 /*    "" means use the per-process default zone.                             */

In get_word_index

     2275          if (Atoken = "")               /* User wants process default.       */
     2276          then return (time_defaults_$zone_index);

                                                            STATEMENT 1 ON LINE 2275
         if (Atoken = "")               /* User wants process default.       */
         then return (time_defaults_$zone_index);

010304  aa  2 00002 3735 20   epp7      pr2|2,*
010305  aa  040 004 106 500   cmpc      (pr),(ic),fill(040)
010306  aa  7 00000 00 0040   desc9a    pr7|0,32            Atoken
010307  aa   007214 00 0000   desc9a    3724,0              017521 = 117000000000
010310  aa   000005 6010 04   tnz       5,ic                010315
010311  aa  6 00044 3701 20   epp4      pr6|36,*
010312  la  4 00070 2361 20   ldq       pr4|56,*            time_defaults_$zone_index^L010313  aa  2 00006 7561 20   stq       pr2|6,*
010314  aa  6 01322 6101 00   rtcd      pr6|722

DBG(95489061)> CPU0 TRACE: 00335:052470 4 200002373520 (EPP7 PR2|2,N*) 200002 373(1) 1 0 1 00
DBG(95489063)> CPU0 TRACE: 00335:052471 4 040004106500 (CMPC PR0|40004) 040004 106(1) 0 0 0 00
DBG(95489063)> CPU0 APPENDING: Read (Actual) Read:  iefpFinalAddress=05627564  readData=040040040000
DBG(95489063)> CPU0 TRACEEXT: EISRead: read* 040040040000@234:013564
DBG(95489063)> CPU0 TRACEEXT: EISGet469 : k: 1 TAk 0 coffset 0 c 40  
DBG(95489063)> CPU0 TRACEEXT: EISGet469 : k: 1 TAk 0 coffset 1 c 40
DBG(95489063)> CPU0 TRACEEXT: EISGet469 : k: 1 TAk 0 coffset 2 c 40
DBG(95489063)> CPU0 TRACEEXT: EISGet469 : k: 1 TAk 0 coffset 3 c 0
DBG(95489065)> CPU0 TRACE: 00335:052474 4 000005601004 (TNZ 000005,IC) 000005 601(0) 0 0 0 04

Hmm. Atoken is "   "; the cmpc is expecting a 32 character string....

     2258 dcl Atoken          char (32),          /* word to look for                  */

      705       zone_index = get_word_index ((zone), Zone_table);

      424   zone              char (*),           /* specify output in this zone   [In]*/
Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License