Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 9 additions & 6 deletions .github/workflows/arduino-cli-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,9 @@ on:
branches: [ "main" ]
workflow_dispatch:

env:
FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: true

jobs:
build:
name: Build ${{ matrix.board.arduino_board }} - ${{ matrix.board.name }} - ${{ matrix.sketch.name }}
Expand All @@ -26,7 +29,7 @@ jobs:
- name: "ESP32 Dev Module"
fname: "esp32"
fqbn: "esp32:esp32:esp32"
core: "esp32:esp32@3.3.7"
core: "esp32:esp32@3.3.1"
urls: "https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json"
family: "ESP32"
extra_libs: ""
Expand All @@ -35,7 +38,7 @@ jobs:
- name: "ESP32S2 Dev Module"
fname: "esp32s2"
fqbn: "esp32:esp32:esp32s2"
core: "esp32:esp32@3.3.7"
core: "esp32:esp32@3.3.1"
urls: "https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json"
family: "ESP32"
extra_libs: ""
Expand All @@ -44,7 +47,7 @@ jobs:
- name: "LOLIN S2 Mini"
fname: "lolin_s2_mini"
fqbn: "esp32:esp32:lolin_s2_mini"
core: "esp32:esp32@3.3.7"
core: "esp32:esp32@3.3.1"
urls: "https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json"
family: "ESP32"
extra_libs: ""
Expand All @@ -53,7 +56,7 @@ jobs:
- name: "ESP32S3 Dev Module"
fname: "esp32s3"
fqbn: "esp32:esp32:esp32s3"
core: "esp32:esp32@3.3.7"
core: "esp32:esp32@3.3.1"
urls: "https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json"
family: "ESP32"
extra_libs: ""
Expand All @@ -62,7 +65,7 @@ jobs:
- name: "ESP32C3 Dev Module"
fname: "esp32c3"
fqbn: "esp32:esp32:esp32c3"
core: "esp32:esp32@3.3.7"
core: "esp32:esp32@3.3.1"
urls: "https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json"
family: "ESP32"
extra_libs: ""
Expand All @@ -71,7 +74,7 @@ jobs:
- name: "XIAO_ESP32C3"
fname: "xiao_esp32c3"
fqbn: "esp32:esp32:XIAO_ESP32C3"
core: "esp32:esp32@3.3.7"
core: "esp32:esp32@3.3.1"
urls: "https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json"
extra_libs: ""
options: ""
Expand Down
Binary file modified src/cortex-m0plus/libML_SynthTools_RP2040.a
Binary file not shown.
Binary file modified src/cortex-m33/libML_SynthTools_RP2350.a
Binary file not shown.
Binary file modified src/esp32/libML_SynthTools.a
Binary file not shown.
Binary file modified src/esp32c3/libML_SynthTools.a
Binary file not shown.
Binary file modified src/esp32s2/libML_SynthTools.a
Binary file not shown.
Binary file modified src/esp32s3/libML_SynthTools.a
Binary file not shown.
Binary file modified src/libML_SynthTools_RP2040.a
Binary file not shown.
Binary file modified src/libML_SynthTools_RP2350.a
Binary file not shown.
65 changes: 65 additions & 0 deletions src/ml_tracker_s3m.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
/*
* ML SynthTools Lib - A modular synthesizer library including organ, electric piano,
* oscillators, and sound synthesis tools.
*
* Copyright (C) 2026 Marcel Licence
*
* This file is part of the ML SynthTools Lib library and is licensed under the ML SynthTools Lib License.
*
* You may use this file in non-commercial projects, provided that this header
* and all authorship attributions remain intact.
*
* For commercial use, please contact marcel.licence.o@gmail.com for licensing terms.
*
* The source code of this library is not included. Reverse-engineering,
* decompiling, or any attempt to access the source code from the compiled files
* is strictly prohibited.
*
* ML SynthTools Lib is provided "as is," without warranty of any kind. See the LICENSE
* file for the full license text.
*/

/**
* @file ml_tracker_s3m.h
* @author Marcel Licence
* @date 02.03.2024
*
* @brief s3m tracker module
*
* @see Pi Pico: https://www.youtube.com/shorts/D_jD9efA5I0
* @see Pi Pico 2: https://www.youtube.com/shorts/2_cdIPhUEkY
*/


#ifndef SRC_ML_TRACKER_S3M_H_
#define SRC_ML_TRACKER_S3M_H_


#include <ml_types.h>


bool TrackerS3MLoadFile(void);
bool TrackerS3MLoadData(const uint8_t *data, uint32_t len);
void TrackerS3MSetup(uint32_t sample_rate);
void TrackerS3MStartPlayback(void);
void TrackerS3MProcess(uint64_t passed);
void TrackerS3MProcessSamples(Q1_14 *chL, Q1_14 *chrR, uint64_t count);
uint32_t TrackerS3MGetMemSize(void);
void TrackerS3MUseStaticBuffer(void);
void TrackerS3MSetBuffer(void *buffer);
bool TrackerS3M_IsActive(void);

void TrackerS3M_NoteOn(uint8_t ch, uint8_t note, uint8_t vel);
void TrackerS3M_NoteOff(uint8_t ch, uint8_t note, uint8_t vel __attribute__((unused)));
void TrackerS3M_NoteOff(uint8_t ch, uint8_t note);

void TrackerS3M_Restart(uint8_t param, uint8_t value);
void TrackerS3M_Stop(uint8_t param, uint8_t value);
void TrackerS3M_End(uint8_t param __attribute__((unused)), uint8_t value);
void TrackerS3M_Start(uint8_t param, uint8_t value);

void TrackerS3M_DebugPrintf(const char *fmt, ...); /*!< weak and can be implemented by the user */
void TrackerS3M_DebugFlush(void); /*!< weak and can be implemented by the user */


#endif /* SRC_ML_TRACKER_S3M_H_ */
Loading