Minecraft / Projects

j400 Processor


Get Embed Codes

Level 50 : Grandmaster Princess
Hey guys, This is a Redstone computer I'm building.

Download the components
( they all use 8-bit interfaces in little endian )
4-byte Registers Page (Download now)

Programming Terminal (Download now)

Read/Write Hard-Drive
(Download now)

The Machine architecture

White wool represents that the Redstone above it is related to data busing or manipulation.
Black wool represents that the Redstone above it is directly connected to control components.


The Instruction-set architecture

-Machine Instruction word (byte)
Operands [O][O][O][O]
I -opcode selector (nibble)
O -operand data (nibble)

-ALU (nibble)
Operands [A][A]
A -source register selector
B -second source as well as destination register selector

-PC (nibble)
Operands [C][C][A][A]
C -branching condition (Unconditionally,if-equal,if-not-equal,if-lower-than,if-greater-than)
A -source register selector for branch address.

-ROM (nibble)
Immediate value into Lower or Higher half of register A
Operands [D][D][D][D]
D -data

-RAM (nibble)
Operands [A][A]
A -Data register address
B -Address register address

Additional Notes

Feed back is very welcome...
Thanks again guys!
Progress: 60% Complete

Update #1 : 01/02/2012 8:24:17 pm1/02/12

hey guys,

I invented a cool new type of keyboard, so i decided to add a couple to the j400, and i added a 2 hexidecimal screens which worked... brilliantly : )

And oh yeah, as part of my work on the super-fast piston harddrive, ive designed a prototype codenamed 'capacity' which it ironically doent have much of . for a piston tape that is, but as fast as pure redstone memory is concerned it is very efficiant .

inprogress - a control bus from the HDdrive too the cpu : )

Thanks again guys, keep an eye out for lots more cool stuff

Comments : 150

Join us to post comments.

Show Comments

1 - 50 of 150

  • XenoTech
  • Level 15
  • Journeyman Architect
  • May 20, 2013, 5:04 am
Very impressive design! +1 Diamond
Unfortunately, all component download links are broken :S Is you design already completed? (I mean, listing of possible opcodes, amount of registers, ROM, and RAM). I assume you use 8 bit registers and an 8 bit address space (16 would be possible, but that's very time-consuming to build in MineCraft even with tools like MCEdit). It would be awesome to see this machine in operation once it is completed :)

Also, what does you compare instruction exactly do? Do you have a status register with zero and overflow flags to compare numbers on equality and greater/smaller than? Or does it perform a bit test on two numbers?

In some of the screenshots, you can see the type memory you used in your device, but it can only, as far as I can see, push in one direction. What if you want to access a byte before the previous selected byte? Do you have to push the type all round? That is not very efficient when you have to wait multiple cycles till the memory type is pushed around. If you use that as a HDD, it doesn't matter that much whether it can push in both directions, but using that as your main RAM memory would be rather slow and inefficient don't you think?
Thanks for the support and feed back.
All my projects are well out of date ( including the DL links ); i will be revamping and updating them all soon.

The processor is completed in that it can execute all of it's instructions, however the basic version of the programming terminal shown here does not include the 8-bit instruction set decoder and so it must instead be manually programmed using the less-dense 16-bit microcode instruction set.

Compare stores the result of a comparison between two registers..
Data about the comparison ( A was = to B, A was > than BÃ ect..) is stored until the next comparison.
This data can be accessed by calling the branch instruction specifying the relevant condition.
( just as you suspected )

The piston tape-drive ( tho placed where RAM is supposed to be ) was never supposed to act as random access memory, instead it would rotate itself to a user defined address before reading a big chunk of memory likely containing a program into the separate faster RAM ( the same way an electrical computer loads programs into memory when they are started )

Unfortunately at that point i became obsessed with producing perfect RAM, i built endless designs; and as well it was right at the turning point of instant piston technology. i was more than interested and my J-series of processors payed the price in neglect; i would spend the next 4-6 months exploring the world of glitch-tech, producing things like this
and this.

The next computer i built was a 1-bit stream CPU with Xenosys
( it came much further than is shown there ) and the very next thing i did was start working on the X series with my focus now shifting away from computability ( as i had found a dense MIPS like instruction set design works great in MC ) and was now moving towards practicality, optimization and larger memory banks.

Thanks for the post : )
  • XenoTech
  • Level 15
  • Journeyman Architect
  • May 21, 2013, 2:06 am
