I forgot how much of a shitshow the outer reaches of the fediverse is. So many hateful fringe groups

: and ; have been added finally allowing for colon definitions to be added from the outer interpreter. I'm thinking that file operations should probably be my next concern so that I can load and save source code.

I've made a lot of progress on the outer interpreter recently. Too many changes to list actually. I'm just a couple of word definitions away from writing colon definitions from the prompt!

I wrote this last week and I have no idea what I was thinking.

I'm planning on just buying a 1541-II sometime soon to replace this one. According to a pretty popular repair doc, the GAL chip is probably bad and although I could replace it easily since the previous owner of my drive socketed all of the ICs, I think I'll put more money towards a new drive for now instead of dropping 20 bucks on something that may not solve my problem. Good thing the IIs are relatively cheap πŸ‘€

reinbird boosted

I need to sink some time into a video game soon

reinbird boosted

@vicorva This is my favorite game I've developed:


Think a mix of Magic: The Gathering, Yu-Gi-Oh, and dice, except you can design your own cards (and it's built with that in mind). A physical card game, but you can print the cards yourself. πŸ™‚

What if I made another personal fedi instance but this time.......... it didn't die?

Finally properly implemented REFILL. The second picture shows the buffer in memory at the end of the video (first character at 0x0800). It only lets the user edit the current line, so characters don't overflow into the next line and deleting characters will never move the cursor behind the first position on the current line.

Now onto parsing πŸ‘€

Alright, so thankfully I won't be rolling my own keyboard routine. The reason that the kernal GETIN routine kept returning to the BASIC prompt was because I was corrupting the stack and I guess it was triggering some sort of reset or something? I dunno. All I know is that I can write terrible terrible things on the screen using Forth code which, honestly, is so incredibly beautiful.

What was it with the early 2000s and monkey movies

For comparison, these are the speeds of an assembly and BASIC color cycle respectively. The height of each color stripe demonstrates the speed of each implementation. The shorter each stripe is, the faster it is. As you can see, Forth sits in between both of these benchmarks speed-wise. (perhaps a little closer to assembly, but who's keeping track πŸ‘€)

I think I can determine from that color cycle benchmark that pure Forth code will be fast enough to use for most if not all program logic, but anything related to graphics should be written in assembly. Which won't be an issue because I plan on supporting inline assembly in some shape or form anyways.

I'm pretty satisfied with the speed of my inner interpreter but it could definitely be faster.

reinbird boosted

I can recommend watching youtube.com/watch?v=WYPNjSoDrq , a roughly 40 minute documentary on the history of the BASIC language.

Interestingly, BASIC (which was world-changing on its own) was co-developed with another world-changing technology stack: DTSS (Dartmouth Time-Sharing System), one of the first multitasking, multi-user operating systems.

Not only was BASIC originally a compiled language (not interpreted!), but it was designed to run on a multi-user OS that didn't even exist yet!

For a computer that's basically just a thick keyboard, reading input from said keyboard is incredibly frustrating. I tried using the built-in kernal routine for it but it keeps returning execution to the BASIC prompt so I think I'm gonna have to roll my own implementation 😬

The forth IRC channel on freenode is so friendly, such good people

Show more
Mastodon @ SDF

"I appreciate SDF but it's a general-purpose server and the name doesn't make it obvious that it's about art." - Eugen Rochko