OMG this is amazing! Having been doing a nose dive in computer history lately and was musing about using the grid as a matrix for computing purposes. Can’t wait to get home to try this out!

3 Likes

It’s still pretty rough(currently implementing OSC), but yeah I think it can be pretty powerful! Let me know what you think :slight_smile:

How to play a random note on the 3rd octave

11110001 SETNOTERAND
00100101 SETOCT3
00000010 SENDCHAN1
3 Likes

Aww this machine is so beautiful

1 Like

I have really been enjoying your contributions to norns, thanks for sharing! This looks excellent and i can’t wait to load it up :slight_smile:

5 Likes

I had a brief play on this as it was so unusual to see a sequencer in this style. I watched the video about 5 times and I’m still not 100% grasped how to get it to work correctly. I am pressing buttons and watching the screen. I couldn’t quite work out how it works by column? I couldn’t work out the relationship of the x/y settings. I understand each button opens up a blank page and from that you press other buttons whilst looking at the screen. It’s those set of button combinations I’m not sure about. Can they be anywhere on the grid? Seems like you were working from the bottom in columns.

1 Like

Ah yes, so bytes are 0001 to 1111, they are right aligned usually, so they are bottom aligned in Punchcard. You can divide a vertical line in 3 parts AAAABBCC

A # value
A
A
A
B # key
B
C # command
C

Furthermore, 11110001 can also be read like 16, 0 and 1, following the ABC divisions.

11110001 SETNOTERAND
00100101 SETOCT3
00000010 SENDCHAN1

When seen vertically is

1 0 0
1 0 0
1 1 0
1 0 0
0 0 0
0 1 0
0 0 1
1 1 0

That will play a random note on the 3rd octave via channel 1.

SEND commands will always end with 10, and so SET commands will always end in 01, etc.

10 Likes

Ok that’s a lot clearer, I get it now, thanks

quite helpful guide
thanks

i’m not very familiar with punchcards
why…

1 0 0
1 0 0
1 1 0
1 0 0
0 0 0
0 1 0
0 0 1
1 1 0

instead of…

1 1 0
0 0 1
0 1 0
0 0 0 
1 0 0
1 1 0
1 0 0
1 0 0

?

Is anyone else having trouble leaving the script? I press key1 and the menu flashes on screen briefly, then it’s back to the punchcard interface. It seems I can still navigate the menu… though it only shows where I am in brief flashes just after a knob turn or button press.

I have this as well but I’ve not been able to figure it out yet. Matt, are you running the last full release or the current norns master branch? (I thought it might be some new-ish code being glitchy)

1 Like

I’m on the last full release, I think. Well, I installed on both of my Norns, one of which I am pretty sure is on the last release.

Edit: @okyeron, I was definitely on the last full release. I have just pulled norns, and the problem persists.

I’ve looked everywhere for that issue with the menu, can’t find it. Press K3 to pause the script before quitting, that’s the only solution I got :confused: I had an issue before where I had a global called id and that was overwritting something in menu.lua, I’m surprised that menu is using globals, it makes it really to break things.

@glia Because bits are right aligned, so I think this better translates to down aligned. Otherwise, vertically, a sequence of numbers would look like 87654321.

2 Likes

Pausing the script with key3 works for me.

I’ve been looking through the script/libs, and I am at a loss. At least there is a work around :slight_smile:

1 Like

Same issue here. Hit button 1 and get flashy screen until successfully starting another program.

There’s no solution for that now, just press K3 before leaving the program is paused.

:+1: in twenty characters

I ran into this when debugging less concepts + ~ r e f r a i n. I had issues with calling redraw() functions between the two lua scripts – it really felt like swapping between multiple redraw() functions was overriding the system menu redraw somehow.

Oh, you might be onto something. Could that be because I’m not overwriting the public redraw() function?

goes to test theory, brb

edit: Nope, that doesn’t fix it, but it reveals that even tho nothing in my script is calling the public redraw() function. When I add these lines to punchcard.lua:

function redraw()
  screen.clear()
  screen.move(0,0)
  screen.line(100,100)
  screen.stroke()
  screen.update()
end

and press K1, I see a line draw on the screen, so I’m guessing the menu is writting a redraw(). Bizarre.

2 Likes

sounds like this is a @tehn question (to see how this is interacting with menu)

Okay, I figured it out and pushed a fix. So we should NEVER do screen operations outside of the main public redraw() function. I’ve moved all my class_name:redraw() instances back into a single public redraw, and that fixed the issue.

derne-stitky

7 Likes