Skip to main content


This was my second attempt at implementing a spreadsheet in assembly, the first time around I got so tangled up that I had to put it aside. But, this time, it went smoothly, I must say I've picked up many new tricks for this sort of development during the past year.

I'm so happy to finally have my dream spreadsheet program to manage my little databases and lexicons, all in.. just over 8.3kb.

I think that might be less than a blank excel file 🤔

https://wiki.xxiivv.com/site/nebu

This entry was edited (1 month ago)
in reply to Devine Lu Linvega

This is so exciting to me, because so many of the older spreadsheet programs are inaccessible. And the new ones are so heavy and slow.
Unknown parent

in reply to Devine Lu Linvega

I probably need to try spreadsheets again. My mind immediately goes to "excel, the wrong tool for every job"; for data analysis and calculations I tend to use a qalc / julia / lisp scripts. But it just occured do me that this is really just a graphical REPL.
in reply to lhp

@lhp I'm tracking my weight daily, and various other stats like this, and a text editor was just not cutting it anymore, it's the perfect tool for that kind of things.
@lhp
in reply to Devine Lu Linvega

I love this look, as non-reformed olde Mac user. I'm only vaguely aware of how uxn, but this Mac-looky environment, is it individual uxn windows in an X11 wm, or some setup or what it is it? Most uxn screenshots previously have had much more of an 8-bit vibe to them.
in reply to Abu Hodja

@niklasnisbeth yeah, it's just uxn instances in their own windows(i3), the styling and decorations are part of the rom.

I've decided to move away from 8-bit resolutions toward more 16-bit, I think the retro look gave out the wrong idea about what uxn is capable of.

Also, better for my eyes ;)

in reply to Devine Lu Linvega

Ah, that's cool, thank you for the explanation. System 7 is certainly my favourite look, those fonts are just to die for, aren't they? And I must say the rendering and decorations look more or less bang on in your screenshots. I've see many lacking attempts at System 7 on Linux, but this is quite convincing.
in reply to Abu Hodja

@niklasnisbeth I think if not pixel-perfect, it's quite close. I have better versions of them here: https://wiki.xxiivv.com/site/utilities

It all started off with porting Note Pad, after that, I couldn't stop.

in reply to Abu Hodja

(I was hoping you would say you had made a wee system for multiple windows in uxn; I really want a hackable System 7 that could run on a microcontroller...)
in reply to Devine Lu Linvega

WOW you made this in *assembly*!? That is so awesome. I so appreciate the from-scratch, doing things the hard way ethos.

ASSEMBLY!!

in reply to Devine Lu Linvega

I like it so much.

If the software development was done in a right way we'd end with the most often used tools which don't have a reason to get new features anymore (text editors, spreadsheets, file managers) rewritten in the most efficient way possible. Like, idk, in C with hot path in assembly (or in Rust for security-critcal parts) with tiny memory footprint on 90% trivial cases, milliseconds to first user input etc.
In fact we have exact the opposite - asm in the office apps was absolutely normal in the 90x and I can't imagine anyone doing this nowadays, memory footprint of an empty spreadsheet is 200MB and it takes 5sec. to load with cold cache on a 3Ghz 4 cores with 16G ram with SSD. And the most items in the changelog are about fixing compatibility with some proprietary crap (in FOSS) or adding AI, moving to subscription model or even more telemetry in non-free.
#assembly #foss #spreadsheet

in reply to tyx

it's a far cry from the idea of personal computing, that's for sure.

My thinking was that I really wanted a spreadsheet program that would open instantly, and be lightning fast, so I could use it daily as a simple desktop calculator. Having to wait for OpenOffice to boot up each time I wanted to add 3-4 numbers together was just not cutting it. And OpenOffice doesn't even have the motives that something that would add AI has, it's just very slow, I'm not 100% clear as to why.

This entry was edited (1 month ago)
in reply to Devine Lu Linvega

I ended up using GNU bc over ssh for this. Or just python or R, whatever is loaded ATM.
OO/LO is still great for things requiring quick glance on the data, conditional formatting etc., when I'm too lazy to plot things with matplotlib/SNS or ggplot.
But yeah, they're too busy catching up for EEE crap M$ continuously brings in.
This entry was edited (1 month ago)
in reply to Devine Lu Linvega

Hello, Your product is very cool!
I'll try to run nebu but I can't assemble.
Which assembler did you use?

I've use Essentials Pack from https://github.com/randrew/uxn32 .

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