Commit graph

2166 commits

Author SHA1 Message Date
Solomon Peachy
090bd9592d Remove the firmware decompressor and a few more other SH-stragglers.
Change-Id: Ic568755afcccc6db1b6e791b1ed0d2588b90356f
2020-11-03 23:43:32 +00:00
Solomon Peachy
41a6da6043 builds: Enable -fno-delete-null-pointer-checks globally
* arm failures in lua, wolf3d, quake, flac
 * m68k failures in lua, wmapro
 * mips ???

I still think that most of these are actually due to latent bugs or
ambiguous code.

Change-Id: I4c9751d2b5c7a66253b313bfbc75fcd721b118d6
2020-10-28 04:10:29 +00:00
Solomon Peachy
804a49886a statusbar: Make statusbar height equal SYSFONT_HEIGHT
And size elements horizaontally based on SYSFONT_WIDTH

Unfortunately we need 16px icons to make 16px statusbar look right
but at least it _works_ properly now.

Also: all targets currently use 8-px SYSFONT, except some hosted bootloaders

Change-Id: I0cdf97e6ef47ec49693ef79667b200595b4fe075
2020-10-26 19:52:40 +00:00
William Wilgus
299c237075 'Fix RED e200 Framebuffer_viewport_rewrite
Free malloc in checkwps too

Change-Id: I2b8fcbc94beb0644b643d3b7a9cb53bc26fc8a51
2020-10-26 15:50:42 -04:00
William Wilgus
04e7bacc4c FIX RED Framebuffer_viewport_rewrite
Change-Id: I716929fbee48bef68d7383efb944f9d491fdfe4d
2020-10-26 15:25:07 -04:00
James Buren
c5d7cd5f9f h300: add support for ROM image generation
Change-Id: I6e0985de370609bae98ba6eab487bf43eb4191b6
2020-10-26 01:37:42 +00:00
Dominik Riebeling
1801dcc999 rbutil: Fix native Windows build for tools.
- When make on Windows finds sh.exe it will try to use that. We use
  cmd.exe calls when detecting Windows, so make sure we use cmd.exe as
  shell.
- Add missing Windows compatibility to tomcrypt Makefile.

Change-Id: Iaef133ca27472a5ddf449174d540983f15c66aea
2020-10-21 21:33:39 +02:00
Dominik Riebeling
a05d061aa3 rbutil: Pass isysroot to rbutil libs on macOS.
On macOS we pass the full path to the compiler. On recent versions this
causes the compiler to not find its SDK path, this needs to get passed
via the isysroot option.

Change-Id: Iea2820e1755cc80e12691119dfa31d70938ea511
2020-10-18 19:16:27 +02:00
Dominik Riebeling
7603533f7f tools: Modernize rbspeex Makefile.
- Replace echo with make internal info function.
- Make dependency generation implicit to avoid another compiler call.
- Align object handling with libtools.make.

Change-Id: Iaaddd17af04039dcd8948399bc99d21def05181d
2020-10-18 19:07:08 +02:00
Solomon Peachy
edbdefa09a hosted: Drop a bootloader version string in /etc, and report it in debug menu
Change-Id: I4d72d7800dbff56619898b6bc9d0f81a6c561598
2020-10-17 21:40:40 -04:00
Solomon Peachy
b1e21bbd7a hosted: Consolidate common config of hiby-based units into a common header
* Enabled MULTIDRIVE and ROOTFS_HOTPLUG for full hotswap!
   (Requires updated bootloader/integration!)

