And I thought my topic finally died. Instead, I find that it escaped on the Internet.
To think I've been ignoring the forums because I couldn't bear to abandon my fort. At least, not yet.
You know, I don't really think that being the first to build a computer in dwarf fortress is that big a deal. Of course it was a great achievement that demonstrates that you really can do anything in DF, but thats not what sustained my OCD.
What drove me was finally discovering the lowest level of function of computers and proving to myself and everyone else that computers were not magic black boxes. That's why I published my full design plans, released my save and made movies and stuff demonstrating its function. I actually felt like I completed my project once I determined the method and design to build every single component of the computer and drew up complete blueprints. After that, I felt much less obsessive and built the computer when I felt like playing DF.
My biggest takeaway is this: modern computers are simply automatic calculators of awesome power and speed. They are not magic
Hmm.. Let me now reply to some queries earlier in the thread.
OK, so water evaporates, right? And magma doesn't? Also, IIRC, magma doesn't mist up, right? So doesn't that make magma a better choice for computing?
It might. I considered it at the beginning, but I rejected it because magma doesn't drain like water does. Water can drain even though the tile beneath the draining tile is full because the pressure can send the water somewhere else. If I tried that with magma, the magma would probably sit there forever. You could plausibly do it by using pumps, but not in the same manner as I did for my water based system. I'll say it more explicitly: Magma computers are possible.
Another sweet Dwarfputer design!
Well done.
Is it Turing-complete? If it is I think that's a first in the history of Dwarf computing.
Edit: Yes and yes, and you published your instruction set. What do you think of these mnemonics?
000 LD
001 STO
010 ADD
011 SUB
100 JGZ
101 SHL
110 SHR
111 HALT
The only problem left seems to be the clock. It seems insurmountable, but you and your peers in the Dwarfputing community have done the impossible to get this far ...
Hmm.. Looks just like the ones in the source document I used to plan the architecture! Why JGZ though? How does that stand for Jump If Not Negative?
As for the clock, its not impossible to make it fully automatic. You could just simply use the repeater design more exactly. I was attempting to make a "repeater" that would only advance a step when I pull a single lever, mostly for my own convenience. The main problem is how long exactly does the computer need to stabilize its state after every operation? How soon is it safe to advance a step? Or to advance to a null step in this case. This is why I decided to just manually operate the thing.
Regarding the operation of the computer, I had this plan to build a I/O room where you could run the computer entirely by pulling levers, advancing steps, loading memory registers and such. No more running around and manually operating pumps! Then it would display the output of the accumulator and maybe even other things using spinning gears, like how some people display the results of their calculators. The whole point of that would be to make the computer usable to adventurers.