Commit graph

54 commits

Author SHA1 Message Date
Andy Sloane
d68e8e8225 show all instrument names 2015-11-01 21:26:03 -08:00
Andy Sloane
114240ca9f oscilloscopes.
couldn't really think of a better way to do it, but it looks pretty
awesome. you can really see the filter effect too.
2015-11-01 09:26:03 -08:00
Andy Sloane
3daeeee96b implement retrigger, move effects into separate js 2015-11-01 07:42:52 -08:00
Andy Sloane
6dee1787f3 show the instruments 2015-10-31 11:39:49 -07:00
Andy Sloane
a3b94c51b9 oh man, DUH 2015-10-31 11:17:22 -07:00
Andy Sloane
49005f0ae0 so many weird uses of effects 2015-10-31 10:52:46 -07:00
Andy Sloane
5e141535ab fix some filter weirdness 2015-10-31 09:33:59 -07:00
Andy Sloane
32b09bdf63 various envelope/effect fixes
Dubmood's .xms seem to expose a lot of bugs...
2015-10-31 09:27:38 -07:00
Andy Sloane
837e302796 workaround pattern rendering breakage
synchronized screen updates need to be a bit more robust...
2015-10-31 07:56:36 -07:00
Andy Sloane
9f014f35c8 how did i mess up arpeggio!? 2015-10-30 23:39:50 -07:00
Andy Sloane
acffa056a5 *really* fix instrument triggers
last commit was completely wrong. also i read somewhere that the
instrument alone doesn't reset volume, which is apparently a lie.
2015-10-30 22:54:19 -07:00
Andy Sloane
c12f2b8068 fix triggering without note
you can retrigger a note just by using the instrument column.
2015-10-30 22:35:48 -07:00
Andy Sloane
ee005ef668 implement volume column slides 2015-10-30 22:28:03 -07:00
Andy Sloane
c238aabd66 butter smooth screen updates, longer audio buffer 2015-10-30 21:25:21 -07:00
Andy Sloane
949a7c89c5 fix envelope sustain and fadeout 2015-10-30 18:13:13 -07:00
Andy Sloane
b7a2e58109 Ripped font gfx out of FastTracker 2 :) 2015-10-30 17:58:24 -07:00
Andy Sloane
dacb1a5852 hack to use first sample in instrument rather than last one 2015-10-30 08:53:39 -07:00
Andy Sloane
92c6bddcc6 fixed a bunch of playback-stopping bugs 2015-10-29 14:56:17 -07:00
Andy Sloane
156cca80d3 fix envelopes some more
whoops, was checking wrong envelope bits for sustain/loop
2015-10-29 14:04:25 -07:00
Andy Sloane
c3499eedaa Fix envelope hacks and a bug (panning left on release) 2015-10-29 13:51:57 -07:00
Andy Sloane
5645739edb unrolled main mixing loop 2015-10-28 21:59:54 -07:00
Andy Sloane
efec2d7273 implement instrument fadeout
i just hacked the fadeout directly into envelopes rather than
complicating anything else.
2015-10-28 19:47:42 -07:00
Andy Sloane
2615c201e2 implement sample loop unrolling & pingpong 2015-10-28 19:14:06 -07:00
Andy Sloane
16167bc599 implement pattern / song jumps 2015-10-28 16:21:12 -07:00
Andy Sloane
0bfc83d48b added a few simple effects, updated todo 2015-10-28 15:56:29 -07:00
Andy Sloane
34a50855b0 we can now play a bunch of XMs! 2015-10-28 15:43:33 -07:00
Andy Sloane
0f4517908d fix short patterns 2015-10-28 15:43:28 -07:00
Andy Sloane
49de30d741 a few Exy effects 2015-10-28 13:56:57 -07:00
Andy Sloane
84369dbc2c fix loading issues 2015-10-28 12:40:14 -07:00
Andy Sloane
beeec74fa1 fixed more terrible things
- tick 1+ effects were playing on tick 0, whoops
 - 8-bit samples were sometimes being loaded with an offset of -1, eesh,
   no wonder i had to work so hard to eliminate clicks and pops
 - the note display was totally wrong
2015-10-27 21:39:48 -07:00
Andy Sloane
b82a350011 fix vibrato, implement 6xy 2015-10-27 20:55:00 -07:00
Andy Sloane
17123cc5f1 made it so you can load other xms
and as a result, fixed a ton of bugs, many many remain
2015-10-27 17:41:11 -07:00
Andy Sloane
66958ca7d8 minor panning tweak 2015-10-27 16:04:11 -07:00
Andy Sloane
5161e55669 added volume column effects, fixed panning
when there was no panning envelope, panning was totally wrong

panning is still sort of wrong, in that the RMS power of a channel is
not constant over pans...
2015-10-27 15:38:42 -07:00
Andy Sloane
c2fe03797e refactored mixing code a bit
removed all doubt about handling note-end pops
2015-10-27 08:48:29 -07:00
Andy Sloane
343da0f3e9 creditz to zalza in index.html 2015-10-26 15:40:55 -07:00
Andy Sloane
8e6b6e7a90 safari compatible 2015-10-26 13:04:37 -07:00
Andy Sloane
bf601d8e9d added README 2015-10-26 11:44:31 -07:00
Andy Sloane
706770584a add code pointer in index 2015-10-26 11:03:51 -07:00
Andy Sloane
10ea0b5f65 rudimentary VU meters 2015-10-26 10:53:23 -07:00
Andy Sloane
94d378d4ce added panning envelopes
refactored envelopes.

no idea if the final panning is right, though. need to do some tests vs
FT2.
2015-10-26 10:41:58 -07:00
Andy Sloane
741efc0f25 fixed vibrato, implemented Axy 2015-10-26 09:18:11 -07:00
Andy Sloane
653c80c88a implemented vibrato
added effects table to clean things up a bit
2015-10-26 08:42:55 -07:00
Andy Sloane
50c5513aeb fix portamentos, pitch bends
- period slides were off by a factor of 4
 - we need to reset a note's envelope if it was released, and then
   portamento'd into
 - instruments shouldn't trigger notes in the presence of 3xx/5xx
2015-10-25 22:06:50 -07:00
Andy Sloane
4a0efd648d inlined all filters 2015-10-25 09:20:12 -07:00
Andy Sloane
f8a278f456 optimizing filters, work in progress 2015-10-25 09:01:29 -07:00
Andy Sloane
597d9cfc6e effects 1,2,3
Change-Id: I27664eb1b7f052efa3c7dd67d69f179a419793a8
2015-10-24 17:05:54 -07:00
Andy Sloane
fca447528e arpeggio!*&@ 2015-10-24 09:00:24 -07:00
Andy Sloane
6837fbb42e added a click/pop filter on volume and note end.
sounds a LOT better now.  just needs effects!
2015-10-23 17:58:42 -07:00
Andy Sloane
7de75f6977 added per-channel low-pass filter
sounds better, but still clicks and pops a lot.  i'll need a volume
envelope lowpass filter, i guess.
2015-10-23 17:34:52 -07:00