Change-Id: I7dad1f8d375e087c36fce37bec3e9184602ede50
2020-10-17 20:45:41 -04:00
Solomon Peachy
7d3e39cfd8 hiby_patcher: Fix a couple of bugs in the hotplug scripts
Change-Id: Id8782b843c626aba37a954b930f9bcaac21bc073
2020-10-17 18:38:53 -04:00
Solomon Peachy
cd721754d0 Fix configure target name for the erosq/k series.
Change-Id: Ic114d8d26209d37133ffa48d232ab278a0309dcd
2020-10-16 21:16:13 -04:00
Solomon Peachy
d993448c9f Add Samsung YP-R1 to the builds.pm file, as an unstable (but usable) target.
Change-Id: I0987e66767f266efd59d1459b944570d9bd14874
2020-10-16 17:28:45 -04:00
Solomon Peachy
1a76bc403e erosq: Fix up builds.pm to match what we actually call the target
Change-Id: I2cedc68ca408a805815954a205ba43c3c9e970cb
2020-10-15 17:34:04 -04:00
Solomon Peachy
455a23bdab Promote the eros q/k to "unstable"
Change-Id: I27c5a06f6655fecb850fce4e5ea5305026194ab7
2020-10-15 13:33:13 -04:00
Solomon Peachy
82787709bd update the hibi patcher script to handle initial m3k stuff
Change-Id: I63ed8443952888da3dafb23ff6e7daf9c7aca574
2020-10-15 13:31:28 -04:00
Solomon Peachy
b4865b05b0 Build: Bump all toolchains to GCC 4.9.4 + Binutils 2.26.1
GCC 4.9.4 was already used for MIPS and all hosted targets; this enables
it across the board for everything (ie m68k and arm native)

Other changes:

 * Use '-Os' as the default optiomization for all targets
   (was only disabled for arm native)
 * Enable -funit-at-a-time and -Wextra
 * Drop all obsolete toolchain patches
 * Update ARM multilib/exception patch
 * Bump toolchain libs (gmp, mpfr, mpc) to recommended versions, and
   add 'isl' to enable better optimization & vectorization opportunities.

   (Will revisit optimization for the codecs and plugins at a later date)

Confirmed working:

 * armv4t     (ipodmini2g and many other PP502x targets)
 * arm >= v5  (sansaclipplus, ipod6g, ipodnano2g, sansafuzeplus)
 * m68k (ihp100)

Change-Id: If9ed405ae0f289d9adea46d4cf46bfefc2f4250d
2020-10-13 16:27:07 +00:00
Solomon Peachy
9ad30869b8 xduoox3ii/x20: Work around a nasty OF interaction bug
...that can result in your sd card getting wiped at startup

Change-Id: I19fc9836b321adbb1df3fc741bc2593965c624f6
2020-10-12 13:40:24 +00:00
Solomon Peachy
2a471e288c New port: AIGO EROS Q / EROS K
The Q and K have a slightly different case, but the hardware under the
shell is completely identical.

These models are rebadged versions:

 * Hifiwalker H2   (== Q)
 * AGPTek H3       (== K)
 * Surfans F20     (== K)

Other notes:

  * Significant improvements in the shared Hiby-platform launcher/loader
    * SD card can theoretically be hot-swapped now
    * Support external USB mass storage!
  * Some consolidation of Hiby-platform targets
  * Some consolidation of plugin keymaps

Todo/known issues:

 * Keymaps need to be gone over properly
 * Convert to HAVE_SCROLLWHEEL?

Change-Id: I5a8a4f22c38a5b69392ca7c0a8ad8c4e07d9523c
2020-10-11 16:37:17 -04:00
Solomon Peachy
aabc8aca47 New port: FiiO M3K
Most credit goes to:  Roman Skylarov
Additional integration and refactoring by myself.

 *** COMPLETELY UNTESTED ***

Change-Id: Ia64c36d92e0214c6b15f7a868df286f8113ea27b
2020-10-09 12:41:18 -04:00
Solomon Peachy
4231c2c83f codecs: Add support for the 'VTX' ZX Spectrum chiptunes format.
This codec requires floating point.

Original author:  Peter Sovietov
Ported to Rockbox:  Roman Skylarov
Further integration and bugfixes:  Solomon Peachy

Change-Id: I781ecd3592dfcdbbc694063334350342534f1d6c
2020-10-09 11:39:25 -04:00
Solomon Peachy
a511917f18 configure: Compact the target selection a bit
Change-Id: Ic20f4085d2a135f6596d3e80be8ff1017c6b7480
2020-09-29 09:25:00 -04:00
William Wilgus
2ffe87902d Add Invalid Voice Announcement to the voice system FS#13216
When a voice file is invalid or fails to load the voice system splash a
message 'Invalid Voice'

Now we supply a single voice file (currently only english is used)
the support for other languages is in but I haven't set it up to
look for anything but InvalidVoice_english.talk

