summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/i386/ts_386ex/tools/debug_ada
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>1999-08-11 23:45:57 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>1999-08-11 23:45:57 +0000
commit1d4048b236f1ca4ee555de04ca1b8d1492434670 (patch)
tree19ba7b2e04b8576d685a274a04cc720e56e6adfc /c/src/lib/libbsp/i386/ts_386ex/tools/debug_ada
parentFinal update from Santanu Mitra <smitra@cs.uah.edu>, T.N.S. Prasad (diff)
downloadrtems-1d4048b236f1ca4ee555de04ca1b8d1492434670.tar.bz2
Patch from Tony R. Ambardar <tonya@ece.ubc.ca>:
I'm attaching a big patch for the ts_386ex BSP which adds and includes the following: 1) Conversion to ELF format + minor code cleanups + documentation. 2) An Ada95 binding to FreeBSD sockets, based on Samuel Tardieu's adasockets-0.1.3 package. This includes some sample applications. 3) Some Ada and C interfaces to add serial-port debugging to programs. Comes with examples, too; the Ada one shows how transparent adding the support can be. Note that Rosimildo sent me the original C code. The network stuff is not BSP specific, and could be added to your Ada code collection. The debugging stuff is specific to the i386. Right now, everything sits in my "tools" directory.
Diffstat (limited to 'c/src/lib/libbsp/i386/ts_386ex/tools/debug_ada')
-rw-r--r--c/src/lib/libbsp/i386/ts_386ex/tools/debug_ada/Makefile42
-rw-r--r--c/src/lib/libbsp/i386/ts_386ex/tools/debug_ada/Makefile.ts_386ex42
-rw-r--r--c/src/lib/libbsp/i386/ts_386ex/tools/debug_ada/cmds293
-rw-r--r--c/src/lib/libbsp/i386/ts_386ex/tools/debug_ada/ddd-rtems1
-rw-r--r--c/src/lib/libbsp/i386/ts_386ex/tools/debug_ada/debug.adb32
-rw-r--r--c/src/lib/libbsp/i386/ts_386ex/tools/debug_ada/init.c85
-rw-r--r--c/src/lib/libbsp/i386/ts_386ex/tools/debug_ada/serial_debug.adb66
-rw-r--r--c/src/lib/libbsp/i386/ts_386ex/tools/debug_ada/serial_debug.ads17
8 files changed, 578 insertions, 0 deletions
diff --git a/c/src/lib/libbsp/i386/ts_386ex/tools/debug_ada/Makefile b/c/src/lib/libbsp/i386/ts_386ex/tools/debug_ada/Makefile
new file mode 100644
index 0000000000..4effbc7f75
--- /dev/null
+++ b/c/src/lib/libbsp/i386/ts_386ex/tools/debug_ada/Makefile
@@ -0,0 +1,42 @@
+#
+# Makefile for debug example
+#
+
+MAIN=debug
+
+# Tool paths
+tooldir=/usr/local/rtems
+rtemsdir=${tooldir}/ts_386ex
+
+# Tool names
+GCC=${tooldir}/bin/i386-rtemself-gcc
+GNATMAKE=${tooldir}/bin/i386-rtemself-gnatmake
+SIZE=${tooldir}/bin/i386-rtemself-size
+SIS=${tooldir}/bin/sis
+GDB=${tooldir}/bin/sis-gdb
+
+CINCLUDES=
+
+AINCLUDES=-i -I../ts_1325_ada
+
+CARGS=-B${rtemsdir}/lib/ -specs bsp_specs -qrtems \
+ -msoft-float -mno-fp-ret-in-387
+
+all: init.o
+ $(GNATMAKE) -O2 -g -gnata -gnatE -gnato -gnatn $(AINCLUDES) $(MAIN) \
+ -bargs -r \
+ -cargs $(CARGS) \
+ -largs $(CARGS) init.o
+ $(SIZE) $(MAIN)
+
+init.o: init.c
+ $(GCC) -O2 -g -Wall -ansi -fasm $(CARGS) $(CINCLUDES) -c init.c
+
+run:
+ $(SIS) $(MAIN)
+
+gdb:
+ $(GDB) $(MAIN)
+
+clean:
+ rm -f b_$(MAIN).c b_$(MAIN).o *.o *.ali $(MAIN)
diff --git a/c/src/lib/libbsp/i386/ts_386ex/tools/debug_ada/Makefile.ts_386ex b/c/src/lib/libbsp/i386/ts_386ex/tools/debug_ada/Makefile.ts_386ex
new file mode 100644
index 0000000000..4effbc7f75
--- /dev/null
+++ b/c/src/lib/libbsp/i386/ts_386ex/tools/debug_ada/Makefile.ts_386ex
@@ -0,0 +1,42 @@
+#
+# Makefile for debug example
+#
+
+MAIN=debug
+
+# Tool paths
+tooldir=/usr/local/rtems
+rtemsdir=${tooldir}/ts_386ex
+
+# Tool names
+GCC=${tooldir}/bin/i386-rtemself-gcc
+GNATMAKE=${tooldir}/bin/i386-rtemself-gnatmake
+SIZE=${tooldir}/bin/i386-rtemself-size
+SIS=${tooldir}/bin/sis
+GDB=${tooldir}/bin/sis-gdb
+
+CINCLUDES=
+
+AINCLUDES=-i -I../ts_1325_ada
+
+CARGS=-B${rtemsdir}/lib/ -specs bsp_specs -qrtems \
+ -msoft-float -mno-fp-ret-in-387
+
+all: init.o
+ $(GNATMAKE) -O2 -g -gnata -gnatE -gnato -gnatn $(AINCLUDES) $(MAIN) \
+ -bargs -r \
+ -cargs $(CARGS) \
+ -largs $(CARGS) init.o
+ $(SIZE) $(MAIN)
+
+init.o: init.c
+ $(GCC) -O2 -g -Wall -ansi -fasm $(CARGS) $(CINCLUDES) -c init.c
+
+run:
+ $(SIS) $(MAIN)
+
+gdb:
+ $(GDB) $(MAIN)
+
+clean:
+ rm -f b_$(MAIN).c b_$(MAIN).o *.o *.ali $(MAIN)
diff --git a/c/src/lib/libbsp/i386/ts_386ex/tools/debug_ada/cmds b/c/src/lib/libbsp/i386/ts_386ex/tools/debug_ada/cmds
new file mode 100644
index 0000000000..13573f86e4
--- /dev/null
+++ b/c/src/lib/libbsp/i386/ts_386ex/tools/debug_ada/cmds
@@ -0,0 +1,293 @@
+dir /usr/local/rtems/tools/rtems-19990709/c/src/
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/sapi
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/sapi/src
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/sapi/include
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/sapi/include/wrap
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/sapi/include/rtems
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/sapi/inline
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/sapi/inline/rtems
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/sapi/macros
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/sapi/macros/rtems
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/sapi/optman
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/posix
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/posix/src
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/posix/include
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/posix/include/sys
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/posix/include/rtems
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/posix/include/rtems/posix
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/posix/include/wrap
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/posix/inline
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/posix/inline/rtems
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/posix/inline/rtems/posix
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/posix/macros
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/posix/macros/rtems
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/posix/macros/rtems/posix
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/posix/optman
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/rtems
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/rtems/src
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/rtems/include
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/rtems/include/wrap
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/rtems/include/rtems
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/rtems/include/rtems/rtems
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/rtems/inline
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/rtems/inline/rtems
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/rtems/inline/rtems/rtems
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/rtems/macros
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/rtems/macros/rtems
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/rtems/macros/rtems/rtems
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/rtems/optman
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/score
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/score/cpu
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/score/cpu/i386
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/score/cpu/i386/wrap
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/score/cpu/i386/rtems
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/score/cpu/i386/rtems/score
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/score/include
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/score/include/rtems
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/score/include/rtems/wrap
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/score/include/rtems/score
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/score/inline
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/score/inline/rtems
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/score/inline/rtems/score
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/score/macros
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/score/macros/rtems
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/score/macros/rtems/score
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/score/src
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/score/tools
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/score/tools/sh
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/score/tools/generic
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/score/tools/hppa1.1
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/score/tools/unix
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/wrapup
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/wrapup/posix
+dir /usr/local/rtems/tools/rtems-19990709/c/src/exec/wrapup/rtems
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/libc
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/include
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/include/rdbg
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/include/rdbg/i386
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/include/rpc
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/include/rtems++
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/include/sys
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/libbsp
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/libbsp/bare
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/libbsp/bare/include
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/libbsp/bare/wrapup
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/libbsp/i386
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/libbsp/i386/shared
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/libbsp/i386/shared/comm
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/libbsp/i386/shared/io
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/libbsp/i386/shared/irq
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/libbsp/i386/shared/pci
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/libbsp/i386/ts_386ex
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/libbsp/i386/ts_386ex/clock
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/libbsp/i386/ts_386ex/console
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/libbsp/i386/ts_386ex/include
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/libbsp/i386/ts_386ex/network
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/libbsp/i386/ts_386ex/start
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/libbsp/i386/ts_386ex/startup
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/libbsp/i386/ts_386ex/timer
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/libbsp/i386/ts_386ex/tools
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/libbsp/i386/ts_386ex/tools/dos_sup
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/libbsp/i386/ts_386ex/tools/ts_1325_ada
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/libbsp/i386/ts_386ex/wrapup
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/libchip
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/libchip/rtc
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/libchip/network
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/libchip/serial
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/libcpu
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/libcpu/i386
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/libcpu/i386/wrapup
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/libmisc
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/libmisc/assoc
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/libmisc/cpuuse
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/libmisc/dumpbuf
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/libmisc/error
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/libmisc/monitor
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/libmisc/rtmonuse
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/libmisc/stackchk
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/libmisc/untar
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/libmisc/wrapup
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/libnetworking
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/libnetworking/arpa
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/libnetworking/include
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/libnetworking/kern
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/libnetworking/lib
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/libnetworking/libc
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/libnetworking/machine
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/libnetworking/net
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/libnetworking/netinet
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/libnetworking/nfs
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/libnetworking/rtems
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/libnetworking/rtems_servers
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/libnetworking/sys
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/libnetworking/vm
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/libnetworking/wrapup
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/librdbg
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/librdbg/i386
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/librdbg/i386/pc386
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/librpc
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/librtems++
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/start
+dir /usr/local/rtems/tools/rtems-19990709/c/src/lib/wrapup
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/libtests
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/libtests/cpuuse
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/libtests/malloctest
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/libtests/monitor
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/libtests/rtems++
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/libtests/rtmonuse
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/libtests/stackchk
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/libtests/termios
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/mptests
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/mptests/mp01
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/mptests/mp01/node1
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/mptests/mp01/node2
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/mptests/mp02
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/mptests/mp02/node1
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/mptests/mp02/node2
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/mptests/mp03
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/mptests/mp03/node1
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/mptests/mp03/node2
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/mptests/mp04
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/mptests/mp04/node1
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/mptests/mp04/node2
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/mptests/mp05
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/mptests/mp05/node1
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/mptests/mp05/node2
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/mptests/mp06
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/mptests/mp06/node1
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/mptests/mp06/node2
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/mptests/mp07
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/mptests/mp07/node1
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/mptests/mp07/node2
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/mptests/mp08
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/mptests/mp08/node1
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/mptests/mp08/node2
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/mptests/mp09
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/mptests/mp09/node1
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/mptests/mp09/node2
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/mptests/mp10
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/mptests/mp10/node1
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/mptests/mp10/node2
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/mptests/mp11
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/mptests/mp11/node1
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/mptests/mp11/node2
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/mptests/mp12
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/mptests/mp12/node1
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/mptests/mp12/node2
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/mptests/mp13
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/mptests/mp13/node1
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/mptests/mp13/node2
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/mptests/mp14
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/mptests/mp14/node1
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/mptests/mp14/node2
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/psxtests
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/psxtests/filesupp
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/psxtests/psx01
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/psxtests/psx02
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/psxtests/psx03
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/psxtests/psx04
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/psxtests/psx05
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/psxtests/psx06
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/psxtests/psx07
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/psxtests/psx08
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/psxtests/psx09
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/psxtests/psx10
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/psxtests/psx11
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/psxtests/psx12
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/psxtests/psx13
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/psxtests/psxfile01
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/psxtests/psxfile02
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/psxtests/psxhdrs
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/psxtests/psxmount
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/psxtests/psxreaddir
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/psxtests/psxstat
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/psxtests/psxtime
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/psxtests/psxtimer
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/psxtests/support
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/psxtests/support/include
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/samples
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/samples/base_mp
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/samples/base_mp/node1
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/samples/base_mp/node2
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/samples/base_sp
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/samples/cdtest
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/samples/hello
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/samples/paranoia
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/samples/ticker
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/samples/unlimited
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/samples/minimum
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/sptests
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/sptests/sp01
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/sptests/sp02
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/sptests/sp03
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/sptests/sp04
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/sptests/sp05
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/sptests/sp06
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/sptests/sp07
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/sptests/sp08
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/sptests/sp09
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/sptests/sp11
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/sptests/sp12
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/sptests/sp13
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/sptests/sp14
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/sptests/sp15
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/sptests/sp16
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/sptests/sp17
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/sptests/sp19
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/sptests/sp20
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/sptests/sp21
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/sptests/sp22
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/sptests/sp23
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/sptests/sp24
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/sptests/sp25
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/sptests/spfatal
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/sptests/spsize
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/support
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/support/include
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/support/stubdr
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/support/wrapup
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/tmtests
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/tmtests/tm01
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/tmtests/include
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/tmtests/tm02
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/tmtests/tm03
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/tmtests/tm04
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/tmtests/tm05
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/tmtests/tm06
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/tmtests/tm07
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/tmtests/tm08
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/tmtests/tm09
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/tmtests/tm10
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/tmtests/tm11
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/tmtests/tm12
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/tmtests/tm13
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/tmtests/tm14
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/tmtests/tm15
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/tmtests/tm16
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/tmtests/tm17
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/tmtests/tm18
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/tmtests/tm19
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/tmtests/tm20
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/tmtests/tm21
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/tmtests/tm22
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/tmtests/tm23
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/tmtests/tm24
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/tmtests/tm25
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/tmtests/tm26
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/tmtests/tm27
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/tmtests/tm28
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/tmtests/tm29
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/tmtests/tmck
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/tmtests/tmoverhd
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/tools
+dir /usr/local/rtems/tools/rtems-19990709/c/src/tests/tools/generic
+
+dir /usr/local/rtems/include
+dir /usr/local/rtems/include/g++
+dir /usr/local/rtems/include/g++/std
+
+set remotebaud 38400
+target remote /dev/ttyS0
diff --git a/c/src/lib/libbsp/i386/ts_386ex/tools/debug_ada/ddd-rtems b/c/src/lib/libbsp/i386/ts_386ex/tools/debug_ada/ddd-rtems
new file mode 100644
index 0000000000..84b343b13d
--- /dev/null
+++ b/c/src/lib/libbsp/i386/ts_386ex/tools/debug_ada/ddd-rtems
@@ -0,0 +1 @@
+ddd --debugger "i386-rtemself-gdb --nx --command=./cmds" $*
diff --git a/c/src/lib/libbsp/i386/ts_386ex/tools/debug_ada/debug.adb b/c/src/lib/libbsp/i386/ts_386ex/tools/debug_ada/debug.adb
new file mode 100644
index 0000000000..fd9215c978
--- /dev/null
+++ b/c/src/lib/libbsp/i386/ts_386ex/tools/debug_ada/debug.adb
@@ -0,0 +1,32 @@
+with Ada.Text_IO; use Ada.Text_IO;
+with Ada.Numerics.Discrete_Random;
+
+with TS1325.LED; use TS1325.LED;
+
+with Serial_Debug; use Serial_Debug;
+
+procedure Debug is
+
+ package Random_LED_Colour is
+ new Ada.Numerics.Discrete_Random (LED_Colour);
+ use Random_LED_Colour;
+
+ Colour_Gen: Random_LED_Colour.Generator;
+
+ New_Colour: LED_Colour;
+
+ Count: Integer := 0;
+
+begin
+ Breakpoint;
+
+ Put_Line ("******* Starting Random LED Debug Test *******");
+
+ for I in 1 .. 10_000 loop
+ Count := Count + 1;
+ New_Colour := Random_LED_Colour.Random (Colour_Gen);
+ LED_State.Set (New_Colour);
+ end loop;
+
+ Put_Line ("******* Finished Random LED Debug Test *******");
+end Debug;
diff --git a/c/src/lib/libbsp/i386/ts_386ex/tools/debug_ada/init.c b/c/src/lib/libbsp/i386/ts_386ex/tools/debug_ada/init.c
new file mode 100644
index 0000000000..0f52a84156
--- /dev/null
+++ b/c/src/lib/libbsp/i386/ts_386ex/tools/debug_ada/init.c
@@ -0,0 +1,85 @@
+/*
+ * COPYRIGHT (c) 1989-1997.
+ * On-Line Applications Research Corporation (OAR).
+ * Copyright assigned to U.S. Government, 1994.
+ *
+ * The license and distribution terms for this file may be found in
+ * the file LICENSE in this distribution or at
+ * http://www.OARcorp.com/rtems/license.html.
+ *
+ * $Id$
+ */
+
+#include <bsp.h>
+
+#include <assert.h>
+#include <pthread.h>
+
+#include <stdio.h>
+
+#ifdef GNAT_PID
+#include <unistd.h>
+pid_t getpid()
+{
+ return GNAT_PID;
+}
+#endif
+
+/*
+ * By having the POSIX_Init thread create a second thread just
+ * to invoke gnat_main, we can override all default attributes
+ * of the "Ada environment task". Otherwise, we would be
+ * stuck with the defaults set by RTEMS.
+ */
+
+void *start_gnat_main( void * argument )
+{
+ extern int gnat_main ( int argc, char **argv, char **envp );
+
+ (void) gnat_main ( 0, 0, 0 );
+
+ exit( 0 );
+
+ return 0;
+}
+
+void *POSIX_Init( void *argument )
+{
+ pthread_t thread_id;
+ pthread_attr_t attr;
+ int status;
+
+ status = pthread_attr_init( &attr );
+ assert( !status );
+
+#ifdef GNAT_MAIN_STACKSPACE
+ status = pthread_attr_setstacksize( &attr, GNAT_MAIN_STACKSPACE );
+ assert( !status );
+#endif
+
+ status = pthread_create( &thread_id, &attr, start_gnat_main, NULL );
+ assert( !status );
+
+ pthread_exit( 0 );
+
+ return 0;
+}
+
+/* configuration information */
+
+#define CONFIGURE_TEST_NEEDS_CONSOLE_DRIVER
+#define CONFIGURE_TEST_NEEDS_CLOCK_DRIVER
+
+#define CONFIGURE_POSIX_INIT_THREAD_TABLE
+
+#define CONFIGURE_MICROSECONDS_PER_TICK RTEMS_MILLISECONDS_TO_MICROSECONDS(1)
+
+#define CONFIGURE_MAXIMUM_POSIX_THREADS 20
+#define CONFIGURE_MAXIMUM_POSIX_KEYS 20
+#define CONFIGURE_MAXIMUM_POSIX_MUTEXES 30
+#define CONFIGURE_MAXIMUM_POSIX_CONDITION_VARIABLES 20
+
+#define CONFIGURE_INIT
+
+#include <confdefs.h>
+
diff --git a/c/src/lib/libbsp/i386/ts_386ex/tools/debug_ada/serial_debug.adb b/c/src/lib/libbsp/i386/ts_386ex/tools/debug_ada/serial_debug.adb
new file mode 100644
index 0000000000..f89e290764
--- /dev/null
+++ b/c/src/lib/libbsp/i386/ts_386ex/tools/debug_ada/serial_debug.adb
@@ -0,0 +1,66 @@
+with Ada.Text_IO; use Ada.Text_IO;
+with System.Machine_Code; use System.Machine_Code;
+
+package body Serial_Debug is
+
+ ----------------
+ -- Breakpoint --
+ ----------------
+
+ procedure Breakpoint is
+ begin
+ Asm ("int $3",
+ No_Output_Operands,
+ No_Input_Operands,
+ Volatile => True);
+ end Breakpoint;
+
+
+ -- This type is from uart.h
+ -- Equivalent to an int, with (COM1, COM2) => (0, 1)
+
+ type BSP_Uart is (COM1, COM2);
+ pragma Convention (C, BSP_Uart);
+
+
+ -- The serial port currently used for console I/O
+
+ BSP_Console_Port: BSP_Uart;
+ pragma Import (C, BSP_Console_Port, "BSPConsolePort");
+
+
+ -- C utility routines to set up serial-port debugging
+
+ procedure I386_Stub_Glue_Init (Debug_Port: in BSP_Uart);
+ pragma Import (C, I386_Stub_Glue_Init, "i386_stub_glue_init");
+
+ procedure Set_Debug_Traps;
+ pragma Import (C, Set_Debug_Traps, "set_debug_traps");
+
+ procedure I386_Stub_Glue_Init_Breakin;
+ pragma Import (C, I386_Stub_Glue_Init_Breakin,
+ "i386_stub_glue_init_breakin");
+
+begin
+
+ if BSP_Console_Port /= COM2
+ then
+ I386_Stub_Glue_Init (COM2);
+
+ Put_Line ("Remote GDB using COM2...");
+ else
+ I386_Stub_Glue_Init (COM1);
+
+ Put_Line ("Remote GDB using COM1...");
+ end if;
+
+ Put_Line ("Remote GDB setting traps...");
+
+ Set_Debug_Traps;
+
+ Put_Line ("Remote GDB waiting for connection...");
+
+ I386_Stub_Glue_Init_Breakin;
+
+end Serial_Debug;
+
diff --git a/c/src/lib/libbsp/i386/ts_386ex/tools/debug_ada/serial_debug.ads b/c/src/lib/libbsp/i386/ts_386ex/tools/debug_ada/serial_debug.ads
new file mode 100644
index 0000000000..d645ca52c5
--- /dev/null
+++ b/c/src/lib/libbsp/i386/ts_386ex/tools/debug_ada/serial_debug.ads
@@ -0,0 +1,17 @@
+-- This package allows one to easily add serial debugging support to any
+-- Ada program by simply adding "with Serial_Debug; use Serial_Debug".
+-- Debugging will be automatically initialized when the program is run,
+-- and it should be possible to interrupt the running program from ddd/gdb.
+--
+-- Additionally, one can place explicit breakpoints for the debugger using
+-- the procedure Breakpoint
+
+package Serial_Debug is
+
+ procedure Breakpoint;
+
+private
+
+ pragma Inline (Breakpoint);
+
+end Serial_Debug;