Nothing like trying to build a machine monitor from scratch to make me appreciate #WozMon even more. I think I finally have a hex nibble parser (haven't tested it, yolo) and a byte parser, so parsing an address should be easy... right? Well, not if you've never written a parser in assembly before and want to avoid using the stack.
So, yeah #65cha02 is a bit stuck right now. Might put it on hold tbh, I want to have something ready for Árok this summer. Last time I said I'd have something running on the PocketViewer, so I'd better hold myself to that promise.
cc: #theWorkshop #theFoundry

For the first part of #DecemberAdventure I almost figured out how to publish my #OrgMode / #OrgRoam pages. Originally I wanted to work on and write about #65cha02 but Org's publishing config is, uh, a bit arcane. I also ran into the bug where if you use a URI scheme that Org doesn't know about it gives you an error. Already reported that bug years ago when I used it to write my CV and wanted a tel link in it, looks like it's still unfixed.
Well, at least I'm learning more about #Emacs... the hard way. Still, using #DoomEmacs is actually really nice, I'm finally getting into #Magit and it's the best way to selectively stage changes in #git that I've encountered so far.

Also, if anyone knows how to export only pages that have a given tag, I'd love to hear it. No, select_tags is not what I want. I want everything in my memex to be private by default.

Edit: Okay, couldn't leave it at that. Powered my way through even more computer weirdness and now I have a glorious website to document my journey. Woohoo!
https://raingloom.srht.site/20241201222215-december_adventure.html

Edit2: Now also available on this domain name I've been meaning to use:
https://brain.trainpats.eu/

#theWorkshop

December Adventure

Ayy, after a lot of debugging, my ring buffer copying code for #mos6502 works!!!
I only made like 8 embarrassing mistakes in the process, but hey, #assembly is hard. And fun!
So, #65cha02 is back on track. Now to incorporate the ring buffer code into a machine monitor...
#theWorkshop #theFoundry

Heavily commented source code, for anyone curious: https://git.sr.ht/~raingloom/six_five_chaos/tree/779890c68987607806732592bf7905eede71df32/item/asm/ringecho.s

Got to the point in #65cha02 where I have to write #mos6502 code. 
That default machine monitor is sadly not going to write itself. Or rather Steve Wozniak is not going to port his monitor to my weird made up emulator.

Found an assembler for #65cha02 written in Go that I can just embed directly. 

...but now I have to modify the disassembler endpoint to produce the assembler's syntax 

There is a combined dis/asm (+emul but not gonna use that) library as well (written in Go), maybe that's the way to go... but I like the simplicity of the other one... maybe I'll just fork the disassembler part? 

#theFoundry #theWorkshop

#65cha02 is becoming usable in read-only mode.  
Hex, disasm, mono, and gray views are Good Enough.
Assembly is tricky. I'll probably have to customize an existing one.
I think I can set up a closed beta Soon (TM).

#theFoundry #theWorkshop