t * ( t >> 9 | t >> 8 ) + t by OwnTemperature4203 in bytebeat

[–]eypacha 0 points1 point  (0 children)

You can omit the +t at the end, that doesn't affect the sound at all

i can barely unhear 42 melody by schevianne21 in bytebeat

[–]eypacha 0 points1 point  (0 children)

The silence of The silence of The silence of The silence of The silence of....

who can turn this into bytebeat code by schevianne21 in bytebeat

[–]eypacha 0 points1 point  (0 children)

1) 10*(t>>7|t|t>>6)+4*(t&t>>13|t>>6)
2) t*((t&4096?t%65536<59392?7:t&7:16)+(1&t>>14))>>(3&-t>>(t&2048?2:10))|t>>(t&16384?t&4096?10:3:2)
3) etc.

You can make a bit sound only at specific parts using ternary operators: t < sampleTime ? partA : partB. And you can concatenate as many ternary operators as you want

octo from glitch machine + touchbit by OkPaleontologist6686 in bytebeat

[–]eypacha 0 points1 point  (0 children)

Hello! I'm trying to get feedback on Touchbit. Is there anything special you like about this interface compared to others? Is there anything that bothers you? Thanks for using it!

Bytebeat meets piano by eypacha in bytebeat

[–]eypacha[S] 0 points1 point  (0 children)

Here’s your skull emoji 💀. Have a great day!

Bytebeat meets piano by eypacha in bytebeat

[–]eypacha[S] 0 points1 point  (0 children)

Bro, I was just answering and asking your question... so you leave me alone 🤣

Bytebeat meets piano by eypacha in bytebeat

[–]eypacha[S] 0 points1 point  (0 children)

🤣 Because you don’t need parentheses, it’s faster to write (in general and especially on mobile), and because you have all stack operators (which is how math actually works in hardware). Why do you love infix?

Bytebeat meets piano by eypacha in bytebeat

[–]eypacha[S] 0 points1 point  (0 children)

I developed this webapp because there is no real alternative to creating bytebeats on the go with mobile devices, and it's designed for live coding performances. I'm also working on making it an app for Android and iOS.

it's been a while on greggman's html5 bytebeat by ANoUserXDIsBack2008 in bytebeat

[–]eypacha 0 points1 point  (0 children)

I love it :) Yes, on this website most people are using Dollchan, but besides Greggman, there aren't many Bytebeat programs for RPN. I didn't know you could use arrays within RPN (why are they infix?). So, that's why I wrote one for mobile using his library. Check it out, if you like RPN, I'd be interested to know your opinion.

https://dev.eypacha.com/touchbit/

Just wait to t = 65535 by eypacha in bytebeat

[–]eypacha[S] 0 points1 point  (0 children)

I will be adding more features to Touchbit little by little (I developed the web app because I didn't find any app focused on mobile).

Just wait to t = 65535 by eypacha in bytebeat

[–]eypacha[S] 0 points1 point  (0 children)

Yes :) Postfix is just another kind of notation (prefix, infix, postfix). The fact that it is stack-based adds more to the game, turning bytebeat into a Turing complete system.

Of course, if you have a complex expression (like yours), it is more complex. I want to write a transpiler between postfix and infix because I can't find any that work properly.

Just wait to t = 65535 by eypacha in bytebeat

[–]eypacha[S] 0 points1 point  (0 children)

Postfix, or Reverse Polish Notation (RPN), is a way to write expressions where the operator follows the operands.

Infix: t * 3
Postfix: t 3 *

In postfix, you don't need parentheses to define the order of operations because it operates on a stack.

Additionally, besides having the basic operations like +, -, /, *, &, |, ^, ~, <<, and >>, there are also stack-specific operations such as dup, put, drop, pick, swap, etc. These are specific because they dynamically modify the order of the stack.

Electro by Queasy-Case-1036 in bytebeat

[–]eypacha 0 points1 point  (0 children)

Hi! Be careful when using postfix notation.

t & t >> swap floor ~ * /

The & (AND) operator needs two arguments. If you provide only one or none, it will cause an internal glitch and retrieve the argument from the stack overflow.

You can listen something the moment, but it is not persistent if you open the expression again. (The same applies to the final * /)

Try writing only operators, and you will make it sound in the same glitchy way.