Also adds a one time kill voice thread function
 ie. it doesn't allow re-init after killing the voice thread & queue

Change-Id: I7b43f340c3cc65c65110190f0e0075b31218a7ac
2020-09-20 16:08:49 -04:00
William Wilgus
4fa945d810 disktest_sysbench script
a script to help make disk benchmarks across USB

Change-Id: Ifa4e88d2dbaba03b804a4d03ff953f94117ad8e4
2020-09-17 16:20:43 +00:00
Solomon Peachy
56b49b3074 fonts: Use '08-Rockfont' as FONT_SYSFIXED on targets with 128x64 screens
..It's already the default UI font on those targets

Change-Id: If8cb44da650d19882e4bd4b641af2f4fa59c1cd1
2020-08-31 13:32:24 -04:00
Solomon Peachy
910e600ba2 Mark xDuoo X3 as "stable" in the build system as it now has a manual
Change-Id: I8df272b4f8f2a19bbe49dfb938243ed592201797
2020-08-24 15:28:39 -04:00
Solomon Peachy
c7c4672668 builds: Don't exclude 'retired' targets from the build list
Change-Id: Ic3b098e1d2ead235035e87d57877c351e28a54d9
2020-08-21 16:13:29 -04:00
William Wilgus
889bcc0f76 WIP open_plugins.rock viewer
OP allows you to use Open With.. to call plugins with parameters
called directly it  acts as a shortcut list for plugins

  open_plugins.rock interfaces with the open_plugin core

  When opened directly it acts as a viewer for the plugin.dat file
  this allows you to edit the paths and parameters for
  core shortcuts as well as your added plugins

  If a plugin is supplied to the viewer it is added to the dat file

  If instead the plugin has previously been added then it is run
  with the parameters you previously supplied

-----------------------------------------------------------------------------
Added export to .opx files
this allows shortcuts to plugins with parameters to be called from
 the file browser

Change-Id: Ib8b05a60b049fb1d5881031ca09a07e3307d375a
2020-08-17 22:17:15 -04:00
Dominik Riebeling
adce547e13 rockboxdev: Make it work on macOS.
macOS doesn't know about nproc; sysctl is the tool to be used on macOS.

Change-Id: Ic7dcf9be51d7ef7b52394ebb2a4df1dc3e31097b
2020-08-07 22:18:41 +02:00
Solomon Peachy
ef05dc9c3b langstats: Use updatelang instead of 'genlang -u'
Change-Id: I30a86bf9035e9e538603d0cc730a0449bf9a17d7
2020-07-29 20:04:46 -04:00
Solomon Peachy
f495c4846d updatelang: Fix the ignore list having issues with line endings.
Change-Id: Ib4add14ff7415c42d0cc2ec11ec918ec02fac72d
2020-07-28 18:55:16 -04:00
Solomon Peachy
20e400e74b languages: Add a few more exclusions to the same-as-english ignore list
Change-Id: I47d509e9d2ccf29ddd81bb15845f57544422626a
2020-07-28 15:29:44 -04:00
Solomon Peachy
530bc16679 updatelang: Extract langstr ignore list into a separate file so it can be shared
Change-Id: I4b77e1fe435e1f02df665f18e69b5c1db0a2e0b5
2020-07-28 11:11:39 -04:00
Solomon Peachy
2aeeeb43c9 updatelang: Fix false warnings about deprecated strings
Change-Id: Ia208909ed42dc7f9b8bd7d22ca88f1a1e47d0576
2020-07-28 09:17:46 -04:00
Solomon Peachy
5da59ce2fd updatelang: more tweaks for master language and sub-languages
Change-Id: I5af62b2f03bb4ee34518592e14c6ded3ccfea4e3
2020-07-28 00:12:23 -04:00
Solomon Peachy
f30f1bb467 updatelang: don't special-case english-us yet
Change-Id: If1a331d4f603154c036cd6c6b46f3a11e5e595e4
2020-07-27 22:17:40 -04:00
William Wilgus
be04c4be0a Voice TSR Plugin Demo
allows user to run plugin in background that voices
status messages

grouping is now working it counts ; as the end of a group

sleep timer remaining is not voiced if sleep timer is not active

TODO
manual entries

