/[VRac]/Galaksija.pm
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Diff of /Galaksija.pm

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 177 by dpavlin, Mon Aug 6 09:19:19 2007 UTC revision 178 by dpavlin, Sat Sep 29 12:07:12 2007 UTC
# Line 8  use File::Slurp; Line 8  use File::Slurp;
8  use Data::Dump qw/dump/;  use Data::Dump qw/dump/;
9  use Z80;  use Z80;
10  use Screen;  use Screen;
11    use Time::HiRes qw/time/;
12    
13  use base qw(Class::Accessor VRac Z80 Screen Prefs Session);  use base qw(Class::Accessor VRac Z80 Screen Prefs Session);
14  __PACKAGE__->mk_accessors(qw(booted));  __PACKAGE__->mk_accessors(qw(booted));
# Line 94  sub run { Line 95  sub run {
95          my $hor_pos = 0;          my $hor_pos = 0;
96    
97          $self->loop( sub {          $self->loop( sub {
98                  Z80::exec( $_[0] );                  my $run_for = shift;
99                    Z80::exec( $run_for );
100                  if ( $hor_pos != $mem[ 0x2ba8 ] ) {                  if ( $hor_pos != $mem[ 0x2ba8 ] ) {
101                          warn "scroll 0x2ba8", $self->hexdump( 0x2ba8 );                          warn "scroll 0x2ba8", $self->hexdump( 0x2ba8 );
102                          $hor_pos = $mem[ 0x2ba8 ];                          $hor_pos = $mem[ 0x2ba8 ];
# Line 174  foreach my $key ( @keymap ) { Line 176  foreach my $key ( @keymap ) {
176    
177  sub key_down {  sub key_down {
178          my ( $self, $key ) = @_;          my ( $self, $key ) = @_;
179          warn "key down: $key ", $remap->{$key};          warn "registered key down: $key ", $remap->{$key};
180          $self->write( 0x2000 + $remap->{$key}, 0xfe );          $self->write( 0x2000 + $remap->{$key}, 0xfe );
181  }  }
182    
# Line 184  sub key_down { Line 186  sub key_down {
186    
187  sub key_up {  sub key_up {
188          my ( $self, $key ) = @_;          my ( $self, $key ) = @_;
189          warn "key up: $key ", $remap->{$key};          warn "registred key up: $key ", $remap->{$key};
190          $self->write( 0x2000 + $remap->{$key}, 0xff );          $self->write( 0x2000 + $remap->{$key}, 0xff );
191  }  }
192    
# Line 217  warn dump( @char2pos ); Line 219  warn dump( @char2pos );
219  sub render_vram {  sub render_vram {
220          my $self = shift;          my $self = shift;
221    
222            my $t = time();
223    
224          my $addr = 0x2800;          my $addr = 0x2800;
225    
226          my @pixels = ("\x00") x ( 32 * 16 * 13 );          my @pixels = ("\x00") x ( 32 * 16 * 13 );
# Line 247  sub render_vram { Line 251  sub render_vram {
251          $self->render_frame( $vram );          $self->render_frame( $vram );
252    
253  #       $self->render_vram_text;  #       $self->render_vram_text;
254    
255            printf("frame in %.2fs\n", time()-$t);
256  }  }
257    
258    

Legend:
Removed from v.177  
changed lines
  Added in v.178

  ViewVC Help
Powered by ViewVC 1.1.26