daveho hacks
daveho hacks
  • 55
  • 95 711

วีดีโอ

Hardware VGA, Episode 03 (Alternate, no background music): Readout module
มุมมอง 4404 หลายเดือนก่อน
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.3K4 หลายเดือนก่อน
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.3K4 หลายเดือนก่อน
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.5K4 หลายเดือนก่อน
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
มุมมอง 9K5 หลายเดือนก่อน
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.1Kปีที่แล้ว
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
มุมมอง 742ปีที่แล้ว
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
มุมมอง 432ปีที่แล้ว
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
มุมมอง 296ปีที่แล้ว
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.6Kปีที่แล้ว
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.1K2 ปีที่แล้ว
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
มุมมอง 1792 ปีที่แล้ว
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
มุมมอง 2832 ปีที่แล้ว
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
มุมมอง 3652 ปีที่แล้ว
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
มุมมอง 8912 ปีที่แล้ว
DIY 8-bit computer, Episode 1B: DIsplay controller pipelining & block RAM
DIY 8-bit computer, Episode 1A: DIsplay controller host interface
มุมมอง 1.1K2 ปีที่แล้ว
DIY 8-bit computer, Episode 1A: DIsplay controller host interface
DIY 8-bit computer, Episode 19: Interrupt and keyboard controller PCB
มุมมอง 1.4K3 ปีที่แล้ว
DIY 8-bit computer, Episode 19: Interrupt and keyboard controller PCB
DIY 8-bit computer, Episode 18: Memory & peripheral PCB
มุมมอง 1.2K3 ปีที่แล้ว
DIY 8-bit computer, Episode 18: Memory & peripheral PCB
PC Tech, Episode 01: How I fixed my lab PC for (fairly) cheap
มุมมอง 2143 ปีที่แล้ว
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.2K3 ปีที่แล้ว
DIY 8-bit computer, Episode 17: Fixed CPU/glue logic PCBs
Random stuff, Episode 09: Ultimate breadboard hex displays
มุมมอง 4693 ปีที่แล้ว
Random stuff, Episode 09: Ultimate breadboard hex displays
Random Stuff, Episode 8: A trip to Skycraft Surplus
มุมมอง 5903 ปีที่แล้ว
Random Stuff, Episode 8: A trip to Skycraft Surplus
DIY 8-bit computer, Episode 16: CPU and glue logic PCB, and a name
มุมมอง 3.2K3 ปีที่แล้ว
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.2K3 ปีที่แล้ว
DIY 8-bit computer, Episode 15: Display options & FPGA experiments
DIY 8-bit computer, Episode 14: Enclosure planning & frame
มุมมอง 7443 ปีที่แล้ว
DIY 8-bit computer, Episode 14: Enclosure planning & frame
Random Stuff, Episode 07: Slightly better hex displays
มุมมอง 4853 ปีที่แล้ว
Random Stuff, Episode 07: Slightly better hex displays
Random Stuff, Episode 06: Breadboard hex displays
มุมมอง 5213 ปีที่แล้ว
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.6K3 ปีที่แล้ว
DIY audio amplifier, Episode 03: Preamp & finale

