Orca - Livecoding Tool

It’s the 240x320(2.2") TFT LCD Screen, with the Alu CNC Case.
They were all over ali express a few years back, their new models are terrible.
The only downside of this model is that the casing blocks wifi signal.

1 Like

Sorry for not reading this whole thread but has anyone got orca running on an iOS device and if so, can you please share how?

Thanks!

https://orca.wtf/ might work on your iPad.

Devlog

Here’s a little progress video of Orca being written in Assembly.

6 Likes

…and the benefits are (besides that fun (?) of getting to write assembly?

@nonmateria I ended up modifying ttymidi’s code to make it handle clock messages. And, well, it works now. I guess I wasn’t that rusty after all.

For anyone interested, it’s right here : GitHub - DaBroni2501/ttymidi: ttyMIDI is a GPL-licensed program that allows external serial devices to interface with the ALSA sequencer.

2 Likes

@a773

The Benefits of Targetting a VM

The idea is that Orca will no longer be platform dependant. Concretely that means multiple things, it means that:

  • Orca Electron(100mb)
  • Orca Uxn(10kb)

But also, it should live longer, as it should not need maintenance to keep up with the changes in computing architecture. It’s an experiment with longtermism inspired by how NES games are still playable today due to the relatively simple systems they were targeting and how easy it is to write emulators for them.

Back in 2016, we experienced frequent failures with both software & hardware, largely due to our small energy storage and lack of reliable connectivity. The solution was to create tools that would be better suited to our needs. The objective was to replace the bloated, closed-source or subscription software that we were using to do creative work, such as Photoshop, Xcode and Ableton. We were somewhat familiar with web technologies, so we decided to build our programs on this new framework called Electron.

While solving some of our issues, Electron was rapidly increasing in size and soon joined the rest of the software that we wanted to do away with. Our focus shifted toward reducing our energy use, and to ensure reliability by removing all dependencies.

To transition toward our new goals, we developed offline web versions as temporary stand-ins while researching ways to build more resilient software. We eventually ported our tools to C, but while we had achieved ideal energy usage, portability was still an issue, so we kept looking. We learnt 6502 assembly, seeing players run our NES game on all these different platforms gave us a new idea.

And so, in 2021 we took our biggest leap yet toward longtermism and designed a small virtual machine with a focus on implementability; meaning that moving forward, our software will live on a virtual machine. In other words, the code will stop having to be ported, but instead to make something available on a new platform would our needs or devices change, the emulator remains the only piece of code to be ported, which is explicitly designed to be easily implemented.

This is where we are now. uxn may solve our cross-platform issues, while being extremely light. It took us a long while to get here, we hope that one day the Uxn versions of our software replace the desktop and web versions.

Also, here’s Orca on the NintendoDS.

28 Likes

Very cool, thanks for the explanation!

hey out of curiosity
are you cool with us having a dedicated uxn thread?

would love to discuss more

3 Likes

@glia Please, let’s!

Enter the Orca Rack Module megathread.

Would anyone be interested in this?

Mockup by Lizbeth.

28 Likes

I would have totally been interested. Too bad I already started using Orca on a RPi.
I’ll keep on eye on it though.

I haven’t used orca, just watched a couple YouTube videos about it (though I want to try it sometime)…

I’m imagining the two jacks at the bottom being gate and cv in. Is there precedent for an input operator in orca?

Like: produce quantized note and 8ve on every tick, or bang when received gate between last tick and this, for example?

It would be a clock out, and something “else”.

Seems to me MIDI and CV/Gate expansion wouldn’t be outside of the realm of possibility. NerdSEQ is a good example of that concept in action, and Teletype is a good example of that as an open ecosystem.

1 Like

Released Orca for the Uxn computer, it’s tiny 11kb. You can download it here. It’s compatible with all Uxn emulators. It comes with a built-in synth with 4 voices, and uses the = rune.

Controls

space - toggle play/paste
backspace - erase
escape - deselect
arrow - move
shift+arrow - scale selection
ctrl+n - new
ctrl+s - save
ctrl+r - rename
ctrl+o - open
ctrl+c - copy
ctrl+v - paste
ctrl+x - cut

Enjoy!

19 Likes

I am so ready for this.

Uxn and some spare hardware on my desk (pi Pico, pi zero & compact laptop) has me wondering what people consider to be minimum viable screen resolution for orca?

Any chance uxn has or will gain midi support?

2 Likes

Any chance uxn has or will gain midi support?

Will have, in about an hour or so. I need it for Flash Crash :slight_smile:

13 Likes

Since there is a norns version of orca, it’s pretty darn low!!

2 Likes

Can’t wait…
and thanks!
the dream is for orca Uxn to control drum rack Uxn
and we can place our own 8bit samples :slightly_smiling_face:

2 Likes

ringadingding

@JaggedNZ Midi operator has been implemented, make sure to update your version of the emulator.

Shim is a utility that converts bytes into midi messages.

Shim is designed to recieve the 3 bytes of midi(channel, note, velocity) and pass it to a selected midi device.

Usage

uxnemu orca.rom | shim

The : operator is used to send note values outside of Uxn, to other applications or other instances of Uxn, to convert the signal to midi, use the shim, or parse it to control video or other things.

7 Likes