Again well done on this project! Did you have already measured how many ticks one instruction cycle takes? With that awesome memory (and all other components) you've built in this machine its specs should be very promising :).

Some time ago, I was also trying to create tape RAM, but that would become random access memory pushable in both directions. I had a program counter that keeped track at what position the tape was and a comparator that told the device how many blocks and in what direction it had to push. Unfortunately, the server crashed and most chunks were corrupted, so that project is considered dead now.

You said that one can program using a program terminal; how does that exactly work? Do you have to poke every instruction into memory or can you use microcode or assembly instructions to store instruction into memory?

There's one thing I forgot to mention in my previous post: does your processor support interrupts? Do you have a interrupt vector table your processor uses to jump to a specific interrupt handler or do you have a interrupt flag in some register you can use with e.g. a branch on interrupt instruction?

Just another suggestion, because you said your processor already has a full operational ISA, you could post a list of registers one can use and a ISA table one can use to write programs on your Redstone Device ;).
  • NOVA47
  • Level 6
  • Apprentice Hunter
  • May 14, 2013, 5:50 pm
What can this do in Minecraft, like what can it calculate, and for what reason?
Fundamentally a computer does two things.
Classification ( Determine if an input lies within some class of inputs )
and Generation ( Produce some output )

When a computer system is capable of classifying all of it's possible inputs and generating all of it's possible outputs something amazing happens.

The system becomes 'complete' and 'universal' ( as in Turing complete and as in computationally universal )

At this point the computer is exactly as capable as ( tho possibly slower than ) the most powerful computer which could ever be made.

Most people will never truly grasp this concept; I didn't, even after 10 years of engineering and programming, later and while studying the related Lambda Calculus it clicked.

I wish i could explain it in a way which everyone could understand.
  • trolz666
  • Level 23
  • Expert Zombie
  • February 18, 2013, 8:15 am
Well that's pretty good but I made a iron door that opens with a lever.
  • _DioM_
  • Level 25
  • Expert Scribe
  • May 6, 2013, 3:17 pm
I placed a redstone torch, once.
  • Zwenot
  • Level 1
  • New Miner
  • March 28, 2013, 4:16 am
i made one with an Xor. then you dont have to be all weird with closing the door.
  • FlameVirus
  • Level 15
  • Journeyman Architect
  • October 22, 2012, 9:04 am
wat da fa wat da fa wat da fa who i am?
100th Diamond bro :)
  • pietro1313
  • Level 1
  • New Crafter
  • October 8, 2012, 8:19 am
you are a genius, the most complicated thing i can do with redstone is one piston going up and down
  • Raqk
  • Level 1
  • New Explorer
  • November 4, 2012, 9:39 am
  • - RELOADED -
  • Level 12
  • Journeyman Architect
  • October 7, 2012, 3:56 pm
ummmmm how?
  • Kernul
  • Level 32
  • Artisan Blockhead
  • August 7, 2012, 7:51 pm
This looks awesome! And could you explain what is needed to make a simple adding and subtracting computer?
Thanks !
I would be happy too...
You'll need:
a program counter
a program memory bank
a data memory bank
an Adder / subtractor unit

Advanced Redstone Circuits has a brief over-view
My Redstone Computer builders Tutorial would be great, but alas it's not finished !
  • Kernul
  • Level 32
  • Artisan Blockhead
  • August 7, 2012, 9:29 pm
Okay thanks I've been trying to gather information over the past few days before I actually start my computer.
  • Waskomsause
  • Level 26
  • Expert Pokemon
  • August 7, 2012, 6:37 pm
This is amazing, i have never seen a computer part in minecraft make so much sense, you sir have earned a new sub, and a diamond.
Thats very nice : ) Thanks
Also which part were you referring too ?
  • Waskomsause
  • Level 26
  • Expert Pokemon
  • August 7, 2012, 11:17 pm
Well, i gguess i meant to say the whole thing, LOL, i kinda misspoke.
Okey Dokey : ) Well thanks.
  • suspect3
  • Level 31
  • Artisan Grump
  • July 29, 2012, 6:50 pm
..... whatisthisidonteven........
Well, it's a computer processor made from Redstone components.
Read about how/why it's possible here
  • suspect3
  • Level 31
  • Artisan Grump
  • July 30, 2012, 11:41 am
cool! ill read into it!
  • Phrozenbit
  • Level 13
  • Journeyman Miner
  • July 28, 2012, 2:53 pm
