--- Galaksija.pm 2007/08/04 20:34:59 130 +++ Galaksija.pm 2007/08/04 20:50:33 131 @@ -6,7 +6,7 @@ use Carp qw/confess/; use File::Slurp; use Data::Dump qw/dump/; -use Z80 qw'@mem'; +use Z80; # import use base qw(Class::Accessor VRac Z80 Screen Prefs); __PACKAGE__->mk_accessors(qw(booted)); @@ -39,16 +39,17 @@ sub run { my $self = shift; - warn "Galaksija calling upstream init\n"; + + warn "Galaksija $Galaksija::VERSION emulation starting\n"; + + $self->show_mem( 1 ); + $self->trace( 1 ); + $self->SUPER::init( read => sub { $self->read( @_ ) }, write => sub { $self->write( @_ ) }, ); - warn "Galaksija $Galaksija::VERSION emulation starting\n"; - - warn "emulating ", $#mem, " bytes of memory\n"; - for my $a ( 0x1000 .. 0x2000 ) { $mem[$a] = 0xff; } @@ -143,6 +144,21 @@ return; } +=head2 cpu_PC + +Helper metod to set or get PC for current architecture + +=cut + +sub cpu_PC { + my ( $self, $addr ) = @_; + if ( defined($addr) ) { + $PC = $addr; + warn sprintf("running from PC %04x\n", $PC); + }; + return $PC; +} + =head1 AUTHOR Dobrica Pavlinusic, C<< >>