3 ms·
This is an attempt to make an educational online game, where the mission is to build a microprocessor starting from simple logic gates. Hopefully it is both fu
by sergex 8y ago
This is an attempt to make an educational online game, where the mission is to build a microprocessor starting from simple logic gates.
Hopefully it is both fun and challenging, while at the same time educational about some of the fundamental principles of how a CPU works.
It still lack some explanatory texts, but is should be playable as it is.
It is inspired by the first chapters of the brilliant Nand2tetris course (and I have gotten permission to use the same general CPU design). My hope is this is more accessible since it is web-based and does not require any text-based coding or CS background.
- harperlee 8y agoFYI: I'm not able to drag components from the toolbox in mobile chrome.
- sergex 8y agoI'm sorry, it does not work with touch yet.
- pro_zac 8y agoThis is great! I've been reading up on low level logic during long builds at work. Any chance you could add a clear all button?
- chrisparton1991 8y agoThis is really neat, good job! This reminded me of "Code" by Charles Petzold, which I saw you reference in the About page. As a software engineer with an interest (but no professional training) in hardware design, I think it's useful and interesting to have at least a basic understanding of how a CPU handles logic. Can I ask what library (if any) you used for the canvas interactions? I'm looking for something similar for a project of my own.
- sergex 8y agoThank you. I'm using Angular, but no library beyond that. I was looking for a library for the diagram, but didn't find anything that suited my needs, so it is just custom code. I would like to find a library which could draw nicer arrows at least, since the diagram currently gets pretty confusing when there are many connections.
- chrisparton1991 8y agoI know what you mean about libraries. There are so many out there that cover 80% of my use case, but they're all missing 20% in different areas. I think I've finally found what I'm looking for in Raphael.js + Raphael.FreeTransform though.
- deleted 8y ago[deleted]
- AnthonBerg 8y agoMy fiancee is starting computer science this fall. I'm already using this to teach fundamentals. Thank you!!
- olavk 8y agoGreat to hear. I would love to hear feedback from someone without CS background.