home.social

#uxn — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #uxn, aggregated by home.social.

  1. hexdump -C needed a spa day, so I gave it a massage:

    paste.sr.ht/~ismael-vc/a074bf4

    :3 #uxn #uxntal #varvara

    Though I'm making my hexdump a tool that can be passed a ROM file as an argument (it was inspired by hexdump -C), it is nice to see that with a little effort is doable as well with the existing tools.

    I also bought the awk pocket reference, so useful.

    (If there is a better way to do this with awk, I'd love to learn!)

  2. @jakehamilton

    Sounds like you're describing #permacomputing, or at least, some elements of it.

    #uxn and #CollapseOS / #DuskOS are worth looking into, if you're not familiar with them already.

  3. @jakehamilton

    Sounds like you're describing #permacomputing, or at least, some elements of it.

    #uxn and #CollapseOS / #DuskOS are worth looking into, if you're not familiar with them already.

  4. I am rewriting my #uxn music player, And the main thing I want in this version is album art! So I just finished writing my glue code to automatically dither, process, and convert any album art (including art embeded inside of audio files) into .icn files at runtime :>

  5. I am rewriting my #uxn music player, And the main thing I want in this version is album art! So I just finished writing my glue code to automatically dither, process, and convert any album art (including art embeded inside of audio files) into .icn files at runtime :>

  6. ...and just like that we're passing all of opctest.rom's #uxn tests! 🧙‍♂️

  7. ...and just like that we're passing all of opctest.rom's #uxn tests! 🧙‍♂️

  8. participating in #Catjam again!

    last year I wanted to make an eco-sim but I didn't have time, so it got squished into a sort of garden demo

    this year I have a solid month ahead of me :)

    time to upgrade hexgarden into an actual game!


    #uxn #Catjam
  9. participating in #Catjam again!

    last year I wanted to make an eco-sim but I didn't have time, so it got squished into a sort of garden demo

    this year I have a solid month ahead of me :)

    time to upgrade hexgarden into an actual game!


    #uxn #Catjam
  10. CW: occ summary

    at the end of the #occ2026 week i managed to push through the "crashing the emulator constantly" phase of System 7 development and get into the "opctest.rom fails in weird ways" phase.

    still need to write up the last couple of days but overall i had a great time and i'm optimistic for the future of the yet-to-be-named mac68k #uxn emulator

  11. CW: occ summary

    at the end of the #occ2026 week i managed to push through the "crashing the emulator constantly" phase of System 7 development and get into the "opctest.rom fails in weird ways" phase.

    still need to write up the last couple of days but overall i had a great time and i'm optimistic for the future of the yet-to-be-named mac68k #uxn emulator

  12. I made an article at #Uxnomicon documenting the API of Zen, my tny #Uxntal testing framework:

    uxnomicon.miraheze.org/wiki/Ze

    I hope it might be helpful for others as it has been to me!

    : )

    #uxn #varvara #TDD

  13. #Uxntal #testing #framework in 760 bytes.

    paste.sr.ht/~ismael-vc/2f2d41f

    I have called it Zental, in the images you can see it testing itself (the failed tests are expected).

    Usage: paste.sr.ht/~ismael-vc/82d44be

    Just create a routine under the @ test scope, ie:

    @ test/foo ( -> )
    /verbose
    { "some 20 "set } /set
    { "some 20 "subset } /subset
    #01 #0101 EQU /assert
    /end-subset
    /end-set
    /summary
    BRK

    ~zen.tal

    I'll put it in a repo soon. :3

    #uxn #varvara #TDD

  14. Some days we have no power, others no reception, once in a while we have neither. Today was such a day, the oppressing low skies suffocating the signal and covering our solar panels didn't allow for much virtual fussing.

    But while penciling out storyboards for our #Catjam entry, Rek pointed out that it might be nice to have a Yufo cameo aboard the train. Genius idea! Let's look at the actual state of that ol' thing.

    Written in a haste during the Virtual Pet Jam a few years ago, its codebase was horrendous; Uxn was quite young at the time, the linter in its infancy too. It ran just fine but needed a bit of love if the codebase was ever going to be something worthy of being looked at by anyone.

    So, I spent the little power I had left in my laptop rewriting it all in a more standard Uxntal style, with the typical video game OOP patterns that makes the more recent roms somewhat robust. It runs faster, looks and feel nicer too. I've published a new build with metadata and all the other niceties of modern #Uxn projects.

    If anyone ever asks who that weird antlered creature on the train is, at least we can be proud to point to Yufo.

    rabbits.srht.site/decadv/
    #occ2026

  15. Some days we have no power, others no reception, once in a while we have neither. Today was such a day, the oppressing low skies suffocating the signal and covering our solar panels didn't allow for much virtual fussing.

    But while penciling out storyboards for our #Catjam entry, Rek pointed out that it might be nice to have a Yufo cameo aboard the train. Genius idea! Let's look at the actual state of that ol' thing.

    Written in a haste during the Virtual Pet Jam a few years ago, its codebase was horrendous; Uxn was quite young at the time, the linter in its infancy too. It ran just fine but needed a bit of love if the codebase was ever going to be something worthy of being looked at by anyone.

    So, I spent the little power I had left in my laptop rewriting it all in a more standard Uxntal style, with the typical video game OOP patterns that makes the more recent roms somewhat robust. It runs faster, looks and feel nicer too. I've published a new build with metadata and all the other niceties of modern #Uxn projects.

    If anyone ever asks who that weird antlered creature on the train is, at least we can be proud to point to Yufo.

    rabbits.srht.site/decadv/
    #occ2026

  16. CW: occ day 4

    it doesn't look like much but this screenshot represents a (small) #uxn program running correctly on an emulated mac plus

  17. CW: occ day 4

    it doesn't look like much but this screenshot represents a (small) #uxn program running correctly on an emulated mac plus

  18. poll: i need a cv/portfolio for something #uxn related i want to apply for.

    should i...?

  19. poll: i need a cv/portfolio for something #uxn related i want to apply for.

    should i...?

  20. Today I have implemented malloc in 76 bytes in #Uxntal .

    paste.sr.ht/~ismael-vc/21de76c

    After fiddling with this all afternoon, I finally have implemented a malloc other than the simple "bump pointer allocator" I was using.

    I'll work on mfree, but that will be for tomorrow.

    I changed the unit size to byte instead of 64 bytes because there is no MMU expecting it in 64 bytes in #Uxn as it was in the PDP, so it makes no sense in Uxn? might bite me later.

    Catmon was indispensable.

    #varvara #unix #pdp

  21. Today I have implemented malloc in 76 bytes in #Uxntal .

    paste.sr.ht/~ismael-vc/21de76c

    After fiddling with this all afternoon, I finally have implemented a malloc other than the simple "bump pointer allocator" I was using.

    I'll work on mfree, but that will be for tomorrow.

    I changed the unit size to byte instead of 64 bytes because there is no MMU expecting it in 64 bytes in #Uxn as it was in the PDP, so it makes no sense in Uxn? might bite me later.

    Catmon was indispensable.

    #varvara #unix #pdp

  22. With #discord 's newest security ai thing, I can no longer send the art I draw to my friends. Because, noodle in #uxn makes heavy use of grids and checkered lines to add depth. So now that can get me banned. Yay.

  23. it looks like i brought the two pixel fonts seen earlier in this thread to #uxn shortly after i made them, and then just... didn't push?

    these fonts now live in our "utilities" repository, with a string-drawing routine to help them out.

    git.sr.ht/~sporeball/utilities

  24. Trying to install #uxn on macos is quite infuriating.

  25. alright, i'm officially working on implementing a #uxn environment for 68k macs (system 7 specifically) for #occ2026

    will this work? who knows! but it's something i'll be doing next week.

    plastic-idolatry.com/erik/2026

  26. alright, i'm officially working on implementing a #uxn environment for 68k macs (system 7 specifically) for #occ2026

    will this work? who knows! but it's something i'll be doing next week.

    plastic-idolatry.com/erik/2026

  27. Me gusta mucho #noodle y me gustaría entender bien y programar en #uxn he leìdo varias veces el documento de compudanzas pero abandono.

  28. Me gusta mucho #noodle y me gustaría entender bien y programar en #uxn he leìdo varias veces el documento de compudanzas pero abandono.

  29. Uxnomicon now has support for the Monotal (Monokai for Uxntal) light and dark themes!

    - git.sr.ht/~ismael-vc/monotal
    - uxnomicon.miraheze.org/wiki/Me
    - uxnomicon.miraheze.org/wiki/Me

    The site will respond to your user preferences, if set to auto it changes theme according to your OS theme, else you can manually toggle it using the eye glasses icon (appearance).

    Syntax test page: uxnomicon.miraheze.org/wiki/Ac

    #uxn #uxntal #varvara #monokai #wikimedia

  30. @golemwire @1Bit

    Yeah, it would have to be its own GUI subsystem, but you're right, I don't really want to reimplement all the basic UNIXy syscalls and such.

    Maybe do my own kind of #uxn, but with baked-in graphics primitives, pure monochrome, a little higher resolution by default, and maybe something like Pascal???

    Basically, I'm talking about re-inventing the #ClassicMacintosh, aren't I. 😄

  31. @golemwire @1Bit

    Yeah, it would have to be its own GUI subsystem, but you're right, I don't really want to reimplement all the basic UNIXy syscalls and such.

    Maybe do my own kind of #uxn, but with baked-in graphics primitives, pure monochrome, a little higher resolution by default, and maybe something like Pascal???

    Basically, I'm talking about re-inventing the #ClassicMacintosh, aren't I. 😄

  32. Light and Dark Monokai Theme for #Uxntal in SourceHut.

    It uses one user script and one user css style sheet.

    I like the Terminus font, but you can change it for your favorite, and of course the colors, font size and line spacing as well.

    git.sr.ht/~ismael-vc/monotal/t

    This is running in Linux, Firefox using the Stylus and ViolentMonkey plugins. I'll make a setup guide shortly.

    It will automatically update the theme as I change the OS wide theme.

    Still doing some last tweaks : )

    #uxn #varvara

  33. I found the way to get an absolute reference out of a relative one the other day in #uxn , but what happens if the byte offset is to far away?

    _foo $100 @ foo

    Error: foo too far!

    The following 4 bytes do the trick this time

    %:patch ( [JSI] -- [LIT2] ) { [ LIT2 LIT2 00 ] STR }

    :patch foo ( rel* )

    This in combo with the previous setup allows more room to make relocatable AOT assembled libraries that are easy to include or copy paste.

    Sorry for abusing the < > overload. :P

    #uxntal #varvara

  34. @angelwood I made a fully relocatable version of your #uxn catmon!

    paste.sr.ht/~ismael-vc/cee33d7

    Still kept at 256 bytes.

    Example:

    0100:ff00<ff00=ff00!0000:0100<0100=0100:a001-0e17-a080-0f17-0100!

    ***

    Copy itself to last page:
    0100:ff00<

    Inspect clone:
    ff00=

    Transfer control to clone:
    ff00!

    Clone clears original:
    0000:0100<

    Inspect it:
    0100=

    Write command:
    ( |0 &success $1 &true )
    [ LIT2 -/true -System/debug ] DEO
    [ LIT2 -/success -System/state ] DEO

    0100:a001-0e17-a080-0f17-

    Exit:
    0100!

  35. @angelwood I made a fully relocatable version of your #uxn catmon!

    paste.sr.ht/~ismael-vc/cee33d7

    Still kept at 256 bytes.

    Example:

    0100:ff00<ff00=ff00!0000:0100<0100=0100:a001-0e17-a080-0f17-0100!

    ***

    Copy itself to last page:
    0100:ff00<

    Inspect clone:
    ff00=

    Transfer control to clone:
    ff00!

    Clone clears original:
    0000:0100<

    Inspect it:
    0100=

    Write command:
    ( |0 &success $1 &true )
    [ LIT2 -/true -System/debug ] DEO
    [ LIT2 -/success -System/state ] DEO

    0100:a001-0e17-a080-0f17-

    Exit:
    0100!

  36. I didn't expect this #uxn tal syntax to work!

    I tried with %&:foo at first without luck.

    : )

  37. I didn't expect this #uxn tal syntax to work!

    I tried with %&:foo at first without luck.

    : )

  38. I worked today in #uxn syntax files and I got a consistent style across the micro editor, sublime text and pygments!

    git.sr.ht/~ismael-vc/monotal

    There are instructions on how to use them in the readme.

    Pink: Opcodes
    Orange: % ~ (bold, italic)
    Yellow: | $
    Green: # "
    Cyan: @ & (bold)
    Purple: . , ; - _ =
    Gray: ( ) [ ] (italic)
    White/Black: { } foo /foo !foo ?foo 00
    Cream/Dark Grey: background
    Light Grey: highlight

    Monotal is just how each uxntal token is mapped to a Monokai color.

    #uxntal #varvara

  39. I have updated my #Uxntal syntax definitions for #micro and #subl Sublime Text, as well as #Python #Pygments

    git.sr.ht/~ismael-vc/monotal

    What I want is consistency in the coloring of the uxntal tokens, this is not about the color palette precisely.

    I'm making a book using Pygments and #Sphinx that will use these.

    Sublime Text and Pygments are using the Monokai Pro theme colors.

    Micro is using it's default Monokai theme.

    But you can see all tokens are consistently themed.

    : )

    #uxn #varvara

  40. Maybe time to revisit Sunflower BASIC, now that I have let the last attempt at writing a Tiny BASIC percolate through me a little bit.

    Another BASIC implementation I would like to study is BBC BASIC. I think it may be tokenised, not based on an intermediate language.

    To me, it matters not whether the computer is retro or modern, what is important is communicating the ideas of the program as clearly as possible.

    #uxn #basic #TinyBASIC

  41. Maybe time to revisit Sunflower BASIC, now that I have let the last attempt at writing a Tiny BASIC percolate through me a little bit.

    Another BASIC implementation I would like to study is BBC BASIC. I think it may be tokenised, not based on an intermediate language.

    To me, it matters not whether the computer is retro or modern, what is important is communicating the ideas of the program as clearly as possible.

    #uxn #basic #TinyBASIC

  42. If you ever need a relocatable #Uxntal routine's byte code (not the source but the ASCII hexdump), yet your code needs to embed an absolute address, ie. in system expansion commands or device vectors.

    This will do the trick

    %:PC ( -- pc+3* ) { [ LITr 00 JSRr ] }
    |9 @ offset2>>
    %<< ( -- offset* 0 ) { :PC ;offset2>> ADD2 #00 }
    %>> ( offset* 0 rel -- abs* ) { ADD2 }

    [
    @ foo ( -- )
    ( ... )
    << ,on-console >> .Console/vector DEO2
    ( ... )
    JMP2r

    @ on-console ( -> )
    ( ... )
    BRK
    ]

    #uxn #varvara 3 : )

  43. If you ever need a relocatable #Uxntal routine's byte code (not the source but the ASCII hexdump), yet your code needs to embed an absolute address, ie. in system expansion commands or device vectors.

    This will do the trick

    %:PC ( -- pc+3* ) { [ LITr 00 JSRr ] }
    |9 @ offset2>>
    %<< ( -- offset* 0 ) { :PC ;offset2>> ADD2 #00 }
    %>> ( offset* 0 rel -- abs* ) { ADD2 }

    [
    @ foo ( -- )
    ( ... )
    << ,on-console >> .Console/vector DEO2
    ( ... )
    JMP2r

    @ on-console ( -> )
    ( ... )
    BRK
    ]

    #uxn #varvara 3 : )

  44. Woke up today with an intense wanting to implement openfirmware for #Uxn. So I did.
    git.sr.ht/~rabbits/m_pc