daveho hacks
daveho hacks
  • 55
  • 91 253

วีดีโอ

Hardware VGA, Episode 03 (Alternate, no background music): Readout module
มุมมอง 34114 ชั่วโมงที่ผ่านมา
This is a re-upload of Episode 03 (th-cam.com/video/mVbhe-eQTJc/w-d-xo.html), but without background music during the narration.
Hardware VGA Episode 04: Pixel generation
มุมมอง 2.1K19 ชั่วโมงที่ผ่านมา
In this episode, we go over the design of the pixel generator module, and see the complete working display controller in action. The full schematics, GAL equations, etc. are available on the project's Github site: github.com/daveho/HW_VGA Once again, I used "Brazilian Bossa Nova Jazz Acoustic Guitar Podcast Music" by Denis Pavlov as background music for the technical overview. You can support D...
Hardware VGA Episode 03: Readout module
มุมมอง 1.2K14 วันที่ผ่านมา
In this episode of the Hardware VGA series, we explain and test the Readout module, which generates the video memory addresses of the character and attribute values that the pixel generator will need to render pixels. The schematics, simulation files, GAL equations, etc. are on the Github site: github.com/daveho/HW_VGA The "elevator music" in the Readout module overview part of the video is "Br...
Hardware VGA Episode 02: VRAM (and other stuff)
มุมมอง 1.3Kหลายเดือนก่อน
This episode of the Hardware VGA series covers adding 8 KB of video memory to the display controller. All of the schematics, code, GAL equations, etc. are available on the project's Github site: github.com/daveho/HW_VGA I didn't explicitly cover the GAL programming for control signal generation in the video, but you can see the equation file here: github.com/daveho/HW_VGA/blob/main/Episode02/Ha...
Hardware VGA Episode 01: Introduction, sync generation, and pixel output
มุมมอง 8K2 หลายเดือนก่อน
In this video I begin work on a new approach to implementing a display controller for the 8-bit computer system based on discrete logic chips (and some programmable logic.) Contents: 00:00 Opening sequence 00:19 Introduction, previous difficulties 03:00 A new approach 04:08 Challenges and ways to address them 10:09 Getting started 10:43 Outline 11:40 640x480 VGA video 16:56 Hardware simulation ...
PC Tech, Episode 05: Building a 486 PC - for an interesting reason
มุมมอง 1.1K8 หลายเดือนก่อน
I will be teaching an OS course in spring 2024, and since the project sequence will target the 386/486 PC hardware platform, I became obsessed with the goal of having actual hardware to run student code on. Hence this video! (Also, I can't deny being nostalgic for this era of PC hardware. I had a PC in college with a 25MHz 486SX with 4MB of RAM; this was the first PC I ran Linux on, and it got ...
Random Stuff, Episode 0c: Sony MDR-V6 headphone driver replacement
มุมมอง 4919 หลายเดือนก่อน
This is just a quick video in which I install aftermarket replacement drivers in a pair of Sony MDR-V6 headphones. Link to the replacement drivers on Aliexpress: www.aliexpress.us/item/3256802072910541.html Overall, these seem to be a reasonably good option, given the ridiculous price of the genuine Sony replacement drivers. One thing I did notice was that when I tried the headphones with the r...
Random Stuff Episode B: Lab tour
มุมมอง 42110 หลายเดือนก่อน
Since I haven't uploaded a proper video in a while, here's some filler content! Specifically, a quick tour of my home office/lab. I will get back to the 8 bit computer project in the future, I promise :-)
Random Stuff, Episode A: Sony MDR-V4 Headphones Refurb
มุมมอง 244ปีที่แล้ว
This is a quick video where I replace the earpads and cable on a pair of Sony MDR-V4 headphones. The replacement earpads are these: www.amazon.com/dp/B093D26PHP The audio cable that I used as the replacement cable is (half of) this one: www.amazon.com/dp/B00LBJ780O
DIY 8-bit computer, Episode 1D: TMS9918A shenanigans
มุมมอง 1.5Kปีที่แล้ว
The goal of this episode is to experiment with a TMS9918A Video Display Processor and to attempt to use it as a display for the 6809 8-bit computer system. With the TMS9918A providing a display, we're one step closer to the 6809 system being a fully independent computer. Link to schematics and code for this episode: github.com/daveho/DIY8bit/tree/master/Episode1d The demo circuit shown in the v...
DIY 8-bit computer, Episode 1C: ...In which characters are displayed
มุมมอง 3.1Kปีที่แล้ว
In this video I present a series of experiments to add support for displaying text characters to the FPGA-based display controller. As always, code and schematics are on the Githubs: github.com/daveho/DIY8bit/tree/master/Episode1c This took quite a while, but I am feeling fairly confident that the display controller will be fully working in the not-to-distant future.
PC Tech, Episode 04: Improved Harbin Repairs Adapter PCBs
มุมมอง 1692 ปีที่แล้ว
In this video, I populate and test new revisions to the Harbin Repairs adapter PCBs allowing Haswell-era Dell motherboards (Optiplex 7020, Optiplex 9020, and Precision T1700) to be used in standard ATX and micro-ATX cases. The new revisions resolve a couple of issues with the adapter PCBs shown in the previous PC Tech video. Links to the design files, and information about how to fabricate and ...
PC Tech, Episode 03: Building a useful PC from (mostly) junk
มุมมอง 2802 ปีที่แล้ว
This video demonstrates how to build a useful PC out of used and salvaged parts. As usual for me, the build is based on a Haswell-era Dell motherboard, specifically from an Optiplex 7020. The Harbin Repairs adapters (github.com/HarbinRepairs/Dell-Optiplex-MB-Header-Adapters) allow a Dell motherboard to be installed in a standard ATX or Micro ATX case. As I mention in the video, the original ver...
PC Tech, Episode 02: An Optiplex test bench
มุมมอง 3482 ปีที่แล้ว
As the title suggests, this video is about making a test bench for testing Dell Optiplex motherboards and related PC components. If (like me) you are interested in building PCs based on Haswell-era Optiplex motherboards, the adapter PCBs from Harbin Repairs are super-useful, since they allow you to install a Dell motherboard in a standard ATX case: store.harbinrepairs.com/index.php/product/dfp1...
DIY 8-bit computer, Episode 1B: DIsplay controller pipelining & block RAM
มุมมอง 8502 ปีที่แล้ว
DIY 8-bit computer, Episode 1B: DIsplay controller pipelining & block RAM
DIY 8-bit computer, Episode 1A: DIsplay controller host interface
มุมมอง 1K2 ปีที่แล้ว
DIY 8-bit computer, Episode 1A: DIsplay controller host interface
DIY 8-bit computer, Episode 19: Interrupt and keyboard controller PCB
มุมมอง 1.3K2 ปีที่แล้ว
DIY 8-bit computer, Episode 19: Interrupt and keyboard controller PCB
DIY 8-bit computer, Episode 18: Memory & peripheral PCB
มุมมอง 1.2K2 ปีที่แล้ว
DIY 8-bit computer, Episode 18: Memory & peripheral PCB
PC Tech, Episode 01: How I fixed my lab PC for (fairly) cheap
มุมมอง 2092 ปีที่แล้ว
PC Tech, Episode 01: How I fixed my lab PC for (fairly) cheap
DIY 8-bit computer, Episode 17: Fixed CPU/glue logic PCBs
มุมมอง 1.1K2 ปีที่แล้ว
DIY 8-bit computer, Episode 17: Fixed CPU/glue logic PCBs
Random stuff, Episode 09: Ultimate breadboard hex displays
มุมมอง 4603 ปีที่แล้ว
Random stuff, Episode 09: Ultimate breadboard hex displays
Random Stuff, Episode 8: A trip to Skycraft Surplus
มุมมอง 5813 ปีที่แล้ว
Random Stuff, Episode 8: A trip to Skycraft Surplus
DIY 8-bit computer, Episode 16: CPU and glue logic PCB, and a name
มุมมอง 3.1K3 ปีที่แล้ว
DIY 8-bit computer, Episode 16: CPU and glue logic PCB, and a name
DIY 8-bit computer, Episode 15: Display options & FPGA experiments
มุมมอง 4.1K3 ปีที่แล้ว
DIY 8-bit computer, Episode 15: Display options & FPGA experiments
DIY 8-bit computer, Episode 14: Enclosure planning & frame
มุมมอง 7193 ปีที่แล้ว
DIY 8-bit computer, Episode 14: Enclosure planning & frame
Random Stuff, Episode 07: Slightly better hex displays
มุมมอง 4813 ปีที่แล้ว
Random Stuff, Episode 07: Slightly better hex displays
Random Stuff, Episode 06: Breadboard hex displays
มุมมอง 5113 ปีที่แล้ว
Random Stuff, Episode 06: Breadboard hex displays
DIY 8-bit computer, Episode 13: Finishing keyboard support
มุมมอง 1.3K3 ปีที่แล้ว
DIY 8-bit computer, Episode 13: Finishing keyboard support
DIY audio amplifier, Episode 03: Preamp & finale
มุมมอง 1.5K3 ปีที่แล้ว
DIY audio amplifier, Episode 03: Preamp & finale

