So today I built a little imaginary computer with 16 registers, 256 addressable rom and memory addresses and status flags. The cpu understands 16 op codes.
I even wrote a little assembler for it in 200 LOCs, I can write little programs in my made up assembly language and compile them and run them on the made up cpu.
Next stop, PPU.
@neauoire soon this will be a zachtronics game but only famicons running plan9.
@neauoire zachtronics games are very good in this useless, feels like best part of coding, ways so I think he would be about this life.
I remember when notch planned on releasing a game where the spaceship ran his fantasy cpu and you controlled everything with its assembly language. He released its machine spec and nothing else.
@neauoire ...today I watched a couple of youtube videos, and stared blankly at an empty VDMX project
@neauoire why do u have gyo in the bg
@congalala I'm not sure
@neauoire understandable have a gamer day
@neauoire Sometimes I have only the faintest idea of what you're doing technically but I always appreciate the care you put into making an image that is an aesthetic object to showcase the work
@neauoire "This new computer... it needs a shark"
@neauoire Am distracted by Gyo and Taste of Tea
@HiroProtagonist me too
@neauoire "i'll use a single board computer with no internet to stay focused, but hey, let's put a shark in the background"
@npisanti "GET BACK TO WORK" says the shark.
@neauoire makes sense, it looks pretty convincing! xD
@neauoire That is really cool!
@neauoire "The Taste of Tea"
@neauoire For what are you building a VM? :o
@neauoire Very good
@neauoire That’s a cute walking fishie.
@neauoire hell yeah
@neauoire oh my gosh that's awesome!
IDK if you've ever played TIS-100, but that was a blasty blast.
@kvothe no I haven't, I'll look it up
@neauoire So I'm supposed to be deciding on what classes to register for by tomorrow. Instead, I am playing with this. Then, as I was about to pause, I find that you've made another commit. Please stop terrorizing me with this fun ;(
@exprez135 Sorry XD I found an issue with the JEQ/JNE opcodes. I won't touch it again for the night.
Tomorrow, I want to implement OS functions so I can draw pixels on the screen.
@neauoire Haha, no problem. All your recent Plan9 posting and stuff like this has led me down some deep rabbit holes, but I'm loving it :) I'm excited to do more with this tomorrow. Learning so much!
@exprez135 Let me know if you have any questions! Keep posted posted :)
@exprez135 choose your classes!!
@neauoire this is awesome. it reminds me somewhat of how streetfighter 2 and i think some space shooters implemented AI. i am guessing this is for the game mentioned on your website. (apolgoies if you’ve already said this somewhere)
@zensaiyuki I'm not really sure what this is going to be for. It was just curious exploration, I might try to make something like Processing with this.
@neauoire it's crazy how simple this is, huh?
@sirjofri yeah. and I think I can make it even simpler, I'll do some more experiments today
@neauoire if you didn’t read that book I sent, yet, now is the time
@neauoire the constraints are pretty similar to Wirth's CPU for the Oberon project.
It's actually specified in an HDL:
You could at one point exchange cash for hardware:
Granted, Wirth's design allows for 1MB RAM for running a graphical, #plan9-like OS on a monochrome 1024×768 display:
The entire thing (kernel, GC, GUI, compiler, and HDL design fits in a few tens of thousands lines of code.
@neauoire it's actually so "plan9-like" because it's what influenced Rob Pike and Russ Cox's design decisions. acme's mouse-driven shell was directly inspired by Oberon's UI. Oberon-the-system and Oberon-the-language have their influence all over plan9 and golang.
A CPU simulator for Wirth's RISC design implemented in <80 lines of code:
More verbosely, in C:
The system is small, but definitely not toy-class. There are real practical considerations that went into its design.
@colby Oberon is great :) I've messed with the emulator a lot a few months back.
Merveilles is a community project aimed at the establishment of new ways of speaking, seeing and organizing information — A culture that seeks augmentation through the arts of engineering and design. A warm welcome to any like-minded people who feel these ideals resonate with them.