Created
July 14, 2024 21:54
-
-
Save jepler/95973f261ef8181e1d4a3b494cd72d7b to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
-: ---------- > 1: ed1b9a4902 fixed frozen modules | |
-: ---------- > 2: bfa536f300 use board-LED as status-LED (sic!) | |
-: ---------- > 3: 957d011949 use board-LED as status-LED (sic!) | |
-: ---------- > 4: 3c10409708 support enable-pin as DigitalInOut (Badger2040W compatibility) | |
-: ---------- > 5: 123aad7607 optimize parameters | |
-: ---------- > 6: 2d30d6d2e2 add support for keycodes to make inky-buttons usable | |
-: ---------- > 7: 767be33b0a use GPIO6 as status led and and add PICO_LED for onboard-led | |
-: ---------- > 8: 0af689d542 added defines for VOLTAGE_MONITOR/A3 | |
-: ---------- > 9: d905ac0916 add board.LED | |
-: ---------- > 10: 9f9dcd013c Add Cardputer keyboard support | |
-: ---------- > 11: c5c78d3235 Moved DemuxKeyMatrix from board specific to a shared module | |
-: ---------- > 12: d7f491260d Removed DemuxKeyMatrix by default for atmel-samd board. Some do not have enough space | |
-: ---------- > 13: d05b509609 Fixed an error in the previous commit | |
-: ---------- > 14: d7bc2c26d7 Disabled DemuxKeyMatrix in all atmel-samd boards. Some boards do not have enuogh flash space | |
-: ---------- > 15: 88b4e38625 Moved DemuxKeyMatrix in the keypaddemux module | |
-: ---------- > 16: 8f1a4fdbc0 Fix documentation | |
-: ---------- > 17: 8883416349 Update shared-bindings/keypaddemux/DemuxKeyMatrix.c | |
-: ---------- > 18: bb683fa4cf Renamed module 'keypaddemux' in 'keypad_demux' and fix documentation | |
-: ---------- > 19: b314430c6e add RFGuru PICO board | |
-: ---------- > 20: d8a4c5088d Fix documentation | |
-: ---------- > 21: dc69c29dac rename ports/nrf to ports/nordic | |
-: ---------- > 22: 49099ceeab Expand deque implementation to include iteration and subscripting | |
-: ---------- > 23: 0a3bf135cd Enable new deque functionality in MicroPython configuration settings | |
-: ---------- > 24: 9b1c8ec61b Tests for expanded deque functionality | |
-: ---------- > 25: 4a1f715730 Update translation files | |
-: ---------- > 26: c4df571589 Enable new deque functionality in CP configuration settings | |
-: ---------- > 27: 59ec9554a1 remove old devcontainer-files | |
-: ---------- > 28: 48ba72cbb5 add devcontainter-configurations per port for CP 9.x.x | |
-: ---------- > 29: fe5da84289 added screenshot | |
-: ---------- > 30: be79afba41 removed some trailing whitespace | |
-: ---------- > 31: 4a65d57786 replaced trailing spaces (line-break) with explicit backslash | |
-: ---------- > 32: a7ad7c81e5 another trailing whitespace. Note that trailing whitespace is valid markdown for a line-break | |
-: ---------- > 33: 7e7918ea80 socketpool: alphabetize dict names | |
-: ---------- > 34: 0c1db5e0cc socketpool: add `type` property to Socket objects | |
-: ---------- > 35: 5973c4a86c socketpool: factor out constants | |
-: ---------- > 36: c793a021b8 ssl: work on anything implementing the socket protocol | |
-: ---------- > 37: 40cc50094c wiznet w5500: improve pin naming & enable ssl | |
-: ---------- > 38: b330989704 sslsocket: Simplify handling the timeout value | |
-: ---------- > 39: f960c5b7c1 SSLSocket: propagate any exception from socket.settimeout directly | |
-: ---------- > 40: 8c5d9d28d8 ssl: make bind & listen into void functions (they throw exceptions) | |
-: ---------- > 41: 14a19726f0 Fix return value of accept() | |
-: ---------- > 42: 25ad46d911 Update to IDF 5.2.1 | |
-: ---------- > 43: 4010f90666 Update deque documentation to reflect new functionality | |
-: ---------- > 44: bed6483823 Set SPI clock line idle polarity for CPOL=1 | |
-: ---------- > 45: 07c676c5b3 Fix enable phy check | |
-: ---------- > 46: 43c48949e6 Free up RAM on the S2 | |
-: ---------- > 47: 7951619109 Slow down octal SPI PSRAM because it is unstable (and doesn't compile) | |
-: ---------- > 48: 1343ad6be4 Completely disable assertions on opt builds to save flash space | |
-: ---------- > 49: 3e184e994c Add state integration based debouncing to the `keypad` module | |
-: ---------- > 50: 55782756ab Fix a couple other boards | |
-: ---------- > 51: 4576ae53a8 add board files | |
-: ---------- > 52: 4331d84f70 Translated using Weblate (Portuguese (Brazil)) | |
-: ---------- > 53: 1d7cbcc507 update with unique PID allocated from Espressif | |
-: ---------- > 54: ee3e0a23ba fix formtting issues | |
-: ---------- > 55: e79e04cb29 add board.BUTTON pin assignment (thanks @RetiredWizard ) | |
-: ---------- > 56: aa44ebe708 Fix typo with LCD_DC pin assignment (thanks @RetiredWizard!) | |
-: ---------- > 57: 7e992c85a4 rename SD SPI bus | |
-: ---------- > 58: 3b057a6f61 Add pin 38 for SDIO | |
-: ---------- > 59: 838a5b4d71 typo 🤦♂️ | |
-: ---------- > 60: e5f0579d6c SSLSocket: implement setsockopt (untested) | |
-: ---------- > 61: 63a33b406e Update esp32-camera | |
-: ---------- > 62: 751fbf0d31 Update mpconfigboard.mk | |
-: ---------- > 63: 358e47f655 prevent undefined function if CIRCUITPY_USB_HOST=0 | |
-: ---------- > 64: 0cfdbb1d04 fixed indentation - the strange pre-commit way | |
-: ---------- > 65: 969dfc005d Add M5Stack CoreS3 to CircuitPython | |
-: ---------- > 66: 32964f817d initial commit | |
-: ---------- > 67: 1dc376b888 Small fixes | |
-: ---------- > 68: 21fba25a06 cleanup naming | |
-: ---------- > 69: 529abf5b06 rp2 I2SOut: support both order for BCLK and LRCLK pins | |
-: ---------- > 70: 465698e561 Update ports/raspberrypi/boards/rfguru_rp2040/pins.c | |
-: ---------- > 71: 9d96cd153d @dhalbert hinted this to prevent start issues | |
-: ---------- > 72: 9d38a6ec9b remove trailing whitespaces | |
-: ---------- > 73: 8390481d58 don't compile and link PicoDVI if CIRCUITPY_PICODVI=0 | |
-: ---------- > 74: c6993aaabd disable PICODVI and USB_HOST | |
-: ---------- > 75: ec0ccd2919 pico_dvi: support 640x240 (tested @1bpp) and 800x240 (not tested) | |
-: ---------- > 76: 1e2eb1055c simplify the conditional tests for resolution modes | |
-: ---------- > 77: f4b882d62c initial commit | |
-: ---------- > 78: 3310b93b71 disable PICODVI and USB_HOST | |
-: ---------- > 79: ce64daa86e settings.toml: explicitly check that strings must be quoted | |
-: ---------- > 80: 4a08387c42 Fix syntax error | |
-: ---------- > 81: 659c38562b shared-module/fourwire/FourWire.c: make the chip_select pin optional | |
-: ---------- > 82: 65b167d392 initial commit | |
-: ---------- > 83: c71cf85641 espressif/common-hal/wifi/Radio.{c,h} handle new ESOP-IDF 5.2.1 auth failure codes | |
-: ---------- > 84: 393084ec9a organized the pins list | |
-: ---------- > 85: 415553c87b update i2c on sensebox mcu-s2 | |
-: ---------- > 86: 7b9e9d56fd add exception tag to build flags | |
-: ---------- > 87: 70c0957583 fix #9129 | |
-: ---------- > 88: f1ced6073d move CIRCUITPY_I2C_ALLOW_STRAPPING_PINS to correct file | |
-: ---------- > 89: 332375d0e3 CONFIG_FREERTOS_HZ = 1000 | |
-: ---------- > 90: d1cd3f855f Use MP_ARRAY_SIZE in some appropriate spots | |
-: ---------- > 91: 7d2e46aa19 Update adafruit_floppy | |
-: ---------- > 92: 1be36bd7cb Add floppyio to unix port, test mfm decoding | |
-: ---------- > 93: 9efb034cba Add pio-based flux capturing for rp2040 | |
-: ---------- > 94: b17e5b2339 update adafruit_floppy submodule again | |
-: ---------- > 95: 95b92abecd need an empty stub file in each port that uses floppyio now | |
-: ---------- > 96: 5a7ac6fb63 document Espressif AnalogIn limitations | |
-: ---------- > 97: 9f91eb42aa changed refresh_time as requested | |
-: ---------- > 98: 64b822cb66 Apply suggestions from code review | |
-: ---------- > 99: bb9968215c Runtime.serial_bytes_available: return count isntead of bool | |
-: ---------- > 100: c26060136d Update translation files | |
-: ---------- > 101: 4b44e324a5 address review; fix STM; add limitation for STM | |
-: ---------- > 102: 090f330ad5 Added support for Cardputer keyboard input. | |
-: ---------- > 103: fff18c5569 Removed unused debugging lines. | |
-: ---------- > 104: 4d8310e374 Fixed precommit spacing problems. | |
-: ---------- > 105: b938c84839 sunton esp32-8048s070 support | |
-: ---------- > 106: 8f55dfeb3d shared-module/fourwire/FourWire.c: make the chip_select pin optional | |
-: ---------- > 107: e847999a42 Runtime.serial_bytes_available: return count isntead of bool | |
-: ---------- > 108: 064ac2d932 address review; fix STM; add limitation for STM | |
-: ---------- > 109: e956f2994b Updated to use ringbuf and an event callback. | |
-: ---------- > 110: 814ebc6246 Make USB MIDI interface names customizable | |
-: ---------- > 111: e97ac185d2 factor out name-setting in usb_midi_set_names() | |
-: ---------- > 112: 9d8eebc65b shrink pygamer and pybadge | |
-: ---------- > 113: 3d183bbc5f Fixed board_serial_bytes_available prototype error. | |
-: ---------- > 114: 8b8927b24a Readded misssing prototypes. | |
-: ---------- > 115: 24069d963c Translated using Weblate (Portuguese (Brazil)) | |
-: ---------- > 116: e455824f8e Added support for the Watchy board by SQFMI. | |
-: ---------- > 117: 46fa5491bc Fixed creation and creation IDs. | |
-: ---------- > 118: 05252146ec Turn on bitmapfilter with the same criteria as bitmaptools | |
-: ---------- > 119: f6d79bcb49 individual boards and samd21: turn off bitmapfilter when bitmaptools is off | |
-: ---------- > 120: 2ccc6a97bf turn off bitmapfilter on samd51; test fitting on all Espressif | |
-: ---------- > 121: 8632701e2f Added keypress codes for OPT modifier. | |
-: ---------- > 122: d15e6e82b9 Turn bitmapfilter on non-camera ESP32-S2 | |
-: ---------- > 123: bd6b80131f Add display init to Hacktablet firmware | |
-: ---------- > 124: 8d85aebc3b Removed unnecessary USB information. | |
-: ---------- > 125: bcae6ae5cf Move the nRF saved word | |
-: ---------- > 126: a48be88474 further pruning of bitmapfilter builds | |
-: ---------- > 127: a079ca4498 Update ports/espressif/boards/sqfmi_watchy/mpconfigboard.mk | |
-: ---------- > 128: 2ef1f2a753 Git | |
-: ---------- > 129: ffe33aac89 Removed blank line at file end. | |
-: ---------- > 130: 6f2720cdb1 Removed frozen submodules. | |
-: ---------- > 131: aca3191a58 Add Max3421E support for usb host | |
-: ---------- > 132: 84e15d715a switch atmel-samd AudioOut to use finalizer | |
-: ---------- > 133: 7cb82b3086 Fix fbs3 reset | |
-: ---------- > 134: 511c0e6832 Switch to serial_write for just this one print | |
-: ---------- > 135: 0c61d51a39 fix typo in SafeModeReason.WATCHDOG doc | |
-: ---------- > 136: dff8db2b82 update frozen libraries | |
-: ---------- > 137: 2f53c6edbb ssl: Swallow errors during socket.close() | |
-: ---------- > 138: 93490c301f Don't close an SSL socket twice | |
-: ---------- > 139: 0b2175572c initial commit | |
-: ---------- > 140: 00a18fe2c9 Adafruit Pixel Trinkey M0 | |
-: ---------- > 141: 0bea0174aa Add some comments for the line clear | |
-: ---------- > 142: dcb08dc6fd Switch to another func for the output text | |
-: ---------- > 143: e1054ef624 Phrase it a bit better | |
-: ---------- > 144: 3e8cf0df01 Revert "Switch to another func for the output text" | |
-: ---------- > 145: 8b121d0e36 Translated using Weblate (English (United Kingdom)) | |
-: ---------- > 146: 2e499893ee Pixel Trinkey: D4, not D6 | |
-: ---------- > 147: b27bba9eb9 espressif/common-hal/busio/UART.c: clear input buf on creation to avoid stray byte | |
-: ---------- > 148: 0b4facf50f Update pin names to match info printed on board | |
-: ---------- > 149: 879f24175e Disable some things for the ssl enhancements to fit | |
-: ---------- > 150: 1c3112b540 Adafruit TRRS Trinkey M0 | |
-: ---------- > 151: 839fea043c adjust TRRS. Remove busio.UART.Parity if UART disabled | |
-: ---------- > 152: 5b8d63d8e6 TRRS trinkey: ShiftRegisterKeys off, NeoPixel frozen | |
-: ---------- > 153: 2af7ef8340 TRRS Trinkey: freezing NeoPixel is too large for ru | |
-: ---------- > 154: a4e60ec698 LFO: document some things that trip up users | |
-: ---------- > 155: bf10008c94 Update shared-bindings/synthio/LFO.c | |
-: ---------- > 156: 9979e1ac1d Update LFO implementation detail notes based on Dan's feedback | |
-: ---------- > 157: e54ea0c1a1 initial commit | |
-: ---------- > 158: 442def3e68 Add minimal Renode port | |
-: ---------- > 159: 8fcb1bfa0d Update LFO.c | |
-: ---------- > 160: 983771b1b0 Skip id check for renode builds | |
-: ---------- > 161: 3321442a37 Add renode as supported port | |
-: ---------- > 162: b63d422768 Fix more boards and docs | |
-: ---------- > 163: 79888acd15 Fix lint, ESP BLE and renode fetch deps | |
-: ---------- > 164: 3f419df3b6 Add extension info and always build with symbols | |
-: ---------- > 165: d04049df0e add bitmap_fonts to frozen | |
-: ---------- > 166: e9f060c650 Move stray board | |
-: ---------- > 167: 1e277f69f7 Add WeMos LOLIN32 Lite | |
-: ---------- > 168: fcd5938f7e Use IO0 for safemode | |
-: ---------- > 169: b1a8ef59f0 Update board name | |
-: ---------- > 170: fde6263d9e Switch to -Os for all 4MB builds | |
-: ---------- > 171: 0e2152985c espressif: add user-specified connect() timeout | |
-: ---------- > 172: 0cbd8b2e0c Add CIRCUITPY_USB_DEVICE config | |
-: ---------- > 173: 8f5c6920a9 Fix CI USB PID check | |
-: ---------- > 174: 0da83a9d37 Fix silabs | |
-: ---------- > 175: 40f6d531b3 Add missing file | |
-: ---------- > 176: e839be5e4e Apply suggestions from code review | |
-: ---------- > 177: 1eb70ae285 Fix build | |
-: ---------- > 178: d4a46ba153 Always define CFG_TUD_ENABLED | |
-: ---------- > 179: 5fa40ccc22 Fix cyw43 and build with usb_cdc | |
-: ---------- > 180: 3db7483762 Fix typo in AtomS3U pins | |
-: ---------- > 181: 6cbdb64d03 Fix builds without custom USB ID | |
-: ---------- > 182: 6d802fe616 Fix ESP builds | |
-: ---------- > 183: a86a9b73cb Fix ESP32-S3 builds with bleio | |
-: ---------- > 184: b8f3d231de espressif: fix build error when WIFI && !SSL | |
-: ---------- > 185: 91646290e5 espressif: Fix queueing background tasks from other core | |
-: ---------- > 186: 08a440d19b espressif: Don't hold interrupts disabled a long time | |
-: ---------- > 187: 50a971ea80 espressif: enable MP3Decoder on esp32s3 | |
-: ---------- > 188: 6237a14abc espressif: i2sout: Comment on these constants better | |
-: ---------- > 189: 6136c33a87 espressif: Use Philips data format for i2s | |
-: ---------- > 190: a8170f9930 MP3Decoder: ensure object uses finalizer | |
-: ---------- > 191: 7af2a13245 MP3Decoder: Allow port to override the allocator | |
-: ---------- > 192: aee66b2462 espressif: use custom allocator for MP3Decoder data | |
-: ---------- > 193: 334287b578 MP3Decoder: update mp3 submodule | |
-: ---------- > 194: 34a46de3eb MP3Decoder: Request defined behavior for signed integer shifts | |
-: ---------- > 195: c7807cf95b MP3Decoder: Need to zero out storage | |
-: ---------- > 196: d68efb803d try enabling mp3 on any espressif chip with at least 4MB flash | |
-: ---------- > 197: 4f020a2fd1 disable on 4MB C6, for now | |
-: ---------- > 198: 8cbd9d996c Update ports/espressif/mpconfigport.mk | |
-: ---------- > 199: 933efe082e add `--list` to stubs setboard | |
-: ---------- > 200: 7140008a18 grouped and sorted | |
-: ---------- > 201: cdd6fea907 add filtering option | |
-: ---------- > 202: 8c92cd80d0 fix typo | |
-: ---------- > 203: 77a4e429fd Always chdir back to root when reloading | |
-: ---------- > 204: 5347fd268f Translated using Weblate (Chinese (Pinyin)) | |
-: ---------- > 205: 49e0f5ab47 search by port, dont print dev info | |
-: ---------- > 206: 7234375e80 add subticks to RP2040 port_get_raw_ticks | |
-: ---------- > 207: 1a16e6aabd fix whitespace | |
-: ---------- > 208: a9d800b308 docs/i2ctarget: added examples and additional explanation to the `I2CTarget()` class | |
-: ---------- > 209: 862fff3b59 Add support for Ai Thinker ESP32-CAM boards | |
-: ---------- > 210: 9f5bce05bf Add support for Ai Thinker ESP32-CAM boards | |
-: ---------- > 211: 3b354696d8 Add support for Ai Thinker ESP32-CAM boards | |
-: ---------- > 212: 64f4928eec Add support for Ai Thinker ESP32-CAM boards | |
-: ---------- > 213: 2d94c01e1e Add support for ESP32-WROVER-DEV boards with Camera | |
-: ---------- > 214: a00365ecbd Add support for ESP32-WROVER-DEV boards with Camera (add IOnn aliases) | |
-: ---------- > 215: 2396f8ba5e Add support for Ai Thinker ESP32-CAM boards (add IOnn aliases) | |
-: ---------- > 216: 24f2e4f994 Add support for Ai Thinker ESP32-CAM boards (default flashlight to off) | |
-: ---------- > 217: 2584fc88f0 ports: rpi pico - i2ctarget update transaction restart register mask issue #: https://github.com/adafruit/circuitpython/issues/9232 | |
-: ---------- > 218: 5cace546fe docs/i2ctarget : removed extraneous dependency | |
-: ---------- > 219: 2a8b335a0f Feather nRF52840 Rev E has NEOPIXEL_POWER pin | |
-: ---------- > 220: 9e878f7b3d synthio: Calculate LFO.value at construction | |
-: ---------- > 221: 1865db24f8 Fix typo in start_advertising() param docs | |
-: ---------- > 222: 9cfcf9a683 [#8272] ports/challenger_rp2040_lte: fixes incorrect pin assignment for MISO | |
-: ---------- > 223: 9a12fbc4f8 Add Freenove name and ID to their board | |
-: ---------- > 224: c95477b6a7 update frozen libraries for 9.1.0-beta.2 | |
-: ---------- > 225: 8acfc0c70c set the connected status of a socket after UDP & raw connect | |
-: ---------- > 226: 21a9326203 update tinyusb to 15 May 2024 version | |
-: ---------- > 227: dd09492c45 Enable camera and SD power supply | |
-: ---------- > 228: 1681a3d8cb Added camera configuration in sdkconfig | |
-: ---------- > 229: bb47f35281 added explorer badge RP2040 board | |
-: ---------- > 230: bed97ed4c0 Update pins.c comment to indicate “VID” returns an int | |
-: ---------- > 231: 689c6fac20 Add ESP BLE GATT server support | |
-: ---------- > 232: daa11cb1c2 updates before header conversion | |
-: ---------- > 233: 747b7619ea update headers of most CircuitPython-only files | |
-: ---------- > 234: bb959ba094 save header change tool for posterity | |
-: ---------- > 235: ad5990ee74 fix typo | |
-: ---------- > 236: 6a93dd4b65 fix .ld file | |
-: ---------- > 237: e99d41e584 add missing pin for ESP32-S3-DevKitM-1 | |
-: ---------- > 238: b994c24768 update bradanlanestudio_explorer_rp2040 headers | |
-: ---------- > 239: dbef48d5e2 add #pragma once to all CircuitPython header files without any include guards | |
-: ---------- > 240: 950b5d09d2 guard2once -s ... | |
-: ---------- > 241: 296ad5096a qstrdefport.h: remove #pragma once | |
-: ---------- > 242: 3f4d9310ff CircuitPython files: replace STATIC with static | |
-: ---------- > 243: 16e9fe6ce6 fix a few regexps that are better as raw strings | |
-: ---------- > 244: 39c203aabb update frozen modules for 9.1.0-beta.3 | |
-: ---------- > 245: c9b5002897 shared-bindings/analogio/AnalogIn.c: fix Espressif limitations doc | |
-: ---------- > 246: 5850f01cbe Some cardputer definition improvements | |
1: 354da873c6 ! 247: 759a262b39 synthio: remove compatibility alias | |
@@ Commit message | |
surely OK to remove now. | |
## shared-bindings/synthio/Synthesizer.c ## | |
-@@ shared-bindings/synthio/Synthesizer.c: STATIC MP_DEFINE_CONST_FUN_OBJ_2(synthio_synthesizer_release_obj, synthio_synthe | |
+@@ shared-bindings/synthio/Synthesizer.c: static MP_DEFINE_CONST_FUN_OBJ_2(synthio_synthesizer_release_obj, synthio_synthe | |
//| :param NoteOrNoteSequence release: Any sequence of notes. | |
//| :param NoteOrNoteSequence press: Any sequence of notes. | |
//| :param LFOOrLFOSequence retrigger: Any sequence of LFOs. | |
@@ shared-bindings/synthio/Synthesizer.c: STATIC MP_DEFINE_CONST_FUN_OBJ_2(synthio_ | |
-//| for this function. This compatibility name will be removed in 9.0.""" | |
+//| :param ActionSequenceOrSequences start: Any sequence of ActionSequences | |
+//| :param ActionSequenceOrSequences stop: Any sequence of ActionSequences""" | |
- STATIC mp_obj_t synthio_synthesizer_change(mp_uint_t n_args, const mp_obj_t *pos_args, mp_map_t *kw_args) { | |
+ static mp_obj_t synthio_synthesizer_change(mp_uint_t n_args, const mp_obj_t *pos_args, mp_map_t *kw_args) { | |
enum { ARG_release, ARG_press, ARG_retrigger }; | |
static const mp_arg_t allowed_args[] = { | |
-@@ shared-bindings/synthio/Synthesizer.c: STATIC const mp_rom_map_elem_t synthio_synthesizer_locals_dict_table[] = { | |
+@@ shared-bindings/synthio/Synthesizer.c: static const mp_rom_map_elem_t synthio_synthesizer_locals_dict_table[] = { | |
{ MP_ROM_QSTR(MP_QSTR_release), MP_ROM_PTR(&synthio_synthesizer_release_obj) }, | |
{ MP_ROM_QSTR(MP_QSTR_release_all), MP_ROM_PTR(&synthio_synthesizer_release_all_obj) }, | |
{ MP_ROM_QSTR(MP_QSTR_change), MP_ROM_PTR(&synthio_synthesizer_change_obj) }, | |
2: a1773212cb ! 248: 9a6ee5938a synthio: Add, test synthesizer sequences. | |
@@ shared-bindings/synthio/Synthesizer.c | |
+//| | |
+//| If a sequence element is not of the appropriate type, the effect is undefined | |
+//| (currently in most cases an error message is printed and the sequence stops, | |
-+//| though this error cannot be caught) | |
++//| though this error cannot be caught). In particular, the behavior where an | |
++//| instruction sequence is a nested list is undefined behavior. | |
+//| | |
+//| .. note :: | |
+//| | |
+//| A maximum number of action sequences may be active at one time on a synthesizer. | |
+//| Currently this is the same as ``max_polyphony``. | |
+//| """ | |
++//| ActionSequenceOrSequences: Union[ActionSequence, Sequence[ActionSequence]] | |
++//| """`Synthesizer.change` can accept a single ActionSequence or a list of them.""" | |
//| LFOOrLFOSequence = Union["LFO", Sequence["LFO"]] | |
//| """An LFO or a sequence of LFOs""" | |
//| | |
-@@ shared-bindings/synthio/Synthesizer.c: STATIC MP_DEFINE_CONST_FUN_OBJ_2(synthio_synthesizer_release_obj, synthio_synthe | |
+@@ shared-bindings/synthio/Synthesizer.c: static MP_DEFINE_CONST_FUN_OBJ_2(synthio_synthesizer_release_obj, synthio_synthe | |
//| self, | |
//| release: NoteOrNoteSequence = (), | |
//| press: NoteOrNoteSequence = (), | |
@@ shared-bindings/synthio/Synthesizer.c: STATIC MP_DEFINE_CONST_FUN_OBJ_2(synthio_ | |
//| | |
//| The changes all happen atomically with respect to output generation. | |
//| | |
-@@ shared-bindings/synthio/Synthesizer.c: STATIC MP_DEFINE_CONST_FUN_OBJ_2(synthio_synthesizer_release_obj, synthio_synthe | |
+@@ shared-bindings/synthio/Synthesizer.c: static MP_DEFINE_CONST_FUN_OBJ_2(synthio_synthesizer_release_obj, synthio_synthe | |
//| :param ActionSequenceOrSequences start: Any sequence of ActionSequences | |
//| :param ActionSequenceOrSequences stop: Any sequence of ActionSequences""" | |
- STATIC mp_obj_t synthio_synthesizer_change(mp_uint_t n_args, const mp_obj_t *pos_args, mp_map_t *kw_args) { | |
+ static mp_obj_t synthio_synthesizer_change(mp_uint_t n_args, const mp_obj_t *pos_args, mp_map_t *kw_args) { | |
- enum { ARG_release, ARG_press, ARG_retrigger }; | |
- static const mp_arg_t allowed_args[] = { | |
- { MP_QSTR_release, MP_ARG_OBJ, {.u_obj = mp_const_empty_tuple } }, | |
@@ shared-bindings/synthio/Synthesizer.c: STATIC MP_DEFINE_CONST_FUN_OBJ_2(synthio_ | |
+ common_hal_synthio_synthesizer_change_impl(self, n_args - 1, pos_args + 1, kw_args); | |
return mp_const_none; | |
} | |
- STATIC MP_DEFINE_CONST_FUN_OBJ_KW(synthio_synthesizer_change_obj, 1, synthio_synthesizer_change); | |
+ static MP_DEFINE_CONST_FUN_OBJ_KW(synthio_synthesizer_change_obj, 1, synthio_synthesizer_change); | |
## shared-bindings/synthio/Synthesizer.h ## | |
@@ shared-bindings/synthio/Synthesizer.h: void common_hal_synthio_synthesizer_release_all(synthio_synthesizer_obj_t *self) | |
@@ shared-bindings/synthio/Synthesizer.h: void common_hal_synthio_synthesizer_relea | |
## shared-module/synthio/Synthesizer.c ## | |
@@ | |
- * THE SOFTWARE. | |
- */ | |
+ // | |
+ // SPDX-License-Identifier: MIT | |
+#include <math.h> | |
+ | |
@@ shared-module/synthio/Synthesizer.c: envelope_state_e common_hal_synthio_synthes | |
+ | |
+ | |
+void sequence_start(synthio_synthesizer_obj_t *self, mp_obj_t arg) { | |
++ sequence_stop(self, arg); | |
+ for (int chan = 0; chan < CIRCUITPY_SYNTHIO_MAX_CHANNELS; chan++) { | |
+ if (self->sequence_state[chan].obj == MP_OBJ_NULL) { | |
+ self->sequence_state[chan].obj = arg; | |
3: 8f8e0d6541 < -: ---------- Improve docs a bit | |
4: ebd8956d01 = 249: 6968de025b Fix test results |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment