Commit graph

3498 commits

Author SHA1 Message Date
Dan Halbert
a0c9188d0d Merge remote-tracking branch 'adafruit/9.2.x' into merge-from-9.2.x-2025-05-23 2025-05-23 09:05:14 -04:00
Dan Halbert
8da8e3115e I2CTargetRequest: do close in deinit 2025-05-21 16:45:58 -04:00
Dan Halbert
7d3dd30a6b i2ctarget: Add deinit() to I2CTargetRequest; remove close() 2025-05-21 13:00:37 -04:00
Scott Shawcroft
2601436eb2
Fix vectorio in group tracking
They have Group specific state so limit them to one group at a time.

Fixes #10226
2025-05-09 15:55:45 -07:00
Scott Shawcroft
a3506a79a3
Merge pull request #10318 from FoamyGuy/tilepalettemapper_tilegrid
Integrate TilePaletteMapper and TileGrid further
2025-05-09 11:08:11 -07:00
foamyguy
04b98ed71f fix pixel_shader property name, add tilegrid property and set tilegrid to None before it is bound, disallow TPM from being bound multiple times. 2025-05-09 09:56:34 -05:00
foamyguy
4fb7d44714 pixel_shader back to required on TileGrid. TPM init with no tilegrid or width/height, internal bind function is used to bind a TileGrid to a TilePaletteMapper when the TileGrid is init with or has pixel_shader set to a TPM 2025-05-08 18:08:56 -05:00
foamyguy
1b894c5e4e fix TileGrid type in docstring 2025-05-08 07:55:55 -05:00
foamyguy
eb7fc97fb2 fix docstring triple quote. 2025-05-07 18:59:19 -05:00
foamyguy
01da5c7c88 make TilePaletteMapper accept TileGrid as arg, make pixel_shader optional on TileGrid init, make TPM mark single tile dirty instead of whole TileGrid when mapping is changed. 2025-05-07 15:24:32 -05:00
Bernhard Bablok
f54b0d7384 added whitespace 2025-05-07 08:31:58 +02:00
Bernhard Bablok
28ee20abcb implement spectra6 support 2025-05-06 19:20:16 +02:00
Bob Hammell
fd2500da6b Update formatting 2025-05-06 10:13:48 -04:00
Bob Hammell
f8406397fe Update end() docstring 2025-05-06 09:17:29 -04:00
Bob Hammell
fa565e5fa4
Update shared-bindings/audiomixer/MixerVoice.c
Co-authored-by: Mark <56205165+gamblor21@users.noreply.github.com>
2025-05-06 05:47:08 -04:00
Bob Hammell
bcda5a4d02
Update shared-bindings/audiomixer/MixerVoice.c
Co-authored-by: Mark <56205165+gamblor21@users.noreply.github.com>
2025-05-06 05:46:59 -04:00
Bob Hammell
2c80f37b87
Update shared-bindings/audiomixer/MixerVoice.c
Co-authored-by: Mark <56205165+gamblor21@users.noreply.github.com>
2025-05-06 05:46:51 -04:00
Bob Hammell
ba20540a1f
Update shared-bindings/audiomixer/MixerVoice.c
Co-authored-by: Scott Shawcroft <scott@tannewt.org>
2025-05-05 21:14:46 -04:00
Bob Hammell
1c7a0ccf2d Update docstring 2025-05-05 15:42:34 -04:00
Bob Hammell
209d5160ab Update docstring 2025-05-05 15:28:41 -04:00
Bob Hammell
8c12ec27b0 Add end() method to MixerVoice to allow samples to finish playing before ending looping 2025-05-05 05:57:42 -04:00
Cooper Dalrymple
e855e3e1ba Limit feedback range to 0.1 - 0.9 2025-05-01 10:54:10 -05:00
Cooper Dalrymple
ba81c6b1c4 Implement allpass filters. 2025-05-01 10:42:03 -05:00
Cooper Dalrymple
e729849fac Initial setup of phaser effect. 2025-05-01 08:15:43 -05:00
Scott Shawcroft
91cf8fb83d
Make collect the default 2025-04-24 14:59:07 -07:00
Scott Shawcroft
35ffb64a11
Apply suggestions from code review
Co-authored-by: Dan Halbert <halbert@halwitz.org>
2025-04-24 12:29:57 -07:00
Scott Shawcroft
c340596580
Add selective collect to memory allocations
By selectively collecting an allocation, we can skip scanning many
allocations for pointers because we know up front they won't have
them. This helps a ton when large buffers are being used and memory is
slow (PSRAM). In one Fruit Jam example GC times drop from 80+ms to
~25ms. The example uses a number of bitmaps that are now no longer
scanned.
2025-04-22 14:07:00 -07:00
Scott Shawcroft
492f6e90e8
Merge pull request #10263 from tannewt/next_code_working_dir
Add working_directory for subsequent code file
2025-04-22 14:03:54 -07:00
Scott Shawcroft
3377765004
Add working_directory for subsequent code file
This allows subfolders to be treated similar to / for multiple
apps within different folders.

