as7: "rim" now means "hardware read-in" (contiguous memory with no overhead)
This commit is contained in:
@@ -231,13 +231,12 @@ elsif ($format eq 'ptr') { # dump absolute memory in PTR binary
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
elsif ($format eq 'rim') { # PDP-7 (secondary) Read In Mode
|
elsif ($format eq 'rim') { # PDP-7 (secondary) Read In Mode
|
||||||
for my $loc ( 0 .. $#Mem ) {
|
my $base = $Var{'..'};
|
||||||
if (defined($Mem[$loc])) {
|
for my $loc ( $base .. $#Mem ) {
|
||||||
punch(0040000 | $loc ); # DAC addr
|
|
||||||
punch($Mem[$loc] || 0);
|
punch($Mem[$loc] || 0);
|
||||||
}
|
}
|
||||||
}
|
# final word: command; has 0100 lit on last frame
|
||||||
punch(0740040 ); # HLT
|
punch(0600000 | $base, 0100 );
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
die("unknown format $format");
|
die("unknown format $format");
|
||||||
@@ -551,11 +550,12 @@ sub find_relative_label {
|
|||||||
|
|
||||||
sub punch { # output a word in paper tape binary format
|
sub punch { # output a word in paper tape binary format
|
||||||
my $word = shift;
|
my $word = shift;
|
||||||
|
my $final = shift || 0;
|
||||||
|
|
||||||
printf $OUT "%c%c%c",
|
printf $OUT "%c%c%c",
|
||||||
(($word >> 12) & 077) | 0200,
|
(($word >> 12) & 077) | 0200,
|
||||||
(($word >> 6) & 077) | 0200,
|
(($word >> 6) & 077) | 0200,
|
||||||
($word & 077) | 0200;
|
($word & 077) | 0200 | $final;
|
||||||
}
|
}
|
||||||
|
|
||||||
sub dump_labels { # for 'list' and --namelist
|
sub dump_labels { # for 'list' and --namelist
|
||||||
|
|||||||
Reference in New Issue
Block a user