Pinned post


I don't know if the oldbytes instance is big on introductions, but if so, here goes!

I am a Seattle area nerd interested in the small internet. Back in the day, I spent a lot of time as a forum moderator, and I feel like social media has become much bigger, louder, and less interesting since then. Perhaps Mastodon does better?

I'm probably not going to post a lot, but if I do, it'll be about my adventures with dawless music production and doing strange things with old technology. During lockdown I have collected lots of new gear and am still working out how best to make tracks with it. and (mod, xm) are my home turf.

If you like to do musical things, and/or want someone to listen to your tracks, please by all means @ me.

8086 - 1-byte instructions 

  • Arithmetic: INC/DEC r16
  • Stack: PUSH, POP
  • String: (IN,OUT,LOD,STO,MOV,CMP,SCA)S(B,W). STD/CLD are also 1 byte, so are REP(E,NE) (setting CX is heavier than 1 byte but totally worth it)
  • Memory: XLATB (setting BX is heavier than 1 byte but need not be done every time)
  • Transfer: XCHG ax,r16
psf boosted

How is it that the american public school system managed to make chemistry and physics feel so stale and boring?

I'm so angry about that.

Like, we could have connected history to science by tracing the developments of various technologies through human history, and followed those up with practical demonstrations.

Built up to modern technology in schools to understand how society formed.

In the process, you learn Math, History, Physics, and Chemistry, plus you get to Make Stuff.

psf boosted

self promo 

i made a website! :BoostOK:

it lets you upload your song stems so other people can do remixes easily, and it gives you access to other's stems. easy and free collaboration for everyone

i wrote a joke-y ad for it that i posted in some discord servers, but it's too long to fit in a post so im just uploading a screenshot

@kitsune Thank you for this post. It named a lot of concepts I haven't heard of and don't understand. I am reading about them now and learning a lot. The coolest thing so far has been the FUNARG device.

lisp rant 


disarming the editor wars 

is the ultimate editor for compiled languages and is the ultimate editor for interpreted languages and REPL interaction. They are not, even slightly, competitors.

psf boosted

Can we skip web3 and go straight to web3.11 for cryptogroups?

Oh wow, Firefox Mobile brought back the feature that lets you drag to re-order tabs. When did they do that?

psf boosted

I realized recently that it is possible to mute IRC join/part messages in most clients. And now liberachat is suddenly usable. Huh. This is pretty cool.

Advent of Forth, Day 11 

I spent a lot of time asleep this weekend, so I'm getting further and further behind! Regardless of whether I catch back up to real time, I do intend to finish sooner or later.

Anyway, I wanted to write slightly smarter Forth this time, so I made some neato iterator-style functions: for-grid and for-neighbors. I think they make the code much more readable!

And as usual, there's a writeup:

psf boosted

It’s easy to get in trouble when we assume that the other person will understand (or be able to deduce) what we feel. Most people love hearing things explicitly and clearly.

Advent of Forth, Day 10

I'm a day "behind"!

Day 10 was not a complicated problem, but it had surprisingly many warts -- the fact that certain delimiter pairs are spaced 1 ASCII value apart and others are spaced 2 apart, the seemingly-arbitrary tables of point values, the fact that we must return the median score and not something that can be calculated in O(1) storage, etc.

Idk, it felt like an awful lot of arbitrary inconveniences. So just like real programming, sigh.

re: Advent of Forth, not spoilers 

On the topic of memory safety, I've segfaulted pForth more than once by absentmindedly pasting my puzzle input into the REPL. The built-in parser seems to have a problem with long words, long lines or both.

Show thread

Advent of Forth, not spoilers 

I found my memory corruption issue in Day 7. I was parsing characters from PAD into the dictionary and expanding them into cell-sized integers.

  • Reading a character from PAD advances the read pointer one byte.
  • Writing a cell into the dictionary advances the write pointer eight bytes.
  • In the Forth I am using (pForth) PAD starts 128 bytes past HERE.

So, you guessed it... after ~42 chars, my writes catch up with my reads and we're in ouroboros mode.

Advent of Forth day 9

Nothing too clever in this week's solution... I'm just glad for the respite after yesterday, which was one hell of a long night.

I am beginning to notice more and more flaws in my typical lazily written Forth, which hopefully means that my standards are going up and I'm actually learning something from this whole exercise. But who knows.

Advent of Forth day 8 

Here is a walkthrough of my part 8b solution, including pictures:

And the solution:

I'm proud of this one, in particular the way it reuses the interpreter input parser to read the problem statement. I think it makes the parser a lot less awkward than previous days'.

Advent of Forth, Day 2, 3, 5, 6 

I've been writing up my solutions here:

Day 2 is my favorite, by far -- a tiny elegant solution.

The later days have required far more heroics than they should, and I still haven't written a parser for the bingo games in Day 4.

Show thread
psf boosted
Show older
OldBytes Space - Mastodon

The social network of the future: No ads, no corporate surveillance, ethical design, and decentralization! Own your data with Mastodon!