Palette PCB - VGA from Scratch - Part 19

  Рет қаралды 7,558

James Sharman

James Sharman

Күн бұрын

Пікірлер: 71
@weirdboyjim
@weirdboyjim 8 ай бұрын
Join us on Discord: discord.gg/jmf6M3z7XS Follow me on Twitter: twitter.com/WeirdBoyJim Support the channel on Patreon: www.patreon.com/JamesSharman
@peter.stimpel
@peter.stimpel 8 ай бұрын
"I can swap those around" are famous last words, at least for me. This "autorouter" called James is way ahead of my routing skills ...
@weirdboyjim
@weirdboyjim 8 ай бұрын
I haven't forgotten the vga output circuit when "just swapping these" around caused me to spend significant time in investigation!
@jerril42
@jerril42 8 ай бұрын
People complaining that there aren't enough LEDs on the VGA panel... they are correct, of course. Never blinkin' lights. The project looks amazing, that last pan out was a great overview of its' magnificence. Bring on the sprites!
@weirdboyjim
@weirdboyjim 8 ай бұрын
Lots more cool demos in the works!
@OscarSommerbo
@OscarSommerbo 7 ай бұрын
Thanks for adding the on-screen comments, I bet it saved a lot screaming at the screen :D
@weirdboyjim
@weirdboyjim 7 ай бұрын
Thanks! Saved me lots of comment replies as well 😅
@johnnycernato4068
@johnnycernato4068 7 ай бұрын
What KZbin has taught me is that it's just a matter of time until someone wire-wraps this machine entirely and strangely enough I'm looking forward to it!
@weirdboyjim
@weirdboyjim 7 ай бұрын
As you long as you are not demanding I do it! 😅
@R.Daneel
@R.Daneel 7 ай бұрын
I'm shocked but pleased that worked first time for you! There were a lot of changes and I figured you were tempting fate. Great job!
@weirdboyjim
@weirdboyjim 7 ай бұрын
Thanks for the confidence! 😆 I've had more work first time than not!
@R.Daneel
@R.Daneel 7 ай бұрын
@@weirdboyjim Heh. Sorry. The unintended backhanded complement stems from extensive personal experience.
@Schwuuuuup
@Schwuuuuup 7 ай бұрын
Cheer for the flawless win! And I absolutely loved the "chip review" while assembling it "This ist a 74xyz it's turbo encabulator, we use it to re-calibrate the sensor phalanx" it really helped to answer some open questions in my head an enhance the understanding. (And this is the internet, so I will emphasize: that this was not sarcastic, I actually liked it very much ;-) )
@weirdboyjim
@weirdboyjim 7 ай бұрын
Glad you enjoyed it! But this is just regular encabulation, I'll turbo it in a later videos 😆
@Schwuuuuup
@Schwuuuuup 7 ай бұрын
@@weirdboyjim ahh I seen the turbo encabulators only come in BGA Packages which are hardly usable for simple Hobbyists with a soldering iron
@talideon
@talideon 7 ай бұрын
​@@weirdboyjim I'd hope so! After all, regular encabulators are very prone to side fumble! 😁
@cskilbeck
@cskilbeck 7 ай бұрын
So good - can't wait for the sprites! Lovely reflow money shot this time as well. The whole thing is looking really impressive.
@weirdboyjim
@weirdboyjim 7 ай бұрын
I was really pleased with that bit of reflow! I did upload a copy in 4k if you want to take a look! kzbin.info/www/bejne/Y3fXaJmmm7aqrNk
@cskilbeck
@cskilbeck 7 ай бұрын
@@weirdboyjim Very nice - even looks good on my crappy 1080 monitor!
@frognik79
@frognik79 7 ай бұрын
Good job getting it done first time. Don't forget to add Blast Processing(TM).
@weirdboyjim
@weirdboyjim 7 ай бұрын
Thanks! Might have to limit myself to regular processing. I don't have a silly enough Marketing department to add Blast Processing(TM)
@MartinPiper6502
@MartinPiper6502 7 ай бұрын
Nicely done. It's always good when things just work first time.
@weirdboyjim
@weirdboyjim 7 ай бұрын
You got that right!
@GodmanchesterGoblin
@GodmanchesterGoblin 7 ай бұрын
Great result! I'm really looking forward to seeing how you implement the sprite hardware.
@weirdboyjim
@weirdboyjim 7 ай бұрын
That's the last significant bit of functionality due to be added!
@Remowylliams
@Remowylliams 7 ай бұрын
I very much enjoy your videos. Congrats on your success with this board first time out. Thanks so much for making them. Cheers
@weirdboyjim
@weirdboyjim 7 ай бұрын
Thank you very much!
@pipsqueak2009
@pipsqueak2009 7 ай бұрын
Amazing that it worked first time! Impressive!
@weirdboyjim
@weirdboyjim 7 ай бұрын
Indeed thanks! I'm well about 50% for getting it to work first time, but this was a complex board.
@andymouse
@andymouse 7 ай бұрын
Goody ! sprites, awesome work James....cheers.
@weirdboyjim
@weirdboyjim 7 ай бұрын
Thanks Andymouse!
@john_ace
@john_ace 7 ай бұрын
You could add a circuit to select the palette bank "automatically" by using the first byte of a line in the frame buffer. Each line could have one out of 32 palettes. All palettes could be on screen at the same time without any CPU overhead. The Apple IIgs used this trick to get more out of the very limited 16 out of 4046 color space. The image conversion process is a bit more elaborate, though. The automatic palette-swap was heavily used to have a defined palette for the menu-bar in 640-mode (4 colors out of 4096) while the rest of the screen could have any other colors. The IIgs had some other neat modes like flood fill mode (color-index followed by 0 will continue to draw that color) and alternating palettes for even and odd pixel-columns in 640-mode (switch the least sig. bit of the palette banks by the pixel-clock). You could also add an auto-cycle circuit to switch through the 32 palettes on the h-sync (every frame, every 2nd frame ...). This would add limited animation capabilities without CPU-overhead.
@weirdboyjim
@weirdboyjim 7 ай бұрын
Interesting idea. I thought about a few things that could be done. One I liked was taking the pallet bank of the top 5 bits of the tile index. That would be far more manageable. Changing the index by frame or line is something you could do in software under the current model. I would have rather just had 256 byte srams, this solution was the simplest thing that let me use that ram without messing with the circuits elsewhere.
@john_ace
@john_ace 7 ай бұрын
@@weirdboyjim I find your idea to drive the pallet banks from a tile/sprite engine very interesting. That would result in a lot more versatility compared to a by-pixel/by-line or by-frame approach. Having separate palettes for background, sprites and tiles makes a lot of sense.
@ArneChristianRosenfeldt
@ArneChristianRosenfeldt 7 ай бұрын
@@john_aceattribute color was actually patented by Sinclair for the spectrum. C64 has a separate palette for the sprites as does the Amiga. Well technically, I think that the Amiga inventors thought they games would use 8+8 colors for the playfields. ST port use 16 colors. So the top 16 were for the 8 sprites. Ah find the error. Why not 24 colors for sprites?
@starc0w
@starc0w 6 ай бұрын
This is fantastic! Thank you so much!
@weirdboyjim
@weirdboyjim 6 ай бұрын
You're very welcome!
@TheEmbeddedHobbyist
@TheEmbeddedHobbyist 7 ай бұрын
the last 10% normally always take 90% of the time. we normally chose to do the easy traces first hoping that the last ones will still be routable. if you have a tight project time line, then it's always best to have a 2 week holiday just after the deadline. knowing that is when the fan gets hit 🙂
@weirdboyjim
@weirdboyjim 7 ай бұрын
We often talk about "the first 90%" and "the second 90%" of certain bits of work.
@TheEmbeddedHobbyist
@TheEmbeddedHobbyist 7 ай бұрын
@@weirdboyjim I just think it's the normal flow of things. The easy bugs you can just run through without much effort, but the last few expose deeper problems or issues in the code or requirements.
@captainboing
@captainboing 7 ай бұрын
congrats matey - great work
@weirdboyjim
@weirdboyjim 7 ай бұрын
Thanks!
@johanfr
@johanfr 7 ай бұрын
I've ordered a couple of AHC components (such as 74AHC138 and 74AHC574) to get the speed of AC but the convenience of HC. If I understand it correctly they have gentler rise times than AC and therefore a bit easier to work with but they are still faster than their HC counterparts.
@weirdboyjim
@weirdboyjim 7 ай бұрын
Interesting, I'll take a look at that logic family.
@johanfr
@johanfr 7 ай бұрын
FWIW there is AHCT as well in case you need TTL-compatible inputs (I noticed you used LS-parts in some places) I mistakenly bought a 25.175 MHz oscillator which didn't have CMOS compatible outputs but I hope a 74AHCT will save the day to give me a CMOS compatible 12.6 MHz signal :)
@TheEmbeddedHobbyist
@TheEmbeddedHobbyist 7 ай бұрын
well speed and power required go hand in hand i find. faster electrons keen a bigger kick up the rear. 🙂
@weirdboyjim
@weirdboyjim 7 ай бұрын
How do you tell which side of an electron is the rear? 😆
@TheEmbeddedHobbyist
@TheEmbeddedHobbyist 7 ай бұрын
@@weirdboyjim you have to watch to see which end gets wiped 😃
@damianvila
@damianvila 7 ай бұрын
The jam-1, aka "Sharmatronic Awesome Computer" (SAC? XDDDD) is looking better with each iteration. Cheers!
@weirdboyjim
@weirdboyjim 7 ай бұрын
Glad you are enjoying!
@dascandy
@dascandy 7 ай бұрын
How did you get JLCPCB to ship you a normal sized stencil? They keep offering me a huge one with equally huge shipping costs. Is it just the custom size bit?
@TomStorey96
@TomStorey96 7 ай бұрын
You can specify a custom size for the stencil when you are ordering it. I usually make mine 10cm bigger than the PCB in both dimensions so that there is a good amount of overlap (5cm on each edge) for working with solder paste, but it isn't ridiculously oversized.
@weirdboyjim
@weirdboyjim 7 ай бұрын
Yes, as Tom said, it's the specify size option. I suspect they just make the large one and trim it. Does make the shipping easier, I make mine all 150x100 if I can.
@m1geo
@m1geo 8 ай бұрын
Not enough LEDs on the VGA board? The entire thing's purpose is to drive millions of little coloured dots!
@weirdboyjim
@weirdboyjim 7 ай бұрын
A good point, but in you could argue an "era appropriate" display would be crt and not oled!
@PeetHobby
@PeetHobby 7 ай бұрын
Is this still the same computer that you started building +-3 years ago? When do you think you'll finish it? I'm looking forward to seeing the final state of the computer. 😁
@weirdboyjim
@weirdboyjim 7 ай бұрын
It is indeed. The core cpu has been finished for quite some time though (but I will make a new backplane at the end to tidy it up). I'm just building all the other bits now to make it a full system.
@m1geo
@m1geo 8 ай бұрын
Good PCB software will support gate swapping, bank swapping, bus reordering, etc., as the ICs support, and it's trivial to use. EasyEDA is super basic. 🙂
@weirdboyjim
@weirdboyjim 7 ай бұрын
I appreciate I should look at some other options but there is obviously learning curve resistance to that. I want to stick with amateur accessible software though (free preferably).
@dascandy
@dascandy 7 ай бұрын
@@weirdboyjim I've got great experience with Kicad. Only thing I tried to do so far that failed catastrophically was renumbering the components after layouting the PCB. Not sure if it would help with what @m1geo suggests, but I'm happy with it. Seems superficially similar to EasyEDA though.
@GodmanchesterGoblin
@GodmanchesterGoblin 7 ай бұрын
I've used three different and non-mutually compatible PCB CAD suites over the years (late 1980s to present). Each has their quirks and advantages and disadvantages. I'm with James on this - it's better to be expert in one and know how to work around it's limitations than spend more time learning another only to hit another set of issues further down the road.
@robiniddon7582
@robiniddon7582 7 ай бұрын
Yup, if you know how to achieve stuff and you aren't collaborating with others then any tool that you know how to use is just fine.
@Schwuuuuup
@Schwuuuuup 7 ай бұрын
I'm in the process of changing from Eagle to KiCAD .. man I feel like a noob again and the easiest Tasks feel annoyingly hard. Switching EDA tools is hard.
@FrankGevaerts
@FrankGevaerts 8 ай бұрын
That looks remarkably breadboardless!
@weirdboyjim
@weirdboyjim 7 ай бұрын
The sprite hardware will be quite a few breadboards but the build is definitely on the downward trend for breadboards now!
@Schwuuuuup
@Schwuuuuup 7 ай бұрын
@@weirdboyjim Ooh looking forward for this
@prozacgodretro
@prozacgodretro 7 ай бұрын
Great work ... (yeah 103 is not 101 HEHE!!)
@weirdboyjim
@weirdboyjim 7 ай бұрын
My Resistor kit lied to me!
@bobweiram6321
@bobweiram6321 7 ай бұрын
EasyEDA appears to have a superior UI compared to KiCAD, which I find very unpleasant to use. Connecting components in KiCAD are very fidgety and buggy. Its design checker would be laughable, if it weren't so frustratingly useless. It merely drops arrow pointing at the problem which are often bugs in how it detects connection points. I suspect its fanfare is primarily based on it being free and open source rather than its quality. It's a real shame as it is recommended as being the most capable tool.
@weirdboyjim
@weirdboyjim 7 ай бұрын
People keep telling me to learn KiCad but I have a certain level of investment in learning the EastEDA interface it's tough to walk away from.
Interim Backplane - VGA from Scratch - Part 16
30:37
James Sharman
Рет қаралды 6 М.
Designing a TR-606 style hi-hat from scratch
36:44
Moritz Klein
Рет қаралды 371 М.
黑天使只对C罗有感觉#short #angel #clown
00:39
Super Beauty team
Рет қаралды 36 МЛН
coco在求救? #小丑 #天使 #shorts
00:29
好人小丑
Рет қаралды 116 МЛН
小丑女COCO的审判。#天使 #小丑 #超人不会飞
00:53
超人不会飞
Рет қаралды 16 МЛН
sqlite-vec v0.1.0 Launch Party Recording!
57:34
Alex Garcia
Рет қаралды 77
Introduction - VGA from Scratch - Part 1
22:53
James Sharman
Рет қаралды 64 М.
IO Peripheral PCB - IO from Scratch - Part 9
43:46
James Sharman
Рет қаралды 7 М.
fpga videocard progress
9:23
scotts-tech
Рет қаралды 4,3 М.
Output Interconnect - VGA from Scratch - Extras
16:29
James Sharman Extras
Рет қаралды 1,3 М.
Signal Cleanup - VGA from Scratch - Part 17
13:34
James Sharman
Рет қаралды 8 М.
SPI (Bit Banging)- IO from Scratch - Part 4
30:04
James Sharman
Рет қаралды 10 М.
Flawless PCB design: RF rules of thumb - Part 1
15:45
Hans Rosenberg
Рет қаралды 94 М.
How To Replace Surface Mount IC / smd IC || smd Soldering
14:32
Mr SolderFix
Рет қаралды 91 М.
Timing Tweak - VGA from Scratch - Part 15
17:36
James Sharman
Рет қаралды 7 М.
黑天使只对C罗有感觉#short #angel #clown
00:39
Super Beauty team
Рет қаралды 36 МЛН