--- M6502/Orao.pm 2007/08/02 16:01:16 98 +++ M6502/Orao.pm 2007/08/02 16:21:17 99 @@ -430,7 +430,8 @@ if ( first { $addr == $_ } @kbd_ports ) { warn sprintf("keyboard port: %04x\n",$addr) if $self->trace; - if ( my $key = $self->key_pressed ) { + my $key = $self->key_pressed; + if ( defined($key) ) { my $r = $keyboard->{$addr} || confess "no definition for keyboard port found"; if ( my $ret = $r->{$key} ) { if ( ref($ret) eq 'CODE' ) { @@ -442,7 +443,7 @@ $mem[$addr] = $ret; return $ret; } else { - warn sprintf("keyboard port: %04x unknown key: '%s'\n", $addr, $key); + warn sprintf("keyboard port: %04x unknown key: '%s'\n", $addr, $key) if $debug; } warn sprintf("keyboard port: %04x %s\n",$addr,dump( $r )) if $self->trace; }