-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathREADME
206 lines (171 loc) · 6.91 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
SkyEye-V1.2.x README
1 Install (just type below command)
1.1 on Linux/MinGW/CygWin
$ make
1.2 on FreeBSD
$ gmake
1.3 on BeOS
$ cd utils/portable/beos/tap_driver
$ make install
$ cd ../../../../
$ export PATH=/boot/home/gnupro-3.4.3/bin:$PATH
$ make NO_BFD=1
then the SkyEye binary code will be in binary/skyeye or binary/skyeye.exe (CygWin/MinGW)
Options:
To compile the binary as static, which allows easy distributions:
$ make STATIC=1
You can enable various compile options on the command line. For example, to disable
DBCT do the following:
$ make NO_DBCT=1
To disable compiling with the LCD do the following:
$ make NO_LCD=1
To disable compiling the network device support do the following:
$ make NO_NET=1
You may wish to not compile with the BFD library, to create smaller,
standalone binaries.
$ make NO_BFD=1
2 Usage (just type below command,then skyeye will show usage information)
$ ./binary/skyeye -h
NOTICE: you should have
a kernel(ELF format or Binary Image),
a filesystem (according to OS),
a skyeye config file(default is skyeye.conf)
3 Enjoy it!
you can use skyeye-testsuit-v2.x or later to test SkyEye-V1.x or later
4 required packages:
4.1 on Linux
- If you don't run "make NO_BFD=1" to compile SkyEye:
binutils-dev(bfd)
- LCD simulation by GTK+ implementation required:
gtk+-2.0-dev pkg-config atk-dev pango-dev freetype2-dev glib-dev x11-dev
4.2 on MinGW/CygWin
- At least:
w32api
- If you don't run "make NO_BFD=1" to compile SkyEye:
binutils-dev(bfd)
4.3 on BeOS
BeOS R5 Development Tools
gnupro-3.4.3
5 Tested Environment
X86-32:
CygWin/MinGW
gcc-3.4, gcc-4.1.2
Linux (Debian)
gcc-3.3 gcc-3.4
gcc-2.95 gcc-4.0 (doesn't support DBCT)
BeOS (R5.0.3, Exp-Dano)
gcc-2.95 + gcc-3.4.3
X86-64:
Linux (Fedra)
gcc-3.4 for X86-64 (doesn't support DBCT)
6 Original
SkyEye is originally derived from GDB/Armulator. Thanks David McCullough!
Now files in Directory skyeye-v1/arch/arm/common are from GDB/Armulator package.
7. User Manual
You can visit the following url to get its online version:
http://www.skyeye.org/wiki/UserManual
APPENDIX A: the content of skyeye.conf
#--------------------------------------------------------------------------------
# memmap.conf and skyeye.conf are all skyeye's hardware configuration files.
# memmap.conf is for skyeye-v0.2.5-
# skyeye.conf is for skyeye-v0.2.5+
# usually you don't need to change them.
# for example, a AT91's configuration file is shown below:
#--------------------------------------------------------------------------------
# below is the cpu config info
# cpu: maybe arm7tdmi or arm720t
cpu: arm7tdmi
#--------------------------------------------------------------------------------
# below is the machine(development board) config info
# machine(develop board) maybe at91 or ep7312
mach: at91
#-------------------------------------------------------------------------------
#NOTICE: this parameter is useless for skyeye-V0.3.1+
# have 7 memory bank (include RAM, ROM, mapped IO space)
# below is the memory config info
mem_num: 7
# map=M means ram/rom, map=I means mapped IO space,
# type=RW means can be read or written,
# type=R means read only,
# addr=0x..... means the mem bank's beginning address,
# size=0x..... means the mem bank's memory size,
# file=... is the filesystem image file, used for uclinux4skyeye or armlinux4skyeye
mem_bank: map=M, type=RW, addr=0x00000000, size=0x00004000
mem_bank: map=M, type=RW, addr=0x01000000, size=0x00400000
mem_bank: map=M, type=R, addr=0x01400000, size=0x00400000, file=./boot.rom
mem_bank: map=M, type=RW, addr=0x02000000, size=0x00400000
mem_bank: map=M, type=RW, addr=0x02400000, size=0x00008000
mem_bank: map=M, type=RW, addr=0x04000000, size=0x00400000
mem_bank: map=I, type=RW, addr=0xf0000000, size=0x10000000
#now, add more options on mem_bank
mem_bank: map=M, type=RW, addr=0x10000000, size=0x00000800, file=./loader.bin,boot=yes
#start binary program at 0x100000000
#----------------------------------------------------------------------------------
# below is the net config info
#
# type: cs8900a, rtl8019, rtl8019_16, s3c4510b
# mac=.... means the mac addr in simulated NIC,
# ethmod=tuntap/vnet means the virtual driver used in host evnironment,
# hostip=... means the ip address in host environment to interactive with skyeye.
# format: type=xxxx mac=xx:xx:xx:xx:xx:xx ethmod=tuntap/vnet hostip=dd.dd.dd.dd
#
# *********NOTICE**********
# If you run two more skyeyes at the same time,
# please use different skyeye.conf for each skyeye instance, and only one
# skyeye run first and related skyeye.conf content has hostip value:
# ......
# net: ... ethmod=vnet, hostip=ddd.ddd.ddd.ddd
# other skyeye.conf should has content(hostip[0] should be 0):
# ......
# net: ... ethmod=vnet, hostip=0.ddd.ddd.ddd
net: type=rtl8019, mac=0:4:3:2:1:f, ethmod=tuntap, hostip=10.0.0.1
#------------------------------------------------------------------------------------
# below is the uart config info
#
# mod: stdio, pipe(fd_in/fd_out), net
# converter: dcc
#
# example:
# uart: mod=stdio
# uart: mod=stdio, converter=dcc
# uart: fd_in=/dev/ttyS0, fd_out=/dev/ttyS0
# uart: mod=pipe, desc=/dev/ttyS0
# uart: mod=pipe, desc_in=/dev/tty8, desc_out=/dev/tty9
# uart: mod=net, desc_in=192.168.1.163:21, desc_out=192.168.1.163:1121
#
# now you can use them to connect real serial port.
# you can add an option to skyeye.conf as below:
uart: fd_in=/dev/ttyS0, fd_out=/dev/ttyS0
#then use a terminal connect host's COM1, you can see the output in the terminal.
#-----------------------------------------------------------------------------------
#add log parameter which is used to recode the instr. flow and regs when
#program are running.
log: logon=0, logfile=/tmp/sk1.log, start=100000, end=200000
#logon = 0 or 1 0:doesn't log, 1 do log
#logfile: the filename which have the log info
#start: the start point of instruction flow to log, should >=0
#end: the end point of instructio flow to log
#-----------------------------------------------------------------
# below is the lcd config info
# type: au1100, ep7312, pxa, s3c2410x, s3c44b0x
# mod: gtk, win32, beos
lcd: type=ep7312, mod=gtk
#-----------------------------------------------------------------
# below is the touchscreen config info
touchscreen: type=skyeye, base=0xff00b000, size=0x20, int=17
#-----------------------------------------------------------------
# below is the sound config info
# It's recommended to turn on DBCT at the same time.
#
# example:
# sound: type=s3c44b0x, mod=pcm, channels=2, bits_per_sample=16, samples_per_sec=22050
#-----------------------------------------------------------------
# below is the flash config info
# type: 28F128J3A, SST39LF160, SST39VF160, Am29LV160T-8, Am29LV160T-16,
# Am29LV160B-8, Am29LV160B-16, Am29LV800T-8, Am29LV800T-16,
# Am29LV800B-8, Am29LV800B-16
# dump: write to file when data written.
#
# example:
# flash: type=Am29LV160T-16, base=0x00000000, size=0x02000000, dump=Am29.dump