Very well thought of machine, looks very nice and efficient. I really like the Read / Write harddrive, I have no idea how to build that. I agree, there is nothing more fun then computer science in Minecraft =]
: )
  • Phrozenbit
  • Level 13
  • Journeyman Miner
  • July 29, 2012, 2:03 am
And good lord Capacity is fast :-D If I turn on the clock and start flying Minecraft goes 'lag..lag..lag..lag..lag' :-) The write heads are simply brilliant, I never would have come up with that. I am working on my own version at the moment, I'll post it when it's done.
Hehe, yes i should probably slow that down a little for the demo version.
I wanted to minimize the cost of data-seeking so i used a 2-step tape motor which can actually operate down to 2-tick .. downside is that the client can barely handle it : )

I would Love to see your take on the Piston-Drive; RedstoneWarrior did one recently which was just ugly ! besides that; very little work has been put into this field of Redstone Science.

On a related note; i found that using special read-heads; a read-only density of 4-bits per block ( 1 byte per 2 blocks ) really is possible ! ( it uses both normal and sticky pistons as data; each with 6 possible directions; making 12 combination's out of the necessary 16 to achieve 4-bits-per-block; the final 4 combination's could be are; solid; sand; fence and slab.

Ill keep a lookout for your drive; nice work on the RAM btw.
  • Phrozenbit
  • Level 13
  • Journeyman Miner
  • July 30, 2012, 3:54 am
Thanks :-) The RAM is really big in size though.

I have reverse engineered your read/write head, and made it work on the first 'tape' in my drive. It's a bit of a challenge to fit it all into 11 X 11 blocks, but I managed. Just exactly rebuilding your drive to the block was not my intention, so I used a different rising edge trigger for the block exchanger in the write head. Mine is also not as fast as yours is, i use a different clock making it about half as fast.

Maybe if I feel up to it, I'll make it random accessible as well, by giving an address binary and make it seek until the byte is at the read / write head. As a second challenge I'll try to come up with some branching mechanism as well ( albeit a very slow branch mechanism because of the long and variable seek time )

I think i may have a working version of the drive with a control panel up here by the end of the day :-)
It looks great btw,

You have really been killing it lately In Redstone !

Makes me want to stop programming for a while and go back to engineering !

: ) but seriously; nice work on that one !

I keep thinking about how cool it would be to get a MASSIVE ( 2kb~ ) memory bank which cauld be addressed and accessed without the usual lag which it would incur.

I'm sure it would have to be a type of tape; maybe one where most blocks in the tape rarely move at all.
  • Phrozenbit
  • Level 13
  • Journeyman Miner
  • July 31, 2012, 2:40 am
Thanks :-)

A 2 K or more bank with pistons would indeed kill the minecraft client, but I have been thinking of using the block exchanger as a memory cell, the way you built it makes it really compact, it may be a good replacement of the D-latch as a memory cell, maybe i'll experiment with that sometimes.

I could not have built my drive without yours, so thanks again :-)
  • ArceusGrass
  • Level 45
  • Master Dragonborn
  • July 27, 2012, 12:16 pm
How the hell? And I'm struggling with piston doors...
  • linkin1503
  • Level 44
  • Master Network
  • July 8, 2012, 7:35 pm
Now that I know what all these words mean, that's a really well designed ISA. I might use some of those ideas in the future, if that's okay.
Ofcoarse, I put it here hoping it mght be useful for others !

Thanks for the comment btw :P
Thanks. Yeah... I didn't know what a nibble was until recently.
  • Level 33
  • Artisan Engineer
  • May 28, 2012, 10:21 am
omg , ur HDD looks so cute , but anyway great job man
Thanks; i think so too !

It was designed to replace this behemoth of a drive : )

  • Level 33
  • Artisan Engineer
  • June 30, 2012, 11:59 am
oh wait , how did u placed pic in teh comment ?
Planet Minecraft comment entry boxes accept html.. Drag select an image within your browser, like you would a chunk of text, then copy it, go back to the tab with your new comment.. And paste it in : )
  • Level 33
  • Artisan Engineer
  • June 30, 2012, 11:39 pm
