Commit Graph
33 Commits
Author SHA1 Message Date
Gabriel Young b37f510f32 clean up config 2017-03-19 21:19:05 -07:00
Gabriel Young a3a304db9a clean up docs and provide defaults for keymap 2017-03-19 21:11:17 -07:00
Gabriel Young db2da37561 update docs 2017-03-19 20:56:45 -07:00
Gabriel Young df874a228a fix whitespace 2017-03-19 20:46:56 -07:00
Gabriel Young 7e9ca9a976 support LEDs 2017-03-19 20:45:10 -07:00
Gabriel Young a43ae7c92f Swap rows and columns to match the schematic 2017-03-19 20:34:53 -07:00
Gabriel Young 4a97ef6c48 start to define keymap; annoying because rows and columns are swapped from schematic 2017-03-19 19:55:55 -07:00
Gabriel Young d7fc236540 successfully read data from the matrix 2017-03-19 15:59:21 -07:00
Gabriel Young 19fd20261b sketch out frosty flake matrix using custom matrix.c based on kitten paw 2017-03-18 16:19:10 -07:00
Gabriel Young 3766f902a0 boilerplate project created with new_project.sh 2017-03-18 15:38:03 -07:00
Gabriel Young 70d83afff9 Merge branch 'qmk/master' 2017-03-18 14:48:27 -07:00
Gabriel Young 0734f56940 add debug messages to audio 2017-03-02 12:28:12 -08:00
Gabriel Young d11962aeb2 fix 'stop_all_notes' naming to be more consistent 2017-03-02 11:40:06 -08:00
Gabriel Young 976c856966 Update size estimates in the Makefile
MIDI_ENABLE = no

   text    data     bss     dec     hex filename
      0   17080       0   17080    42b8 satan_midi.hex

MIDI_ENABLE = yes
MIDI_BASIC undefined
MIDI_ADVANCED undefined

   text    data     bss     dec     hex filename
      0   19494       0   19494    4c26 satan_midi.hex

      +2414 bytes (vs. MIDI_ENABLE = no)

MIDI_ENABLE = yes
      0   20846       0   20846    516e satan_midi.hex

      +1352 bytes (vs. MIDI_ENABLE = yes, MIDI_BASIC off, MIDI_ADVANCED
off)

MIDI_ENABLE = yes
#define MIDI_BASIC
#define MIDI_ADVANCED

   text    data     bss     dec     hex filename
      0   21292       0   21292    532c satan_midi.hex

      +1798 bytes (vs. MIDI_ENABLE = yes, MIDI_BASIC off, MIDI_ADVANCED
off)

Conclusion:
    +2400 to 4200, depending on config
2017-02-25 21:38:35 -08:00
Gabriel Young b911e1966f Fix redundant process_music.c in sources 2017-02-25 21:13:47 -08:00
Gabriel Young a64ae10662 Update existing keymaps
Update existing keymaps to enable MIDI_BASIC functionality.  Also added
an option MIDI_ENABLE_STRICT to be strict about keycode use (which also
reduces memory footprint at runtime)
2017-02-25 20:41:13 -08:00
Gabriel Young ea14ed122f Add basic layer to sample MIDI keycap 2017-02-25 19:37:33 -08:00
Gabriel Young 1000799d1e Factor basic note processing into respective processors 2017-02-25 19:25:33 -08:00
Gabriel Young 525be99ee9 Split MIDI functionality into MIDI_BASIC and MIDI_ADVANCED
MIDI_ENABLE = no

   text	   data	    bss	    dec	    hex	filename
      0	  17080	      0	  17080	   42b8	satan_midi.hex

MIDI_ENABLE = yes
MIDI_BASIC undefined
MIDI_ADVANCED undefined

   text	   data	    bss	    dec	    hex	filename
      0	  19494	      0	  19494	   4c26	satan_midi.hex

MIDI_ENABLE = yes
#define MIDI_BASIC
MIDI_ADVANCED undefined

   text	   data	    bss	    dec	    hex	filename
      0	  19788	      0	  19788	   4d4c	satan_midi.hex

MIDI_ENABLE = yes
MIDI_BASIC undefined
#define MIDI_ADVANCED

   text	   data	    bss	    dec	    hex	filename
      0	  20846	      0	  20846	   516e	satan_midi.hex

MIDI_ENABLE = yes
#define MIDI_BASIC
#define MIDI_ADVANCED

   text	   data	    bss	    dec	    hex	filename
      0	  21140	      0	  21140	   5294	satan_midi.hex
2017-02-25 15:02:43 -08:00
Gabriel Young 1d69ccd729 Merge branch 'qmk/master' 2017-02-21 22:01:56 -08:00
Gabriel Young 64eecfc530 fix typos in keymap 2017-02-19 22:23:32 -08:00
Gabriel Young ed15973a3f Document size added by MIDI_ENABLE (~3800 bytes according to my experiments)
satan/keymaps/midi

MIDI_ENABLE = no

   text	   data	    bss	    dec	    hex	filename
      0	  17080	      0	  17080	   42b8	satan_midi.hex

MIDI_ENABLE = yes
#define MIDI_TONE_KEYCODE_OCTAVES 3 // default

   text	   data	    bss	    dec	    hex	filename
      0	  20846	      0	  20846	   516e	satan_midi.hex

MIDI_ENABLE = yes
#define MIDI_TONE_KEYCODE_OCTAVES 2 // fewer octaves

   text	   data	    bss	    dec	    hex	filename
      0	  20846	      0	  20846	   516e	satan_midi.hex
2017-02-19 17:45:08 -08:00
Gabriel Young d1fe24ad9f Allow customization of the number of tone keycodes and add example keymap 2017-02-19 17:18:05 -08:00
Gabriel Young ae0752dff5 expose midi_config 2017-02-19 16:43:45 -08:00
Gabriel Young 5e6097f015 add keycodes for transpose range 2017-02-19 16:43:43 -08:00
Gabriel Young dd8f8e6bae implement modulation 2017-02-19 16:43:02 -08:00
Gabriel Young 7c5e510fe2 add support for pedal cc messages 2017-02-19 16:42:45 -08:00
Gabriel Young f67aefc522 remove disabled code 2017-02-19 16:42:04 -08:00
Gabriel Young a4163466cb Alternative version with a tone array
tone array:
   text	   data	    bss	    dec	    hex	filename
      0	  25698	      0	  25698	   6462	satan_newsboytko.hex
0x6480 bytes written into 0x7000 bytes memory (89.73%).

note on array:
   text	   data	    bss	    dec	    hex	filename
      0	  25802	      0	  25802	   64ca	satan_newsboytko.hex
0x6500 bytes written into 0x7000 bytes memory (90.18%).
2017-02-19 16:42:04 -08:00
Gabriel Young f2b2e05f12 clean up commented code 2017-02-19 16:42:04 -08:00
Gabriel Young e405ab4bc6 initial implementation of polyphony using variable length array of notes on 2017-02-19 16:41:59 -08:00
Gabriel Young 5ae1411fc3 Expand MIDI key codes 2017-02-19 16:41:10 -08:00
Gabriel Young 40a8a88e72 Merge branch 'qmk/master' 2017-02-19 14:34:58 -08:00