rockbox/tools
Aidan MacDonald 969a2b65c7 tools: add RegGen utility
This is a tool written in C which does basically the same job
as regtools' headergen_v2, but using a new input format which
is less verbose than XML. In the interests of simplicity it
omits some features that regtools does support, like variant
registers or the SoC selector stuff so it cannot completely
replace regtools on the i.MX platforms that use these features.

RegGen doesn't generate API macros like regtools does; instead
these are expected to be maintained by hand, since it's arguably
easier to do that way.

Since RegGen has no dependencies beyond a C compiler it can
be integrated with the build system without adding any new
build time dependencies. This will allow generating headers
automatically, which is a substantial improvement over running
headergen_v2 by hand and committing the generated output.

The RegGen tool itself is licensed as GPLv3+, but generated
headers can be licensed as the user chooses.

Change-Id: If18f9577f8f4df6e2c97c1665b725773dd5466f0
2025-12-29 18:51:56 -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
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 Commit FS#9170 by Dave Hooper. Adds support for profiling on ARM, and fixes various issues with compiling profile builds. Also, note that profile_reader.pl syntax has changed. 2008-07-28 22:43:41 +00:00
r1_patcher Rockbox for the HiBy R3 Pro II/R1 2025-12-27 15:44:54 -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 builds: Add Hiby R1 and R3ProII as Unstable targets 2025-12-27 17:07:42 -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 Rockbox for the HiBy R3 Pro II/R1 2025-12-27 15:44:54 -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 Updated our source code header to explicitly mention that we are GPL v2 or 2008-06-28 18:10:04 +00:00
dict2rdf.pl New dict2rdf script by Tony Motakis 2005-06-08 21:01:26 +00:00
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 Revert "genlang: Explicitly decompose all display strings" 2025-10-22 09:28:35 -04: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 Updated our source code header to explicitly mention that we are GPL v2 or 2008-06-28 18:10:04 +00:00
gigabeats.c fix yellow by acknowledging the fread() return code and also allow 2009-05-25 21:42:44 +00:00
gigabeats.h Updated our source code header to explicitly mention that we are GPL v2 or 2008-06-28 18:10:04 +00:00
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 Cleanup in tools/: Remove unused VB scripts and fix properties. 2008-05-08 19:01:21 +00:00
iaudio_bl_flash.bmp Make scramble add the flash logo when encoding for iAudio. It's only shown on M3 with the cowon loader versions I've seen, but the space is reserved in all coldfire iaudio flash files (was just zeroed before). 2008-03-18 20:58:52 +00:00
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 Updated our source code header to explicitly mention that we are GPL v2 or 2008-06-28 18:10:04 +00:00
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 initial take at upgrade script from v1 to v2 file format 2006-03-21 12:56:25 +00:00
list_targets.pl builds: Add an explicit 'simbuilds' list 2024-06-30 16:25:58 -04:00
lngdump.c tiny tool to help with dumping a binary lng file to the screen to make it 2007-08-10 22:04:47 +00:00
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 Updated our source code header to explicitly mention that we are GPL v2 or 2008-06-28 18:10:04 +00:00
mk500boot.c M:Robe 500: Add firmware patcher: Can decrypt firmware updates, patch them, and re-encrypt them. 2009-08-30 23:24:22 +00:00
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 Even when we don't encrypt a mi4 we still need to run the encrypt step so that the crc gets updated. 2006-08-30 20:20:52 +00:00
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 Removed executable flag 2007-01-09 23:29:07 +00:00
mr500.c mkboot500: fix compilation on MacOS 2024-12-17 13:33:35 +01:00
mr500.h M:Robe 500: Add firmware patcher: Can decrypt firmware updates, patch them, and re-encrypt them. 2009-08-30 23:24:22 +00:00
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 Toolchains: Update to GCC 9.5.0 2025-09-21 09:03:00 -04:00
romsizetest.pl when rom file is too big, mention how many bytes 2004-09-06 09:15:47 +00:00
root.make Rockbox for the HiBy R3 Pro II/R1 2025-12-27 15:44:54 -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 FS#10740 - rbutil: Test Cowon D2 OF file for CRC consistency before patching 2009-11-01 18:26:00 +00:00
telechips.h FS#10740 - rbutil: Test Cowon D2 OF file for CRC consistency before patching 2009-11-01 18:26:00 +00:00
testdbv2.c First runtime database support, self repairing, only playcount works for now, 2005-07-01 17:29:44 +00:00
thumb-cc.py tools: update shebang in thumb-cc.py 2024-03-30 11:58:40 -04:00
tools.make Specify correct dependencies for tools/descramble 2021-02-27 18:39:04 -05:00
ucl2src.pl Self-extracting loader: Cleaner method for inclusion of the UCL-compressed image. The input image is now checked for correctness and converted to C source. The Makefile still needs fixing... 2005-11-30 00:05:40 +00:00
updatelang updatelang: Respect the target ordering in individual phrases 2025-10-02 12:36:49 -04:00
usb_benchmark.c New USB stack 2007-11-22 20:51:00 +00:00
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: switch Greek Piper voice to a higher-quality model 2025-11-02 00:09:57 -04:00
VOICE_PAUSE.wav Replace the voicebuilding with a perl-based approach. Should greatly speed up building on Cygwin. See more in FS#7646. 2007-08-25 22:00:13 +00:00
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 Re-adding songdb.pl with support for tagcache. Works with mp3 and has partial support for ogg. 2006-06-28 15:44:51 +00:00
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 Cleanup in tools/: Remove unused VB scripts and fix properties. 2008-05-08 19:01:21 +00:00
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 Add beginning of DSP code (done by Catalin Patulea), but don't enable it 2008-05-16 21:16:01 +00:00