CAC 2015-08-19
tape_archive
Fixed forward skip records; now tape has:
VOL1FOO PYKMULT001 3P
UVL1PYK 93231 SERENITY VALLEY ENGINEERING ANTHONY.SYSENG.A P
HDR1!!DUMMY FILE ID!!******00010001000100 00000 00000 000000MULTICS ANSI2 P
EOF1!!DUMMY FILE ID!!******00010001000100 00000 00000 000000MULTICS ANSI2 P
HDR1ATTRIBUTEFILE0001FOO 00010001000100 93231 99365 000000MULTICS ANSI2 P
HDR2S0819200000 13 00 P
EOF1ATTRIBUTEFILE0001FOO 00010001000100 93231 99365 000001MULTICS ANSI2 P
EOF2S0819200000 13 00 P
HDR1JONESFORTH.S/0002FOO 00010002000100 93231 99365 000000MULTICS ANSI2 P
HDR2S0819200000 13 00 P
Still doesn't like reading it, but closer….
+tss
Breakpoint 1, DoBasicInstruction () at dps8_ins.c:4257
4257 sim_printf ("tss!\n");
(gdb) n
4259 cpu_dev . dctrl |= DBG_FAULT;
(gdb) n
4260 if (TPR.CA >= ((word18) BAR.BOUND) << 9)
(gdb) n
4267 PPR.IC = TPR.CA /* + (BAR.BASE << 9) */; // getBARaddress does the adding
(gdb) p BAR
$1 = {BASE = 0, BOUND = 256}
(gdb) n
4268 PPR.PSR = TPR.TSR;
(gdb) p TPR.TSR
$2 = 220
(gdb) p/o TPR.TSR
$3 = 0334
(gdb) n
4270 if (get_addr_mode () == APPEND_mode)
(gdb) n
4271 set_addr_mode(APPEND_BAR_mode);
(gdb) n
5848 }
(gdb) n
executeInstruction () at dps8_ins.c:1249
1249 if (switches . append_after)
(gdb) n
1251 if (info->ndes == 0 && a && (info->flags & TRANSFER_INS))
(gdb) n
1253 if (get_addr_mode () == BAR_mode)
(gdb) n
1256 set_addr_mode(APPEND_mode);
(gdb) p get_addr_mode ()
$4 = APPEND_BAR_mode
///
/// executeInstruction: Transfer into append mode
///
if (switches . append_after)
{
if (info->ndes == 0 && a && (info->flags & TRANSFER_INS))
{
if (get_addr_mode () == BAR_mode)
set_addr_mode(APPEND_BAR_mode);
else
set_addr_mode(APPEND_mode);
}
}
That's wrong; we are already in APPEND_BAR_mode; tss should only set BAR mode, and let executeInstruction do the APPEND_BAR mode setting.
page revision: 1, last edited: 19 Aug 2015 21:40