rockbox/tools
Aidan MacDonald d5506dfa22 echoplayer: implement boot from debugger
Add a 'make start' target which starts Rockbox using a
debugger. This only works to load the main binary, but
makes it much faster to test changes that don't affect
plugins/codecs.

Because SDRAM isn't accessible at reset and the main
binary is usually too big to fit in SRAM, the bootloader
must be flashed first before Rockbox can be loaded in
this way.

The boot protocol involves GDB writing a check pattern
to SRAM while the CPU is held in reset. The bootloader
detects the pattern and takes a breakpoint, by which
time SDRAM is accessible; GDB can then upload a binary
ELF image (copied as a raw file, since the ELF will be
loaded using RB's ELF loader) and leave the breakpoint
to continue booting.

From there the bootloader can load the ELF binary from
memory, exactly like a normal SD card boot.

Change-Id: I4eb971b4162ea422e38660455cfa0958cefaa18d
2026-01-26 08:55:01 -05:00
..
agptek_rocker Agptek Rocker: Slightly tweak build procedure 2018-06-14 11:02:18 +02:00
checkwps checkwps: Validate all fonts in themes 2025-10-27 09:52:16 -04:00
database Add line break to fprintf in database.c 2025-12-20 02:47:08 -05:00
docker_rbclient Update Dockerfile for Debian 12 2024-12-06 07:55:21 -05:00
echoplayer echoplayer: implement boot from debugger 2026-01-26 08:55:01 -05:00
fwpatcher fwpatcher: fix compile errors and warnings on modern Linux 2020-11-16 21:05:52 +00:00
hibyos_nativepatcher hibyos_nativepatcher: make tolerant of spaces in paths 2025-06-30 17:07:36 -04:00
iap Updated IAP commands. 2013-11-10 18:41:24 +01:00
profile_reader
r1_patcher hiby: r1_patcher: embed hiby_player.sh 2026-01-24 20:20:01 -05:00
rbspeex Don't force gcc as host compiler + fix clang warnings 2024-12-20 05:29:18 +01:00
reggen_src tools: add RegGen utility 2025-12-29 18:51:56 -05:00
release tools: Release scripts should only create artefacts for _stable_ targets 2025-04-05 20:47:23 -04:00
toolchain-patches Toolchains: Update to GCC 9.5.0 2025-09-21 09:03:00 -04:00
ucl rbutil: Fix native Windows build for tools. 2020-10-21 21:33:39 +02:00
vagrant Add Vagrant configuration for creating a development VM 2019-07-26 20:20:07 -04:00
addtargetdir.pl makefiles 2010-08-21 18:07:12 +00:00
autoconf.pl autoconf.pl: Add support for build folders with screen resolution (e.g. build-android-320x480). 2013-03-16 22:30:46 +01:00
bdf2bmp.c FS#12764 - bdf2bmp fails to compile 2012-10-14 12:12:25 +02:00
bmp2rb.c remove rockboxlogo after boot INIT_ATTR 2022-12-19 18:59:59 -05:00
build-info.pl tools: Alter the 'voice_url' in the [release] build-info 2025-04-01 07:35:12 -04:00
builds.pm voice: Switch default Turkish Piper TTS voice from fettah to dfki 2026-01-04 17:24:53 -05:00
buildzip.pl Rockbox for the HiBy R3 Pro II/R1 2025-12-27 15:44:54 -05:00
codecscan.pl Add codecs to librbcodec. 2012-04-25 22:13:20 +02:00
codepage_tables.c Add support for cp1252 (Western European) codepage. 2012-05-19 01:42:53 +02:00
codepage_tables.h Add support for cp1252 (Western European) codepage. 2012-05-19 01:42:53 +02:00
codepages.c Add support for cp1252 (Western European) codepage. 2012-05-19 01:42:53 +02:00
configure configure: Filter out "-Wl,-z,noexecstack" for winsim builds 2026-01-02 07:51:44 -05:00
convbdf.c unicode: Support characters beyond the first unicode plane 2025-09-12 09:24:30 -04:00
convttf.c unicode: Support characters beyond the first unicode plane 2025-09-12 09:24:30 -04:00
creative.c Convert non-ASCII characters to UTF-8 or C-string literals 2024-12-15 21:16:12 -05:00
creative.h tools/scramble: add support for a couple more Creative devices 2013-10-22 00:34:35 +02:00
descramble.c
dict2rdf.pl
disktest_sysbench.sh disktest_sysbench script 2020-09-17 16:20:43 +00:00
functions.make 3ds: 3ds port sources. First set of two 2025-10-23 20:09:09 -04:00
genlang voice: Support generating voice files from contents of voicestrings.zip 2026-01-09 20:50:09 -05:00
genshortcut.sh Fix Sim for newer distros 2018-12-07 21:04:30 +01:00
genversion.sh Fix makefile not rebuilding rbversion.h in some cases 2016-09-23 23:03:23 +02:00
gigabeat.c Don't force gcc as host compiler + fix clang warnings 2024-12-20 05:29:18 +01:00
gigabeat.h
gigabeats.c
gigabeats.h
hiby_patcher.pl WIP hosted port to the Surfans F28 2025-05-04 18:34:22 -04:00
hmac-sha1.c Don't force gcc as host compiler + fix clang warnings 2024-12-20 05:29:18 +01:00
hmac-sha1.h
iaudio_bl_flash.bmp
ipod_fw.c FS#13184: Support 2048 byte sectors and images without bootloader in ipod_fw 2020-03-29 18:48:09 +02:00
iriver.c tools/iriver: fix resource management in encode/decode functions 2021-08-06 03:08:10 +00:00
iriver.h
langignorelist.txt lang: Add a few more items to the "ignore if same as English" list 2024-06-07 12:21:54 -04:00
langstatus updatelang: Alter syntax for 'phrase missing entirely' errors 2025-04-19 21:59:01 -04:00
langtool.pl Fix FS#12003 'langtool.pl --deprecate is broken' 2011-04-07 07:50:29 +00:00
langv1tov2
list_targets.pl builds: Add an explicit 'simbuilds' list 2024-06-30 16:25:58 -04:00
lngdump.c
make.inc build: Nuke the ASMFLAGS workaround for gcc 3.4.x 2021-07-08 20:47:30 -04:00
Makefile checkwps: Validate all fonts in themes 2025-10-27 09:52:16 -04:00
makesrc.inc makefiles: Suppress stray backslash warnings with grep 3.8 2023-03-21 04:48:31 -04:00
mi4.c mi4: Correct a build warning/error that pops up on stricter hosts 2020-06-07 02:50:30 +00:00
mi4.h
mk500boot.c
mkboot.c tools: Fix up a bunch of compilation warnings 2024-12-03 20:37:55 -05:00
mkboot.h Optional dual-boot support in iAudio X5 and M5 bootloader, based on FS#5289. 2011-06-19 17:23:18 +00:00
mkinfo.pl mkinfo: Make memory size computation more accurate 2020-07-15 14:08:14 -04:00
mkmi4.sh
mkspl-x1000.c Make simulator compile on MacOS 2024-11-30 22:19:02 -05:00
mkzenboot.c tools: Switch CFLAGS to -Os -Wall -Wextra 2025-05-23 09:01:56 -04:00
mp3info.pm
mr500.c mkboot500: fix compilation on MacOS 2024-12-17 13:33:35 +01:00
mr500.h
multigcc.pl build: Use 'nproc' instead of counting /proc/cpuinfo entries 2025-09-21 09:03:00 -04:00
ovl_offset.pl Fix .ncbss from possibly overlapping .ncdata in plugins/codecs. 2013-07-11 04:32:23 -04:00
rdf2binary.c Don't force gcc as host compiler + fix clang warnings 2024-12-20 05:29:18 +01:00
rkw.c scramble: add RKW firmware file format encoder 2012-03-04 00:33:41 +01:00
rkw.h scramble: add RKW firmware file format encoder 2012-03-04 00:33:41 +01:00
rockboxdev.sh Update rockboxdev.sh: 2025-12-30 07:11:11 -05:00
romsizetest.pl
root.make echoplayer: add 'debug' and 'flash' targets to makefile 2025-12-31 08:10:40 -05:00
sapi_voice.vbs Add support for Microsoft Speech Platform. 2012-09-09 12:07:53 +02:00
scramble.c New port: iPod Nano 4G 2025-04-18 20:40:49 -04:00
songdb.pl misc: Remove all 'twiki' references in favor of up-to-date 'wiki' links. 2020-06-07 01:38:55 +00:00
telechips.c
telechips.h
testdbv2.c
thumb-cc.py tools: update shebang in thumb-cc.py 2024-03-30 11:58:40 -04:00
tools.make firmware: add build rules for RegGen-generated headers 2025-12-30 13:53:48 -05:00
ucl2src.pl
updatelang updatelang: Respect the target ordering in individual phrases 2025-10-02 12:36:49 -04:00
usb_benchmark.c
Vagrantfile Add Vagrant configuration for creating a development VM 2019-07-26 20:20:07 -04:00
version.sh build: Get rid of svn vestiges from version script 2020-07-09 20:29:33 -04:00
voice-corrections.txt lang: Update the documentation in the "master" english.lang 2025-05-08 21:19:34 -04:00
voice.pl voice: when building from vstrings targetid needs to come from within 2026-01-15 09:20:06 -05:00
VOICE_PAUSE.wav
voicefont.c voice: Fix voicefile generation 2024-04-17 09:01:45 -04:00
voicefont.h misc: Remove all 'twiki' references in favor of up-to-date 'wiki' links. 2020-06-07 01:38:55 +00:00
vorbiscomm.pm
wavtrim.c misc: Remove all 'twiki' references in favor of up-to-date 'wiki' links. 2020-06-07 01:38:55 +00:00
wavtrim.h misc: Remove all 'twiki' references in favor of up-to-date 'wiki' links. 2020-06-07 01:38:55 +00:00
wn2rdf.pl
xduoox3-updatebl.sh xduoox3: Script to patch a firmware image with a new bootloader binary 2024-07-03 16:51:58 -04:00
xml2h.py