@@weirdboyjim Do you plan on open sourcing the JAM-1 once it's cleaned up? To me, it seems you've essentially made a whole 8-bit game console from scratch, and more powerful than the NES. Some seem to have already written emulators based on your thorough descriptions, though.
@@mikafoxx2717 its effectively open source already, the pcbs are available through easyeda, the rom's code is on the discord server, a long with a compiler for the system.
@@mikafoxx2717 He has talked about it some on Discord. From what I gather the reasoning is that the files are not currently publication-ready. I think the intent is to publish it once it is. It's on EasyEDA linked in a few places in the Discord server, but they are being frustrating with the publication requirements.
Thanks James. Wow! It worked first time, awesome. The ensemble looks incredible. Geting ever closer to a thing. It was fun to watch alll the blinking lights as the music played, a hint to how amazing this build will be when complete. A special thank you for all the effort in producing the videos and taking us along for the journey, it's been both inspiring and humbling. Take care.
@@weirdboyjim It's amazing what you're doing and to document it so well so we can follow along is incredible, entertaing and hugely educational as well. It has inspired me to start messing with electronic projects for the first time since leaving Uni, so thanks James.
You are certainly a genius - coming up with this beautiful machine. Honestly, I'm more than impressed. Found your videos by pure chance, as in, I didn't purposefully go hunting for them. Definitely a long-time subscriber from NOW. Looking forward to the future of where you take this project.
Woohoo. So excited for this one. Commenting before I even watch it. I waited all day cause it dropped as I was sleeping and no time to watch before work
The number of times I watch your sped-up routing footage and think "Oh! I wish I could route a board as fast as James does!". :) ... And your delivery times of, what, about 3 seconds are pretty amazing too. ;) Nice job... that's going to look superb with the VGA plugged in too.
@@weirdboyjimmaybe in some cases you could skip some of the footage, for example when routing repetitive bus lines show the first couple and then dissolve to show the bus completed. I could also see this approach for some of the soldering footage.
James, I hope you continue to make many videos about this amazing computer after you consider it "complete". Perhaps you might consider making a series of videos about your ideas related to software development for this computer.
Glad you are enjoying, there will definitely be some videos on programming it before I consider it truly finished. At the very start of this project I said I wanted to build a device I could develop some games for, and I'm not going to do that without talking about the process along the way.
@@weirdboyjim it is! And amazed to hear it will be “done” this year (and I fear because I do like watching the progress and improvements etc). But any projects after I’m in for too at this point.
its really an awesome project, look forward to seeing you put it through its paces. what was that music from, I know I've heard it before and its driving me mad because I can't remember from where.
Instead of having to tape the smaller boards together and risk one falling out. Look into the CRICUT explore work mats. They are slightly tacky for holding materials and may be of use for holding small parts in place while you work.
wow, incredibly impressive!!! How hard would it be to implement a branch prediction on the pipeline? I know this is out of the scope of this computer but i always wondered how they managed to do that.
Branch prediction is interesting. You really have two parts top it, the prediction and the response. The prediction can be very simple, many processors have a very simple scheme that always predicts each type of branch the same way and you can get a lot of benefit from that. The response is really down to the pipeline architecture itself, advanced cpu's use register renaming to allow real work to advance but simpler architectures just stop anything having an effect until the branch is resolved. Fetching an instruction and then discard if the branch goes a different way is conceptually simple but can see some real benefits.
A Question to you and your followers if I may. Why do we always put the majority of tracks on the top layer and not the bottom layer? Is it a fallback to the days of single sided pcbs?
Interesting, that's not something I'm doing deliberately. Pins aside, on most of my pcb's most of the connections are too and/or from an SMD pad on the top. So that's going to bias traces towards being on the top surface. That doesn't really apply to this backplane though, maybe an unconscious bias due to the above.
Hi James. Your work is amazing and you are incredible. Really congratulations! However, I would have left the entire project on the breadboard to be able to expand and modify it at any time; on PCB however it is not possible except reprinting the PCB. I ask you if your project is open source and if I can re-present it on my site mentioning your name. Thank you.
Glad you like it. I do like to see breadboard projects and I understand your feeling, but think about the amount the circuits reduce down, having the entire build on breadboard would have occupied far more desk space than I have available to me. I have no objection to people talking about the project, a link back to the channel is always appreciated.
I just had a quick measure. The CPU+Peripherals is pretty close to 16:9 but it's a bit wider with the planned size of vga. Will be closer than is usually shown now though.
15:34 - I understand from other videos on youtube that parallel traces are bad. Here you've got a red and blue trace running parallel for a short distance. I don't know how big of a problem that could be, especially with clockspeeds measured in low MHz, but something to consider? I think there is an alternative route available that only crosses traces, without paralleling them, albeit it would have to go slightly out of the way - which actually introduces a new problem, one of timing caused by traces of different length. I seriously doubt that would be an issue though. 18:37 - I think you can reduce the pad size on the pcb, although that might get lost if you do an update.
I'm going to caveat everything I say with "I'm not an expert, you may not want to listen to me". The "prohibition" against aligned traces on the top and bottom is often blown out of proportion, at least for anything I have experience of. Trace to trace interference is very real, but between 2 layers it can't be more than parallel traces on the same layer at the same distance (Inverse-square is a law, not a rule!). Especially not when you have a ground plane in between. The big reason I see on these amateur boards you want to avoid it is routing, if you have a length of aligned track on the top and bottom then that becomes a line on your pcb you can't cross with anything else, very easy to route yourself into a corner there. A short distance is ok, the longer the overlap the worse the problem is.
@@weirdboyjim Yes and I appreciate that it's not exactly a long distance, more than a normal crossing, but honestly not by a lot. I did wonder about the board thickness, is it thicker than the gap between traces? If yes then I seriously doubt it's a concern here. Also I hadn't realised you had added the extra layers after all (you mentioned that you might need to, but I notice you doing it) if they're in between then yeah I see no issue there. Also not an expert, only relaying what I've "learnt" elsewhere. I certainly wouldn't be in a rush to replace this board given the eye-watering price you had to pay for it!
I dont like the slur between the notes, is there any way to incorporate the tiniest of delay between notes? It might even make the audio that much better.
With all these boards you make, I kinda wonder whether you’ve considered getting your own PCB fabrication equipment. Wouldn’t that be cheaper than ordering everything?
It would be interesting to try my hand at it some time, but it would be yet another thing I'd be worrying about the quality of if something didn't work.
The first issue I hit? I thought I had just done a partial selection of them rather than the base item? I really needed to have added these to the schematic so the update added them to the pcb (as I did later).
Just for you I plugged the circuit in for a fresh check. The cpu+peripherals (without the vga which is not on my desk right now) is drawing about 0.56amps
I'm not trained in this stuff so I don't really know what's available. I trained as a programmer but developed an interest in this stuff and learned on the go. Prehaps someone else can make a recommendation?