Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  
Pages: 1 ... 3 4 [5]

Author Topic: Practical uses for a dwarfputer?  (Read 8602 times)

Jurph

  • Bay Watcher
  • Minister of Belt-fed Weaponry
    • View Profile
Re: Practical uses for a dwarfputer?
« Reply #60 on: January 12, 2009, 05:13:32 pm »

It would be possible to make a "screen" so large that you could play dwarf fortress within dwarf fortress, though you would be limited to using a 1x1 area while needing an atleast 8x12 area to fit the screen in, not to mention the actual computer!

(Obligatory)
Yo dawg, I heard you like Dwarf Fortress, so I built a computer on your computer so you can play Dwarf Fortress while you play Dwarf Fortress.
(/Obligatory)
Logged
Dreambrother has my original hammer-shaped Great Hall.  Towerweak has taken the idea to the next level.

Sizik

  • Bay Watcher
    • View Profile
Re: Practical uses for a dwarfputer?
« Reply #61 on: January 12, 2009, 06:45:52 pm »

P.S. I think this book would be great reading related to the topic: http://en.wikipedia.org/wiki/Code:_The_Hidden_Language_of_Computer_Hardware_and_Software

I'm going to build a computer from the ground up from an electronics standpoint, as most computers are actually made, and not from the viewpoint of Turing machines, which are
Quote from: Wikipedia
basic abstract symbol-manipulating devices which . . . are not intended as a practical computing technology, but a thought experiment about the limits of mechanical computation.


First off, we need to design some type of relay/trigger that can switch things on and off when a signal is applied. This can be done with water flowing onto a pressure plate and causing a floodgate to open or a gear assembly to activate.

Here's an example:
Code: [Select]
Off:
######
...^.#
######
~~~X..
######

On:
######
~~~~~#
######
~~~~~~
######

This will be represented in the following diagram by an 'R':
Code: [Select]
i-R-o
  |
  s
where i is input, o is output, and s is the signal.

Next, we need some logic gates, which make decisions.
A simple AND gate would be something like this:
Code: [Select]
i-R-R-o
  | |
  s s
As you can see, both relays need to be on for the water to flow through. This can be summed up in the following logic table:
Code: [Select]
AND:
  0 1
 -----
0|0|0|
 |-+-|
1|0|1|
 -----

An OR gate will be on when either of the inputs is on.
Code: [Select]
OR:
  0 1
 -----
0|0|1|
 |-+-|
1|1|1|
 -----

   s
   |
  -R-
i-| |-o
  -R-
   |
   s

Now, in either of these cases, the input will always be water (or axle power, which can be used for powering pumps), so we can abstract that part of the logic gates out and come up with the following representations:
Code: [Select]
s-A-s
  |
  o

s-O-s
  |
  o

Another useful type of gate is the NOT gate, also called an inverter. This just takes the input and inverts it, so a 1 becomes a 0 and vice versa.
Code: [Select]
NOT:
s-N-o
This can be made by building a relay with a 1-tile bridge instead of a floodgate.

By sticking one in front of the output of a AND of OR gate, we form a NAND or NOT gate (alternatively, we can replace the floodgates inside those gates with bridges):
Code: [Select]
NAND:
  0 1
 -----
0|1|1|
 |-+-|
1|1|0|
 -----

s-@-s
  |
  o

NOR:
  0 1
 -----
0|1|0|
 |-+-|
1|0|0|
 -----

s-0-s
  |
  o

Also, we can use just a plain old relay as a gate, called a buffer. This is good for transmitting signals over long distances, so we don't have to have water flow all that way.
Code: [Select]
s-B-o
And here's something cool: if you put a NOT gate in front of each input of an AND gate, it does the same thing as a NOR gate, and vice versa:
Code: [Select]
s-N-A-N-s
    |
    o

=

s-0-s
  |
  o

;

s-N-O-N-s
    |
    o

=

s-@-s
  |
  o
I'll type up another post detailing how to make a binary adding machine.

P.S. I hope you can tell the difference between 'O' for OR and '0' for NOR.
Logged
Skyscrapes, the Tower-Fortress, finally complete!
Skyscrapes 2, repelling the zombie horde!

aaaabaaccaadfda

  • Bay Watcher
  • Call me A4!
    • View Profile
Re: Practical uses for a dwarfputer?
« Reply #62 on: January 12, 2009, 10:21:12 pm »

Wow good job on the gates Sizik could you move this under the cpu section of the dwarfputer threads? that would be handy, also any ideas for logic gates in machine logic? i was thinking of developing the cpu unit in mechainical logic to stop large scale lag etc.
Logged
if the world were binary all DF fans would be represented by smily faces

