Topic: new engine: wtbeep

Ok folks, last engine from me for 2016. This one is a weird beast. In terms of capabilities, it's somewhere in between Tritone, Betaphase, and qaop. However, at 3-10 bytes per row, its data format is much more compact than the latter two.

wtbeep's main specialty are 32 different "waveforms", which are realtime generated, ie. no samples involved. Also re-using the new user-configurable click drum system from povver, though at a slightly decreased quality because wtbeep's loops are shorter (184 cycles vs. 224 in povver), and I don't want to decrease overall tempo resolution just to facilitate longer clicks.

To be honest I don't even understand myself what's going on with some of these waveform generators. But hey, it works, so let's not ask too many questions big_smile

Source code and stuff is on my github as usual. I might do an XM converter and/or MDAL config later if I can find some time for it.

Post's attachments

wtbeep-demo.tap 2.62 kb, 19 downloads since 2016-11-24 

You don't have the permssions to download the attachments of this post.

Re: new engine: wtbeep

wow, I like this one very much too!

Re: new engine: wtbeep

Yes! Great sound.

Re: new engine: wtbeep

Yo Zilog, good to read you on here! Your idea about using scalers has actually found it's way into this engine, though I think in a different form than you had envisioned it wink

Anyway, would love to see a new beeper engine from you, too! Squeeker has been very inspiring for me, and in terms of sound it's still one of my all-time favourites.

Re: new engine: wtbeep

Added this engine to 1tracker.

Minor issues. It seems that you messed up exx' in the pattern reading a bit, so you can't just have an empty row, or skip first or first and second channels. Edited the code to make it work. Also, there is loud clicks in the third channel after notes, unlike the first two.

website - 1bit music - other music - youtube - bandcamp - patreon - twitter (latest news there)

Re: new engine: wtbeep

Thanks for the fixes, Shiru. Is the issue of clicks in 3rd channel fixed in your version? If not, how can I reproduce it?

Re: new engine: wtbeep

No, I wasn't able to figure out clicks. You can hear it just by using the third channel, any notes, it is quite apparent.

website - 1bit music - other music - youtube - bandcamp - patreon - twitter (latest news there)

Re: new engine: wtbeep

Aye, I think this might be due to the way the engine is constructed. Timer/pattern update happens while the 3rd channel is active so it will be most affected. Not 100% sure about this but I can't spot any obvious code errors atm either.

Re: new engine: wtbeep

Yes, I thought so as well, but wasn't sure 100% either.

I also suspected the exx fix affecting that (like third channel counter value gets lost between rows), but didn't found obvious errors with it.

website - 1bit music - other music - youtube - bandcamp - patreon - twitter (latest news there)

Re: new engine: wtbeep

This engine continues to fascinate me a lot, and although I haven't released anything made with it yet, I had an idea to sample its sounds into a SoundFont (sf2), to be able to use it in a modern DAW without going full on with writing a custom VST (it would need built-in Z80 emulation, doable, but would take much longer - saved it for later).

May come handy to someone - download here. It is a clean version, no carrier hiss there.

website - 1bit music - other music - youtube - bandcamp - patreon - twitter (latest news there)

11

Re: new engine: wtbeep

Thanks Shiru, that's a neat idea for spreading 1-bit sounds outside the 1-bit world.

Meanwhile I know what's up with that carrier hiss. Basically the issue seems to be caused by things leaking into bit 3 of port #fe. Which is by design in this engine, so can't be trivially fixed. Will try to rewrite the engine some day but have no time for it at the moment.

12 (edited by Shiru 2019-10-26 15:39:02)

Re: new engine: wtbeep

In meanwhile, a demo song that shows up these sounds, as well as some of my other 1-bit DAW stuff: https://soundcloud.com/shiru8bit/lost-i … it-version

Detailed info is here: https://www.patreon.com/posts/lost-in-pseudo-1-28964800

website - 1bit music - other music - youtube - bandcamp - patreon - twitter (latest news there)

Re: new engine: wtbeep

Did a small song using actual wtbeep engine, for CAFe 2019: https://soundcloud.com/shiru1bit/falling-asleep

website - 1bit music - other music - youtube - bandcamp - patreon - twitter (latest news there)

14

Re: new engine: wtbeep

Great little tune. A pity that CAFe didn't have a dedicated beeper compo though. Hmm maybe next year...

Re: new engine: wtbeep

