- for my $msb (0 .. ((length($row->{table}) || 256) - 1) / $cols) {
- printf '<tr><th>%X', ($msb + int($row->{offset} / $cols)) * $cols * $colsize;
- for my $lsb (0 .. $cols - 1) {
- my $val = ( ($msb * $cols) + $lsb ) * $colsize;
+ while ($offset < $endpoint - 1) {
+ print '<tr><th>';
+ {
+ if (my $rowmod = $offset % $rowdiv) {
+ # offset in column units
+ printf '<small>+%X</small>', $rowmod;
+ }
+ else {
+ # divided row offset
+ printf '%X', ($offset + $row->{offset}) / $rowdiv;
+ }
+ }
+ for (1 .. $cols) {