--- Galaksija.pm 2007/08/04 22:47:32 138 +++ Galaksija.pm 2007/08/04 23:01:25 139 @@ -65,7 +65,7 @@ $mem[$_] = 0xff foreach ( 0x2000 .. 0x2800 ); # display - $mem[$_] = ' ' foreach ( 0x2800 .. 0x2a00 ); + $mem[$_] = 0x20 foreach ( 0x2800 .. 0x2a00 ); # 6116-ice $mem[$_] = 0 foreach ( 0x2a00 .. 0x4000 ); @@ -151,16 +151,23 @@ =cut +my $last_dump = ''; + sub render_vram { my $self = shift; my $addr = 0x2800; - print " "; # FIXME auch! + my $dump; + for my $y ( 0 .. 15 ) { - printf "%2d: %s\n",$y, join('', map { sprintf("%02x ",$_) } @mem[ $addr .. $addr+31 ] ); + $dump .= sprintf "%2d: %s\n",$y, join('', map { sprintf("%02x ",$_) } @mem[ $addr .. $addr+31 ] ); $addr += 32; } + if ( $dump ne $last_dump ) { + print $dump; + $last_dump = $dump; + } } =head2 cpu_PC