Versions:

   1.12  add host/preset sub-directories and associated files
         calls to loadPresets() nthPreset() replace direct references to presets 
         add xtrlCmd() xtrlReq()
         add REDUCED_KIT 
         add specific logic in Beatitude::evHandler() to handle XTRLCTRL recording
         allow compilation under __XTRLCTRL__ runtime model
         syncs with lib 1.17
   1.11  optimize DrumKit::noteOn() for size 
         [31744] 1.6.6   revB
   1.10  drums are panned in stereo
         pot0 controls balance between bass and drums
         add DrumKit::panCoeff ::panRight
         add Beatitude::scaleBass
         remove DEBUG sections
         [31764] 1.6.6   revB
         [32206] 1.8.10  revB
         [32180] 1.8.10  revC
   1.09  nix redundant unmuting of drums at Beatitude(sqncRECON)
   1.08  add DEBUG sections
   1.07  Beatitude::sqnc replaces automatic var in ::charEv()
         dereferencing of "drums->sqnc->" replaced by "sqnc->"
         [31566] 1.6.6
   1.06  hifi Snare used for all builds
         remove BUILD_166 conditional compilation sections
         [31578] 1.6.6
   1.05  bugfix: configVoices() was being called from Beatitude constructor!
   1.04  use presetMenu + event logic to eliminate need for KEYBRD_MENUS
         syncs with library 1.12
         [31632 / 741] __STNDLONE__ 1.12b
   1.03  Synth::setup() renamed ::config() to circumvent Arduino bug
         ::setupVoices() renamed ::configVoices()
         syncs with library 1.10
         [32096 / 788] __STNDLONE__ 1.10
   1.02  Bass class uses ADSRVoice as superclass
         DrumKit class uses Voice as superclass
         syncs with library 1.10m
         [32058 / 788] __STNDLONE__ 1.10m
   1.01  corrected comments on how-to-use
         [32180 / 768] __STNDLONE__ 1.10j
         [32180 / 768] __STNDLONE__ 1.10g
         [32182 / 770] __STNDLONE__ 1.10e
         [32192 / 770] __STNDLONE__ 1.10d
         [32186 / 770] __STNDLONE__ 1.10c
         [32190 / 770] __STNDLONE__ 1.10b
         [32174 / 768] __STNDLONE__ 1.10a
   1.00  optimize DrumKit::noteOn() for size
         [32194 / 768] __STNDLONE__ 1.09v
         <FreeRAM 317>
   0.99  set_baud_rate() nixed
         syncs with 1.08
         [32082 / 803] __STNDLONE__ 1.08
         [32222 / 768] __STNDLONE__ 1.09v
   0.98  Bass(!) explicitly sets freq ratio between oscillators
         syncs with library 1.07
         [32098 / 736] __STNDLONE__ 
   0.97  Beatitude::welcome() loads beat0
         sqncRECORD msg renamed sqncRECON
         sqncOVER   msg renamed sqncRECOFF
         syncs with library 1.06
         [31970 / 736] __STNDLONE__
   0.96  DualOsc class moved to library
         Beatitude::newOsc() uses DualOsc(Osc*, Osc*) constructor
         syncs with library 1.05
         [31996 / 734] __STNDLONE__
         [32024 / 736] 1.06
   0.95  setting of beats/measures moved from RealTimeSequencer to Beatitude
         RealTimeSequencer class moved to library 
         ClickTrack class moved to library 
         BeatMenu and MeasureMenu derive from the library class ByteMenu
         Beatitude explicitly handles mute/unmute of drums for cue/record
         Beatitude(!) sets sqnc->ignoreKeyUp
         add Beatitude::setCueing()
         sequence durations in preset uses global symbolic constants
         syncs with library 1.04
         [31990 / 742] __STNDLONE__ 
   0.94  add conditional compilation sections re BUILD_166
         [32032 / 740] __STNDLONE__ 
   0.93  add header comments re Bass
   0.92  Beatitude([) propagates to drum sequencer
   0.91  right channel 3/4 bass 1/4 drums
   0.90  bass utilizes DualOsc
         setup() constrains octaves
   0.89  live bass playing over drums playback
   0.88  Metronome class renamed ClickTrack
         Beatitude::metro       renamed ::click
         Beatitude::metronomeOn renamed ::clickOn
         [31306 / 724] __STNDLONE__ 
   0.87  add Beatitude::noteOff()
         [31306 / 724] __STNDLONE__ 
   0.86  nix metroON
         metroOFF renamed sqncOVER
         reorder sequencer messages
         [31376 / 724] __STNDLONE__ 
   0.85  add Beatitude::liveBass
         metroTICK renamed sqncDNBEAT
         metroTOCK renamed sqncUPBEAT
         [31390 / 724] __STNDLONE__ 
   0.84  no need for RealtimeSequencer::done() to send synth an "UNCUE"
         [31364 / 723] __STNDLONE__ 
   0.83  metroCUE renamed sqncCUE
         metroUNCUE renamed sqncRECORD
         [31402 / 723] __STNDLONE__ 
   0.82  add sqncPLAYON, sqncPLAYOFF commands
         LED0 blinking/off now controlled by synth
         [31402 / 723] __STNDLONE__ 
   0.81  DrumSynth renamed Beatitude
         [31152 / 965]  
   0.80  working drums -- liveplay/record/playback -- with local sequencer
         [31152 / 965]  
   0.79  Kit renamed DrumKit
         move sequencer from DrumSynth to DrumKit
         --- notes do not migrate to DrumKit
         [31214 / 965]  
   0.78  Metronome overrides dynamics() and output() methods
         --- seems to cure issue with 1st downbeat
   0.77  metro becomes member ptr, instantiated in DrumSynth()
         --- if you power down the card, the 1st downbeat is not enveloped
         [32052 / 965]  
   0.76  RealTimeSequencer sends all metronome events to synth, not target
         [32054 / 965]  
   0.75  restore metroTICK/TOCK messages from 0.70
         add DrumSynth::dynamics()
         DrumSynth resets metro
         [32026 / 965]  
   0.74  Metronome() sets global volume to 255
         [31998 / 965]  
   0.73  synth renamed mySynth
   0.72  nix messaging for metroTICK, metroTOCK
         use lofi version of Tom02 for ! USE_SERIAL_PORT
         [31990 / 965]  {CPU 28.5}
   0.71  metro becomes a global pointer to a global instantiated Metronome
         DrumSynth reduced to 2 voices
   0.70  instantiate bass voice -- not explicitly called
         use lofi version of Tom02 (when USE_SERIAL_PORT)
         replace calls to setTable() with setSample()
         [31976 / 965]  {CPU 28.5}
         [31230 / 869]  {CPU 21}
   0.69  add metro, drums shortcut ptrs
         [31230 / 869]  {CPU 21}
   0.68  DrumSynth derives from VoxSynth, explicitly calls setupVoices(2)
         [31204 / 865] 
   0.67  add Bass class (not instantiated)
         [31198 / 865] __FULLHOST__ 1.03o
   0.66  === FIRST PUBLISHED VERSION ===