oh well , when i submit the comment the pic dissapear :(
resolution of this pic was 240 by 350 , i guess its too big for comment or ?
There's no maximum resolution size.
Keep experimenting, it's kind of an art ; )
  • Level 33
  • Artisan Engineer
  • June 30, 2012, 11:59 pm
i have got one more question : where did u upload the pic of the old HDD
Most of my projects are not public, I'll show that one for a while.
  • geo1088
  • Level 9
  • Apprentice Engineer
  • May 11, 2012, 2:03 am
Awesome Project!
May I ask you how your memory components work though? I am having a hard time finding a memory cell that is that small...
Hey thanks geo1088,
There Vertical nor latches : )

They work using two torches powering each other.
This leaves two stable states, used to represent 0 & 1
  • geo1088
  • Level 9
  • Apprentice Engineer
  • June 4, 2012, 11:06 am
Oh, OK! That explains it. Thanks!
wtf does it????
Programable symbolic information manipulation.
i have build a wooden house with an iron door today:)

Don't feel inadequate. Projects like these take many hundreds of hours. I think a nice wooden house is a fine days work : )
it took me 2 days:(

  • atomick86
  • Level 15
  • Journeyman Engineer
  • April 8, 2013, 4:34 am
  • sahara29
  • Level 28
  • Expert Crafter
  • April 10, 2012, 5:24 am
great job i never could have done that and just askin what txture pack it that
I modified the default. It's been uploaded somewhere in these comments.
  • KenuR
  • Level 1
  • New Miner
  • March 10, 2012, 3:40 am
amazing, could you please give us the map? I want to see how it works!
Now don't hate or yell at me... but... Point of this?
Learn something about processor design.
  • realheri
  • Level 1
  • New Crafter
  • March 22, 2012, 6:03 am
100% agree
"we du what must, because we can"
so... Can i install an Operating System on this computer within my computer? that would be cool as hell. is it possible to make a more powerful computer in minecraft than your current computer and have it be fast? can you like make a screen and Ethernet port and like routers so i can play mc multiplayer on a server in a network within mc multiplayer on a server in a network and maybe you can build a computer within your version of minecraft within your minecraft computer and it's real life computer and maybe one more level inward XD MORE MORE MAKE SOME COMPUTER STUFF!!!!!!!!!
Unfortunatly each time you go in-wards it get a little slower (overhead from flashing all the torches and so forth ) so you can't make a Minecraft computer which is more powerful then the computer it's running on ( unfortunately ).

You sure could put an operating system on a Redstone computer, tho to my knowledge no-one ever has.

And yes, i will be making faster, more powerful Redstone computers. ( i've recently had two smarty's join me, so that should be good )
Sounds Epic! But yes... i forgot the wrath of emulation, less power, *sigh*
  • Sir
  • Level 20
  • Expert Fisherman
  • March 7, 2012, 5:02 am
Since you seem to know a lot about redstone (duh) How come on most of my worlds redstone wont work :( With pistons, I make sort of like an automatic doof pull the lever/button/pressure plate and 1 piston will go down then when I turn it off the other piston goes down down and back up really fast?? This is making it hard to mess around
Pistons will extend if there is power within 2-block at or above there height; exactly when a block adjacent to that piston is updated ( thats how BUD-switches work )

That is also the source of your interference; separate the peripheral Redstone lines from the piston a little more, Goodluck Sir !
  • Sir
  • Level 20
  • Expert Fisherman
  • March 7, 2012, 5:17 pm
ok, I will try that.
  • jjc007
  • Level 8
  • Apprentice Architect
  • March 6, 2012, 10:01 pm
why only 57 diamonds, this is epic
  • geo1088
  • Level 9
  • Apprentice Engineer
  • May 11, 2012, 3:27 am
72 now... you're right, deserves way more...
  • Mr_Glitch
  • Level 5
  • Apprentice Architect
  • March 6, 2012, 2:47 pm
Dude, you should strive to recreate most of the components of a computer, wire them up and see if it works..
hehehe, i have...

It does. : )
  • Mr_Glitch
  • Level 5
  • Apprentice Architect
  • March 6, 2012, 3:00 pm
Then you have made the almost impossible, a computerception, congrads on it working by the way, :3
: )
  • Eatoncheese
  • Level 56
  • Grandmaster Hero
  • March 6, 2012, 12:39 pm
Hey i have been viewing your entries and i have found out that you are my one and only person i have subscribed to [well i think so] so i will be willing to help you in any way possible manly testing.
  • kentuxx
  • Level 13
  • Journeyman Engineer
  • March 2, 2012, 5:48 am
OMG and when i built my counter clock i thougt i am advanced at redstone circuitries...

1 - 50 of 150

Show Comments




© planetminecraft.com