Also, fix up the internal current working directory so it doesn't
depend on volumes.

Fixes #9045 and fixes #8409.
2025-04-22 09:58:45 -07:00
Dan Halbert
7d65991f2c Merge remote-tracking branch 'adafruit/main' into wifi-power-management 2025-04-21 16:09:23 -04:00
Scott Shawcroft
b2c338bfd3
Merge pull request #10196 from gamblor21/audioeffect-reverb
Audio Effect Reverb
2025-04-21 11:19:48 -07:00
Scott Shawcroft
68e8136516
Merge pull request #10275 from dhalbert/dont-no-return-weak-functions
Don't NORETURN MP_WEAK functions
2025-04-21 11:12:56 -07:00
Dan Halbert
517fd0685e Don't NORETURN MP_WEAK functions 2025-04-20 22:26:05 -04:00
Dan Halbert
b1ce99a97d Merge branch 'main' of https://github.com/adafruit/circuitpython into wifi-power-management 2025-04-20 21:03:44 -04:00
gamblor21
3478eea1f0 Merge remote-tracking branch 'adafruit/main' into audioeffect-reverb 2025-04-20 09:25:38 -05:00
Dan Halbert
1ff3dff298 add wifi.radio.power_management et al 2025-04-19 21:06:19 -04:00
gamblor21
f6357d5ddb Change to how malloc is called 2025-04-19 15:35:42 -05:00
gamblor21
eb53338e1b Revert "Fixes for zephyr build"
This reverts commit f011df26fa.
2025-04-19 15:33:39 -05:00
Mark
670d046333
Merge pull request #10258 from relic-se/multi-tap-delay
Audio Effect Multi-Tap Delay
2025-04-19 10:42:46 -05:00
gamblor21
f011df26fa Fixes for zephyr build 2025-04-19 09:51:02 -05:00
Cooper Dalrymple
a174de4ff7 Fix implicit Optional error in docs. 2025-04-16 14:52:51 -05:00
Scott Shawcroft
29018ad83f
Merge pull request #10260 from jepler/noreturn-annotations
Mark functions as NORETURN
2025-04-16 10:51:39 -07:00
55b0f157c7 Mark functions as NORETURN
Surprisingly this leads to some code size savings on itsybitsym4,
even though LTO optimization should have let the compiler deduce
(almost) all of this.

When a compiler knows a call can never return, it is possibly able
to avoid emitting code, such as saving caller-saved registers to the
stack, or doing _ANYTHING_ affter the function returns, explaining
why code size savings is possible with this attribute.

With the exception of raise_deinited_error, these were found by checking
the functions found by `-Wmissing-noreturn` and making a case by case
decision. However, this dignostic can't be enabled unconditionally as it
has false positives, functions we do NOT want to mark as noreturn.

Testing performed: built itsybitsy m4, flash size savings 128 bytes.
didn't test on hardware as none came on this trip with me.
2025-04-16 16:57:09 +02:00
Cooper Dalrymple
8f2b7badd3 Documentation updated. 2025-04-16 08:33:55 -05:00
Cooper Dalrymple
59d48c8655 Add mutli-tap functionality. 2025-04-15 21:54:51 -05:00
foamyguy
c07e852bcb make x2,y2 optional and update docstring. 2025-04-15 16:46:52 -05:00
Cooper Dalrymple
1bf769a083 Initial setup of multi-tap delay effect. 2025-04-15 16:45:38 -05:00
foamyguy
75ee7b42c3 fix swapped argument required vars 2025-04-14 20:15:40 -05:00
Dan Halbert
97d037b3c4 wip 2025-04-14 20:27:53 -04:00
gamblor21
86eca38566 Moving to audiofreeverb and renaming to Freeverb 2025-04-11 17:15:50 -05:00