1 |
dpavlin |
55 |
package Arch; |
2 |
|
|
|
3 |
|
|
# Dobrica Pavlinusic, <dpavlin@rot13.org> 07/30/07 21:40:53 CEST |
4 |
|
|
|
5 |
|
|
use strict; |
6 |
|
|
use warnings; |
7 |
|
|
|
8 |
|
|
use Data::Dump qw/dump/; |
9 |
|
|
|
10 |
|
|
=head1 NAME |
11 |
|
|
|
12 |
|
|
Arch - tie arhitecutre components together |
13 |
|
|
|
14 |
|
|
=cut |
15 |
|
|
|
16 |
|
|
=head1 IMPLEMENTATION |
17 |
|
|
|
18 |
|
|
=head2 init |
19 |
|
|
|
20 |
|
|
=head2 read |
21 |
|
|
|
22 |
|
|
=head2 write |
23 |
|
|
|
24 |
|
|
=head2 cli |
25 |
|
|
|
26 |
|
|
=cut |
27 |
|
|
|
28 |
|
|
use base qw(Class::Accessor Orao M6502 Screen); |
29 |
|
|
warn "loaded ",__PACKAGE__,$/; |
30 |
|
|
|
31 |
|
|
my $prefs = { |
32 |
|
|
arch => 'Orao', |
33 |
|
|
scale => 1, |
34 |
|
|
show_mem => 1, |
35 |
|
|
trace => 1, |
36 |
|
|
debug => 1, |
37 |
|
|
}; |
38 |
|
|
|
39 |
|
|
my $arch_name = $prefs->{arch}; |
40 |
|
|
our $arch = $arch_name->new( $prefs ); |
41 |
|
|
warn "Arch $arch_name created with prefs = ",dump( $prefs ),"\n"; |
42 |
|
|
$arch->prefs; |
43 |
|
|
|
44 |
|
|
sub init { |
45 |
|
|
warn "Arch $arch_name init\n"; |
46 |
|
|
$arch->prefs; |
47 |
|
|
$arch->init; |
48 |
|
|
$arch->prefs; |
49 |
|
|
} |
50 |
|
|
|
51 |
|
|
sub read { $arch->read( @_ ) }; |
52 |
|
|
sub write { $arch->write( @_ ) }; |
53 |
|
|
sub cli { $arch->cli( @_ ) }; |
54 |
|
|
|
55 |
|
|
1; |