Peewee

  • Bay Watcher
  • Watcher Of Bays
    • View Profile
Re: Practical uses for a dwarfputer?
« Reply #63 on: January 13, 2009, 10:19:25 am »

Hold on a sec. What's the difference between input and signal?

crazycarlt

  • Bay Watcher
    • View Profile
Re: Practical uses for a dwarfputer?
« Reply #64 on: January 13, 2009, 09:03:21 pm »

Back to 'practical uses'

1. Programmable fountains. A limited instruction set and program memory, some way of timing and addressing the hatches. For entertainment purposes only. Possibly set program execution keyed to a nearby statue park surrounded by pressure plates so that it activates when a dwarf comes to relax.

I think a row of switches as a programming interface for this one. Some way of stepping through the different cells of memory at an interval to play back the set program of fountains...

2. Programmable gauntlet. A matrix of trap-loaded rooms designed to attempt to isolate and confuse invaders, but I'm not sure of the practicality of it, so it may also be for entertainment. I'm not sure about a reliable way to distinguish between different types of invaders using the available sensors, so you might just have 16 or so rooms that switch about, leading invaders back and forth through the maze of weapon traps until the program is switched off. Not as useful to program this, it might as well be a really simple set of timers and pressure plates, or not even timers.

I'm spent. It's really hard to figure out some truly useful applications for a dwarfputer. Stockpile management? dining room overcrowding control? Animal exercise and sorting track?

Logged

Flaede

  • Bay Watcher
  • Beware the Moon Creatures.
    • View Profile
Re: Practical uses for a dwarfputer?
« Reply #65 on: January 13, 2009, 09:11:19 pm »


Back to 'practical uses'

1. Programmable fountains. A limited instruction set and program memory, some way of timing and addressing the hatches.

I want both those things very much. ''biodome'' -style sealing your dwarves in until the timer counts down is not just for entertainment, it is useful for seasonal - related timing effects. (like switching which entrance to my TradeDepotSystem is open, without having to keep remembering to flick levers)

Back to 'practical uses'
2. Programmable gauntlet.

Jim Groovester offered/asked to run a game based on a programmable gauntlet, creating the gauntlet first, then having events happen within it based on player choices. He may be interested in implementing Dwarfputer technology to avoid having to set and keep track of zillions of individual levers:

http://www.bay12games.com/forum/index.php?topic=29731.msg391719#msg391719
Logged
Toady typically doesn't do things by half measures.  As evidenced by turning "make hauling work better" into "implement mine carts with physics".
There are many issues with this statement.
[/quote]

aaaabaaccaadfda

  • Bay Watcher
  • Call me A4!
    • View Profile
Re: Practical uses for a dwarfputer?
« Reply #66 on: January 13, 2009, 09:18:37 pm »

Flaede

If he wants it to do things by itself the only way for that to happen is via dwarputer tech, although you can also have manual intervention, in a gauntlet game, but it still wouldn't be predictable

Crazycarlit

Great ideas man, i think this thread should kind of move to the dwarputers sections, that way we can classify it under apropicate sections.

For your two ideas i think they fit best under device, Hoping to see some more stuff guys. Keep the minds flowing!
Logged
if the world were binary all DF fans would be represented by smily faces

Sizik

  • Bay Watcher
    • View Profile
Re: Practical uses for a dwarfputer?
« Reply #67 on: January 13, 2009, 09:55:55 pm »

Hold on a sec. What's the difference between input and signal?
Input is the water that is flowing into the system. Signal comes from a pressure plate or lever. Input is sort of like the power that drives your computer and signal is the data flowing around all the wires: They're both electricity but they're both completely diffent from eachother. I used input but it really should be power or something like that.

Also, I'm going to hold off posting on the binary adder because I'm in the process of building one and I want to make sure what I talk about is correct before I post it.
Logged
Skyscrapes, the Tower-Fortress, finally complete!
Skyscrapes 2, repelling the zombie horde!

SirHoneyBadger

  • Bay Watcher
  • Beware those who would keep knowledge from you.
    • View Profile
Re: Practical uses for a dwarfputer?
« Reply #68 on: January 14, 2009, 07:11:34 pm »


link=topic=29459.msg389747#msg389747 date=1231731478]


(Obligatory)
Yo dawg, I heard you like Dwarf Fortress, so I built a computer on your computer so you can play Dwarf Fortress while you play Dwarf Fortress.
(/Obligatory)

Yo! Pimp my Dwarf Fortress!
Logged
For they would be your masters.
Pages: 1 ... 3 4 [5]