World's worst video card? The exciting conclusion

Поділитися
Вставка
  • Опубліковано 24 лис 2024

КОМЕНТАРІ •

  • @BenEater
    @BenEater  4 роки тому +452

    Want more information or want to try building this yourself? Check out eater.net/vga for schematics, kits, and more!

    • @mynameiszoro
      @mynameiszoro 4 роки тому +1

      Nice!

    • @andyanderson3301
      @andyanderson3301 4 роки тому +5

      It's more like a cga. No DCA, and few bits on each line. I guess I haven't done those for 30 years... Hahahaha 🤣 (I was and graphics engineer).

    • @achtsekundenfurz7876
      @achtsekundenfurz7876 4 роки тому +1

      I'd say something like the 16-color mode on the CGA, which was actually text mode, but drew no more than the top 1/4 of each character. The characters were either 220 or 221 IIRC (solid block left half. solid block right half), so that you could have 160 "pixels" per line: 80 characters, half foreground and half background color. Background couldn't be anything >7, which rendered some rather bright combinations impossible (like 15/9: white/sky-blue). The 100 lines rather than 200 were a limitation of the video RAM, which would have been too small for 200.
      More recently, there were hacks which sacrificed even more resolution on the CGA and used the characters 216 to 218 (25% foreground color, 50% foreground color, 75% foreground color) to dither in a 16-color mode. The results were "plasma" demo effects in text mode and a video player called "8088 Corruption" which ran on a 1981 IBM PC. And a demo called "8088 MPH" which ran on the same PC.
      All of these are on YT, and there's another video called "CGA doesn't suck THAT much!" or similar. Some of those examples are quite impressive.

    • @manuel.dignani
      @manuel.dignani 4 роки тому +1

      Can you Make this video card controlled by an Arduino?
      And you can take an image directly from your computer, or a text...

    • @AidenJooMV
      @AidenJooMV 4 роки тому

      Nice! Does it have instructions? Also You are no longer answering me 😭

  • @ubertgold
    @ubertgold 5 років тому +5957

    "what do you want from me, I'm trying to build a video card on breadboards" - best thing I've heard all day

    • @cda32
      @cda32 5 років тому +96

      I'd like your comment but it has exactly 256 likes right now and that's also too cool

    • @cda32
      @cda32 5 років тому +47

      ah nevermind someone messed it up

    • @yashasbharadwajhs
      @yashasbharadwajhs 5 років тому +62

      The other one funny line was “as much fun as colorful stripes are, I want to display more complex image”

    • @maulaahmad2542
      @maulaahmad2542 5 років тому +7

      I read this as he said it

    • @reznovvazileski3193
      @reznovvazileski3193 5 років тому +5

      @@cda32 there's always still 2048 from this point :P

  • @AlekseySmolenchuk
    @AlekseySmolenchuk 5 років тому +4083

    Also showing off your photoshop, vim, python, and bash skills. This is truly "full stack" engineering.

    • @Mayank-mf7xr
      @Mayank-mf7xr 5 років тому +163

      ben is a god of electronics for me .

    • @allat0nce
      @allat0nce 5 років тому +50

      @@Mayank-mf7xr ben is based af

    • @maxhouseman3129
      @maxhouseman3129 5 років тому +101

      I like him, but as an engineer it is for me totally normal to know or learn several things to succeed in a project.

    • @hectornonayurbusiness2631
      @hectornonayurbusiness2631 5 років тому +13

      He flexing on all of us

    • @aorusaki
      @aorusaki 5 років тому +4

      Hahahaha

  • @Braeden123698745
    @Braeden123698745 5 років тому +4892

    Man I want Ben's super power of being able to pull properly sized wires right out of thin air.

    • @leowise2008
      @leowise2008 5 років тому +216

      Yes! it was magic! I remember cursing all the time when I was trying to wire a flip-flop in class! I was thinking " there has to be a f****ing better way to do this!"!!!

    • @mysterythecat971
      @mysterythecat971 5 років тому +179

      @@leowise2008 build it twice. Ben does. Then again he is a technomage.

    • @DouglasZwick
      @DouglasZwick 5 років тому +257

      Like Professor Farnsworth, he probably has a drawer where he keeps assorted lengths of wire.

    • @Archgeek0
      @Archgeek0 5 років тому +99

      I'm more impressed that he's got them pre-routed for his board.

    • @tray3989
      @tray3989 5 років тому +28

      You have 256 likes. Please don't ruin it :)

  • @skynet1024
    @skynet1024 3 роки тому +386

    this guy teaching electronics, graphics design, programming and everything in a single video... man that's my entire engineering degree.

    • @RXC13
      @RXC13 9 місяців тому +4

      As a teacher with a CS and Math background, I can tell you that while this is really impressive, it isn't teaching.

    • @HeavyReign12
      @HeavyReign12 8 місяців тому +20

      ​@@RXC13Isn't he teaching if I'm learning from him?

    • @nidavis
      @nidavis 8 місяців тому +8

      @@RXC13 yes it's much more useful than any formal teaching I got as a CS major!

    • @damienostler4531
      @damienostler4531 7 місяців тому +3

      @@nidavis based

    • @xjustinjx
      @xjustinjx 5 місяців тому +5

      Teachers don't teach kids, they indoctrinate them, it's 2024. This was great, watching that simple effective python script put my python class in perspective. My teacher didn't once teach anything the entire semester, I got a 100% and two certifications, but didn't understand anything, watching that little bit just blew my mind as to why python is necessary and especially when a try except is used.

  • @permissionBRICK
    @permissionBRICK 4 роки тому +4346

    That was the most epic way I have ever seen someone honor their patreons

    • @danielmalo1753
      @danielmalo1753 4 роки тому +14

      Honor? More like show off

    • @TheBandy01
      @TheBandy01 4 роки тому +313

      @@danielmalo1753 Looks like someone's jealous.

    • @questwalkerko
      @questwalkerko 4 роки тому +1

      what is that pfp?

    • @Thewolfobsessedgamer
      @Thewolfobsessedgamer 4 роки тому +2

      @@questwalkerko it's Stein from the anime Soul Eater

    • @MH_Binky
      @MH_Binky 4 роки тому +3

      Shiroe from Log Horizon.

  • @eaaeeeea
    @eaaeeeea 4 роки тому +4802

    All my life, this is exatly the level I've wanted someone to explain and demonstrate me how a picture on the screen is created. Thank you very much!

    • @rich1051414
      @rich1051414 4 роки тому +172

      It's simultaneously less magical yet also somehow more impressive at the same time.

    • @nicktimmerman2062
      @nicktimmerman2062 4 роки тому +93

      Same for me. I just could not comprehend a human could keep track of whats happening. Ofcourse this is simplified but the perfect amount so I can accept that it is indeed possible

    • @damiengates7581
      @damiengates7581 4 роки тому +3

      It's deeper than this

    • @damiengates7581
      @damiengates7581 4 роки тому +1

      @@nicktimmerman2062 mathematical formulas keep track

    • @ionrael
      @ionrael 4 роки тому +43

      Redstone UA-camrs "it's actually quite simple"

  • @Sergio0694
    @Sergio0694 5 років тому +2286

    "It might not be the most incredible resolution, but what do you want from me, I'm trying to build a video card from breadboards".
    Ahahahah bless you Ben, this is amazing work!

    • @rainerzufall5627
      @rainerzufall5627 5 років тому +33

      Found at 4:53. Made me laugh so hard as well :D

    • @AiOinc1
      @AiOinc1 5 років тому +3

      Blondihacks has a good series on this too, with very similar comments

    • @GORF_EMPIRE
      @GORF_EMPIRE 5 років тому

      Give him a New Jersey accent and that statement would be perfect!

    • @mikeb1596
      @mikeb1596 5 років тому +2

      You beat me to it. Best quote ever

    • @Anthony-ym6iz
      @Anthony-ym6iz 5 років тому

      Love that comment! Ben is simply awesome! Brilliant!!!!!!!

  • @clysmo_
    @clysmo_ Рік тому +95

    Parts List:
    10 Mhz Crystal Oscillator (Full Can)
    28C256 EEPROM
    74LS161 (x6)
    74LS04 (x4)
    74LS30 (x8)
    74LS00 (x3)
    1.5k Ohm Resistor (x3)
    680 Ohm Resistor (x3)
    15 Pin VGA Female Breakout Board
    Hookup / Jumper Wire
    4 Breadboards

    • @deadytm
      @deadytm Рік тому

      thnkx a lot !

    • @antonydecosta6262
      @antonydecosta6262 Рік тому +9

      Can of beer x3

    • @a.c.2659
      @a.c.2659 Рік тому +5

      @@antonydecosta6262more like gram of meth 10x if you want to build this irl

    • @MattiaDelFranco
      @MattiaDelFranco 4 місяці тому

      - Electronic Engineering Degree

  • @notkanye8770
    @notkanye8770 5 років тому +9466

    NVIDIA hates him! Find out how he made his own video card with one weird trick!

    • @aesthet1k_
      @aesthet1k_ 5 років тому +107

      10/10

    • @zo1dberg
      @zo1dberg 5 років тому +286

      Crypto mining farms love him - he's saved them millions!

    • @maxbouch1128
      @maxbouch1128 5 років тому +147

      his kids hates him cause thats all they gonna get

    • @prince_keke
      @prince_keke 5 років тому +67

      Only 1% gamers can beat lvl 6

    • @DylanMcMullen
      @DylanMcMullen 5 років тому +34

      Lol nah AMD has more to worry about if this card goes to market

  • @tehedx
    @tehedx 5 років тому +1079

    Swapping eeproms will be a good replacement for powerpoint presentations. Impressive work!!

    • @marwinthedja5450
      @marwinthedja5450 5 років тому +92

      That's a great idea!
      One slide per EEPROM - will definitely keep the number of slides down ;)

    • @adamw.8579
      @adamw.8579 5 років тому +77

      @@marwinthedja5450 Stack 50 EPROMs one by one and switch CE pin only.

    • @forestmanify
      @forestmanify 5 років тому +12

      It's the future! :p

    • @GabrielDalposso
      @GabrielDalposso 5 років тому +20

      There should be a 90s or something movie where the character does this

    • @tuesss
      @tuesss 5 років тому +23

      @@marwinthedja5450 Actually, two slides per EEPROM, because one bit was left unused - could easily hook up a switch there. Technically over 5 slides could fit because there were also some unused columns and only 6 bits of every byte were used, but that'd require a much more complex circuit, of course.

  • @jincyquones
    @jincyquones 5 років тому +1091

    I love how you can just hot swap out EEPROM chips to change the image. It makes it feel like some vintage slideshow tech from an old sci-fi movie.

    • @jaaguar13
      @jaaguar13 5 років тому +134

      Now, lets give this idea to the professors at university :D No powerpoints or anything. Just breadboards.

    • @nagualdesign
      @nagualdesign 5 років тому +77

      PowerPoint 0.1

    • @Leuel48Fan
      @Leuel48Fan 5 років тому +93

      Hot swap a dozen or so EEPROMs having a second person reprogram them to a different image in a "circular assembly line" fashion. Call it a 0.05 FPS video card system and ship it! *Requires 2 operators

    • @cinderwolf32
      @cinderwolf32 5 років тому +3

      @@Leuel48Fan brilliant

    • @GigsTaggart
      @GigsTaggart 5 років тому +21

      @@Leuel48Fan In the 747 they used as mobile nuclear command they had a button on the podium that would flash a light for someone in the back room to change the slide on the slide projector. They can order world destruction from the plane but it took two people to make a slideshow.

  • @quickreelbrand
    @quickreelbrand Рік тому +545

    No way he changed between 4 ROMs in order to display his patreons and the bird as well. Just amazing.

  • @AL_O0
    @AL_O0 5 років тому +1534

    Please select your graphics adapter:
    1- CGA
    2- EGA
    3- Tandy
    4- VGA
    5- Ben Eater’s Breadboard graphics card

    • @mfree80286
      @mfree80286 5 років тому +136

      BEBGA, Ben Eater's Breadboard Graphics Adapter.

    • @dangerx69
      @dangerx69 5 років тому +29

      I remember some dos games had options to choose those

    • @mysterythecat971
      @mysterythecat971 5 років тому +16

      6-Hercules

    • @GexPlayerMD
      @GexPlayerMD 5 років тому +7

      CGA
      EGA
      SEGA
      PS-ONE
      PS2
      PS3
      PS4

    • @masochisticcooking7078
      @masochisticcooking7078 5 років тому +11

      His graphics card is better then the one in my computer

  • @Mondkalb
    @Mondkalb 5 років тому +678

    +1 for the audio-environment that your keyboard adds to the python explanation segment.

    • @philrod1
      @philrod1 5 років тому +10

      Definitely not butterfly keys

    • @uraniumglow2678
      @uraniumglow2678 5 років тому +1

      Funny to see you here! Now get back to working on GM. :P

    • @blodstainer
      @blodstainer 5 років тому +8

      That mech board glory

    • @tonikotinurmi9012
      @tonikotinurmi9012 5 років тому

      @@blodstainer Yup, lot faster than any other kind to type on.

    • @blodstainer
      @blodstainer 5 років тому +2

      @@tonikotinurmi9012 it's more to do with the feeling and typing experience than speed. Rubber domes just feel bad, and while I like scizor switched, I definitely prefer colicky or tactile mechs. Or hell, buckling spring Model M styles

  • @simohamedrayeneslimani3418
    @simohamedrayeneslimani3418 4 роки тому +2293

    Was watching this to fall asleep, ended up getting a coffee.

  • @rikvdmark
    @rikvdmark 3 роки тому +435

    I love projects like this. They don’t really serve any practical purpose but they’re invaluable for learning concepts. And just to understand what goes into every day stuff we take for granted.
    In a nutshell, awesome videos Ben!

    • @blackdeath4eternity
      @blackdeath4eternity Рік тому +12

      what you mean you wouldn't use this as a video card for a raspberry pie? :P

    • @mihajlojovic8631
      @mihajlojovic8631 Рік тому +5

      I thought gpus are expensive, but from now I am not sure anymore

    • @Dude8718
      @Dude8718 11 місяців тому

      @@blackdeath4eternityman the raspberry pi already has a better video card than this tho. I've played Minecraft on my raspberry pi

    • @KDYinYouTube
      @KDYinYouTube 9 місяців тому

      ​@@mihajlojovic8631learn more about gpu before comment

    • @adora_was_taken
      @adora_was_taken 3 місяці тому

      @@Dude8718 this video "card" doesn't even do graphics acceleration, it literally just converts pixels to video output like in the early 90s

  • @EtienneSnyman
    @EtienneSnyman 5 років тому +1759

    Hey Ben, you know we all want to see you connect this video card to your 8-bit breadboard CPU, right? Like, all of us want it!

    • @demid6532
      @demid6532 5 років тому +136

      Probably his 8-bit computer is too weak for this gpu, 8-bit bus is not enough to allocate 7500 adresses of video memory. It is only possible to make 4x4 pixel display for breadboard cpu.

    • @absalomdraconis
      @absalomdraconis 5 років тому +60

      With a bit of address mapping (take an address, use it to control a register, then use that register to provide the upper bits of an address when you try to access certain other addresses, called "banks"), and you can fairly easily overcome any memory restrictions. With multiple banks (two is good for moving data, three is good when also executing from "expanded" memory) you get a _very_ powerful system that's almost as fast as an un-banked system.

    • @keco185
      @keco185 5 років тому +11

      Демид Ефремов you could easily add stuff in between which takes in an ascii character and then writes that character to the memory at the next available spot on the screen (or newline)

    • @alalala132whyisthishandletaken
      @alalala132whyisthishandletaken 5 років тому +44

      3:03 image flash.

    • @23skymaster
      @23skymaster 5 років тому +56

      And then we run Crysis on it!

  • @sto2779
    @sto2779 4 роки тому +1439

    This dude deadass built a video card from IC chips and directly plugged it into a flat screen monitor. He did everything from scratch. That's real talent.

    • @Atovange
      @Atovange 4 роки тому +128

      No talent bro, I bet he studied a lot to be in his position :)

    • @grugiv
      @grugiv 4 роки тому +27

      Next: "Building my own display"

    • @monarchseye9146
      @monarchseye9146 4 роки тому +65

      Perfect for running Temple OS

    • @FoxhoundULM
      @FoxhoundULM 4 роки тому +31

      @@Atovange you could study for lifetimes and you still wouldn't be able to grasp the skills needed to achieve that on your own.
      "no talent bro", that's exactly what a talentless being would say.

    • @Atovange
      @Atovange 4 роки тому +103

      @@FoxhoundULM How could talent teach you how a quartz clock work? It's all hard work and study

  • @modestorosado1338
    @modestorosado1338 4 роки тому +1091

    As rudimentary as this "video card" is, you're actually showing how a video card works. I don't know a lot about these things, so to people like me, the way electronic devices work might as well be magic, but this video really shows what the device actually does when it receives an input, and how it interprets electrical signals in order to display colours, creating an intelligible image in the process.

    • @kxmode
      @kxmode 4 роки тому +32

      Right? So just imagine when a video card is doing complex things like ray tracing. A video card like an NVIDIA RTX 2080 is a mini-computer--a video computer. 🙂

    • @MsIndycar
      @MsIndycar 4 роки тому +5

      Naa ppl these days only care bout ma fps

    • @jarls5890
      @jarls5890 4 роки тому +47

      Not only that - I don't know if you catched it - but those 6 resistors that convert the digital image to volts to send to the screen - is actually a small DAC (Digital to Analog Converter).
      In fact using the same principle you can make a simple audio DAC ...or as we used to call it....a sound card.

    • @shr6482
      @shr6482 4 роки тому +9

      @@jarls5890 I used to wonder why my parents interchangeably use "video card" and "sound card". Little did i know that they are very similar.

    • @flex_prods
      @flex_prods 4 роки тому +5

      @@jarls5890 I want him to build a sound card too now lol

  • @jhiggz9258
    @jhiggz9258 3 роки тому +361

    Beautiful stuff. I've always worried that the HOW gets invisibly embedded in megachips, potentially lost forever. You keep it alive and visible to the learner. Thanks for that.

  • @PotatoMcWhiskey
    @PotatoMcWhiskey 5 років тому +436

    These videos were incredible. I feel like I have a better understanding of how Computers display graphics now.

    • @DFX2KX
      @DFX2KX 5 років тому +19

      and while the formatting is different (digital instead of analoug) this is still how video signals are sent over HDMI.

    • @manictiger
      @manictiger 5 років тому +7

      I have a Display Port cable that has two damaged wires (I think). So, it's interesting... If I bend the cable at the wrong angle, the wires disconnect and the monitor has little cyan lines going through it, meaning that at least 1 red wire and 1 green wire is having issues.

    • @doublepmcl6391
      @doublepmcl6391 5 років тому +1

      Me too ;-)

    • @adomasjackevicius6208
      @adomasjackevicius6208 5 років тому +1

      Same here! Great videos.

  • @casinatorzcraft
    @casinatorzcraft 5 років тому +148

    Screw powerpoint next time I do a presentation I'm gonna hotswap EEPROMs for my homemade vga video card

  • @aelliixx
    @aelliixx 5 років тому +789

    Incredible work! I'm very excited to see what future projects you come up with!

    • @TheWeberiz
      @TheWeberiz 5 років тому

      nematei ant gala buvo ekrane užrašyta "debilu krastas" nu ble ble lietuviai a ne gieda :D

    • @aidensamuels3340
      @aidensamuels3340 5 років тому +10

      How it was posted today you commented yesterday

    • @Axristosgr
      @Axristosgr 5 років тому +4

      @@aidensamuels3340 Patreons can see the video a few days earlier.

    • @dm3on
      @dm3on 5 років тому +1

      Next project; mining bitcoins on breadboard video card.

    • @aelliixx
      @aelliixx 5 років тому

      @@TheWeberiz Sakes :DDD

  • @dylangergutierrez
    @dylangergutierrez Рік тому +32

    As an analog IC designer, this is so fascinating to watch. You're deeply knowledgeable in everything you do, and you're hacking in the truest sense of the word. At the same time, you do things where I'm like "Wait! That's illegal!" And any applications engineer would have a stroke over. And it just... Works beautifully. And it's an excellent teaching tool.

    • @pptheastrologer6870
      @pptheastrologer6870 9 місяців тому +1

      As a complete noob, and someone wanting to get into this, I'm kinda curious what you find illegal here

    • @RedHair651
      @RedHair651 8 місяців тому

      I also want to know ​@@pptheastrologer6870

    • @fomxgorl
      @fomxgorl 2 місяці тому

      ​@@pptheastrologer6870same

  • @lukemcgarr6127
    @lukemcgarr6127 5 років тому +380

    That EEPROM could store 2 more frames. You could make this display a gif.

    • @aelolul
      @aelolul 5 років тому +16

      @Ben Eater gif gif gif gif gif

    • @l3p3
      @l3p3 5 років тому +31

      Gif? You mean an "animation", don't you?

    • @HMan2828
      @HMan2828 5 років тому +29

      @@l3p3 He means a Graphics Interchange Format image.

    • @tomkandy
      @tomkandy 5 років тому +29

      1 more frame would be relatively easy - just write the second frame starting at 0x4000, and have a switch to take A14 high to swap to the second frame. 2 more frames would be a PITA.

    • @sherwoac
      @sherwoac 5 років тому +4

      Moving picture please! I'm sure with a bit more effort it could be compressed down to get a few more frames too.

  • @Sauraen
    @Sauraen 5 років тому +563

    The Patreon thanks via EEPROM images was a nice touch!

    • @KatriceMetaluna
      @KatriceMetaluna 5 років тому +19

      We need more videos where the end credits roll by switching out EEPROMs.

    • @jjbailey01
      @jjbailey01 4 роки тому

      Brought to you by viewers like you.

    • @thomasvlaskampiii6850
      @thomasvlaskampiii6850 4 роки тому

      Could you imagine having credits for a movie roll like that? That'd be great

    • @thomasvlaskampiii6850
      @thomasvlaskampiii6850 4 роки тому +1

      @@jjbailey01 I spy a PBS reference

    • @Preinstallable
      @Preinstallable 4 роки тому +1

      @@jjbailey01 pbs kids

  • @moshly64
    @moshly64 5 років тому +362

    To fix the thin lines, put a 74LS374 on the output of the EPROM and clock it from an inverted dot clock (10Mhz) & adjust the H-sync to be one step later.

    • @diversionmary
      @diversionmary 5 років тому +107

      UA-cam is truly the greatest human invention. Not just that the content exists, but instantaneous gem feedback such as this comment. What a time to be alive!

    • @Balomis
      @Balomis 5 років тому +105

      I love how there's people like me that kinda get what's going on here, and then there's people like you who *get* what's going on here

    • @fiddley
      @fiddley 5 років тому +5

      Yep, I was just thinking the same. 🙃

    • @CallumAi
      @CallumAi 5 років тому +38

      Unfortunately the worst case tACC for the EEPROM is 150ns, and the period of the 10MHz clock is 100ns, so using a D-type flip-flop (like the 74LS375) and correcting timing by one pixel would still have potential for a glitch.
      However, as he’s dividing the 10MHz by two by dropping the LSB of the horizontal counter, it would be possible to divide the clock to the D-type by two to produce a sampling period of 200ns and never violate the EEPROM access timing. H-sync would then also need to be delayed by two cycles rather than one.

    • @cbboegh
      @cbboegh 5 років тому +13

      I was immediately thinking the same thing - "you need a buffer on that slow ass prom".
      Ben's comment about sdram being faster and that this would solve the issue is misleading too. Let's say he used some low latency ddr4 with 15ns latency. That might work, but only because the monitor is too slow and likely samples towards the back end of each 25ns pixel. An old crt would shift the image by about a half pixel and if it was a good monitor, it would display the invalid data as vertical lines of pixel flicker.
      A 4k pixel is less than 2ns - so sdram is always buffered.

  • @catdog69kool
    @catdog69kool 2 роки тому +157

    Oh man, that 4 bit output voltage divider really tickled me. That's so true genius in it's simplicity.

    • @ZzSlumberzZ
      @ZzSlumberzZ Рік тому +4

      i agree. almost seems like a miracle how the numbers work themselves out.

    • @mineteam0
      @mineteam0 Рік тому +1

      its not about the numbers adding up. its just basic electric physics where 1+1 = 2 in terms of current

    • @TheGoodChap
      @TheGoodChap Рік тому +1

      Yeah I was immediately stumped as to how he was going to vary the voltages and that was clever

  • @gesprengt6561
    @gesprengt6561 5 років тому +386

    I noticed one of the sync wires isn't hooked up correctly I believe. On the second breadboard from the bottom, the white sync wire is hooked up to pin 13, which is an input of the flipflop. Whereas the yellow sync wire correctly is in pin 12. Could that cause the problem with the black bars or am I wrong somewhere?

    • @BenEater
      @BenEater  5 років тому +371

      You're right, it looks like that was hooked up wrong! That would have made the horizontal sync pulse much narrower than it should be, which apparently the monitor was able to deal with just fine. Presumably I didn't notice it since it worked. But hooking it up to the correct pin which provides the longer correct pulse still gives you the black bars so I think my diagnosis of the slow ROM read time is still likely to be what's going on. Nice catch though.

    • @paladin1147
      @paladin1147 5 років тому +121

      Incredible catch if I might add

    • @Kitulous
      @Kitulous 5 років тому +12

      @@paladin1147 I double this. I look at those holes in the breadboards and I still can't get where to put wires. I believe that all holes on the same column are connected between each other. Amirite?

    • @HazeAnderson
      @HazeAnderson 5 років тому +3

      Where's this bread you guys keep talking about? I wanna sandwich now. 😂

    • @h-milch371
      @h-milch371 5 років тому +4

      Alter Falter hast du ein Auge fürs Detail 😯

  • @RobertMilesAI
    @RobertMilesAI 5 років тому +287

    You've got space for several images in that eeprom, right? Could you add a 'frame' counter and have it play a (very) brief animation?

    • @mrtuffguy2769
      @mrtuffguy2769 5 років тому +43

      Or a GIF

    • @morganthomas1463
      @morganthomas1463 5 років тому +12

      @@mrtuffguy2769 JIF

    • @Iceykitsune
      @Iceykitsune 5 років тому +38

      @@morganthomas1463 Graphics Interchange Format
      GIF

    • @toatrika2443
      @toatrika2443 5 років тому +25

      @@Iceykitsune have you heard of this brand new concept called “joke“?

    • @computerfis
      @computerfis 5 років тому +3

      Sure he could probably just make some sort of thing on the address bus to the eeprom that would offset the address to the picture he wanted to show, something like (pictureSize * picture_number + counter) then he could increment the picture constant (picture_number) every time he wanted to change to the next picture.

  • @JackTheSpades
    @JackTheSpades 5 років тому +648

    "What do you want from me, I'm trying to build a video card on breadboards"
    Dunno why but that just cracks me up. xD

    • @artemyevtushenko8722
      @artemyevtushenko8722 5 років тому +1

      JackTheSpades it’s just such a self aware comment. It really reminds you how silly this whole awesome video is.

    • @timoofi
      @timoofi 5 років тому +5

      I enjoyed the line "I dont know if this looks like a bird to you" during the hexdump

    • @willgilliam9053
      @willgilliam9053 5 років тому

      That needs to go on a shirt...

  • @bimbirobotics1050
    @bimbirobotics1050 2 роки тому +56

    the fact that the image it produced is actually not bad and you can even tell what the image is of (to an extent) is impressive good job!

    • @HallOfMemeYT
      @HallOfMemeYT Рік тому

      He already mentioned it's distorted because low Frequency 10MHZ

    • @bimbirobotics1050
      @bimbirobotics1050 Рік тому +1

      @@HallOfMemeYT i know that, its impressive how good it is.

  • @DaveGagliardi
    @DaveGagliardi 4 роки тому +224

    When Ben used Red, Green, And Blue wires to represent the color outputs on the breadboard, i was delighted by the attention to detail that went into this.
    Thanks for producing such an interesting and educational video.

    • @petezzzz
      @petezzzz 4 роки тому +1

      Me too. But it wouldn't have been Ben otherwise.

  • @N3tech
    @N3tech 5 років тому +201

    The level of organization on your bread board is incredible. I thought I was organized with mine, but yours make mine look like a bird's nest...

    • @zwz.zdenek
      @zwz.zdenek 5 років тому +23

      Well, he's got a bird in there and that technically makes it a bird's nest too.

    • @IAmKillEveryone
      @IAmKillEveryone 5 років тому +4

      It always pays to watch how others organize their circuits.

    • @johndorian4078
      @johndorian4078 5 років тому +1

      And his fancy cut's in his video editing.. cause i'd imagine there's a lot of cut out of him measuring them and bending them and removing them...............

  • @raffaelenicolapiazzolla3927
    @raffaelenicolapiazzolla3927 5 років тому +506

    "I don't know if this looks like a bird to you" that made me subscribe lol

    • @EYEBALLS-kq2en
      @EYEBALLS-kq2en 5 років тому

      This is the greatest line in internet history!

    • @TheNamsorg
      @TheNamsorg 5 років тому

      Neo surely saw the bird, that’s some Next level matrix shit. fascinating insight of how a picture is generated... and other programming voodoo ;)

  • @out-of-will
    @out-of-will 3 роки тому +56

    "I'm not going to hook this to a computer, at least not yet..." *flashes image of breadboard computer*

  • @aslongasbassstrings
    @aslongasbassstrings 5 років тому +465

    You should consider doing a bonus part 3 where you load 3 unique images into the remaining memory and slow the clock enough to make it animate like a GIF!

    • @xusdk
      @xusdk 5 років тому +94

      He could probably just use the vertical blank for advancing the image. That'll be a 60 fps animation.
      _Insert joke about 30 fps consoles here._

    • @solepanic6583
      @solepanic6583 5 років тому +1

      xD

    • @SyphistPrime
      @SyphistPrime 5 років тому +1

      Honestly that would be a cool idea

    • @pneumonoultramicroscopicsi4065
      @pneumonoultramicroscopicsi4065 5 років тому +2

      @Richard Clutterbuck not with all games, some of them run at 30 or even 30 unstable

    • @tawongadonnellmsiska173
      @tawongadonnellmsiska173 5 років тому +3

      Am thinking hoock it up to a raspberry PI and we can have some 100x75 pixel fun

  • @plazmotech5969
    @plazmotech5969 5 років тому +449

    3:03 HE'S GOING TO HOOK UP THE GRAPHICS CARD TO HIS BREADBOARD COMPUTER

    • @MajjkyTV
      @MajjkyTV 5 років тому +12

      yeah, that would be so awesome!!! :D :D

    • @fish-qm9dg
      @fish-qm9dg 5 років тому +3

      hype

    • @jamhough22
      @jamhough22 5 років тому +6

      was wondering if anyone else seen that hhahaah

    • @Yuri-bt4wl
      @Yuri-bt4wl 5 років тому

      Just saw that and came down here to look for the coment about it. Found ya!

    • @markkeilys
      @markkeilys 5 років тому

      I mean I figured that was the case when pt1 came out.. this is was just confermation.

  • @andyparadis342
    @andyparadis342 5 років тому +98

    I'm an electronics newbie and I'm impressed that your explanations are detailed enough to follow along without being verbose. I'll keep watching.

    • @BertGrink
      @BertGrink 5 років тому +8

      You've come to a great place to learn, then. I would also recommend a couple of other UA-cam channels: *Great Scott!* and *Julian Ilett*

  • @life_score
    @life_score 3 роки тому +16

    That’s a whole lot of “Digital Logic Design”, “Integrated Circuits”, and “Computer Architecture” classes combined in two interesting videos! Well done. 👏🏼

  • @fatemonkey
    @fatemonkey 5 років тому +195

    "I'm not going to hook this to a computer, *at least not yet*" 👀

    • @atrumluminarium
      @atrumluminarium 5 років тому +11

      Play it with 0.25x speed. He's teasing something in one of the frames

    • @WokWongz
      @WokWongz 5 років тому +11

      3:03

    • @Goldernturkey
      @Goldernturkey 5 років тому +3

      Oh god I'm excited for that

    • @thegingerpowerranger
      @thegingerpowerranger 5 років тому +1

      Holy shit that is amazing. I thought you were taking the piss.

    • @diamondfailer11
      @diamondfailer11 5 років тому +1

      You can use the "." and "," keys to navigate from frame to frame

  • @dreamonstage
    @dreamonstage 4 роки тому +87

    Just shows how beautiful the engineering process is, from an idea, to hardware, to software, to debugging, to finished product, with testing at every step.

    • @hello123s
      @hello123s 4 роки тому +4

      Absolutely beautiful when we are a spectator but extremely excruciating when we are the ones doing that

    • @derekbarbosa
      @derekbarbosa 3 роки тому

      @@hello123s exactly. In my hardware classes, testing even a simple module with testbenches was hard and annoying. This one-man show is an absolute marvel. Bravo.

  • @anton201003
    @anton201003 5 років тому +104

    Thank you UA-cam for remembering I wanted to see this video, as I subscribed on the previous one!

    • @ArtumTsumia
      @ArtumTsumia 5 років тому +2

      I forgot to subscribe last time but UA-cam was kind enough to notify me of the new video anyway.

  • @lorenpearson1230
    @lorenpearson1230 3 роки тому +9

    Not sure why this came up as a recommendation, but we built these 30 years ago in a tech course, as part of our understanding of the display schematics and these signals. We also built the power supplies and operational amplifiers, etc. The fun part was denying the colors and interpreting the interference. Nice to see they are all discrete chips today.

  • @aydencook03
    @aydencook03 5 років тому +330

    WOW...
    I've always wondered how computers work on the most fundamental level, I'm tired of all of the explanations only going down to the level of "machine code". I'm glad I found this channel.
    How do you know all of this? Is there a specific topic you could study in school to become fluent in things like this? How did you even begin to learn in a topic like this?

    • @aronhighgrove4100
      @aronhighgrove4100 5 років тому +24

      Judging from previous videos, he mentioned books he read about the topic. But more information would be nice, indeed.

    • @cihstarwhufc
      @cihstarwhufc 5 років тому +73

      Study Electronic engineering!

    • @EekSaidTheCreeper
      @EekSaidTheCreeper 5 років тому +22

      A computer science degree will teach you all the things explained in this video.

    • @orti1283
      @orti1283 5 років тому +109

      @@EekSaidTheCreeper Nope, computer science is all high level stuff, at least in my country. For this you need electric/electronic engineering

    • @EekSaidTheCreeper
      @EekSaidTheCreeper 5 років тому +6

      @@orti1283 Not for me. Any good CS degree will have an introductory electronics course.

  • @baameows
    @baameows 5 років тому +355

    3:03
    *you can’t escape me, single frame of a dummy thicc breadboard*

  • @bluspectre2042
    @bluspectre2042 5 років тому +424

    Cool! Now we need to make a Ray Tracing module to this breadboard card!

    • @mestevesx
      @mestevesx 5 років тому +22

      I guess if you dont need it in real time it is doable :D
      cue factorio raytracing engine built with in-game elements

    • @onuktav
      @onuktav 5 років тому +15

      @@mestevesx ​ I believe that factorio experiment you mentioned did ray casting, not ray tracing. But it surely is an incredible achievement on its own.

    • @mestevesx
      @mestevesx 5 років тому +1

      @@onuktav Yeah, my bad, I thought the had the same principle, but one displays light as it is on camera, the other displays retangles at it's distance location. or something like that

    • @computerfis
      @computerfis 5 років тому +1

      Wouldn't the card need to support 3d internally to support hardware accelerated ray tracing? I dont know understand your comment.

    • @ruikazane5123
      @ruikazane5123 5 років тому

      And make a GIF that goes on and on at 4k

  • @mt_xing
    @mt_xing 3 роки тому +749

    You can tell a hardware person's writing code when there's a try-catch just to check for a valid index.

    • @davidy22
      @davidy22 3 роки тому +63

      Python devs be like

    • @HentaiNat
      @HentaiNat 3 роки тому +8

      What should you do in that case?

    • @davidy22
      @davidy22 3 роки тому +120

      @@HentaiNat Check for the valid index instead of intentionally doing an invalid index to catch the exception

    • @HentaiNat
      @HentaiNat 3 роки тому +4

      @@davidy22 How would that look like?

    • @mt_xing
      @mt_xing 3 роки тому +108

      @@HentaiNat Just use an if/else instead of a try/catch. Not only is your intent clearer to someone reading your code, it'll also run much faster.

  •  5 років тому +263

    Now u just need a good gaming chair to get more fps

    • @sarno97
      @sarno97 5 років тому +23

      Add more RGBs

    • @space1306
      @space1306 5 років тому +8

      @@sarno97 you're right, few leds added to the board should be quite a nice performance boost

    • @pappapaps
      @pappapaps 5 років тому +5

      How much megapixel would that type of data even transduce? Severely.

    • @onee
      @onee 5 років тому +2

      He also should not forget to download some extra ram.

    • @sskofu
      @sskofu 5 років тому

      And delete local disk c to get infinite fps

  • @peter.dolkens
    @peter.dolkens 4 роки тому +432

    I found this hilarious as a Windows user - Microsoft Paint forced bitmap on us for years - but you wrote a python script to extract a bitmap from a png =D

    • @josephlouwerse2105
      @josephlouwerse2105 4 роки тому +129

      OHH so thats what bitmap means!! It's a literal map of bits!
      This is a big revelation to me for some reason

    • @mikeboggs0
      @mikeboggs0 4 роки тому +63

      For what it's worth, you'd have to do the same with a bitmap (.bmp) image -- they write data from the bottom row of pixels to the top, and of course still have all the header data and don't have the necessary padding.

    • @Tadesan
      @Tadesan 4 роки тому

      I get it

    • @diggoran
      @diggoran 4 роки тому +4

      Yeah I think he could have just increased the canvas size to 128x256 and filled the bottom and right edges with black, then exported as bitmap to avoid the whole python step, right?

    • @sevret313
      @sevret313 4 роки тому +8

      You wouldn't get indexed colours like shown with Paint's BMPs, it forces you to use its colour indexing.

  • @gaellafond6367
    @gaellafond6367 5 років тому +212

    3:03 That image that flashed for 1 frame, wow... Is that where this project is heading?

    • @hikaruisasleep
      @hikaruisasleep 5 років тому +50

      Who knows, but it looks like his long-term project "The 8-bit Breadboard Computer"

    • @ElPanetone
      @ElPanetone 5 років тому +28

      This image is from the 8bit breadbord computer video series already available.

    • @mr.meticulous1241
      @mr.meticulous1241 5 років тому +82

      He mentioned, “hook this up to a computer...” and showed his breadboard computer
      HE’S GONNA PLUG IN HIS BREADBOARD VIDEO CARD INTO HIS BREADBOARD COMPUTER

    • @ddevin
      @ddevin 5 років тому +7

      I counted 2 frames, but yeah, I hope he figures out a way to connect the two.

    • @mr.meticulous1241
      @mr.meticulous1241 5 років тому +5

      Arcadefan314 that would be insane XD He would have to write a program to calculate/draw a picture and all the RGB values per pixel, instead of holding a static one in a ROM

  • @Axqu7227
    @Axqu7227 2 роки тому +37

    Thank you for explaining this in an engaging, thorough way my CS professors couldn’t be bothered to. You’re making me want to start playing with breadboards and get back into learning hardware.

  • @evgeniivorobei69
    @evgeniivorobei69 4 роки тому +663

    This is the way everything should be explained in universities. Amazing job!

    • @farbenpracht
      @farbenpracht 2 роки тому +7

      I'm pretty sure we would have understand woman by now then :>

    • @In.New.York.I.Milly.Rock.
      @In.New.York.I.Milly.Rock. Рік тому +2

      That's a terrible idea, especially considering how certain disciplines are logically incompatible with using an example as a metonymy for theory.

    • @blackwater7183
      @blackwater7183 Рік тому +2

      He does teach in a university. Lol.

    • @reformed_attempt_1
      @reformed_attempt_1 Рік тому +1

      isn't it how they explain it in universities already?

  • @cmuller1441
    @cmuller1441 5 років тому +22

    In the 90s I played with a fpga and made a 8 bit cpu. The display was a ega monitor. To reduce the number of gates I sacrificed some memory by using some reserved color values to generate the sync signals. Of course this had some drawbacks but had also a nice advantage: to scroll the picture I only had to do a limited number of memory writes to slightly shift the syncs...
    The fpga was actually too small and most of the display logic was in ttl logic...

  • @wojciechmuras553
    @wojciechmuras553 5 років тому +402

    "I'm not going to hook this up to a computer... yet."
    *Don't do that. Don't give me hope.*

    • @azzajohnson2123
      @azzajohnson2123 5 років тому +30

      Wojtas! Hook it up to the 8 bit breadboard computer!

    • @OpenKeith
      @OpenKeith 5 років тому +25

      hey at least it'd be better than my laptop's integrated graphics card

    • @TheYaMeZ
      @TheYaMeZ 5 років тому +18

      As soon as he says "yet" there is a single frame that contains a picture of his 8 bit computer. So it seems even more likely he will attempt it!

    • @iProgramInCpp
      @iProgramInCpp 5 років тому

      @@TheYaMeZ yep

    • @bamberghh1691
      @bamberghh1691 5 років тому +6

      3:03

  • @tomsparks3259
    @tomsparks3259 2 роки тому +23

    Ben, you have taken something that seems like an impenetrable blur of magic and brought us behind the curtain to see the "wizard" in the flesh. Thank you!

  • @MrKeebs
    @MrKeebs 5 років тому +714

    Just subscribed as a Patreon and it already pays off. Incredible work, can't wait to see what comes next!

    • @robbirobson7330
      @robbirobson7330 5 років тому +3

      yes we need more like this

    • @doingmoms3483
      @doingmoms3483 5 років тому +9

      How is this comment from 2 days ago?

    • @MrKeebs
      @MrKeebs 5 років тому +12

      @@doingmoms3483 I am a Patreon, and if you sub you get the videos earlier.

    • @dev639
      @dev639 5 років тому +4

      Wish I also had the coin to put in this one. You have a nice taste of who to back up.

    • @echofunandgames7874
      @echofunandgames7874 5 років тому

      How much does patreon pay you?

  • @kianroberson8154
    @kianroberson8154 5 років тому +331

    2:58 "I'm not going to hook this up to a computer just not yet" I saw that freeze frame at 3:03!

    • @srtghfnbfg
      @srtghfnbfg 4 роки тому +34

      pasteboard.co/IORD4YR.png
      it's a spoiler to show that he's going to connect it to his homemade CPU ? =O

    • @TheoPantazi
      @TheoPantazi 4 роки тому +7

      Same. Tried to catch it, that one frame, but couldn't! Hours of fun! :P

    • @mikuhorizon
      @mikuhorizon 4 роки тому +8

      @@TheoPantazi put playback speed to 0.25 then pause it

    • @TheoPantazi
      @TheoPantazi 4 роки тому +2

      @@mikuhorizon yep I did, I forgot about the playback speed setting, thanks! :)

    • @bennyswayofficial
      @bennyswayofficial 4 роки тому +11

      @@TheoPantazi or pause near the frame and press fullstop key "." .......on pc xD

  • @tejasarunkumar4772
    @tejasarunkumar4772 5 років тому +575

    Last time I was this early this calibre of video card was considered good.

    • @zwz.zdenek
      @zwz.zdenek 5 років тому +9

      IKR, 64 colors was a dream config for me for years!

    • @benwinkel
      @benwinkel 5 років тому +6

      I remember the 1st pic i ever displayed on the 1st computer i ever owned was of Gloria Estefan. I downloaded it over a phone line modem and it had worse resolution than this. Man was i excited!

  • @satyris410
    @satyris410 2 роки тому +4

    I love that you include the errors (one might encounter) in your work and not just jumping to the solution

  • @FoxhoundULM
    @FoxhoundULM 4 роки тому +81

    04:55 "I mean, what do you want from me ? I'm trying to build a video card on breadboards".
    That's the most badass punchline I've ever heard

  • @stamasd8500
    @stamasd8500 5 років тому +140

    Excellent video as always.
    If you used a W27C512 eeprom you would get 16 address lines, which would allow you to get to a resolution of 200x150 and also get rid of some of the vertical lines because the access time would be 45ns or better; or with a W27C020 you would get all the address lines you need for a glorious full resolution. :)
    You might have mentioned in the video that the output resistors form the world's simplest DAC.

    • @paulstelian97
      @paulstelian97 5 років тому +2

      I still don't get HOW that DAC really works. Still gotta do a bit of maths to figure out how that shit works. I think he made an assumption that we get Z instead of 0 for some reason in the calculations. That said, that means the resistance and the actual voltages will differ for the intermediate values, which isn't that bad actually.

    • @herrakaarme
      @herrakaarme 5 років тому

      Ooh, you made me remember the Covox Speech Thing by mentioning the simplest DAC. It was an easy task to build, but the only Windows driver I found in those times, when www had been barely invented (and I had no access to it), was poor. A fond memory, nonetheless.

    • @JoaoBapt
      @JoaoBapt 5 років тому +4

      You could extend that DAC with more bits by hooking more resistors that are powers-of-two times a base resistor, and then connecting the lowest bits to the highest resistors. So, for a full 8-bit color, you could technically find 1, 2, 4, 8, 16, 32, 64, 128 (times some resistance) resistors and hook the bit 0 to the 128 resistor, the bit 1 to the 64 resistor... but then it would be easier to use an actual DAC.

    • @paulstelian97
      @paulstelian97 5 років тому

      @@JoaoBapt Nice. Again, gotta do a bit of maths on how that works but holy fuck is that nice.

    • @WarrenGarabrandt
      @WarrenGarabrandt 5 років тому +3

      @@paulstelian97 This is essentially a fancy Resistor Ladder (en.wikipedia.org/wiki/Resistor_ladder).
      If he wanted to use up all 8 bits of the data for color information, he could get 256 colors (including black and white). Use 3 bits for Red and Green, and 2 bits for Blue. It will look just fine because our eyes are actually pretty crap at seeing blue anyway so lower resolution for blue is fine.
      I would actually recommend biasing the middle range values of the outputs to lower intensity than they would be in a linear configuration. This is like gamma correction in a way. Our eyes aren't very good at seeing small differences in high intensity signals compared to small differences in low intensity signals. Imagine trying to see the intensity difference in 1 light blub vs two, and then comparing that to 100 light bulbs vs 101. It's the same difference in intensity, but our eyes are much more sensitive to changes in low intensity signals (contrast ratios are biased towards dark).

  • @kevinfontanari
    @kevinfontanari 5 років тому +67

    100x75 pixels is not that bad, it's a lot more than I thought would be practical to build...

    • @DFX2KX
      @DFX2KX 5 років тому +1

      The Adruino-based Gamebuino META has a resolution very close to this. It's quite usable once you get used to writing games for it

    • @DFX2KX
      @DFX2KX 5 років тому +1

      (in fact most folks don't even use the full-RGB mode, they use 16 color indexed because of the lower RAM use. when you've got 16k....)

    • @Kalvinjj
      @Kalvinjj 5 років тому

      like, we had lower resolution color displays on phones when they started to have color displays.
      For a breadboard graphics card it's quite amazing indeed.

  • @kenhaley4
    @kenhaley4 3 роки тому +13

    Your explanations are so enlightening! I haven't tinkered with electronics in decades (I'm 74), but now I'm inspired by this and your other videos. Nice work!

  • @MaxwellNieberger
    @MaxwellNieberger 5 років тому +28

    I would really love to see this display multiple frames using the extra space in one of those EEPROMs. In fact, you could almost take it a step further and use swapping between two images at 60Hz to make intermediate colors in between any two existing colors. That would take one extra flip-flop using the reset pin of the y counter so that it switches between 1 and 0 every frame, then tie that to the high address bit of the EEPROM. The harder part would be converting images into the right format to be displayed like that

    • @renakunisaki
      @renakunisaki 5 років тому

      @@kezif don't even need a second ROM, this one is big enough for multiple images. Just the the frame counter to one of the higher address lines that's not being used.

  • @ThePoinball
    @ThePoinball 5 років тому +23

    Man ! Its Awesome ! I'm a Tech Artist At Ubisoft and your VideoCard Making Video made me Understand how the Electric signal can be translate to an Image on the screen. BIG THANKS !

    • @Roop-n4z
      @Roop-n4z 5 років тому

      please stop milking the assassin's creed franchise.

    • @paladin1147
      @paladin1147 5 років тому +5

      @@Roop-n4z He is a tech artist.....

    • @CWJester
      @CWJester 5 років тому +11

      @@Roop-n4z lol thats like telling a cashier at a store to stop stocking a product you dislike. Big oof

  • @goodclover
    @goodclover 5 років тому +110

    3:03 The flashing image is of your CPU, are you suggesting your gonna hook this up to your breadboard CPU?

    • @paulstelian97
      @paulstelian97 5 років тому +12

      Changes need to be made, with only 16 bytes for instructions you can't do shit related to video. He barely fit his Fibonacci counter!

    • @Meoiswa
      @Meoiswa 5 років тому +16

      It would most probably have terrible buffering issues and it certainly not be fast enough to render full frames between syncs, but it would still be able to output an image.

    • @paulstelian97
      @paulstelian97 5 років тому +3

      @@Meoiswa I'd really want to know how you can access that SRAM and write to it during the HBlank and VBlank... that'd be f'd up. Saw someone else do a reverse emulation on the NES which actually had to work with that and boy was it funny.

    • @Meoiswa
      @Meoiswa 5 років тому +6

      Actually, my bad, It would need one more instruction to be able to tell the GPU when the RAM is available for it to scan it. Otherwise the CPU and GPU would be fighting over who sets the active address. Luckily his instruction set still has some free slots, and this way it only needs one.

    • @timh.6872
      @timh.6872 5 років тому +4

      I've not watched this in full, but I'll bet he's planning on demonstrating DMA, so that the GPU can read off of some statically allocated RAM, potentially two buffers selected by a control block so the CPU can write to one while the GPU is reading from the other.

  • @Locane256
    @Locane256 3 роки тому +33

    Damn that was a journey!! Absolutely incredible. I am always amazed at how much work goes in to computer hardware and how little we appreciate it.

  • @marcostezo8051
    @marcostezo8051 5 років тому +1973

    in the future "How to make a 2080ti from scratch"

    • @vipervidsgamingplus5723
      @vipervidsgamingplus5723 4 роки тому +6

      Marcos Tezó not likely

    • @NeoReibert
      @NeoReibert 4 роки тому +6

      Viper vids gaming plus well maybe in 100 years? 🤔

    • @AQHackAQ
      @AQHackAQ 4 роки тому +44

      @@NeoReibert I estimate 60-70 years. Fully 3D printed GPU.

    • @pictzone
      @pictzone 4 роки тому +3

      Never ever

    • @zzzinga
      @zzzinga 4 роки тому +25

      Viper vids gaming plus it's a joke, dickhead

  • @ecicce6749
    @ecicce6749 5 років тому +91

    Please combine it with your breadboard computer. I want to see it produce some lines or circles

    • @raiguard
      @raiguard 5 років тому +17

      3:03

    • @goodclover
      @goodclover 5 років тому +7

      @saladnuts Yeah, it would probably do rectangles and stuff though, or pre-defined shapes in eeprom that could be resized

    • @karlkastor
      @karlkastor 5 років тому

      It's probably too slow.

    • @msclrhd
      @msclrhd 5 років тому +5

      @saladnuts Taylor series approximations of sin and cos with a fixed point representation (4.4?). You could then unroll the iteration loop to the desired precision, keeping track of x^n and n! at each value of n, updating either sin or cos at that step, with sin=x and cos=1 at the start (so you can start from n=3 with n! initially set to 3! and multiply x by itself 2 times to give x^3). Doing this you could compute them together, updating cos at the even values of n and sin at the odd values of n.
      You may only need 2 additional steps to get a sufficient result for this case. Interestingly, Doom used 2 steps of a similar algorithm for computing the inverse square root.
      Another alternative is to pre-compute the sin and cos tables for a given circle size on the EEPROM and look them up as needed.

    • @WarrenGarabrandt
      @WarrenGarabrandt 5 років тому +2

      @@karlkastor It might not run Crysis, but we could watch it draw the lines and circles pixel by pixel, which is even more exciting.

  • @camillecirrus3977
    @camillecirrus3977 5 років тому +2087

    Ben: I made the world's worst video card!
    Intel HD Graphics: *Am i a joke to you?*

    • @koalakun3195
      @koalakun3195 5 років тому +28

      Lirei Taichen ATI: *Am I a joke to you?*

    • @BIG_CLARKY
      @BIG_CLARKY 5 років тому +7

      Ha! that comment was also on the first video!

    • @GRBtutorials
      @GRBtutorials 5 років тому +17

      Most integrated graphics in general: *Am i a joke to you?*

    • @Null_Experis
      @Null_Experis 5 років тому +4

      S3 ViRGE: Am I a joke to you?

    • @johnfrancisdoe1563
      @johnfrancisdoe1563 5 років тому +7

      Gedo De Luchs ATI=AMD Graphics and before that the most common integrated graphics in server boards that only needed a screen for setting the thing up.
      Anyway, the original IBM PC manual included schematics for everything, even the CGA card built with TTL chips, a RAM chip and an old 6845 chip that did the job of the two bottom breadboards. Max res 640x200 with the 4-bit DAC in the monitor instead of the card. Hercules just added more TTL chips to get 720x350 on the MDA monitor with it's 2 bit DAC.

  • @TrevorAvrett
    @TrevorAvrett 3 роки тому +67

    There's no way I could sit through all the work you did here for this!! Skimmed through it and the first video just to see if it was legit. Computer science people should have the money, NOT influencers. To have the mind and patience to do these kinds of things is incredible! All the effort that went into this for a poor picture blows my mind to consider all the slaving over people who think like you do for each, stupidly faster generations of hardware we get to enjoy. Props to you guys for being the unsung heros, designers and architects of our daily lives

    • @multivariateperspective5137
      @multivariateperspective5137 3 роки тому +2

      Thank you! People that solve problems for real should have the money and influence. (ie Elon Musk)

    • @Axqu7227
      @Axqu7227 2 роки тому +3

      @@multivariateperspective5137 Musk’s engineers. He’s a venture capitalist that doesn’t do jack on his own.

    • @saudude2174
      @saudude2174 2 роки тому +2

      people choose where the money goes, if they wanted to fund engineers instead of influencers they could do that
      average joe doesnt give a shit about physics and engineering, theyd rather watch funny videos or football - hence so much money in football. Basic rules of capitalism and it's good that way, no better system has existed before.

  • @leachim66
    @leachim66 5 років тому +124

    People: There's no way you can top your DIY 8-bit computer!!!!
    Ben: Hold my breadboard

    • @leachim66
      @leachim66 5 років тому +10

      Next: "Adding a GUI to the breadboard computer"

    • @superjugy
      @superjugy 5 років тому +6

      "actually, don't hold my breadboard, I need it to build my gpu"

  • @spectrthechamp3658
    @spectrthechamp3658 5 років тому +97

    Overclock that puppy and then you could really pump frame
    (Singular)

    • @peterpain6625
      @peterpain6625 5 років тому +3

      Watercool it! No... ln2! ;)

    • @dan_loup
      @dan_loup 5 років тому +3

      It's all tied on how fast you can change the video memory.
      If you can change it at 60 FPS, that video card WILL display the video at 60 FPS.
      But i think his hand will get tired if he goes over 2.

    • @david-sv3kg
      @david-sv3kg 5 років тому

      It kinda is over clocked. That's how the black verticle lines are created on the screen.

    • @spectrthechamp3658
      @spectrthechamp3658 5 років тому

      @@dan_loup so overclock your arm?

    • @dan_loup
      @dan_loup 5 років тому

      @@spectrthechamp3658 Or that or come up with a mechanic arm that switches the chips quickly.

  • @Henry00
    @Henry00 5 років тому +125

    I did this on an FPGA with VHDL, seeing it implemented with actual chips... it just makes me appreciate FPGAs more haha.

    • @RobertSzasz
      @RobertSzasz 5 років тому +5

      I've done the same. Way more fun then bending jumper wires.

    • @ahmadalastal5303
      @ahmadalastal5303 5 років тому +2

      I love FPGAs too, I am using DE2-115, it would be more fun if we exchanged our experiences with each other, you can see my small FPGA UA-cam channel that I started, I am uploading my FPGA projects there, I use Verilog BTW

    • @tkteun
      @tkteun 5 років тому

      Seems like a nice project for this board too: alhambrabits.com/products/

    • @thewhitefalcon8539
      @thewhitefalcon8539 5 років тому +2

      @@RobertSzasz I think doing it with physical parts would give you an extra incentive to use weird tricks to keep the part count down. But obviously, you can do more stuff in an FPGA (2D acceleration anyone?)

    • @thewhitefalcon8539
      @thewhitefalcon8539 5 років тому

      @@JGHFunRun Also cool but for different reasons. (The AVR doesn't have much memory, so you have to generate the data on the fly!)

  • @doveshouse
    @doveshouse 11 місяців тому +3

    Even though the object was to display a video image, so much additional information, applicable to more generalized and broader areas, can be inferred. Phenomenal video!

  • @82FGDT
    @82FGDT 5 років тому +229

    really makes you appreciate how amazing it is just to see a 1080p desktop

    • @UNSCPILOT
      @UNSCPILOT 5 років тому +19

      Or run a game, even more crazy

    • @DreamskyDance
      @DreamskyDance 5 років тому +17

      yup, it would be kinda cool if big video card, and computer component companies in general, would do this kind of educational videos with narrators good such as this.

    • @perfectlybalancedasallthin9319
      @perfectlybalancedasallthin9319 5 років тому +3

      @@DreamskyDance Well, a video card, even a low-end one is a thousand times more complicated than this one plus its parts are a lot tinier. Such cards are also produced in a factory. So, making an educational video would be extremely difficult.

    • @david2438
      @david2438 5 років тому +13

      @@perfectlybalancedasallthin9319 thera are educational videos about black holes and 4th dimension so i dont think its that hard to make one about videocards

    • @DreamskyDance
      @DreamskyDance 5 років тому +2

      @@david2438 yup.. i think its more of an issiue of propreitary technology. But it would be interesting if someone could show on a bit simplified examples what exacly happens in Nvidia RTX for example ( as opposed to my old 1050 Ti ). There are specs of cards with release and all, thats nice. Imho in depth educational video would be really interesting for some people.

  • @jamesparker8529
    @jamesparker8529 5 років тому +155

    the interesting thing is that this is more powerful than lots of the 8 bit computers from the 70's and 80's

    • @HenryLoenwind
      @HenryLoenwind 5 років тому +27

      To be fair, their limitations were not really on the circuitry to convert the data into a video signal but in the limited amount of memory to store the data and the limited CPU power to create it. Even with this build, in the end, the size and speed of the memory chip was the limit to what it could do.

    • @ryanjay6241
      @ryanjay6241 5 років тому +35

      @@HenryLoenwind Yep. Something a lot of people don't think about is that, even at a tiny (by modern standard) 640x480 resolution, at 60hz, to update each pixel on a screen would require writing 18 million pixels of data per second. I have doubts that many CPUs from before the late 80s could even handle that. And then consider that 640x480 @ 24 bit color requires at least 1 mb of image buffer - which is almost 16 times the total available memory of a Commodore 64. It's slightly mind-blow and amazing how large the numbers of operations and data modern computers push around while doing "almost nothing".

    • @rageagainstthebath
      @rageagainstthebath 4 роки тому +2

      @Rodolfo RP bullshit, they were all available back then.

    • @m5a1stuart83
      @m5a1stuart83 4 роки тому

      But COBOL still control the world...

    • @jfroco
      @jfroco 4 роки тому

      And the video helps a lot to understand how 8bit computers worked.

  • @alexroman6246
    @alexroman6246 5 років тому +72

    when we should get support of Vulcan on Breadboard GTX 256-15?

  • @bgnb
    @bgnb 3 роки тому +27

    Im proud to say that you are the first content creator I've seen in my entire life who has engaged me this much.
    Maybe thats because Im also an electronics engineer (I dont really know whether i can call myself an electronics engineer after watching this).
    But , my man, you've impressed me the hell out. U deserve much more subs than other good for nothing useless creators.
    Kudos.
    keep going brother.
    Would really like to communicate with you.
    Love from India

    • @In.New.York.I.Milly.Rock.
      @In.New.York.I.Milly.Rock. Рік тому

      What do you have to be proud about in praising his merits?

    • @zlr9022
      @zlr9022 Рік тому

      Proud🤡 also why bring up good for nothing creators

    • @curious_banda
      @curious_banda Рік тому +1

      It's just a translation thing / lingo. You know, English is not the first language of majority of world. Monolingual americans won't understand this, especially if the other guy is an Indian, who are on average trilingual.

    • @zlr9022
      @zlr9022 Рік тому

      @@curious_banda then he gotta learn that thats not how we talk in the english language

    • @curious_banda
      @curious_banda Рік тому

      @@zlr9022 Nobody asked to talk with you. You probably don't have friends.

  • @marvinkitfox3386
    @marvinkitfox3386 4 роки тому +49

    13:00 - ish
    Being very VERY naughty, adding in that logic chip WHILE POWER IS CONNECTED

  • @wojciechm.1094
    @wojciechm.1094 5 років тому +32

    Awesome work! The "Lena" picture in the thumbnail was nice reference :-)

    • @CollinBaillie
      @CollinBaillie 5 років тому +1

      wojciech m. Please explain?

    • @sligovolts
      @sligovolts 5 років тому +6

      @@CollinBaillie "Lena" is the name of the model whose photo is commonly used by computer scientists when they want to demonstrate algorithms and/or anything related to computer graphics

    • @bskull3232
      @bskull3232 5 років тому +3

      @@sligovolts The most famous Playboy model ever in computer industry.

  • @johantenhove7770
    @johantenhove7770 3 роки тому +3

    I honestly wish stuff like this was highlighted during the IT-courses at university. But i have been fortunate enough to work with 16-bit ISA and a time where BIOS-updates were regular ifnot old-school, so i could understand most of it. Many thanks!

  • @arkan205
    @arkan205 5 років тому +917

    You're like the nerdy cousin of the guy from Primitive Technology

    • @KeramatZMode
      @KeramatZMode 5 років тому +37

      Vaporwave Technology

    • @sarno97
      @sarno97 5 років тому +9

      The guy who built a hut?

    • @teunschuur7988
      @teunschuur7988 5 років тому

      😂😂😂

    • @mank01101
      @mank01101 5 років тому +24

      Only that this specimen talks...

    • @danielhetrick3435
      @danielhetrick3435 5 років тому +7

      Everybody is cousins with everybody, technically.

  • @Taurickk
    @Taurickk 5 років тому +37

    This was a great way to teach people how computer graphics work, keep up the fantastic work!

  • @nimoh8077
    @nimoh8077 5 років тому +69

    We want the Biggest Crossover the world has ever seen!
    Please connect it with the 8-bit breadboard computer in some way!

    • @ShanyGolan
      @ShanyGolan 5 років тому +1

      it's a must!

    • @adhossain
      @adhossain 5 років тому +1

      Yes. We also want to see it someday

    • @hadinossanosam4459
      @hadinossanosam4459 5 років тому +20

      3:02 "at least not yet" *flashes 8-bit computer for one frame*
      I'm pretty sure that's exactly what he planned with it all along :)

  • @Ifinishedyoutube
    @Ifinishedyoutube 2 роки тому +2

    Watching you explain this was the exact same to my brain as watching a speedrunner explain a complex glitch in a game I hadn't played yet.
    I wonder how many different things I could actually do if I gave them the proper amount of time and training. So much of what you were saying I have absolutely no idea but it's all incredibly contextual and represents concepts that can be applied in multiple alleys.
    Makes me think I should have more confidence in my abilities IRL. I mean the only thing that separates me from conquering that incredibly complex glitch is time and effort. I guess it's the same for the real world.

  • @FalcuunFalcuunn
    @FalcuunFalcuunn 5 років тому +126

    "I don't know if this looks like a bird to you"
    Yeah it does, really does.

  • @markkoetsier6475
    @markkoetsier6475 5 років тому +23

    But seriously, I love that Special Thanks section, never seen it applied quite this creatively.

    • @fluffycritter
      @fluffycritter 5 років тому +3

      I love that hotswapping EEPROMs is a thing you can do.

    • @computerfis
      @computerfis 5 років тому +3

      @@fluffycritter Yeah it was a pretty cool thing he did there :D

  • @RunFool
    @RunFool 4 роки тому +481

    Just wrote my first "Hello world!" program. Came out to youtube to hang with the tech types. Turning off my computer now.

    • @vinceontheweb
      @vinceontheweb 3 роки тому +54

      Dont give up

    • @diablo.the.cheater
      @diablo.the.cheater 3 роки тому +76

      Don't give up, i work as a programmer and the electronic stuff he does may as well be magic to me, the only thing i understood was the python script and the binary hex part.

    • @JohnSmith-xf1zu
      @JohnSmith-xf1zu 3 роки тому +29

      Don't give up! We all started at "hello world!" We all started out learning the basics. The rest is just study and application. If you are truly interested, you could be doing stuff like this with some study and practice.

    • @peoplethesedaysberetarded
      @peoplethesedaysberetarded 3 роки тому +8

      Everyone starts at “hello world.”
      And some of these don’t give up. Keep going!

    • @ashrafulalam3662
      @ashrafulalam3662 3 роки тому +3

      @@diablo.the.cheater Funnily enough, that was the only part that seemed like magic to me! I haven't seen shell commands in YEARS

  • @thierrymeuris8042
    @thierrymeuris8042 3 роки тому +3

    Great stuff! And what an interesting and educational explanation! I was an electronics/telecom student during the period of conventional TTL and CMOS chips, as well as CRT technology, so this is fully understandable for me! Keep up the good work and I might show this video to my kids! I hope they get the passion for these things!

  • @baameows
    @baameows 5 років тому +114

    finally, now I can run minecraft shaders.

  • @wolverine9632
    @wolverine9632 4 роки тому +150

    The fact that this would be top-of-the-line in the 70s is amazing. Imagine a video game console based on this fairly simple design

    • @Blafaselblubb
      @Blafaselblubb 4 роки тому +21

      I hope he hooks it up to the breadboard computer later

    • @Speaktrap
      @Speaktrap 4 роки тому +6

      That's still the worst video card, as whole the weight of processing image goes to CPU

    • @ZXRulezzz
      @ZXRulezzz 4 роки тому +2

      That basically would be ZX Spectrum, but with more colors and way less pixels

    • @Benoit-Pierre
      @Benoit-Pierre 4 роки тому +1

      @@Blafaselblubb he did it just today :)

    • @zombieman81
      @zombieman81 3 роки тому +1

      Well in 1981 in the UK we had the ZX81 with 64x48 monochrome pixels for drawing, though actually there were 32x24 characters of 8x8 including a range of "quarter block" characters to support the 64x48 "graphics", then in 1982 the ZX Spectrum with 256x192 proper pixels with 8 main colours plus bright/not bright (4 bits).

  • @Jarko1401
    @Jarko1401 5 років тому +63

    Having A15 free you could have programmed 2 images to one ROM and switch them

    • @DFX2KX
      @DFX2KX 5 років тому +4

      "Frame buffer" Yo! :P

    • @fft2020
      @fft2020 5 років тому +2

      the switch would be too fast, you wouldn't see anything
      Then he would have to introduce some kind of delay circuit...
      maybe on another video...

    • @FerrybigGaming
      @FerrybigGaming 5 років тому +2

      @@fft2020 He just needs to add another few JK flipflips to the output of the vertical blanking signal, add 8 of those delays the signal for about 4-5 seconds

    • @fft2020
      @fft2020 5 років тому +1

      @@FerrybigGaming and switch the address position on the EPROM to the other images

    • @deltaxcd
      @deltaxcd 5 років тому +1

      actually, he could have used 2 remaining ROM lines for sync so that entire video card would easily fit into something like 5 chips total.

  • @12-343
    @12-343 3 роки тому +25

    You could use the extra bit in the memory address to have more color depth. You would have 0xxxxxxxyyyyyyy and 1xxxxxxxyyyyyyy have two different values that get concatenated to make a longer value, similar to how the old Pokemon games stored images.

    • @pizzainc.1465
      @pizzainc.1465 Рік тому

      What, you expect him to learn hexatrigesimal now?

    • @tristantheoofer2
      @tristantheoofer2 Рік тому

      @@pizzainc.1465 isnt that like 630 something colors or some shit?

  • @ericmarciano075
    @ericmarciano075 4 роки тому +69

    Thank you so much for these 2 videos, it finally made me understand how a graphic card works with its frame buffer. I know modern graphic cards are much more complex, but understanding the basics is enough to be able to extrapolate. A quick remark: you used resistors to generate different levels of voltage according to the 4 bits for red, green and blue, that was very smart. I guess you could have used a Digital to Analog Converter (DAC) for this, especially if colors were coded on 8 bits, but the video would have been way too complex. Am I right?

    • @VintageTechFan
      @VintageTechFan 3 роки тому +22

      Those resistors essentially ARE a DAC. Simple DACs are just a (very precise) array of resistors with driver stages.

    • @renx81
      @renx81 3 роки тому +1

      2 bits for each color*

    • @kaitlyn__L
      @kaitlyn__L Рік тому

      @@VintageTechFan opened the comment to see if someone else had already brought this up :)

  • @uuberr
    @uuberr 5 років тому +239

    Me : *build my own pc*
    Also me : *Think i am good with computers*
    Ben : Makes own video card

    • @5RoD
      @5RoD 5 років тому +3

      😂😂 same

    • @amineabdz
      @amineabdz 5 років тому +23

      Me : * can write assembly programs with only self education and online courses and build computers too *
      Me : wow i'm kinda good with computers
      Ben : * Draws stuff on a monitor with some electricity , wires and holes *

  • @Dahalum
    @Dahalum 5 років тому +135

    Try and stop the video at around 3:03 and you'll see something cool!

    • @dasraiser
      @dasraiser 5 років тому +19

      easier with the . and , keys , single frame :)

    • @volvo245
      @volvo245 5 років тому +7

      Yeah I had to check if it was porn or what 😅🤣

    • @RWBHere
      @RWBHere 5 років тому +16

      @@volvo245 It's breadboard porn.
      I ran the video at 0.25x and paused at the picture. Very neat build.

    • @Nikage23
      @Nikage23 4 роки тому +2

      Nice catch) huh imgur.com/a/8e1nVan

    • @temahtemah18
      @temahtemah18 4 роки тому +2

      I caught the picture was a subliminal message, interesting

  • @Sentinel95629
    @Sentinel95629 3 роки тому +12

    I understand almost nothing here, yet I am for some unfathomable reason compelled to watch it still.

    • @sauliuskrasuckas4355
      @sauliuskrasuckas4355 3 роки тому

      I think at least you get that it shows how VGA pixels are born. :)
      And I recommend watching the 1st part too: ua-cam.com/video/l7rce6IQDWs/v-deo.html