How it Works:
Redstone signals can pass through solid (opaque) blocks, but not clear blocks. The signal does not pass through this block since it is glass.
The redstone signal does pass through this solid block.
An animation of the mechanic described above. To store data on a computer, you must use binary code. Binary code is basically a way of storing data using only 1s and 0s. On my hard drive I use solid blocks to store a 1 and clear blocks to store a 0.
Above: I use a LOT of pistons to push a bunch of blocks around in a loop. By switching between solid and clear blocks in this loop, I can store data. My hard drive has a spin speed of 1 byte per 8 redstone ticks.
This is where I read and write new data. Reading detects whether the blocks are solid or clear, therefore retrieving the data that has been stored. Writing switches blocks from solid to clear and vice versa.
A view of the hard drive from the top.
A view of the "guts" of the hard drive. Control Room
From inside this room you can issue commands to the hard drive. For example, you could tell it read the data at postion X. You could also tell it to write to any position.
Indicator lights show you when the hard drive is busy or if it is ready for a new command.
The button on the left causes the hard drive to go to a position (which you set manually). The button on the right causes the hard drive to write data to the current position.
These lights show the data that is stored at the current position in the hard drive. Note that it can read 1 byte at a time (or 8 bits).
This is the data that will be written to the hard drive when you press the "write" button. Note that it can write on byte at a time (or 8 bits).
This is the position the hard drive will go to when you press the "Go to Position" button. You choose the position in binary code. Note that in order to have one kilobyte you need 10 bits to specify an address. (2^10 = 1024 = 1 KB)