diff --git a/apps/space12/Makefile b/apps/space12/Makefile
index 948280e..c4d63a3 100644
--- a/apps/space12/Makefile
+++ b/apps/space12/Makefile
@@ -16,7 +16,7 @@ all: space12.out
# Compile: create object files from C source files.
-space12.o: space12.c ../../drivers/avr/eeprom.h ../../drivers/avr/pio.h ../../drivers/avr/system.h ../../drivers/avr/timer.h ../../drivers/display.h ../../drivers/led.h ../../drivers/navswitch.h ../../extra/mmelody.h ../../extra/squeaker.h ../../extra/ticker.h ../../extra/tweeter.h ../../fonts/font3x5_1.h ../../utils/font.h ../../utils/task.h ../../utils/tinygl.h ../../utils/uint8toa.h flasher.h spacey.h
+space12.o: space12.c ../../drivers/avr/eeprom.h ../../drivers/avr/pio.h ../../drivers/avr/system.h ../../drivers/avr/timer.h ../../drivers/display.h ../../drivers/led.h ../../drivers/navswitch.h ../../extra/mmelody.h ../../extra/ticker.h ../../extra/tweeter.h ../../fonts/font3x5_1.h ../../utils/font.h ../../utils/task.h ../../utils/tinygl.h ../../utils/uint8toa.h flasher.h spacey.h
$(CC) -c $(CFLAGS) $< -o $@
flasher.o: flasher.c ../../drivers/avr/system.h flasher.h
@@ -52,9 +52,6 @@ navswitch.o: ../../drivers/navswitch.c ../../drivers/avr/delay.h ../../drivers/a
mmelody.o: ../../extra/mmelody.c ../../drivers/avr/system.h ../../extra/mmelody.h
$(CC) -c $(CFLAGS) $< -o $@
-squeaker.o: ../../extra/squeaker.c ../../drivers/avr/system.h ../../extra/squeaker.h ../../extra/ticker.h
- $(CC) -c $(CFLAGS) $< -o $@
-
ticker.o: ../../extra/ticker.c
$(CC) -c $(CFLAGS) $< -o $@
@@ -73,7 +70,7 @@ uint8toa.o: ../../utils/uint8toa.c ../../drivers/avr/system.h
# Link: create ELF output file from object files.
-space12.out: space12.o flasher.o spacey.o eeprom.o pio.o system.o timer.o display.o led.o ledmat.o navswitch.o mmelody.o squeaker.o ticker.o tweeter.o task.o tinygl.o uint8toa.o
+space12.out: space12.o flasher.o spacey.o eeprom.o pio.o system.o timer.o display.o led.o ledmat.o navswitch.o mmelody.o ticker.o tweeter.o task.o tinygl.o uint8toa.o
$(CC) $(CFLAGS) $^ -o $@ -lm
$(SIZE) $@
diff --git a/apps/space12/Makefile.test b/apps/space12/Makefile.test
index 12f8f5f..e6962c6 100644
--- a/apps/space12/Makefile.test
+++ b/apps/space12/Makefile.test
@@ -14,7 +14,7 @@ all: space12
# Compile: create object files from C source files.
-space12-test.o: space12.c ../../drivers/display.h ../../drivers/led.h ../../drivers/navswitch.h ../../drivers/test/avrtest.h ../../drivers/test/eeprom.h ../../drivers/test/pio.h ../../drivers/test/system.h ../../drivers/test/timer.h ../../extra/mmelody.h ../../extra/squeaker.h ../../extra/ticker.h ../../extra/tweeter.h ../../fonts/font3x5_1.h ../../utils/font.h ../../utils/task.h ../../utils/tinygl.h ../../utils/uint8toa.h flasher.h spacey.h
+space12-test.o: space12.c ../../drivers/display.h ../../drivers/led.h ../../drivers/navswitch.h ../../drivers/test/avrtest.h ../../drivers/test/eeprom.h ../../drivers/test/pio.h ../../drivers/test/system.h ../../drivers/test/timer.h ../../extra/mmelody.h ../../extra/ticker.h ../../extra/tweeter.h ../../fonts/font3x5_1.h ../../utils/font.h ../../utils/task.h ../../utils/tinygl.h ../../utils/uint8toa.h flasher.h spacey.h
$(CC) -c $(CFLAGS) $< -o $@
flasher-test.o: flasher.c ../../drivers/test/system.h flasher.h
@@ -53,9 +53,6 @@ timer-test.o: ../../drivers/test/timer.c ../../drivers/test/system.h ../../drive
mmelody-test.o: ../../extra/mmelody.c ../../drivers/test/system.h ../../extra/mmelody.h
$(CC) -c $(CFLAGS) $< -o $@
-squeaker-test.o: ../../extra/squeaker.c ../../drivers/test/system.h ../../extra/squeaker.h ../../extra/ticker.h
- $(CC) -c $(CFLAGS) $< -o $@
-
ticker-test.o: ../../extra/ticker.c
$(CC) -c $(CFLAGS) $< -o $@
@@ -75,14 +72,14 @@ uint8toa-test.o: ../../utils/uint8toa.c ../../drivers/test/system.h
# Link: create executable file from object files.
-space12: space12-test.o flasher-test.o spacey-test.o display-test.o led-test.o ledmat-test.o navswitch-test.o eeprom-test.o mgetkey-test.o pio-test.o system-test.o timer-test.o mmelody-test.o squeaker-test.o ticker-test.o tweeter-test.o task-test.o tinygl-test.o uint8toa-test.o
+space12: space12-test.o flasher-test.o spacey-test.o display-test.o led-test.o ledmat-test.o navswitch-test.o eeprom-test.o mgetkey-test.o pio-test.o system-test.o timer-test.o mmelody-test.o ticker-test.o tweeter-test.o task-test.o tinygl-test.o uint8toa-test.o
$(CC) $(CFLAGS) $^ -o $@ -lrt
# Clean: delete derived files.
.PHONY: clean
clean:
- -$(DEL) space12 space12-test.o flasher-test.o spacey-test.o display-test.o led-test.o ledmat-test.o navswitch-test.o eeprom-test.o mgetkey-test.o pio-test.o system-test.o timer-test.o mmelody-test.o squeaker-test.o ticker-test.o tweeter-test.o task-test.o tinygl-test.o uint8toa-test.o
+ -$(DEL) space12 space12-test.o flasher-test.o spacey-test.o display-test.o led-test.o ledmat-test.o navswitch-test.o eeprom-test.o mgetkey-test.o pio-test.o system-test.o timer-test.o mmelody-test.o ticker-test.o tweeter-test.o task-test.o tinygl-test.o uint8toa-test.o
diff --git a/apps/space12/imperial_march.mmel b/apps/space12/imperial_march.mmel
index 4493630..6c4b789 100644
--- a/apps/space12/imperial_march.mmel
+++ b/apps/space12/imperial_march.mmel
@@ -1 +1 @@
-"*1632 ///D+///D+///D+///D#+//A#F#///D#//A#G/// ///"
+"*832 ///D+///D+///D+///D#+//A#F#///D#//A#G/// ///"
diff --git a/apps/space12/space12.c b/apps/space12/space12.c
index b29cc0e..fd8f7f0 100644
--- a/apps/space12/space12.c
+++ b/apps/space12/space12.c
@@ -19,7 +19,6 @@
#include "uint8toa.h"
#include "../fonts/font3x5_1.h"
#include "tweeter.h"
-#include "squeaker.h"
#include "mmelody.h"
#include "pio.h"
diff --git a/apps/squeak1/Makefile b/apps/squeak1/Makefile
index 46ac251..6b73258 100644
--- a/apps/squeak1/Makefile
+++ b/apps/squeak1/Makefile
@@ -16,7 +16,7 @@ all: squeak1.out
# Compile: create object files from C source files.
-squeak1.o: squeak1.c ../../drivers/avr/pio.h ../../drivers/avr/system.h ../../drivers/avr/timer.h ../../drivers/led.h ../../extra/mmelody.h ../../extra/squeaker.h ../../extra/ticker.h ../../extra/tweeter.h ../../utils/task.h
+squeak1.o: squeak1.c ../../drivers/avr/pio.h ../../drivers/avr/system.h ../../drivers/avr/timer.h ../../drivers/led.h ../../extra/mmelody.h ../../extra/ticker.h ../../extra/tweeter.h ../../utils/task.h
$(CC) -c $(CFLAGS) $< -o $@
pio.o: ../../drivers/avr/pio.c ../../drivers/avr/pio.h ../../drivers/avr/system.h
@@ -34,9 +34,6 @@ led.o: ../../drivers/led.c ../../drivers/avr/pio.h ../../drivers/avr/system.h ..
mmelody.o: ../../extra/mmelody.c ../../drivers/avr/system.h ../../extra/mmelody.h
$(CC) -c $(CFLAGS) $< -o $@
-squeaker.o: ../../extra/squeaker.c ../../drivers/avr/system.h ../../extra/squeaker.h ../../extra/ticker.h
- $(CC) -c $(CFLAGS) $< -o $@
-
ticker.o: ../../extra/ticker.c
$(CC) -c $(CFLAGS) $< -o $@
@@ -49,7 +46,7 @@ task.o: ../../utils/task.c ../../drivers/avr/system.h ../../drivers/avr/timer.h
# Link: create ELF output file from object files.
-squeak1.out: squeak1.o pio.o system.o timer.o led.o mmelody.o squeaker.o ticker.o tweeter.o task.o
+squeak1.out: squeak1.o pio.o system.o timer.o led.o mmelody.o ticker.o tweeter.o task.o
$(CC) $(CFLAGS) $^ -o $@ -lm
$(SIZE) $@
diff --git a/apps/squeak1/Makefile.test b/apps/squeak1/Makefile.test
index 125a10e..bf07ef8 100644
--- a/apps/squeak1/Makefile.test
+++ b/apps/squeak1/Makefile.test
@@ -14,7 +14,7 @@ all: squeak1
# Compile: create object files from C source files.
-squeak1-test.o: squeak1.c ../../drivers/led.h ../../drivers/test/avrtest.h ../../drivers/test/pio.h ../../drivers/test/system.h ../../drivers/test/timer.h ../../extra/mmelody.h ../../extra/squeaker.h ../../extra/ticker.h ../../extra/tweeter.h ../../utils/task.h
+squeak1-test.o: squeak1.c ../../drivers/led.h ../../drivers/test/avrtest.h ../../drivers/test/pio.h ../../drivers/test/system.h ../../drivers/test/timer.h ../../extra/mmelody.h ../../extra/ticker.h ../../extra/tweeter.h ../../utils/task.h
$(CC) -c $(CFLAGS) $< -o $@
led-test.o: ../../drivers/led.c ../../drivers/led.h ../../drivers/test/avrtest.h ../../drivers/test/pio.h ../../drivers/test/system.h
@@ -35,9 +35,6 @@ timer-test.o: ../../drivers/test/timer.c ../../drivers/test/system.h ../../drive
mmelody-test.o: ../../extra/mmelody.c ../../drivers/test/system.h ../../extra/mmelody.h
$(CC) -c $(CFLAGS) $< -o $@
-squeaker-test.o: ../../extra/squeaker.c ../../drivers/test/system.h ../../extra/squeaker.h ../../extra/ticker.h
- $(CC) -c $(CFLAGS) $< -o $@
-
ticker-test.o: ../../extra/ticker.c
$(CC) -c $(CFLAGS) $< -o $@
@@ -51,14 +48,14 @@ task-test.o: ../../utils/task.c ../../drivers/test/system.h ../../drivers/test/t
# Link: create executable file from object files.
-squeak1: squeak1-test.o led-test.o mgetkey-test.o pio-test.o system-test.o timer-test.o mmelody-test.o squeaker-test.o ticker-test.o tweeter-test.o task-test.o
+squeak1: squeak1-test.o led-test.o mgetkey-test.o pio-test.o system-test.o timer-test.o mmelody-test.o ticker-test.o tweeter-test.o task-test.o
$(CC) $(CFLAGS) $^ -o $@ -lrt
# Clean: delete derived files.
.PHONY: clean
clean:
- -$(DEL) squeak1 squeak1-test.o led-test.o mgetkey-test.o pio-test.o system-test.o timer-test.o mmelody-test.o squeaker-test.o ticker-test.o tweeter-test.o task-test.o
+ -$(DEL) squeak1 squeak1-test.o led-test.o mgetkey-test.o pio-test.o system-test.o timer-test.o mmelody-test.o ticker-test.o tweeter-test.o task-test.o
diff --git a/apps/squeak1/squeak1.c b/apps/squeak1/squeak1.c
index 9da9b4f..ea62753 100644
--- a/apps/squeak1/squeak1.c
+++ b/apps/squeak1/squeak1.c
@@ -8,7 +8,6 @@
#include "pio.h"
#include "task.h"
#include "tweeter.h"
-#include "squeaker.h"
#include "mmelody.h"
diff --git a/apps/squeak2/Makefile b/apps/squeak2/Makefile
index b09976d..cd5ffd8 100644
--- a/apps/squeak2/Makefile
+++ b/apps/squeak2/Makefile
@@ -16,7 +16,7 @@ all: squeak2.out
# Compile: create object files from C source files.
-squeak2.o: squeak2.c ../../drivers/avr/pio.h ../../drivers/avr/system.h ../../drivers/avr/timer.h ../../drivers/button.h ../../drivers/led.h ../../extra/mmelody.h ../../extra/squeaker.h ../../extra/ticker.h ../../extra/tweeter.h ../../utils/task.h
+squeak2.o: squeak2.c ../../drivers/avr/pio.h ../../drivers/avr/system.h ../../drivers/avr/timer.h ../../drivers/button.h ../../drivers/led.h ../../extra/mmelody.h ../../extra/ticker.h ../../extra/tweeter.h ../../utils/task.h
$(CC) -c $(CFLAGS) $< -o $@
pio.o: ../../drivers/avr/pio.c ../../drivers/avr/pio.h ../../drivers/avr/system.h
@@ -37,9 +37,6 @@ led.o: ../../drivers/led.c ../../drivers/avr/pio.h ../../drivers/avr/system.h ..
mmelody.o: ../../extra/mmelody.c ../../drivers/avr/system.h ../../extra/mmelody.h
$(CC) -c $(CFLAGS) $< -o $@
-squeaker.o: ../../extra/squeaker.c ../../drivers/avr/system.h ../../extra/squeaker.h ../../extra/ticker.h
- $(CC) -c $(CFLAGS) $< -o $@
-
ticker.o: ../../extra/ticker.c
$(CC) -c $(CFLAGS) $< -o $@
@@ -52,7 +49,7 @@ task.o: ../../utils/task.c ../../drivers/avr/system.h ../../drivers/avr/timer.h
# Link: create ELF output file from object files.
-squeak2.out: squeak2.o pio.o system.o timer.o button.o led.o mmelody.o squeaker.o ticker.o tweeter.o task.o
+squeak2.out: squeak2.o pio.o system.o timer.o button.o led.o mmelody.o ticker.o tweeter.o task.o
$(CC) $(CFLAGS) $^ -o $@ -lm
$(SIZE) $@
diff --git a/apps/squeak2/Makefile.test b/apps/squeak2/Makefile.test
index ba27793..f998e7b 100644
--- a/apps/squeak2/Makefile.test
+++ b/apps/squeak2/Makefile.test
@@ -14,7 +14,7 @@ all: squeak2
# Compile: create object files from C source files.
-squeak2-test.o: squeak2.c ../../drivers/button.h ../../drivers/led.h ../../drivers/test/avrtest.h ../../drivers/test/pio.h ../../drivers/test/system.h ../../drivers/test/timer.h ../../extra/mmelody.h ../../extra/squeaker.h ../../extra/ticker.h ../../extra/tweeter.h ../../utils/task.h
+squeak2-test.o: squeak2.c ../../drivers/button.h ../../drivers/led.h ../../drivers/test/avrtest.h ../../drivers/test/pio.h ../../drivers/test/system.h ../../drivers/test/timer.h ../../extra/mmelody.h ../../extra/ticker.h ../../extra/tweeter.h ../../utils/task.h
$(CC) -c $(CFLAGS) $< -o $@
button-test.o: ../../drivers/button.c ../../drivers/button.h ../../drivers/test/avrtest.h ../../drivers/test/pio.h ../../drivers/test/system.h
@@ -38,9 +38,6 @@ timer-test.o: ../../drivers/test/timer.c ../../drivers/test/system.h ../../drive
mmelody-test.o: ../../extra/mmelody.c ../../drivers/test/system.h ../../extra/mmelody.h
$(CC) -c $(CFLAGS) $< -o $@
-squeaker-test.o: ../../extra/squeaker.c ../../drivers/test/system.h ../../extra/squeaker.h ../../extra/ticker.h
- $(CC) -c $(CFLAGS) $< -o $@
-
ticker-test.o: ../../extra/ticker.c
$(CC) -c $(CFLAGS) $< -o $@
@@ -54,14 +51,14 @@ task-test.o: ../../utils/task.c ../../drivers/test/system.h ../../drivers/test/t
# Link: create executable file from object files.
-squeak2: squeak2-test.o button-test.o led-test.o mgetkey-test.o pio-test.o system-test.o timer-test.o mmelody-test.o squeaker-test.o ticker-test.o tweeter-test.o task-test.o
+squeak2: squeak2-test.o button-test.o led-test.o mgetkey-test.o pio-test.o system-test.o timer-test.o mmelody-test.o ticker-test.o tweeter-test.o task-test.o
$(CC) $(CFLAGS) $^ -o $@ -lrt
# Clean: delete derived files.
.PHONY: clean
clean:
- -$(DEL) squeak2 squeak2-test.o button-test.o led-test.o mgetkey-test.o pio-test.o system-test.o timer-test.o mmelody-test.o squeaker-test.o ticker-test.o tweeter-test.o task-test.o
+ -$(DEL) squeak2 squeak2-test.o button-test.o led-test.o mgetkey-test.o pio-test.o system-test.o timer-test.o mmelody-test.o ticker-test.o tweeter-test.o task-test.o
diff --git a/apps/squeak2/squeak2.c b/apps/squeak2/squeak2.c
index 830cdf8..c7ca094 100644
--- a/apps/squeak2/squeak2.c
+++ b/apps/squeak2/squeak2.c
@@ -9,7 +9,6 @@
#include "pio.h"
#include "task.h"
#include "tweeter.h"
-#include "squeaker.h"
#include "mmelody.h"
diff --git a/apps/squeak3/Makefile b/apps/squeak3/Makefile
index 7b66df8..47be8b3 100644
--- a/apps/squeak3/Makefile
+++ b/apps/squeak3/Makefile
@@ -16,7 +16,7 @@ all: squeak3.out
# Compile: create object files from C source files.
-squeak3.o: squeak3.c ../../drivers/avr/pio.h ../../drivers/avr/system.h ../../drivers/avr/timer.h ../../drivers/button.h ../../drivers/display.h ../../drivers/led.h ../../drivers/navswitch.h ../../extra/squeaker.h ../../extra/ticker.h ../../extra/tweeter.h ../../fonts/font3x5_1.h ../../utils/font.h ../../utils/task.h ../../utils/tinygl.h
+squeak3.o: squeak3.c ../../drivers/avr/pio.h ../../drivers/avr/system.h ../../drivers/avr/timer.h ../../drivers/button.h ../../drivers/display.h ../../drivers/led.h ../../drivers/navswitch.h ../../extra/ticker.h ../../extra/tweeter.h ../../fonts/font3x5_1.h ../../utils/font.h ../../utils/task.h ../../utils/tinygl.h
$(CC) -c $(CFLAGS) $< -o $@
pio.o: ../../drivers/avr/pio.c ../../drivers/avr/pio.h ../../drivers/avr/system.h
@@ -43,9 +43,6 @@ ledmat.o: ../../drivers/ledmat.c ../../drivers/avr/pio.h ../../drivers/avr/syste
navswitch.o: ../../drivers/navswitch.c ../../drivers/avr/delay.h ../../drivers/avr/pio.h ../../drivers/avr/system.h ../../drivers/navswitch.h
$(CC) -c $(CFLAGS) $< -o $@
-squeaker.o: ../../extra/squeaker.c ../../drivers/avr/system.h ../../extra/squeaker.h ../../extra/ticker.h
- $(CC) -c $(CFLAGS) $< -o $@
-
ticker.o: ../../extra/ticker.c
$(CC) -c $(CFLAGS) $< -o $@
@@ -61,7 +58,7 @@ tinygl.o: ../../utils/tinygl.c ../../drivers/avr/system.h ../../drivers/display.
# Link: create ELF output file from object files.
-squeak3.out: squeak3.o pio.o system.o timer.o button.o display.o led.o ledmat.o navswitch.o squeaker.o ticker.o tweeter.o task.o tinygl.o
+squeak3.out: squeak3.o pio.o system.o timer.o button.o display.o led.o ledmat.o navswitch.o ticker.o tweeter.o task.o tinygl.o
$(CC) $(CFLAGS) $^ -o $@ -lm
$(SIZE) $@
diff --git a/apps/squeak3/Makefile.test b/apps/squeak3/Makefile.test
index 560940e..02fb841 100644
--- a/apps/squeak3/Makefile.test
+++ b/apps/squeak3/Makefile.test
@@ -14,7 +14,7 @@ all: squeak3
# Compile: create object files from C source files.
-squeak3-test.o: squeak3.c ../../drivers/button.h ../../drivers/display.h ../../drivers/led.h ../../drivers/navswitch.h ../../drivers/test/avrtest.h ../../drivers/test/pio.h ../../drivers/test/system.h ../../drivers/test/timer.h ../../extra/squeaker.h ../../extra/ticker.h ../../extra/tweeter.h ../../fonts/font3x5_1.h ../../utils/font.h ../../utils/task.h ../../utils/tinygl.h
+squeak3-test.o: squeak3.c ../../drivers/button.h ../../drivers/display.h ../../drivers/led.h ../../drivers/navswitch.h ../../drivers/test/avrtest.h ../../drivers/test/pio.h ../../drivers/test/system.h ../../drivers/test/timer.h ../../extra/ticker.h ../../extra/tweeter.h ../../fonts/font3x5_1.h ../../utils/font.h ../../utils/task.h ../../utils/tinygl.h
$(CC) -c $(CFLAGS) $< -o $@
button-test.o: ../../drivers/button.c ../../drivers/button.h ../../drivers/test/avrtest.h ../../drivers/test/pio.h ../../drivers/test/system.h
@@ -44,9 +44,6 @@ system-test.o: ../../drivers/test/system.c ../../drivers/test/avrtest.h ../../dr
timer-test.o: ../../drivers/test/timer.c ../../drivers/test/system.h ../../drivers/test/timer.h
$(CC) -c $(CFLAGS) $< -o $@
-squeaker-test.o: ../../extra/squeaker.c ../../drivers/test/system.h ../../extra/squeaker.h ../../extra/ticker.h
- $(CC) -c $(CFLAGS) $< -o $@
-
ticker-test.o: ../../extra/ticker.c
$(CC) -c $(CFLAGS) $< -o $@
@@ -63,14 +60,14 @@ tinygl-test.o: ../../utils/tinygl.c ../../drivers/display.h ../../drivers/test/s
# Link: create executable file from object files.
-squeak3: squeak3-test.o button-test.o display-test.o led-test.o ledmat-test.o navswitch-test.o mgetkey-test.o pio-test.o system-test.o timer-test.o squeaker-test.o ticker-test.o tweeter-test.o task-test.o tinygl-test.o
+squeak3: squeak3-test.o button-test.o display-test.o led-test.o ledmat-test.o navswitch-test.o mgetkey-test.o pio-test.o system-test.o timer-test.o ticker-test.o tweeter-test.o task-test.o tinygl-test.o
$(CC) $(CFLAGS) $^ -o $@ -lrt
# Clean: delete derived files.
.PHONY: clean
clean:
- -$(DEL) squeak3 squeak3-test.o button-test.o display-test.o led-test.o ledmat-test.o navswitch-test.o mgetkey-test.o pio-test.o system-test.o timer-test.o squeaker-test.o ticker-test.o tweeter-test.o task-test.o tinygl-test.o
+ -$(DEL) squeak3 squeak3-test.o button-test.o display-test.o led-test.o ledmat-test.o navswitch-test.o mgetkey-test.o pio-test.o system-test.o timer-test.o ticker-test.o tweeter-test.o task-test.o tinygl-test.o
diff --git a/apps/squeak3/squeak3.c b/apps/squeak3/squeak3.c
index 643b2bf..5804143 100644
--- a/apps/squeak3/squeak3.c
+++ b/apps/squeak3/squeak3.c
@@ -10,7 +10,6 @@
#include "pio.h"
#include "task.h"
#include "tweeter.h"
-#include "squeaker.h"
#include "tinygl.h"
#include "../fonts/font3x5_1.h"
diff --git a/apps/squeak4/Makefile b/apps/squeak4/Makefile
index 5b06753..36ab149 100644
--- a/apps/squeak4/Makefile
+++ b/apps/squeak4/Makefile
@@ -16,7 +16,7 @@ all: squeak4.out
# Compile: create object files from C source files.
-squeak4.o: squeak4.c ../../drivers/avr/pio.h ../../drivers/avr/system.h ../../drivers/avr/timer.h ../../drivers/button.h ../../drivers/display.h ../../drivers/led.h ../../extra/mmelody.h ../../extra/squeaker.h ../../extra/ticker.h ../../extra/tweeter.h ../../fonts/font3x5_1.h ../../utils/font.h ../../utils/task.h ../../utils/tinygl.h
+squeak4.o: squeak4.c ../../drivers/avr/pio.h ../../drivers/avr/system.h ../../drivers/avr/timer.h ../../drivers/button.h ../../drivers/display.h ../../drivers/led.h ../../extra/mmelody.h ../../extra/ticker.h ../../extra/tweeter.h ../../fonts/font3x5_1.h ../../utils/font.h ../../utils/task.h ../../utils/tinygl.h
$(CC) -c $(CFLAGS) $< -o $@
pio.o: ../../drivers/avr/pio.c ../../drivers/avr/pio.h ../../drivers/avr/system.h
@@ -43,9 +43,6 @@ ledmat.o: ../../drivers/ledmat.c ../../drivers/avr/pio.h ../../drivers/avr/syste
mmelody.o: ../../extra/mmelody.c ../../drivers/avr/system.h ../../extra/mmelody.h
$(CC) -c $(CFLAGS) $< -o $@
-squeaker.o: ../../extra/squeaker.c ../../drivers/avr/system.h ../../extra/squeaker.h ../../extra/ticker.h
- $(CC) -c $(CFLAGS) $< -o $@
-
ticker.o: ../../extra/ticker.c
$(CC) -c $(CFLAGS) $< -o $@
@@ -61,7 +58,7 @@ tinygl.o: ../../utils/tinygl.c ../../drivers/avr/system.h ../../drivers/display.
# Link: create ELF output file from object files.
-squeak4.out: squeak4.o pio.o system.o timer.o button.o display.o led.o ledmat.o mmelody.o squeaker.o ticker.o tweeter.o task.o tinygl.o
+squeak4.out: squeak4.o pio.o system.o timer.o button.o display.o led.o ledmat.o mmelody.o ticker.o tweeter.o task.o tinygl.o
$(CC) $(CFLAGS) $^ -o $@ -lm
$(SIZE) $@
diff --git a/apps/squeak4/Makefile.test b/apps/squeak4/Makefile.test
index 5dbf72c..4eb34b5 100644
--- a/apps/squeak4/Makefile.test
+++ b/apps/squeak4/Makefile.test
@@ -14,7 +14,7 @@ all: squeak4
# Compile: create object files from C source files.
-squeak4-test.o: squeak4.c ../../drivers/button.h ../../drivers/display.h ../../drivers/led.h ../../drivers/test/avrtest.h ../../drivers/test/pio.h ../../drivers/test/system.h ../../drivers/test/timer.h ../../extra/mmelody.h ../../extra/squeaker.h ../../extra/ticker.h ../../extra/tweeter.h ../../fonts/font3x5_1.h ../../utils/font.h ../../utils/task.h ../../utils/tinygl.h
+squeak4-test.o: squeak4.c ../../drivers/button.h ../../drivers/display.h ../../drivers/led.h ../../drivers/test/avrtest.h ../../drivers/test/pio.h ../../drivers/test/system.h ../../drivers/test/timer.h ../../extra/mmelody.h ../../extra/ticker.h ../../extra/tweeter.h ../../fonts/font3x5_1.h ../../utils/font.h ../../utils/task.h ../../utils/tinygl.h
$(CC) -c $(CFLAGS) $< -o $@
button-test.o: ../../drivers/button.c ../../drivers/button.h ../../drivers/test/avrtest.h ../../drivers/test/pio.h ../../drivers/test/system.h
@@ -44,9 +44,6 @@ timer-test.o: ../../drivers/test/timer.c ../../drivers/test/system.h ../../drive
mmelody-test.o: ../../extra/mmelody.c ../../drivers/test/system.h ../../extra/mmelody.h
$(CC) -c $(CFLAGS) $< -o $@
-squeaker-test.o: ../../extra/squeaker.c ../../drivers/test/system.h ../../extra/squeaker.h ../../extra/ticker.h
- $(CC) -c $(CFLAGS) $< -o $@
-
ticker-test.o: ../../extra/ticker.c
$(CC) -c $(CFLAGS) $< -o $@
@@ -63,14 +60,14 @@ tinygl-test.o: ../../utils/tinygl.c ../../drivers/display.h ../../drivers/test/s
# Link: create executable file from object files.
-squeak4: squeak4-test.o button-test.o display-test.o led-test.o ledmat-test.o mgetkey-test.o pio-test.o system-test.o timer-test.o mmelody-test.o squeaker-test.o ticker-test.o tweeter-test.o task-test.o tinygl-test.o
+squeak4: squeak4-test.o button-test.o display-test.o led-test.o ledmat-test.o mgetkey-test.o pio-test.o system-test.o timer-test.o mmelody-test.o ticker-test.o tweeter-test.o task-test.o tinygl-test.o
$(CC) $(CFLAGS) $^ -o $@ -lrt
# Clean: delete derived files.
.PHONY: clean
clean:
- -$(DEL) squeak4 squeak4-test.o button-test.o display-test.o led-test.o ledmat-test.o mgetkey-test.o pio-test.o system-test.o timer-test.o mmelody-test.o squeaker-test.o ticker-test.o tweeter-test.o task-test.o tinygl-test.o
+ -$(DEL) squeak4 squeak4-test.o button-test.o display-test.o led-test.o ledmat-test.o mgetkey-test.o pio-test.o system-test.o timer-test.o mmelody-test.o ticker-test.o tweeter-test.o task-test.o tinygl-test.o
diff --git a/apps/squeak4/squeak4.c b/apps/squeak4/squeak4.c
index 6b30289..3cc1f44 100644
--- a/apps/squeak4/squeak4.c
+++ b/apps/squeak4/squeak4.c
@@ -9,7 +9,6 @@
#include "pio.h"
#include "task.h"
#include "tweeter.h"
-#include "squeaker.h"
#include "mmelody.h"
#include "tinygl.h"
#include "../fonts/font3x5_1.h"
diff --git a/extra/squeaker.c b/extra/squeaker.c
deleted file mode 100644
index 2a912ea..0000000
--- a/extra/squeaker.c
+++ /dev/null
@@ -1,436 +0,0 @@
-/** @file squeaker.c
- @author M. P. Hayes, UCECE
- @date 14 April 2007
- @brief Play simple tunes with PWM.
-*/
-
-#define SQUEAKER_TRANSPARENT 1
-
-#include "squeaker.h"
-
-
-#define SQUEAKER_HOLDOFF_TIME 50e-3
-enum {SQUEAKER_PRESCALER = 256};
-
-
-/* By default notes are in the scale C4 -> C5.
- Note the first 12 frets on a six string guitar covers 3 octaves
- from the pitch E2 (82.41 Hz) to the pitch E5 (659.26 Hz).
-
- Tunes are specified using the notation C4C5F4G4C4 but for brevity
- this can be simplified to C4C5F4GC where the previously specified
- octave number persists. A problem with this notation is the
- verbosity when we have something like B2C3B2C3. Most melodies will
- only require 2 and 3 at the most octaves. The ABC music notation
- uses CDEFGABcdefgabc'd'e'f'g'a'b'c' to denote 3 octaves from C2 to
- C5? This uses numbers to indicate note duration, for example, C2
- denotes a C of twice the standard duration.
-
- For emphasis of first beat in bar, perhaps use ^ to indicate
- louder, for example, C^. Similarly, to make a note quieter it
- could have a v suffix. Alternatively, | bar markers could be
- inserted and perhaps time signatures.
-
- By default notes are quarter-notes. It is probably best to define
- speed in terms of quarter-notes (beats per minute) rather than bars
- per minute since this requires bars to be defined. Two bars in 4/4
- could be represented by C^DEDC^BAB whereas two bars in 3/4 could be
- represented by C^DEC^DE.
-
- So how should we denote note duration? We need to distinguish
- between 2 identical quarter-notes (A A) played in succession and a
- half-note since this sounds different.
-
- We could use AA to indicate two A quarter-notes. Alternatively, we
- could use AA to indicate an A half-note. However, for a whole note
- we would need to indicate this with AAAA. With the latter scheme
- we could separate two indentical quarter notes with a comma, for
- example, A,A.
-
- Rests are easy. Each space represents one rest of quarter-note
- duration. Two spaces represent a half-note rest. Alternatively,
- we could represent this with " /".
-
- From a sequencing point of view it is simpler if every symbol
- represents a quarter-note rather than having variable length notes
- since this alters the sequencing timing. This favours the approach
- of using AA to denote a half-note.
-
- If I implement a simple attack/decay response then it would be
- easier to use A/ for a half-note since we would interpret the / as
- to keep playing the previous note without sounding it again.
- Alternatively, when each new note is sounded there could be a short
- delay.
-
- >num could indicate jump forward to label num while 3 to represent playing the notes ABC in succession 3 times.
- This notation could be nested, for example, 2>3.
- Perhaps denotes playing ABC indefinitely? No I prefer
- a simple repeat. Use ABC: for an infinite repeat.
-
- represents ABCDEABCFG where ]n denotes alternate
- endings.
-
-*/
-
-
-
-static void
-squeaker_ticker_set (squeaker_t squeaker)
-{
- uint16_t speed;
-
- speed = squeaker->speed * squeaker->note_fraction;
-
-#if 0
- /* The division is performed first to reduce the chance of integer
- overflow. This results in poorer accuracy when the poll_rate
- is low. In practice, the poll_rate cannot be too low otherwise
- the generated notes will be inaccurate. */
- TICKER_INIT (&squeaker->ticker, (squeaker->poll_rate / speed) * 60);
-#else
- TICKER_INIT (&squeaker->ticker, (squeaker->poll_rate / SQUEAKER_PRESCALER)
- * 60 / speed);
-#endif
-}
-
-
-/* Specify the default note length in fractions of a measure (bar).
- A value of 4 is the default which makes each note a quarter note. */
-static void
-squeaker_note_fraction_set (squeaker_t squeaker, uint8_t note_fraction)
-{
- squeaker->note_fraction = note_fraction;
- squeaker_ticker_set (squeaker);
-}
-
-
-enum {SQUEAKER_SCALE_SIZE = 12};
-
-void
-squeaker_note_set (squeaker_t squeaker,
- squeaker_period_t period,
- squeaker_period_t duty)
-{
- squeaker->note_period = period;
- squeaker->note_duty = duty;
- squeaker->note_holdoff = squeaker->holdoff;
-}
-
-
-static void
-squeaker_rest_play (squeaker_t squeaker)
-{
- squeaker_note_set (squeaker, 0, 0);
-}
-
-
-static void
-squeaker_note_play (squeaker_t squeaker, squeaker_note_t note)
-{
- squeaker_period_t period;
- squeaker_period_t duty;
- uint8_t index;
- uint8_t octave;
-
-#if 0
- /* See if we can play this note. */
- if (note < SQUEAKER_NOTE_MIN)
- return;
-#endif
-
- note -= SQUEAKER_NOTE_MIN;
- octave = note / SQUEAKER_SCALE_SIZE;
- index = note - octave * SQUEAKER_SCALE_SIZE;
-
- period = squeaker->scale_table[index];
-
- while (octave-- > 0)
- period >>= 1;
-
- duty = (period * squeaker->volume) >> 8;
-
- squeaker_note_set (squeaker, period, duty);
-
-#if 0
- printf ("note = %d, octave = %d, period = %d\n",
- note, index / SQUEAKER_SCALE_SIZE, period);
-#endif
-}
-
-
-static squeaker_note_t
-squeaker_char_to_note (uint8_t ch)
-{
- squeaker_note_t note;
- /* A = 9, B = 11, C = 0, D = 2, E = 4, F = 5, G = 7 */
- static const squeaker_note_t const lookup[] = {9, 11, 0, 2, 4, 5, 7};
-
- return lookup[ch - 'A'];
-
-#if 0
-
- switch (ch)
- {
- default:
- case 'A':
- case 'B':
- note = (ch - 'A') * 2 + 9;
- break;
-
- case 'C':
- case 'D':
- case 'E':
- note = (ch - 'C') * 2;
- break;
-
- case 'F':
- case 'G':
- note = (ch - 'F') * 2 + 5;
- break;
- }
-#endif
-
-#if 0
- switch (ch)
- {
- case 'A':
- note = 9; break;
- case 'B':
- note = 11; break;
- break;
- case 'C':
- note = 0; break;
- case 'D':
- note = 2; break;
- case 'E':
- note = 4; break;
- case 'F':
- note = 5; break;
- case 'G':
- note = 7; break;
- default:
- note = 0;
- break;
- }
-
-#endif
-
- return note;
-}
-
-
-/* Scan next part of melody until a note or end of melody is found. */
-static const char *
-squeaker_scan (squeaker_t squeaker, const char *str)
-{
- while (1)
- {
- uint8_t num;
- char cmd;
- char modifier;
- bool have_hash;
- bool have_num;
- squeaker_note_t note;
-
- /* Play rest at end of melody. */
- if (! *str)
- {
- squeaker_rest_play (squeaker);
- return str;
- }
-
- cmd = *str++;
-
- have_hash = *str == '#';
- if (have_hash)
- str++;
-
- modifier = 0;
- if (*str == '+' || *str == '-')
- modifier = *str++;
-
- have_num = 0;
- num = 0;
- while (*str >= '0' && *str <= '9')
- {
- have_num = 1;
- num = num * 10 + *str++ - '0';
- }
-
- switch (cmd)
- {
- /* Repeat sequence from start. */
- case ':':
- str = squeaker->start;
- continue;
-
- /* Define start of loop. */
- case '<':
- /* We could implement a small stack to allow nested
- loops. */
- squeaker->loop_start = str;
- squeaker->loop_count = 0;
- continue;
-
- /* Loop. */
- case '>':
- squeaker->loop_count++;
- if (!num)
- num = 2;
-
- if (squeaker->loop_count < num)
- {
- /* Jump to start of loop. If no start of loop symbol,
- jump to start. */
- str = squeaker->loop_start;
- if (!str)
- str = squeaker->start;
- }
- continue;
-
- /* Alternate endings. */
- case '[':
- if (squeaker->loop_count == num - 1)
- continue;
-
- /* Skip to next alternate ending, the end of loop, or end of
- melody. */
- while (*str && *str != '[' && *str != '>')
- str++;
- continue;
-
- /* Play rest. */
- case ' ':
- squeaker_rest_play (squeaker);
- return str;
- break;
-
- case '*':
- if (num)
- squeaker_note_fraction_set (squeaker, num);
- continue;
-
- case '@':
- if (num)
- squeaker_speed_set (squeaker, num);
- continue;
-
- case 'A':
- case 'B':
- case 'C':
- case 'D':
- case 'E':
- case 'F':
- case 'G':
- note = squeaker_char_to_note (cmd);
-
- if (have_hash)
- note++;
-
- if (have_num)
- squeaker->octave = num;
-
- if (modifier == '+')
- note += SQUEAKER_SCALE_SIZE;
-
- if (modifier == '-')
- note -= SQUEAKER_SCALE_SIZE;
-
- /* Convert note to MIDI note number. */
- note += (squeaker->octave + 1) * SQUEAKER_SCALE_SIZE;
-
- squeaker_note_play (squeaker, note);
- return str;
- break;
-
- /* Continue with previous note. */
- case '/':
- default:
- return str;
- break;
- }
- }
- return str;
-}
-
-
-void
-squeaker_play (squeaker_t squeaker, const char *str)
-{
- squeaker->cur = squeaker->start = str;
- squeaker->loop_start = 0;
- squeaker->loop_count = 0;
- squeaker->octave = SQUEAKER_OCTAVE_DEFAULT;
- squeaker_note_fraction_set (squeaker, 4);
-}
-
-
-/* Set (base) speed in beats per minute (BPM). */
-void
-squeaker_speed_set (squeaker_t squeaker, squeaker_speed_t speed)
-{
- squeaker->speed = speed;
- squeaker_ticker_set (squeaker);
-}
-
-
-/* Set volume as percentage of maximum. */
-void
-squeaker_volume_set (squeaker_t squeaker, squeaker_volume_t volume)
-{
- squeaker->volume = volume;
-}
-
-
-int8_t
-squeaker_update (squeaker_t squeaker)
-{
- /* Rather than a 16 bit ticker it is faster to use
- an 8-bit prescaler and an 8-bit ticker. */
-
- squeaker->prescaler++;
- if (! squeaker->prescaler)
- {
- if (TICKER_UPDATE (&squeaker->ticker))
- {
- if (squeaker->cur)
- squeaker->cur = squeaker_scan (squeaker, squeaker->cur);
- }
-
- /* We could halve the note duty after some interval to
- simulate note decay. The decay interval could be related
- to the desired sustain. This approach is a bit brutal
- especially when the duty is small. */
-
- if (squeaker->note_holdoff)
- squeaker->note_holdoff--;
- }
-
- if (++squeaker->note_clock >= squeaker->note_period)
- squeaker->note_clock = 0;
-
- return squeaker->note_clock < squeaker->note_duty
- && ! squeaker->note_holdoff;
-}
-
-
-squeaker_t
-squeaker_init (squeaker_obj_t *squeaker,
- uint16_t poll_rate,
- squeaker_scale_t *scale_table)
-{
- squeaker->poll_rate = poll_rate;
- squeaker->scale_table = scale_table;
- squeaker->note_period = 0;
- squeaker->note_duty = 0;
- squeaker->volume = 127;
- squeaker->prescaler = 0;
- squeaker->holdoff = squeaker->poll_rate
- / (uint16_t)(SQUEAKER_PRESCALER / SQUEAKER_HOLDOFF_TIME);
-
- squeaker_play (squeaker, 0);
- squeaker_speed_set (squeaker, SQUEAKER_SPEED_DEFAULT);
- return squeaker;
-}
diff --git a/extra/squeaker.h b/extra/squeaker.h
deleted file mode 100644
index bcb75a1..0000000
--- a/extra/squeaker.h
+++ /dev/null
@@ -1,123 +0,0 @@
-/** @file squeaker.h
- @author M. P. Hayes, UCECE
- @date 14 April 2007
- @brief Play simple tunes with PWM.
-*/
-#ifndef SQUEAKER_H
-#define SQUEAKER_H
-
-#include "system.h"
-#include "ticker.h"
-
-typedef uint8_t squeaker_speed_t;
-typedef uint8_t squeaker_scale_t;
-typedef uint8_t squeaker_note_t;
-typedef uint8_t squeaker_duration_t;
-typedef uint8_t squeaker_period_t;
-typedef uint8_t squeaker_volume_t;
-
-
-enum {SQUEAKER_OCTAVE_DEFAULT = 4};
-enum {SQUEAKER_SPEED_DEFAULT = 200};
-
-
-/* Could calculate scale divisors at run time. 2^(1/2) is approx
- 1.0594631. A reasonable rational approximation is 267/252 =
- 1.0595238. Let's save memory and provide a macro to compute the
- divisors. */
-
-#define SQUEAKER_DIVISOR(POLL_RATE, FREQ) (POLL_RATE / FREQ + 0.5)
-
-
-#if 0
-enum {SQUEAKER_NOTE_MIN = 60};
-/* Define divisors for chromatic scale C4 -> C5. For better accuracy
- this should be defined for the lowest frequency scale, however,
- this may need 16 bits per note. */
-#define SQUEAKER_SCALE_TABLE(POLL_RATE) \
- {SQUEAKER_DIVISOR (POLL_RATE, 261.6256), \
- SQUEAKER_DIVISOR (POLL_RATE, 277.1826), \
- SQUEAKER_DIVISOR (POLL_RATE, 293.6648), \
- SQUEAKER_DIVISOR (POLL_RATE, 311.1270), \
- SQUEAKER_DIVISOR (POLL_RATE, 329.6276), \
- SQUEAKER_DIVISOR (POLL_RATE, 349.2282), \
- SQUEAKER_DIVISOR (POLL_RATE, 369.9944), \
- SQUEAKER_DIVISOR (POLL_RATE, 391.9954), \
- SQUEAKER_DIVISOR (POLL_RATE, 415.3047), \
- SQUEAKER_DIVISOR (POLL_RATE, 440.0000), \
- SQUEAKER_DIVISOR (POLL_RATE, 466.1638), \
- SQUEAKER_DIVISOR (POLL_RATE, 493.8833)}
-#else
-enum {SQUEAKER_NOTE_MIN = 40};
-/* Define divisors for chromatic scale E2 -> D#3. For better accuracy
- this should be defined for the lowest frequency scale, however,
- this may need 16 bits per note. */
-#define SQUEAKER_SCALE_TABLE(POLL_RATE) \
- {SQUEAKER_DIVISOR (POLL_RATE, 82.41), \
- SQUEAKER_DIVISOR (POLL_RATE, 87.31), \
- SQUEAKER_DIVISOR (POLL_RATE, 92.50), \
- SQUEAKER_DIVISOR (POLL_RATE, 98.00), \
- SQUEAKER_DIVISOR (POLL_RATE, 103.83), \
- SQUEAKER_DIVISOR (POLL_RATE, 110.0), \
- SQUEAKER_DIVISOR (POLL_RATE, 116.54), \
- SQUEAKER_DIVISOR (POLL_RATE, 123.47), \
- SQUEAKER_DIVISOR (POLL_RATE, 130.81), \
- SQUEAKER_DIVISOR (POLL_RATE, 138.59), \
- SQUEAKER_DIVISOR (POLL_RATE, 146.83), \
- SQUEAKER_DIVISOR (POLL_RATE, 155.56)}
-#endif
-
-typedef struct
-{
- uint8_t note_clock;
- uint8_t note_period;
- uint8_t note_duty;
- uint8_t note_holdoff;
- /* Pointer to start of string. */
- const char *start;
- /* Pointer to current position in string. */
- const char *cur;
- uint8_t holdoff;
- uint16_t poll_rate;
- const char *loop_start;
- int8_t loop_count;
- uint8_t prescaler;
- uint8_t note_fraction;
- squeaker_speed_t speed;
- squeaker_volume_t volume;
- ticker8_t ticker;
- squeaker_scale_t *scale_table;
- uint8_t octave;
-} squeaker_private_t;
-
-
-typedef squeaker_private_t squeaker_obj_t;
-typedef squeaker_obj_t *squeaker_t;
-
-
-/* The scale table is usually defined with:
-
- static squeaker_scale_t scale_table[] = SQUEAKER_SCALE_TABLE (LOOP_POLL_RATE);
-*/
-
-
-extern squeaker_t
-squeaker_init (squeaker_obj_t *dev,
- uint16_t poll_rate,
- squeaker_scale_t *scale_table);
-
-extern void
-squeaker_play (squeaker_t squeaker, const char *str);
-
-extern int8_t
-squeaker_update (squeaker_t squeaker);
-
-/* Set (base) speed in beats per minute (BPM). */
-extern void
-squeaker_speed_set (squeaker_t squeaker, squeaker_speed_t speed);
-
-/* Set volume as percentage of maximum. */
-extern void
-squeaker_volume_set (squeaker_t squeaker, squeaker_volume_t volume);
-
-#endif