From 2434499ed2f0bec9d0584dc936f41dcc32b66997 Mon Sep 17 00:00:00 2001 From: Matt Borgerson Date: Tue, 17 Dec 2019 21:40:43 -0700 Subject: Move demo files to demo dir --- Makefile | 2 +- README.md | 4 ++-- demo.c | 44 -------------------------------------------- demo.gdbinit | 8 -------- demo/demo.c | 44 ++++++++++++++++++++++++++++++++++++++++++++ demo/demo.gdbinit | 8 ++++++++ 6 files changed, 55 insertions(+), 55 deletions(-) delete mode 100644 demo.c delete mode 100644 demo.gdbinit create mode 100644 demo/demo.c create mode 100644 demo/demo.gdbinit diff --git a/Makefile b/Makefile index 446f281..56ab242 100644 --- a/Makefile +++ b/Makefile @@ -47,7 +47,7 @@ $(error Please specify a supported architecture) endif ifeq ($(INCLUDE_DEMO),1) -OBJECTS += demo.o +OBJECTS += demo/demo.o endif all: $(TARGET) diff --git a/README.md b/README.md index 5146ac6..2342168 100644 --- a/README.md +++ b/README.md @@ -27,7 +27,7 @@ The intent for this flat binary is to be trivially loaded and jumped to. Demo ---- -In `demo.c` there is a simple function that's used for demonstration and +In `demo/demo.c` there is a simple function that's used for demonstration and testing. To test the GDB stub out, you can launch an instance of the full-system emulator [QEMU](https://www.qemu.org/) as follows: @@ -41,7 +41,7 @@ You can then launch your local GDB client with the `demo.gdbinit` script to get your GDB client to connect to the virtual serial port and begin debugging the demo application: - gdb --command=demo.gdbinit + gdb --command=demo/demo.gdbinit For example, step a couple of times and print out the value of `x`: diff --git a/demo.c b/demo.c deleted file mode 100644 index d1f18b7..0000000 --- a/demo.c +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Copyright (c) 2016-2019 Matt Borgerson - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -#include "gdbstub.h" - -static void simple_loop(void) -{ - volatile int x; - int i; - - x = 0xdeadbeef; - for (i = 0; 1; i++) { - x ^= (1 << (i % 32)); - } -} - -/* This will be called at startup. */ -void _start(void) -{ - /* Enable debugging hooks and break */ - dbg_start(); - - /* Example code to debug through... */ - simple_loop(); -} diff --git a/demo.gdbinit b/demo.gdbinit deleted file mode 100644 index 19be38e..0000000 --- a/demo.gdbinit +++ /dev/null @@ -1,8 +0,0 @@ -# To observe RSP packets, enable the following line: -# set debug remote 1 - -symbol-file gdbstub.elf -target remote 127.0.0.1:1234 -b simple_loop -layout split -c diff --git a/demo/demo.c b/demo/demo.c new file mode 100644 index 0000000..d1f18b7 --- /dev/null +++ b/demo/demo.c @@ -0,0 +1,44 @@ +/* + * Copyright (c) 2016-2019 Matt Borgerson + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +#include "gdbstub.h" + +static void simple_loop(void) +{ + volatile int x; + int i; + + x = 0xdeadbeef; + for (i = 0; 1; i++) { + x ^= (1 << (i % 32)); + } +} + +/* This will be called at startup. */ +void _start(void) +{ + /* Enable debugging hooks and break */ + dbg_start(); + + /* Example code to debug through... */ + simple_loop(); +} diff --git a/demo/demo.gdbinit b/demo/demo.gdbinit new file mode 100644 index 0000000..19be38e --- /dev/null +++ b/demo/demo.gdbinit @@ -0,0 +1,8 @@ +# To observe RSP packets, enable the following line: +# set debug remote 1 + +symbol-file gdbstub.elf +target remote 127.0.0.1:1234 +b simple_loop +layout split +c -- cgit v1.2.3