Only small changes for README.md, so images for RPi2/RPi3 can now created alsoOnly small fixes. (#44)

* Fixes for using standard Synth_Dexed.
Added support for CMSIS.

* Fix for branch of Synth_Dexed

* Submodules for Synth_Dexed and CMSIS_5 added.

* Installation example in README.md: Added different compiler installation.
Added ARM_MATH_NEON to src/Makefile.

* Added (README.md) command for installation on SD card.

FIXME: Remove this line once upstreamed

Co-authored-by: Holger Wirtz <wirtz@parasitstudio.de>
Co-authored-by: probonopd <probonopd@users.noreply.github.com>
pull/46/head
Holger 3 years ago committed by GitHub
parent 8159d2d3ac
commit d52d233d28
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 1
      .github/workflows/build.yml
  2. 5
      .gitmodules
  3. 1
      CMSIS_5
  4. 26
      README.md
  5. 2
      Synth_Dexed
  6. 24
      src/Makefile

@ -20,6 +20,7 @@ jobs:
run: | run: |
set -ex set -ex
git submodule update --init --recursive git submodule update --init --recursive
sed -i -e 's|AUDIO_BLOCK_SAMPLES|n_samples|g' Synth_Dexed/src/dexed.cpp # FIXME: Remove this line once upstreamed
- name: Install toolchains - name: Install toolchains
run: | run: |
set -ex set -ex

5
.gitmodules vendored

@ -3,4 +3,7 @@
url = https://github.com/smuehlst/circle-stdlib url = https://github.com/smuehlst/circle-stdlib
[submodule "Synth_Dexed"] [submodule "Synth_Dexed"]
path = Synth_Dexed path = Synth_Dexed
url = https://github.com/probonopd/Synth_Dexed url = https://codeberg.org/dcoredump/Synth_Dexed.git
[submodule "CMSIS_5"]
path = CMSIS_5
url = https://github.com/ARM-software/CMSIS_5

@ -0,0 +1 @@
Subproject commit 18205c6c2b68e7e96f40dc941c47efdbdd9f7d01

@ -89,26 +89,39 @@ cd MiniDexed
# Recursively pull git submodules # Recursively pull git submodules
git submodule update --init --recursive git submodule update --init --recursive
# Choose your RPi
export RPI=4
# Install toolchain # Install toolchain
if [ "${RPI}" -gt 2 ]
then
wget -q https://developer.arm.com/-/media/Files/downloads/gnu-a/10.3-2021.07/binrel/gcc-arm-10.3-2021.07-x86_64-aarch64-none-elf.tar.xz wget -q https://developer.arm.com/-/media/Files/downloads/gnu-a/10.3-2021.07/binrel/gcc-arm-10.3-2021.07-x86_64-aarch64-none-elf.tar.xz
else
wget -q https://developer.arm.com/-/media/Files/downloads/gnu-a/10.3-2021.07/binrel/gcc-arm-10.3-2021.07-x86_64-arm-none-eabi.tar.xz
fi
tar xf gcc-arm-*-*.tar.xz tar xf gcc-arm-*-*.tar.xz
export PATH=$(readlink -f ./gcc-*/bin/):$PATH export PATH=$(readlink -f ./gcc-*/bin/):$PATH
# Build dependencies and MiniDexed # Build dependencies and MiniDexed
RPI=4 ./build.sh ./build.sh
# Get Raspberry Pi boot files # Get Raspberry Pi boot files
cd ./circle-stdlib/libs/circle/boot cd ./circle-stdlib/libs/circle/boot
make make
if [ "${RPI}" -gt 2 ]
then
make armstub64 make armstub64
fi
cd - cd -
# Make zip that contains Raspberry Pi 4 boot files. The contents can be copied to a FAT32 formatted partition on a microSD card # Make zip that contains Raspberry Pi 4 boot files. The contents can be copied to a FAT32 formatted partition on a microSD card
mkdir -p sdcard mkdir -p sdcard
cd sdcard
../getsysex.sh
cd ..
cp -r ./circle-stdlib/libs/circle/boot/* sdcard cp -r ./circle-stdlib/libs/circle/boot/* sdcard
mv sdcard/config64.txt sdcard/config.txt rm -rf sdcard/config*.txt sdcard/README sdcard/Makefile sdcard/armstub sdcard/COPYING.linux
rm -rf sdcard/config32.txt sdcard/README sdcard/Makefile sdcard/armstub sdcard/COPYING.linux cp ./src/config.txt ./src/minidexed.ini ./src/*img sdcard/
cp ./src/*img sdcard/
zip -r MiniDexed_Raspberry_Pi_${RPI}.zip sdcard/* zip -r MiniDexed_Raspberry_Pi_${RPI}.zip sdcard/*
# Optionally, create a RPi image. This can be written to a microSD card using tools like Etcher or dd # Optionally, create a RPi image. This can be written to a microSD card using tools like Etcher or dd
@ -121,10 +134,13 @@ DEV=`sudo losetup --find --partscan --show "${IMG}"`
sudo mkfs.vfat -F 32 -n BOOT "${DEV}p1" sudo mkfs.vfat -F 32 -n BOOT "${DEV}p1"
mkdir boot mkdir boot
sudo mount "${DEV}p1" boot sudo mount "${DEV}p1" boot
sudo cp sdcard/* boot sudo cp -R sdcard/* boot
sudo umount boot sudo umount boot
sudo losetup -d "${DEV}" sudo losetup -d "${DEV}"
rm -r boot rm -r boot
# Write to SD card
sudo dd if="${IMG}" of=/dev/mmcblk0 bs=128k status=progress
``` ```
## Acknowledgements ## Acknowledgements

@ -1 +1 @@
Subproject commit 038ce2f020bbb5ca8a40a911071ccf638e7e68d8 Subproject commit 3b9d12946e8a6004f6764b7fffe7f89565be6b28

@ -4,14 +4,34 @@
CIRCLE_STDLIB_DIR = ../circle-stdlib CIRCLE_STDLIB_DIR = ../circle-stdlib
SYNTH_DEXED_DIR = ../Synth_Dexed/src SYNTH_DEXED_DIR = ../Synth_Dexed/src
CMSIS_CORE_INCLUDE_DIR = ../CMSIS_5/CMSIS/Core/Include
CMSIS_DSP_INCLUDE_DIR = ../CMSIS_5/CMSIS/DSP/Include
CMSIS_DSP_PRIVATE_INCLUDE_DIR = ../CMSIS_5/CMSIS/DSP/PrivateInclude
CMSIS_DSP_SOURCE_DIR = ../CMSIS_5/CMSIS/DSP/Source
OBJS = main.o kernel.o minidexed.o config.o userinterface.o \ OBJS = main.o kernel.o minidexed.o config.o userinterface.o \
mididevice.o midikeyboard.o serialmididevice.o pckeyboard.o \ mididevice.o midikeyboard.o serialmididevice.o pckeyboard.o \
sysexfileloader.o perftimer.o ky040.o \ sysexfileloader.o perftimer.o ky040.o \
$(SYNTH_DEXED_DIR)/synth_dexed.o $(SYNTH_DEXED_DIR)/PluginFx.o \
$(SYNTH_DEXED_DIR)/dexed.o \
$(SYNTH_DEXED_DIR)/dx7note.o \
$(SYNTH_DEXED_DIR)/env.o \
$(SYNTH_DEXED_DIR)/exp2.o \
$(SYNTH_DEXED_DIR)/fm_core.o \
$(SYNTH_DEXED_DIR)/fm_op_kernel.o \
$(SYNTH_DEXED_DIR)/freqlut.o \
$(SYNTH_DEXED_DIR)/lfo.o \
$(SYNTH_DEXED_DIR)/pitchenv.o \
$(SYNTH_DEXED_DIR)/porta.o \
$(SYNTH_DEXED_DIR)/sin.o \
$(CMSIS_DSP_SOURCE_DIR)/SupportFunctions/SupportFunctions.o
INCLUDE += -I $(SYNTH_DEXED_DIR) INCLUDE += -I $(SYNTH_DEXED_DIR)
INCLUDE += -I $(CMSIS_CORE_INCLUDE_DIR)
INCLUDE += -I $(CMSIS_DSP_INCLUDE_DIR)
INCLUDE += -I $(CMSIS_DSP_PRIVATE_INCLUDE_DIR)
CXXFLAGS += -DARM_MATH_NEON
EXTRACLEAN = $(SYNTH_DEXED_DIR)/*.o $(SYNTH_DEXED_DIR)/*.d EXTRACLEAN = $(SYNTH_DEXED_DIR)/*.o $(SYNTH_DEXED_DIR)/*.d $(CMSIS_DSP_SOURCE_DIR)/SupportFunctions/*.o $(CMSIS_DSP_SOURCE_DIR)/SupportFunctions/*.d
include ./Rules.mk include ./Rules.mk

Loading…
Cancel
Save