As I was playing with it in the recent years, I came to conclusion that wtbeep is one of the finest engines available at the moment, at least in regards to the sound diversity combined with the ease of use. The two downsides are is that it is not compatible with +3 (not a big deal), and the carrier hiss that is a bit too audible at times.

So I thinking about possibilities to improve the latter issue. A couple ideas:

- Maybe do 3 sound loops, one is single channel, another is two channel, and the last one is the current three channel one. Tracker can adjust the pitch and set appropriate core per row. This will add a bit clarity, although maybe the hiss will get more noticeable, because it will be turning on and off all the time.

- Maybe make unorthogonal channels. Two with selectable waveforms, and one either a simple square tone (good enough for bass), or variable duty cycle tone. Should probably speed up the sound loop a little bit and make hiss less audible.

Another neat feature to have would be an unequal volume balance, maybe switchable on a per row basis, or two loud channels and one a bit quieter - would be good for echoing stuff. Not too sure if it can be done with the current design, though.

website - 1bit music - other music - youtube - bandcamp - patreon - twitter (latest news there)

Re: new engine: wtbeep

Yes it would certainly improve things if it was better compatible with the +2a/+3

Most of my new tunes are used in games so I try and use an engine that sounds good on all models. If the games are released on tape then there's a good chance collectors will have a +2/+2a model.
Phaser 3 seems the best choice for me at the moment for sound quality, compatibility and the fact the complied tune files are not massive.

Re: new engine: wtbeep

Got some ideas for Phaser continuation, too, although nothing too special. Hooking up the new sampled drums code from the Ear Shaver EX is the obvious one.

website - 1bit music - other music - youtube - bandcamp - patreon - twitter (latest news there)

18

Re: new engine: wtbeep

These are all great ideas, Shiru. Really, I should go back and revisit a lot of my engines. If only a day had 48 hours... It's also not like the old times, where I could sit down and code for 12-14 hours a day. Anyway... what I wanted to say was, if you want to have a go at this, by all means do, because I'm afraid I won't have time for it in the near future.

Shiru wrote:

- Maybe make unorthogonal channels. Two with selectable waveforms, and one either a simple square tone (good enough for bass), or variable duty cycle tone. Should probably speed up the sound loop a little bit and make hiss less audible.

wtbeep's loop is actually pretty tight already, just 184t. Perhaps it's actually too fast. Iirc channel 1 gets 56t and ch 2/3 get 64t, which might mean that their volume is too low to mask unwanted noises.

Come to think of it, at just 184t it should actually be possible to make this engine compatible with the +2A/+3. In the end we established it was a matter of masking bit 3, didn't we? Might also help to get rid of the hiss. Hmm I guess that could be a rather quick fix actually, if we don't care about 8t alignment.

19 (edited by utz 2022-03-31 21:18:34)

Re: new engine: wtbeep

Ok, give this version a spin and let me know what you think. Sound loop is 4t longer and outputs are not 8t-aligned, but to my ears it doesn't seem to matter much. Drum timing correction probably needs to be adjusted but I think it wasn't correct to begin with.

Interestingly enough 188t is pretty close to Tritone's 192t, which seems to be kind of a sweet spot, as imo Tritone still wins hands down when it comes to smoothness of sound.

Edit: Got it aligned at 192t. 72t for ch1/2, 48t for ch3 - not the best for unbalanced volumes but perhaps good enough to fake some delay/echo.

Post's attachments

main-unaligned.asm 5.8 kb, 2 downloads since 2022-03-31 

main.aligned192.asm 6 kb, 3 downloads since 2022-03-31 

You don't have the permssions to download the attachments of this post.

Re: new engine: wtbeep

I'll give them a test tomorrow. If it works, I think I'll add them to the 1tracker engine as a selectable option (like the Octode XL), so the user could choose whether he needs the classic one, +3 compatibility, or unbalanced volume.

website - 1bit music - other music - youtube - bandcamp - patreon - twitter (latest news there)

21

Re: new engine: wtbeep

I think just adding the aligned/unbalanced version should be enough, unless you think that the unaligned version sounds drastically better (in which case I have a version that brings it down to 182 cycles). Both versions should be +3 compatible.

Re: new engine: wtbeep

Adopted the aligned unbalanced version to the 1tracker engine. The quiet channel is not so quiet, but we'll see. Having at least that much of difference sure should help to create more dynamic sound.

website - 1bit music - other music - youtube - bandcamp - patreon - twitter (latest news there)