Change-Id: I39e8500df6440c07d2a3347513c749d5e155d1cc
2020-07-27 20:47:03 -04:00
Solomon Peachy
b9d13b898d genlang: strip out the '-u' mode as it's now handled by updatelang
Change-Id: Ic05cc72282cc016048e292ee0bef41c38148af8c
2020-07-27 17:20:59 -04:00
Solomon Peachy
cda5b055fe updatelang: Fix a few straggling issues
Change-Id: I549a33c94c339151cf5a74f13a8ecb73454bbfd4
2020-07-27 16:56:18 -04:00
Solomon Peachy
8159c9537f updatelang: Don't rely on non-core modules
Change-Id: I262f47e10aee51116375238b458270e92e25154d
2020-07-27 19:19:02 +00:00
Solomon Peachy
2305966d84 updatelang: New tool to update language files.
Change-Id: I3c18bb34770b4b4b321199149a2ea693dfbdb7f4
2020-07-27 14:58:38 -04:00
Solomon Peachy
02b970fa79 Update French translation (Stéphane Moutard-Martin)
Change-Id: Ibe247553965024a000749386a95e73dcc18c493e
2020-07-24 21:15:58 -04:00
Solomon Peachy
658026e626 [4/4] Remove HAVE_LCD_BITMAP, as it's now the only choice.
Note:  I left behind lcd_bitmap in features.txt, because removing it
would require considerable work in the manual and the translations.

Change-Id: Ia8ca7761f610d9332a0d22a7d189775fb15ec88a
2020-07-24 21:20:13 +00:00
Solomon Peachy
8cb555460f [3/4] Completely remove HWCODEC support
'swcodec' is now always set (and recording_swcodec for recording-capable
units) in feature.txt so the manual and language strings don't need to
all be fixed up.

Change-Id: Ib2c9d5d157af8d33653e2d4b4a12881b9aa6ddb0
2020-07-24 21:20:13 +00:00
Solomon Peachy
0c4f89370d [2/4] get rid of HAVE_LCD_CHARCELLS
HAVE_LCD_BITMAP is now redundant.

lcd_bitmap is always-on in features.txt so manual and lang strings
don't have to change

Change-Id: I08eeb20de48099ffc2dc23782711af368c2ec794
2020-07-24 21:20:13 +00:00
Solomon Peachy
092c340a20 [1/4] Remove SH support and all archos targets
This removes all code specific to SH targets

Change-Id: I7980523785d2596e65c06430f4638eec74a06061
2020-07-24 21:20:13 +00:00
Solomon Peachy
a5df94beb5 build: Tweaks to better support non-English as primary language
* get rid of $(LANGUAGE) in top-level makefile (and configure script)
 * un-hardcode English-as-primary-language in a couple more places
 * allow DEFAULT_VOICE_LANG to be overriden

To actually change the primary from English, one must change:

 * $english in voice.pl
 * hardcoded 'english' in rbutil
 * $ENGLISH in apps/lang/lang.make
 * DEFAULT_VOICE_LANG in apps/talk.c
 * configure script (default prompt)

Of course, if one wants to change the default UI language, it's simpler
to change the default language setting variable at compile time, or
perhaps by adding a configuration file with the desired value into the
.rockbox directory when the .zip is assembled.

Change-Id: If5cf76019d416e838628a2eccd4ec7d6cbaeeb74
2020-07-21 17:22:45 +00:00
Solomon Peachy
688c89cfe1 genlang: More voice-related fixes.
* Use consistent ID numbering
 * Use consistent logic for voicelist and voicebin files
 * Fix situations where English <-> English would fail in strange ways
 * Delete leftover tmpfile.
 * Off-by-one error in voice validation code
 * Off-by-one error in voicelist generation

Change-Id: Ib3cea2c6612138b1cbe614dacbe51000199cc9ad
2020-07-21 11:59:47 +00:00
Solomon Peachy
1748b475a9 voice: Allow use of an existing (textual) voiceids file
If it's present, we don't need to generate one, which means we don't
need to know the target name and features list.

The next step is to accept the binary variant that rbutil uses
so we can generate a complete voice file on the cmdline.

Change-Id: I1a355f985e6af46b11610de781996000110ae9de
2020-07-19 01:34:42 -04:00