Skip to main content


Understanding enums in #uxntal. Or, the recurring "why is the device page overlapping the zero-page" question.

https://llllllll.co/t/uxn-virtual-computer/46103/398
in reply to Devine Lu Linvega

nice. yeah I made great use of enums in taro to use the same functions on two different listbox datastructures so I could just pass the listbox base zeropage address in the stack, stash it, and use my %LB_PROP { #xx ADD } macros to make all the property access readable as STHkr LB_PROP
in reply to nilix

@nilix I was looking at the taro code earlier, I was wondering if you thought about running uxnlin on it, I saw a lot of little optimisation that would make it smaller and faster, if that's something that interests you.
in reply to Devine Lu Linvega

Def interested in making it faster since I run it off a dinky Atom processor while I'm at work lol; thanks, I'll definitely give that a shot tonight!
in reply to nilix

@nilix you should use as few macros as possible, for example. All the message types should be a single enum.
in reply to Devine Lu Linvega

do single-byte macros like that actually have a performance impact? :o
in reply to nilix

they don't make slower code, just slower assembly.

@msg-types &mbox $1 &mail $1

is nicer in code

.msg-types/mbox
This entry was edited (1 year ago)
in reply to Devine Lu Linvega

ohhhhh my god it all makes sense now!
that's a really cool technique 😁
in reply to Devine Lu Linvega

oh wow, i think the last time i checked that page it didn't have the web assembler, that's super cool!!!
in reply to efelbar

@flbr The web assembler is pretty neat, you should have a look at how I did it 😀 The assembly is done entirely in uxn space, so I didn't have to write an assembler in js, it uses the same assembler rom that I use to assemble every other project.

Lo, thar be cookies on this site to keep track of your login. By clicking 'okay', you are CONSENTING to this.