ความคิดเห็น

  • @tarka38tara34
    @tarka38tara34 วันที่ผ่านมา

    great teacher, thank you, im french sorry my english

    • @davehohacks
      @davehohacks วันที่ผ่านมา

      Glad you enjoyed the video!

  • @tarka38tara34
    @tarka38tara34 วันที่ผ่านมา

    super tuto merci beaucoup

  • @2thinkcritically
    @2thinkcritically 4 วันที่ผ่านมา

    I've built a few concept design boards for VGA output over the years, mostly just on Breadboard but a couple on Veroboard. In all situations I've used TI 74HC components and never had issues with timing or bounce. I'd imagine I wouldn't be so lucky if I was using old chips (or fakes) rather than brand new, but I thought I'd just put that out there.

    • @davehohacks
      @davehohacks 3 วันที่ผ่านมา

      Thanks, that's good to know! I think the main difficulty with using 74HC/74HCT is that counters (like the '163 ones I used) can't meet the setup time requirement when clocked at 25+ MHz. I could almost certainly use slower parts for some of the other chips in the design. I actually tried out a 74LS153 as the pixel color selection mux, and it worked fine.

  • @rogerramjet8395
    @rogerramjet8395 5 วันที่ผ่านมา

    This is _fabulous,_ Dave. I was so pleased for you when it worked! Wonderful! 👏 (And thanks _again_ for doing this without the music! 👍🙏)

    • @davehohacks
      @davehohacks 4 วันที่ผ่านมา

      Thanks! I was definitely surprised that resolving the glitches was as simple as using 74ALS counters rather than 74ACT. For good measure I'm also going to replace the 74ACT157 mux with a 74ALS157 and the 74ACT273 chips in the row begin address register with 74ALS273. I think 74ALS is my new second-favorite logic family (after 74HCT, if course.)

    • @rogerramjet8395
      @rogerramjet8395 4 วันที่ผ่านมา

      Yeah, @@davehohacks, it was beautiful to see it working so well. By the way, I remember during your first attempt with the FPGA you concluded that you didn't know enough. I don't know whether you've come across him yet (and you may already be ahead of this), but John's Basement has a great series on FPGAs, using the ICE40's: th-cam.com/video/TJbI-NMJaUY/w-d-xo.html&pp=iAQB … I was going to go straight to FPGA, but you've inspired me to try the TTL route first. 👍

    • @davehohacks
      @davehohacks 3 วันที่ผ่านมา

      @@rogerramjet8395 I'm actually excited to pick up FPGAs again after doing this project with GALs and discrete logic. Thanks for the video recommendation, I think it will help a lot to absorb some proper background knowledge.

  • @joshc-dev
    @joshc-dev 5 วันที่ผ่านมา

    i love you sir

    • @joshc-dev
      @joshc-dev 5 วันที่ผ่านมา

      keep going!

    • @davehohacks
      @davehohacks 4 วันที่ผ่านมา

      @@joshc-dev Thanks! I'm working on a PCB, although routing is turning out to be...interesting.

  • @hwmland
    @hwmland 5 วันที่ผ่านมา

    Nice work. Thnak you for this build with clear explanation what/how/why! BTW: what wire do you use for your prototyping? Your results are so neat...

    • @davehohacks
      @davehohacks 5 วันที่ผ่านมา

      If you search AliExpress for the term "UL1423", there's a listing from a vendor called "FreeBoom". I'm using the 26 AWG version. It's like 30 AWG wire wrap wire, but a little bit thicker.

  • @firesnake6311
    @firesnake6311 6 วันที่ผ่านมา

    bro i need more of it, I truly enjoy learning this stuff, I love learning about computers hardware, thanks,

  • @rogerramjet8395
    @rogerramjet8395 6 วันที่ผ่านมา

    Fantastic! Thank you so much for uploading this version. There's a lot to process, and you run through it quickly. Needed this to be able to focus. Thank you! 🙏🙇

    • @davehohacks
      @davehohacks 6 วันที่ผ่านมา

      No problem!

  • @mbeware
    @mbeware 6 วันที่ผ่านมา

    It would be interesting to have a video explaining the logic of the pixel generator and what discrete chips and IC it would have required. The convertion to GAL logic would also be interesting, but there are a lot of video on that subject.

  • @davehohacks
    @davehohacks 6 วันที่ผ่านมา

    I uploaded an alternate version of this video without any background music during the narration: th-cam.com/video/M6Xigigz1Ow/w-d-xo.html

  • @davehohacks
    @davehohacks 6 วันที่ผ่านมา

    Based on viewer feedback, I've uploaded an alternate version of this video without any background music during the narration: th-cam.com/video/r6SRkNa0OIo/w-d-xo.html

  • @Walterhartwellwhite412
    @Walterhartwellwhite412 7 วันที่ผ่านมา

    Music is bad. Remove it please.

  • @molepistol
    @molepistol 7 วันที่ผ่านมา

    zelda dlc over vga is crazy

  • @colonelbarker
    @colonelbarker 7 วันที่ผ่านมา

    Fantastic work. Amazingly stable video. Another request for less music please!

    • @davehohacks
      @davehohacks 6 วันที่ผ่านมา

      Noted. I'm planning to post alternate versions of Episode 03 and 04 without the background music (I hadn't realized that so many people felt strongly about this.)

    • @colonelbarker
      @colonelbarker 6 วันที่ผ่านมา

      @@davehohacks I figured it was probably best worth saying. I don't tend to like commenting negative things on videos, because boy it can hurt on the other end. But your content is so good otherwise I thought it was worth pointing out. I'm really enjoying this project!

  • @TroySchrapel
    @TroySchrapel 8 วันที่ผ่านมา

    Awesome progress, Dave. Very impressive!

    • @davehohacks
      @davehohacks 6 วันที่ผ่านมา

      Thanks, Troy! I've started working on the PCB. I think it's going to be pretty challenging to make everything fit. (BTW, I'd love to see a video about your Pi Pico TMS9918A replacement project.)

    • @TroySchrapel
      @TroySchrapel 6 วันที่ผ่านมา

      @davehohacks it's coming... I'm a big-time procrastinator. 🤣 The project itself is going great though. I finally have the single board version with the RP2040 onboard working.I have a few short, unedited, unlisted videos linked in the GitHub repo.

    • @davehohacks
      @davehohacks 6 วันที่ผ่านมา

      @@TroySchrapel I procrastinated on my display controller for 2 years, so I think you're making rapid progress. Looking forward to seeing it!

  • @keyvanmehrbakhsh4069
    @keyvanmehrbakhsh4069 8 วันที่ผ่านมา

    just after the shooting the cat got a mild punishment ,

    • @davehohacks
      @davehohacks 6 วันที่ผ่านมา

      He was just doing some robustness testing 🙂

    • @keyvanmehrbakhsh4069
      @keyvanmehrbakhsh4069 6 วันที่ผ่านมา

      @@davehohacks :))

  • @TMITLT
    @TMITLT 8 วันที่ผ่านมา

    Great work! Congrats on the successful design! Good luck with the PCB design! Question: why jump to FPGA and not go through a 5v CPLD design phase using something like an Altera MAX7000 series device? A 10ns EPM7128 may be large enough and fast enough to incorporate most if not all your VGA hardware logic.

    • @davehohacks
      @davehohacks 8 วันที่ผ่านมา

      Thanks! Using a CPLD is an appealing idea. My main motivation for using an FPGA is the availability of an open-source toolchain for the Lattice ICE40 series. I think you're right that the current design wouldn't require a large device.

    • @TMITLT
      @TMITLT 7 วันที่ผ่านมา

      @@davehohacks the old Altera MAX7000 series is supported by older tools that are now free but not open-source, such as Quartus. however, they do offer a lot of design and simulation facilities that you may find useful.

    • @davehohacks
      @davehohacks 6 วันที่ผ่านมา

      @@TMITLT I'll keep that in mind!

  • @rogerramjet8395
    @rogerramjet8395 8 วันที่ผ่านมา

    Hey Dave, meant to ask last time, but please can you consider not including the "elevator music" in the background? 🙏 I realise I'm just one, but being _very_ hard of hearing (essentially deaf) and on the spectrum, I find it almost impossible to process what you're saying. I love your videos and have been subscribed for years (since covid, iirc), but I haven't been able to watch episodes 3 or 4 because of it … 😊🙏 (Edit: just read further comments and see I'm not alone. 👍)

    • @The65c02
      @The65c02 8 วันที่ผ่านมา

      That music is simply killing me thankfully it stops after 5 minutes

    • @davehohacks
      @davehohacks 8 วันที่ผ่านมา

      Maybe I'll post a combined video for episodes 3 and 4 without the background music.

    • @rogerramjet8395
      @rogerramjet8395 7 วันที่ผ่านมา

      Hey@@davehohacks … no worries for this one. (When I get some time, I'll mute it and read the subtitles …) But, I and clearly a few others would appreciate leaving it out next time. 👍🙏

    • @davehohacks
      @davehohacks 6 วันที่ผ่านมา

      @@rogerramjet8395 I think I will release alternate Episode 03 and 04 videos without the background music. Also, if you look at the "Episode03/Materials" and "Episode04/Materials" directories in the Github repo, there are scripts with the narration.

  • @sergatmel8242
    @sergatmel8242 8 วันที่ผ่านมา

    Thanks, very interesting !

  • @ocukor1
    @ocukor1 8 วันที่ผ่านมา

    idk if it's just me, but the background music makes it hard to listen.

    • @davehohacks
      @davehohacks 8 วันที่ผ่านมา

      Good point.

    • @magnustveten492
      @magnustveten492 6 วันที่ผ่านมา

      Not hard to listen to, but not needed at all.

  • @clearcutlegalvideo1532
    @clearcutlegalvideo1532 9 วันที่ผ่านมา

    I just successfully executed this repair using the linked Alibaba replacement drivers. Since I only use these headphones for monitoring and not mixing I felt comfortable only replacing the single driver (right side) that was broken. I cannot tell the difference between the original and replacement driver, but my bar is set very low.

    • @davehohacks
      @davehohacks 9 วันที่ผ่านมา

      Yeah, I can't tell any difference between the MDR-V6s with the Aliexpress drivers and my MDR-7506s with the original Sony drivers.

  • @PhilR0gers
    @PhilR0gers 9 วันที่ผ่านมา

    This video is gold as I'm looking at adding VGA to a 6502 computer that I'm building. If you look back at computers by Commodore etc., they all had custom video chips. The FPGA is the easiest way for us to make our own custom chips, so there's no real argument against using them for retro computers.

    • @davehohacks
      @davehohacks 9 วันที่ผ่านมา

      One piece of advice that I should have heeded before working on an FPGA display controller: learn the simulation tool in whatever FPGA toolchain you're using. You'll see what I mean in subsequent videos 🙂. I'm actually working on a non-FPGA display controller right now, and it's going much better, but I'm planning to return to FPGAs soon, and I'm 100% certain that I will be simulating the design extensively.

  • @pvc988
    @pvc988 15 วันที่ผ่านมา

    My combo for simulating FPGA designs (Verilog and SystemVerilog) is Icarus + GTKwave. At first it may seem weird to write simulations in Verilog but since I got used to it I prefer it over any interactive/schematic based solution.

    • @davehohacks
      @davehohacks 15 วันที่ผ่านมา

      Icarus Verilog is definitely on my radar! This current project has definitely convinced me that simulation is essential.

  • @pvc988
    @pvc988 15 วันที่ผ่านมา

    James Sharman has built beautiful 8 bit computer with logic chips with pipelined CPU, multichannel audio, serial port and awesome display controller. Check out his channel.

  • @RayBellis
    @RayBellis 16 วันที่ผ่านมา

    Have you considered storing the character data and the attribute data in physically separate RAMs? This would allow both to be accessed simultaneously by the read out module, requiring only 12 bits of counting. I _think_ it should still be possible to arrange the RAMs so that the CPU interface to them still appears as contiguous pairs of bytes instead of separate blocks, e.g. by using A1-A12 from the CPU as A0-A11 to the RAMs, with the CPU's A0 line instead of A12 as the CS/~CS line. Alternatively, maybe having them as separate blocks might be better anyway from a programmer's PoV?

    • @davehohacks
      @davehohacks 16 วันที่ผ่านมา

      I did think about putting character and attribute data in separate RAM chips. I didn't realize that you could play tricks with A0 to make characters and attributes appear to be contiguous: that's a very clever idea. Allowing parallel loading of character and attributes would potentially double the throughput, which would be nice, although there's plenty of time to load characters and attributes sequentially, even with the relatively slow 70 ns RAM chips I'm using.

    • @RayBellis
      @RayBellis 16 วันที่ผ่านมา

      @@davehohacks a further idea relating to the need to start the RAM accesses in advance of the start of the visual area (and during the "previous" scan line) - I'd be tempted to drop an 8-bit shift register ('595 ?) as a configurable delay on the HSYNC line near the final output stage (such that it only affects the monitor's version of that signal). Alternatively some timing diagrams depict the 48 clocks of the horizontal back-porch being the start of the current line, and not the very end of the previous one, such that the line actually starts at the rising edge of HSYNC. This perhaps complicates the clock counters compared to starting the visual area at clock zero, but IMHO it sure beats having to think about doing stuff while the previous line is still going.

    • @davehohacks
      @davehohacks 15 วันที่ผ่านมา

      @@RayBellis Good ideas! I did consider starting scanlines with the back porch rather than the visible area, but eventually decided it was easier to just increment the vertical count early. (Although, now that I'm thinking about it, these are more or less equivalent ideas.) That ended up being a fairly easy change. I didn't think about delaying hsync with a shift register. Thinking about this right now, you could put all of the signals in a FIFO memory pretty easily and avoid the issue entirely.

  • @thorpejsf
    @thorpejsf 18 วันที่ผ่านมา

    Take a look to see if the part you need is available in 74AHC ... nearly as fast as 74ACT, but doesn't switch quite as hard so no ground bounce. (Though, those are all CMOS-level parts so might be an issue with the low output drive of the GAL... not very many 74AHCT...)

    • @davehohacks
      @davehohacks 18 วันที่ผ่านมา

      I think I did look for 74AHCT parts and didn't see the ones I needed. It really is annoying that GALs don't guarantee more than 2.4V as the output high.

  • @asmi06
    @asmi06 20 วันที่ผ่านมา

    I also like building things, which is why I now design and assemble PCBs with FPGAs 😁 The difference of course is those boards are much more complex, have 6, 8 or even 10 layers, contain big and small BGAs, so instead of messing with a ton of logic chips, I have to deal with high-speed signals like HDMI or 10G Ethernet, DDRx memory interfaces, delay matching, controlled impedance and all that fun stuff. I did learn all of it myself over time without any formal education, so it's absolutely possible to figure all of this out if willingness and persistence is there. As for your arguments against FPGAs, of course none of them (except for "(not) having fun" - this one is subjective) hold any water as FPGA design is simulation, simulation, simulation, and only after than testing it on a real hardware - and of course you have full access to every single signal during simulation. Because of extensive use of simulation, testing/debugging designs on the actual real hardware usually doesn't take much time, and some vendors provide IPs which allow you to "see" any internal signal - just like having a logic analyzer with physical circuits - over JTAG connection. To me the best part about FPGAs is their flexibility, when the same physical board with the same FPGA can be a video-card on one day, a CPU on another, a network switch on yet another, or an entire computer system with CPU, RAM, video card and a bunch of peripherals on yet some other day. Sometimes I get bored of a project in-progress, so I set in aside and work on another one, and then return back to the first one when inspiration strikes again.

    • @davehohacks
      @davehohacks 19 วันที่ผ่านมา

      I'm definitely planning to return to FPGAs in the future, and I am confident that simulation will help tremendously.

  • @RelayComputer
    @RelayComputer 23 วันที่ผ่านมา

    You still have to present the circuit that generates pixels based on character and character font, so maybe that will answer my question. However, based on this video alone, I wonder if you really need to go down to single pixel counters for the HSync signal. If the character width is always 8, I wonder if it would make sense to work in chunks of 8 bits (or 1 byte) at 1/8 the frequency for all the internal circuitry including the horizontal counters. Then use a shift register or other appropriate means to split the individual bits at the full pixel frequency just before applying color data to the VGA signal.

    • @davehohacks
      @davehohacks 22 วันที่ผ่านมา

      It's very possible that parts of the design could be clocked at a lower frequency than the dot clock, although I haven't really considered doing that. If it allowed more of the hardware to work with 74HC/HCT parts rather than AC/ACT, that would be a significant advantage.

    • @RelayComputer
      @RelayComputer 22 วันที่ผ่านมา

      @@davehohacks I was mostly thinking about possibly less components, but that's just an intuition. That would need to be assessed...

    • @davehohacks
      @davehohacks 22 วันที่ผ่านมา

      @@RelayComputer That makes sense. Having to use fewer counter bits would be nice.

  • @ChipperClipper1
    @ChipperClipper1 27 วันที่ผ่านมา

    You're really smart and this is a well put together video. I wonder if you could create a dumbed down version of this video to appeal to a wider audience.

    • @davehohacks
      @davehohacks 26 วันที่ผ่านมา

      If you go way back on my channel to the early videos in the 8-bit computer series, there are some videos that go into more of the basics of address and data busses, bus control signals, etc. The nice thing about dual port static RAM is that it works exactly the same way as "normal" single-port static RAM, you just get two independent interfaces. Static RAM is very easy to interface. Also, definitely check out Ben Eater's videos on building a 6502 system if you haven't already. He does an amazing job of explaining things.

  • @thorpejsf
    @thorpejsf 29 วันที่ผ่านมา

    Dave, this is pretty cool! I've designed something similar for my 6809-based home-brew machine. Mine has 16 inputs, and uses some logic in a GAL to select between the two priority encoders and some other other handshaking because I also implemented auto-vectoring in mine, whereby the interrupt controller places the address of the IRQ table slot that holds the highest-priority handler address directly on the address bus when the CPU fetches the IRQ vector (sort of like Interrupt Mode 2 on the Z80).

    • @davehohacks
      @davehohacks 29 วันที่ผ่านมา

      Wow, that's hard core! It wouldn't have occurred to me that auto-vectoring is possible on the 6809.

    • @thorpejsf
      @thorpejsf 29 วันที่ผ่านมา

      @@davehohacks Yah, you can determine when the CPU is fetching the IRQ vector by decoding BA, BS, and A1-A3. My ABUSSEL GAL uses that plus an additional signal from my interrupt controller to decide if the CPU or the interrupt controller gets to drive the address bus. (Eventually, ABUSSEL might also let a DMA controller drive the address bus, but that's pretty far off in the future.)

  • @RayBellis
    @RayBellis หลายเดือนก่อน

    I'm glad to see my suggestion for sending the VIS signal into the multiplexor's E line worked! :D

    • @davehohacks
      @davehohacks หลายเดือนก่อน

      Thank you for pointing it out! Always nice to reduce the part count.

  • @cbmeeks
    @cbmeeks หลายเดือนก่อน

    I need some of that wire. Do you remember what gauge it was? I have wire-wrap wire but it's way too thin for soldering (at least a lot of soldering).

    • @davehohacks
      @davehohacks หลายเดือนก่อน

      If you search for "UL1423" on AliExpress, there's a listing from a vendor "FreeBoom". I ordered the 26 AWG variant. I'm not sure if it's really 26 AWG, but it's definitely thicker than normal 30 AWG wire wrap wire. I've found it to be excellent for point-to-point wiring on protoboards.

    • @cbmeeks
      @cbmeeks หลายเดือนก่อน

      @@davehohacks Thanks!

  • @thorpejsf
    @thorpejsf หลายเดือนก่อน

    This is good stuff, Dave! Following this one with interest!

    • @davehohacks
      @davehohacks หลายเดือนก่อน

      Thank you!

  • @sergatmel8242
    @sergatmel8242 หลายเดือนก่อน

    I'm watching this project with interest. Thank you.

    • @davehohacks
      @davehohacks หลายเดือนก่อน

      Glad you're enjoying it!

  • @AppliedCryogenics
    @AppliedCryogenics หลายเดือนก่อน

    I haven't checked yet of course, but have been wondering if the 6309 bus cycle in my project leaves enough idle time to externally access the fast system SRAM without having to slow the bus clock down from 3.57MHz..

    • @davehohacks
      @davehohacks หลายเดือนก่อน

      I guess when E is high the 6309 isn't accessing memory, so maybe your external device could sneak in then?

  • @DirkJMartens
    @DirkJMartens หลายเดือนก่อน

    Very interested in the VGA card. Especially how you will interface the software with the hardware.

    • @davehohacks
      @davehohacks หลายเดือนก่อน

      I think the software should be fairly straightforward. The only real complexity will be the bank switching, so the software routines will need to set the bank depending on which character or attribute they need to access.

  • @DirkJMartens
    @DirkJMartens หลายเดือนก่อน

    I dont think this was wire wrapped. If i understood Dave well, he used wirewrap-style wire and did P2P soldering. Real wirewrapping would be actually be faster. I wirewrap a 100mmx160mm eurocard-sized pcb with 20 or so ICs in 6 to 8 hrs.

    • @davehohacks
      @davehohacks หลายเดือนก่อน

      Yes, this is just point-to-point soldering. I have done some wire-wrapping in the past. My only real objection is that wire wrap sockets are expensive.

  • @AjinkyaMahajan
    @AjinkyaMahajan หลายเดือนก่อน

    You Seriously did wire-wrap those ICs. Hats off to your patience

    • @davehohacks
      @davehohacks หลายเดือนก่อน

      I find point-to-point soldering to be therapeutic somehow.

  • @cbmeeks
    @cbmeeks หลายเดือนก่อน

    I really loved this video! Do you know if the galasm will work with the ATF15XX CPLD's? I assume not since CPLD's area much higher level than "simple" GAL's.

    • @davehohacks
      @davehohacks หลายเดือนก่อน

      Thanks! I think GALAsm only supports the Lattice GAL devices (16V8, 22V10, 20RA10) and compatible devices (like the ATF22V10.)

  • @TomaTLAB
    @TomaTLAB หลายเดือนก่อน

    With this simple DAC you get the "light" colors instead of "bright" ones. See, if intensity bit is set it mixes to all three chanels independent of it's states. You get i.e. 0x3FFF3F (light green) instead of 0x00FF00 (bright green). For CGA colors you need to use all 6 bit of DAC inputs with some "palette" logic, or open-collector/tristate outputs with some diode-logic :) And don't foget the IBM's brown :)

    • @davehohacks
      @davehohacks หลายเดือนก่อน

      Right, the intensity bit gets added to all of the color component values, so it de-saturates the color. I believe that this is how the CGA text-mode colors worked, aside from brown being a special case. I might revisit the DAC at some point if I'm not satisfied with how the colors look (e.g., if there isn't enough contrast between the non-intense and intense colors.)

    • @TomaTLAB
      @TomaTLAB หลายเดือนก่อน

      @@davehohacks In fact, this simple palette looks quite attractive. Especially if you adjust DAC network alittle, if necessary.

    • @davehohacks
      @davehohacks หลายเดือนก่อน

      @@TomaTLAB We'll see how it looks once I (hopefully) get some characters displayed.

  • @jonathan12589
    @jonathan12589 หลายเดือนก่อน

    Great work me and your son are friends, your a smart man

    • @davehohacks
      @davehohacks หลายเดือนก่อน

      Wow, thank you!

  • @Iloverealmusic
    @Iloverealmusic หลายเดือนก่อน

    good work dad👍

  • @m1geo
    @m1geo หลายเดือนก่อน

    Cool project! Subscribed.

    • @davehohacks
      @davehohacks หลายเดือนก่อน

      Thank you!

  • @helldog3105
    @helldog3105 หลายเดือนก่อน

    I really enjoy and I am curious about projects like this. The clock generated at 25.etc MHz specifically generates a 640x480 resolution pixel image. With 256 colors displayed on screen this would be considered similar to what was called SVGA, correct? If the clock can generate a 640x480 image, can it do lower resolutions like the more common 320x240, or 320x200? I know nothing of how any of this works. I would assume that the clock set at 25MHz would be insufficient to drive a higher resolution due to the amount of speed required to draw the vertical columns and the horizontal lines. Also, since I have no knowledge or experience with this sort of things, does the clock factor in on the number of colors that are displayed? I recognize that you have something that generates color, and will later generate pixels and colored pixels, but does that require its own clock generator, or is that tied into the 25MHz clock? Apologies if these are all stupid questions. I am just really curious how all of this works. Science and technology are so fascinating.

    • @davehohacks
      @davehohacks หลายเดือนก่อน

      Color in VGA is analog: each color component (red/green/blue) is indicated by an analog voltage between 0V and 0.7V. So, there isn't really any inherent limitation on the number of colors, but from a practical standpoint, there needs to be a binary number specifying the pixel color, so the number of bits you dedicate to each pixel will determine how many distinct colors can be displayed. Regarding resolution, there are standardized timings for various modes (the website tinyvga.com is a good reference.) I believe that some of the lower-resolution modes like 320x240 are generated by making each pixel wider (e.g., two clocks rather than 1), and then doubling each scan line.

  • @RayBellis
    @RayBellis หลายเดือนก่อน

    In the final output stage why use a second 74ACT157 to blank the output when the ~VIS signal could be fed (inverted) to the ~E input of the first '157? When ~E goes high all of the outputs go low, which is AFAICS exactly the behaviour you need.

    • @davehohacks
      @davehohacks หลายเดือนก่อน

      That is a really good idea!