ความคิดเห็น

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

    Did you end up using your FPGA video or the TI chip?

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

      Neither! I built a VGA text display using GALs and dual port static RAM. Long term I probably will go with the FPGA approach. I have a design that is partially working, I just need to finish it.

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

      @@davehohacks It's something that I am interested in doing but I don't understand how to program gals and pals, every time I have gone looking for the software to do it I have struck legacy windows 3 apps which simply don't want to run. So the FPFA is probably the best way, I would like to be able to use it with a 68K, the idea was instead of having a ROM which the characters were hard coded into that at boot time the character data would be copied into RAM from ROM then the ROM left as a backup or paged out so that you could effectively have user defined graphics and custom fonts easily, these would be copied as required from the UDG ram to a frame buffer and then the frame buffer rendered using the VGA circuitry - what do you think?

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

      @@chassecourt8824 GALs are actually not too bad to work with. To assemble the logic equations I use a program called "GALAsm", and the recent Xgecu programmers like the T48 can program the actual GAL devices, including the opensource minipro software. Going with an FPGA is likely to be the most straightforward option, though. My recommendation (based on personal experience) is to start with the simplest approach that will give you a usable display, and then once that's working, expand the feature set. Pretty much anything is possible with an FPGA if you know what you're doing. Simulating your design is highly recommended. Check out @JohnsBasement, he has a really good series on Verilog, including how to implement test benches.

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

    Very interesting. Maybe a bit late in the day, but might I point you at DrMattRegan www.youtube.com/@DrMattRegan/videos He's made up both VGA and Composite video systems for 8 bit machines using very simple TTL and an EPROM. The 'Magic' is in running a Finite State Machine to generate the raster and fetch the data from memory, while Clock-Sharing the RAM between CPU and Video - CPU as the clock goes up and Video as it goes down. So no contention, no slow down, no need for dual-ported RAM.

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

    The litany of FPGA designers is "simulate-simulate-simulate". You would've found and fixed all issues in a fraction of time if you'd use simulations.

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

      Yes. I actually learned how to write Verilog simulations this summer. I have a good chunk of a Verilog version of the display controller implemented now.

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

    You'd be surprised to find out that DVI and HDMI work almost exactly the same as VGA, because hardware folks hate change @

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

      Good to know! I will have to investigate at some point.

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

      @davehohacks Up until DAC it's all the same (sync signals, active/porch, etc). Then instead of sending signals to DAC, DVI/HDMI (the former is a subset of the latter) does some encoding of data (packing 24 bit of color and sync signals) into 10 bit symbols, and then transmits those symbols serially over 3 data channels along with a pixel clock.

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

      @@asmi06 That makes sense!

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

    great teacher, thank you, im french sorry my english

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

      Glad you enjoyed the video!

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

    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 4 หลายเดือนก่อน

      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 4 หลายเดือนก่อน

    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 4 หลายเดือนก่อน

      @@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 4 หลายเดือนก่อน

    i love you sir

    • @joshc-dev
      @joshc-dev 4 หลายเดือนก่อน

      keep going!

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

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

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

    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 4 หลายเดือนก่อน

      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 4 หลายเดือนก่อน

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

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

    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 4 หลายเดือนก่อน

      No problem!

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

    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 4 หลายเดือนก่อน

    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 4 หลายเดือนก่อน

    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 4 หลายเดือนก่อน

    Music is bad. Remove it please.

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

    zelda dlc over vga is crazy

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

      Tears of the Kingdom is an incredible game. I regret nothing :-)

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

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

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

      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 4 หลายเดือนก่อน

      @@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 4 หลายเดือนก่อน

    Awesome progress, Dave. Very impressive!

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

      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 4 หลายเดือนก่อน

      @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 4 หลายเดือนก่อน

      @@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 4 หลายเดือนก่อน

    just after the shooting the cat got a mild punishment ,

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

      He was just doing some robustness testing 🙂

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

      @@davehohacks :))

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

    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 4 หลายเดือนก่อน

      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 4 หลายเดือนก่อน

      @@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 4 หลายเดือนก่อน

      @@TMITLT I'll keep that in mind!

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

    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 4 หลายเดือนก่อน

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

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

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

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

      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 4 หลายเดือนก่อน

      @@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 4 หลายเดือนก่อน

    Thanks, very interesting !

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

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

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

      Good point.

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

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

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

    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 4 หลายเดือนก่อน

      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 4 หลายเดือนก่อน

    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 4 หลายเดือนก่อน

      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 4 หลายเดือนก่อน

    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 4 หลายเดือนก่อน

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

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

    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 4 หลายเดือนก่อน

    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 4 หลายเดือนก่อน

      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 4 หลายเดือนก่อน

      @@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 4 หลายเดือนก่อน

      @@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 4 หลายเดือนก่อน

    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 4 หลายเดือนก่อน

      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 4 หลายเดือนก่อน

    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 4 หลายเดือนก่อน

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

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

    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 4 หลายเดือนก่อน

      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 4 หลายเดือนก่อน

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

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

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

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

    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 4 หลายเดือนก่อน

      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 5 หลายเดือนก่อน

    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 5 หลายเดือนก่อน

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

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

      @@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 5 หลายเดือนก่อน

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

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

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

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

    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 5 หลายเดือนก่อน

      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 5 หลายเดือนก่อน

      @@davehohacks Thanks!

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

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

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

      Thank you!

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

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

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

      Glad you're enjoying it!

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

    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 5 หลายเดือนก่อน

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

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

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

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

      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 5 หลายเดือนก่อน

    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 5 หลายเดือนก่อน

      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 5 หลายเดือนก่อน

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

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

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

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

    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 5 หลายเดือนก่อน

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