Skip to content
This repository was archived by the owner on Jul 9, 2022. It is now read-only.

Add integer division, bitwise operations, stack to stack copy, "yank", and stack rotation commands#2

Open
cnamejj wants to merge 3 commits intoLyricLy:masterfrom
cnamejj:add-instructions
Open

Add integer division, bitwise operations, stack to stack copy, "yank", and stack rotation commands#2
cnamejj wants to merge 3 commits intoLyricLy:masterfrom
cnamejj:add-instructions

Conversation

@cnamejj
Copy link
Contributor

@cnamejj cnamejj commented Dec 20, 2021

I added some additional commands that I think might be interesting. Let me know if
any of them seem interesting asis or if you'd like to tweak how they work.

Here's the new ones included in the code in the PR. The B/b/E/e ones are to make
it possible to copy things from one stack to another without having to use the
backup cell. And the Q/q ones let you treat the stack like a wheel you can spin
in other direction.

_ : Integer division

A : bitwise "and" top two stack entries

O : bitwise "or" top two stack entries

X : bitwise "xor" top two stack entries

B : push a copy of the top of the stack onto the stack to the left

b : push a copy of the bottom of the stack onto the stack to the left

E : push a copy of the top of the stack onto the stack to the right

e : push a copy of the bottom of the stack onto the stack to the right

Y : "yank" an entry from the stack, push it on the top (like "I" but it deletes what it copies)

q : pops a number off the top of the stack, rotates the stack down that many times

Q : pops a number off the top of the stack, rotates the stack up that many times

I added some additional commands that I think might be interesting.  Let me know if
any of them seem interesting asis or if you'd like to tweak how they work.

Here's the new ones included in the code in the PR.  The B/b/E/e ones are to make
it possible to copy things from one stack to another without having to use the
backup cell.  And the Q/q ones let you treat the stack like a wheel you can spin
in other direction.

_ : Integer division

A : bitwise "and" top two stack entries

O : bitwise "or" top two stack entries

X : bitwise "xor" top two stack entries

B : push a copy of the top of the stack onto the stack to the left

b : push a copy of the bottom of the stack onto the stack to the left

E : push a copy of the top of the stack onto the stack to the right

e : push a copy of the bottom of the stack onto the stack to the right

Y : "yank" an entry from the stack, push it on the top (like "I" but it deletes what it copies)

q : pops a number off the top of the stack, rotates the stack down that many times

Q : pops a number off the top of the stack, rotates the stack up that many times
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant