Skip to content
Goo Goo Muck
C Other
  1. C 97.8%
  2. Other 2.2%
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.

README.md

GooGooMuck

When the sun goes down, and the moon comes up...

I turn into a teenage goo goo muck.

What Is It?

GGM is a software based sound/music synthesizer that runs on the STM32F4 Discovery Board.

The synth and platfom code have been partitioned for ease of portability. The synth code is written using floating point, so a target CPU should have a 32 bit (single precision) FPU. E.g. ARM Cortex M4 or better.

Specifications

  • 44100 samples/second (per channel)
  • 16 bits/sample
  • stereo output
  • 32-bit floats for internal operations
  • MIDI input (serial)
  • 16 voice polyphony
  • 16 channels with independent patches

Hardware

Build tools:

The path to the GNU cross compilation tools is set in ./mk/common.mk

Source Layout

  • common - common souces (target/SoC independent)
  • drivers - device drivers (non SoC)
  • ggm - GooGooMuck synthesizer (target/SoC independent)
  • mk - make scripts
  • scripts - python scripts
  • soc - SoC drivers and definitions
  • target - target specific code
  • usb - tinyusb stack (ported to the STM32F4, work in progress)

Inspirations

Resources

You can’t perform that action at this time.