1 | Simple BSP for the SH simulator built into gdb. |
---|
2 | |
---|
3 | Simulator Invocation |
---|
4 | ==================== |
---|
5 | sh-rtems[elf|]-gdb <executable> |
---|
6 | (gdb) target sim |
---|
7 | (gdb) set archi [sh|sh2] |
---|
8 | (gdb) load <executable> |
---|
9 | (gdb) run |
---|
10 | |
---|
11 | Status |
---|
12 | ====== |
---|
13 | |
---|
14 | * The simulator invocation procedure outlined above produces error messages |
---|
15 | with gdb-5.0, nevertheless seems to work. With gdb versions > 5.0 these |
---|
16 | error messages are gone. I.e. if you plan to seriously work with the gdb |
---|
17 | simulator better use gdb versions > 5.0. |
---|
18 | |
---|
19 | * gdb's simulator is not able to correctly emulate memory areas esp. shadowing |
---|
20 | and non-consecutive memory. I.e. access to memory areas besides area 0 will |
---|
21 | (bogusly) generate SIGBUS exceptions. This includes access to area 5 |
---|
22 | (On-chip peripherials) and prevents simulation of configuration and access |
---|
23 | to on-chip peripherials. |
---|
24 | |
---|
25 | * Due to limitations of the simulator you will only be able to run |
---|
26 | applications which do not try to access any SH control registers. |
---|
27 | |
---|
28 | Currently, this excludes all applications, which apply timers and serial |
---|
29 | devices, i.e. almost any real world application. |
---|
30 | |
---|
31 | * This BSP supports 3 different console devices (cf. configure --help): |
---|
32 | - trap34, an interface base on gdb's trap34 emulation. Known to work with |
---|
33 | gdb-5.0. |
---|
34 | - gdbsci1, a stripped down sci device driver adapted to apply gdb's sci1 |
---|
35 | emulation. This is known to fail with gdb-5.0, because of a bug in gdb-5.0's |
---|
36 | sh-sim, a patch is submitted, but .. ~== |
---|
37 | - devnull, redirection of console io to /dev/null. Try to single step this, |
---|
38 | if you want to understand the details on how SH-RTEMS console redirection |
---|
39 | works. |
---|
40 | |
---|
41 | NOTE: the trap34 interface is incomplete and is temporarily disabled |
---|
42 | inside of configure.in. |
---|