Тёмный

VIC 20 build. Raster generator HSYNC and VSYNC 

DrMattRegan
Подписаться 11 тыс.
Просмотров 3,8 тыс.
50% 1

We start the build of the raster generator.
Part 1: CPU - • VIC-20 Build from a br...
Part 2: Raster generator - • VIC 20 build. Raster ...
The schematic for this part of the build and the code to generate the EPROMs are available on GitHub
github.com/Tur...

Опубликовано:

 

21 окт 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 63   
@BalugaWhale37
@BalugaWhale37 3 дня назад
I now understand why FPGAs, like the Lattice ICE40, are made up of Look Up Tables (LUT) and Flip Flops. They have placed the EEPROM and the Flops into a single ASIC. With that architecture, they can generate any kind of combinational logic. Thanks for building this VIC-20 video generator.
@DrMattRegan
@DrMattRegan 2 дня назад
Yes, a look-up table with a flip-flop lets you make a finite state machine. Add a memory (with the appropriate addressing system) and you have a Turing complete machine that can execute any computable function.!
@laser-sj
@laser-sj 4 дня назад
Nice work. I have recreated some 80s video games using off the shelf TTL and am now converting one of thrm to directly use VGA rather than use an external upscaler.
@DrMattRegan
@DrMattRegan 4 дня назад
Great. VGA is pretty simple to use. It’s essentially 2x NTSC.
@FlyGamingChannel
@FlyGamingChannel 4 дня назад
Thank you again for your amazing content. I’ve been really looking forward to this series continuing.
@DrMattRegan
@DrMattRegan 4 дня назад
Glad you enjoy it!
@alanclarke4646
@alanclarke4646 3 дня назад
This an excellent series, Matt. I'm definitely looking forward to the next episode. 😁
@DrMattRegan
@DrMattRegan 3 дня назад
Awesome, thank you!
@Kabodanki
@Kabodanki 4 дня назад
Thank you for what you are doing, I'm learning at lot, together with my nephew we are building our own little micro
@DrMattRegan
@DrMattRegan 4 дня назад
Great. Let us know how you go with it!
@GrandpasPlace
@GrandpasPlace 4 дня назад
Thank you, this was well explained and wonderfully presented. I look forward to the next one.
@DrMattRegan
@DrMattRegan 3 дня назад
Glad it was helpful!
@The65c02
@The65c02 4 дня назад
Great video showing your excellent design.
@DrMattRegan
@DrMattRegan 3 дня назад
Thank you very much!
@NuritLeemow
@NuritLeemow 3 дня назад
Amazing content, thanks! Interesting thoughts on the upcoming market changes! If you want to explore further, more information is available in my bio. Looking forward to your next video!
@DrMattRegan
@DrMattRegan 3 дня назад
@@NuritLeemow welcome. Will have a look!
@SomeMorganSomewhere
@SomeMorganSomewhere День назад
@@DrMattRegan pretty sure that's a bot ;)
@envenomator
@envenomator 4 дня назад
Awesome video; thanks a lot!
@DrMattRegan
@DrMattRegan 3 дня назад
Glad you liked it!
@_wave64_
@_wave64_ 4 дня назад
19:25 I'm going to declare VICtory
@DrMattRegan
@DrMattRegan 3 дня назад
Ha ha, yes. 👍
@gomberfu
@gomberfu 4 дня назад
So cool, thank you so much
@DrMattRegan
@DrMattRegan 4 дня назад
No problem, enjoy!
@jacobturner774
@jacobturner774 3 дня назад
Very very awesome use of Eproms to replace combinational logic or act as combinational logic! I read in Don Lancaster's TTL cookbook that this was done to replace a lot of complex circuits or that a circuit can be designed in an Eprom! However I know I commented on your last video of this build with me asking for a TV typewriter build but I wanted to specify further! I know it can be quite challenging to find all original parts so I was thinking what if you could get to as close to the original parts as possible and then build it? For example I know they no longer make a signetics 2513 character generator but I'm sure that can be replaced with a ROM of some sort. The machine also used shift register memory to hold a letter in a sort of factory assembly line fashion to be able to make sure that letters were not only not lost but also that they were fed to the screen in the correct order in which the registers received them. But if you can't get close to the original that's okay too! It's definitely worth the watch and further education within computer science! Great video and thank you!!
@DrMattRegan
@DrMattRegan 3 дня назад
Thanks for the feedback. The TV typewriter certainly was an interesting design. It was in fact from the TRS-80 model 2 technical manual that i first learned about raster generators. I personally have tended to shy away from exact replicas. I find the danger with building something from a schematic is that you can build it and get it to work, while missing some of the finer points of it's function. I prefer to "put it in my own words" so to speak. The one machine i would like to build as an exact replica for nostalgia's sake is the Datapoint 2200 version 2. I think this was such an important machine that history seems to have largely forgotten about.
@jacobturner774
@jacobturner774 3 дня назад
@@DrMattRegan definitely understandable! Even getting close enough would be amazing to see! I imagine it would take quite a while and in some cases more than it could be worth to try and make a full replica as admittedly I wouldn't want to do an exact copy either as it makes me feel very empty and that all in all it was fun to make but it doesn't exactly have a "touch of my own" so to speak. So I get where you are coming from when you say your own words! So that's why I'd probably come up with a design at some point to do the same thing as a TV typewriter would but not make it EXACTLY like Don Lancaster's design.
@SomeMorganSomewhere
@SomeMorganSomewhere День назад
The chargens are basically just mask programmed ROMs there's projects around the place which allow you to replace them with an appropriately programmed 2x16 (E)EPROM, search 2513 chargen EPROM or similar and and you'll find them. The shift registers are harder, IIRC they were a bit of an odd duck, though it shouldn't be TOO hard to replace them with something more modern (or you can chance buying originals at horridly expensive prices, which may or may not work from the usual suspects).
@LanceHall
@LanceHall 3 дня назад
The most important concept of the 19th century might be... logic gates
@DrMattRegan
@DrMattRegan 3 дня назад
And I think one of the most important concepts of the 20th century is Turing Machines, which is where I’ll that this series!
@_Agent_86
@_Agent_86 3 дня назад
It’s really hard to tell what you’re doing with the point to point soldering the way you have it sped up. I’d love to see at least a portion of it at normal speed so I could understand and try this method out. Great project and I’m looking forward to next instalment!
@DrMattRegan
@DrMattRegan 3 дня назад
No problems, i can show a couple slowly. I've previously done videos with long builds and people tend to skip over them. The purpose is really to give a sense of progress moving forward, but i'm happy to include some slower clips.
@SomeMorganSomewhere
@SomeMorganSomewhere День назад
FWIW the schematic you posted on github for part 2 doesn't have the part numbers for U25 and U28 shown.
@leechatt9709
@leechatt9709 3 дня назад
Another awesome video. Look forward to experimenting with this. I always find the massive border's ugly. How in logic could you say stretch the images width or height? 🤔 I suppose in code we can scale the image for a certain screen size and get the best fit. But wouldn't it be great to have to rotary controls where you stretch vertically and Horizontally🤐
@DrMattRegan
@DrMattRegan 2 дня назад
Thank for that. We can actually make the active area as big as we want by changing parameters. The monitor i use though wants a blank period around HSYNC of the colours doen't work properly, but it can be pretty small.
@gilbertojunqueira314
@gilbertojunqueira314 4 дня назад
I think it could be using one 74hc4040 instead of three 74hc161. 74hc4040 is a 12-bit counter and has all the outputs (Q0 - Q12)
@DrMattRegan
@DrMattRegan 3 дня назад
That was actually Ben Eater’s design with the multiple 74ls161s, but thanks for the suggestion.
@zenithparsec
@zenithparsec 3 дня назад
have you done wire wrapping for circuit prototyping? I've tried it after it was suggested on a robot combat related project. it's quite fast and easy to undo stuff if you make a mistake.
@DrMattRegan
@DrMattRegan 3 дня назад
I did use wire-wrapping many years back, but when i was younger, the sockets were too expensive for my self funded projects. Now i'm just use to doing point to point wiring. I have thought of doing a video where i compare myself at the two techniques (and maybe bread board as well).
@SomeMorganSomewhere
@SomeMorganSomewhere День назад
@@DrMattRegan yeah, sadly wirewrap sockets are pretty spendy these days :(
@EricStringer
@EricStringer 3 дня назад
I point-to-point wire myself.
@DrMattRegan
@DrMattRegan 3 дня назад
Cools, what technique do you use for the insulation? Cut to size, stretch the wire and move, or burn through?
@EricStringer
@EricStringer 3 дня назад
@@DrMattRegan I use a wire stripper, normally strip one end of the wire on the spool, solder at the start point, and cut/strip at the next point. or I will Measure, cut, and strip both ends. I want to add a great video, I have been working on a Z80 build. The next project is to do some type of video output and have a bunch of old video chips that I may try to use. But a few years back Ben Eater's video and videos like yours on generating a VGA signal with EPROMs over having to use a stander Video output on my list to look into. I do not go into a lot of video production quality, but he is a point-to-point wired Z80 board and demo test of the board. Since that video made a PCB for the whole system, programming board, and Z80 board. ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-c3qlp9yG5nc.html
@DrMattRegan
@DrMattRegan 2 дня назад
Cool, i had a look at your video, have you done one on setting up and using sdcc?
@moshly64
@moshly64 2 дня назад
The schematic has U17 pins 11 & 12 connected to RA0 ? shouldn't it be RA3 ?
@DrMattRegan
@DrMattRegan 2 дня назад
Well spotted. It should be RA3, and pin 10 should be CA3. Looks like i relabeled the wrong pin. Thanks for that.
@SirKenchalot
@SirKenchalot 4 дня назад
Were EEPROMs too expensive for 8 bit computers to generate video this way back in the 70s and 80s as it seems to be a cimple way to avoid complex custom chipsets?
@briancampbell179
@briancampbell179 4 дня назад
They were relatively expensive and more importantly, smaller. I designed and built a video card for my SYM-1 computer as my final year electrical engineering project. Admittedly, I didn’t think of using EPROMs at the time, but they were only 4K in those days, so I would have needed 16 to do the job of one today. Instead, I used the 6845 CRT chip that had all the counters and generated the sync pulses. As an aside, back in those days, computers needed serial Video Display Units. What was then called the Software VDU where the video memory was mapped into the CPU memory as the VIC-20 and other computers had was new. My video card did both. It’s video memory was directly accessible to the CPU but it also had a serial port and onboard processor so it could act as a serial VDU simultaneously.
@DrMattRegan
@DrMattRegan 3 дня назад
Yeah, the best solution at the time was custom logic, which is what they did. The main reason I use them is to 1 minimize wiring and 2 demonstrate finite state machines which I’ll eventually use to replace the 6502
@AndyGraceMedia
@AndyGraceMedia 3 дня назад
EEPROMs were horrendously expensive and weren't widely available until the late 80s. Regular UV erasable PROMs were available from the late 70s but 1k (2708/2508) and 2k bytes (2516/2716) only. By the early-mid 80s, the 2764 - 27256 (8k - 32k) were available and quite usable as combinatorial logic devices - but not on the scale of what Matt's doing here with those half Megabyte parts. Mask-programmable ROMs and fusible link PROMs were used in manufactured devices, but on a huge scale it was cheaper to create custom ICs. The intermediate option was the ULA common in the mid 80s too - Uncommitted Logic Arrays - which offered a bunch of standard logic gates which could be effectively blown at the factory to create the required circuit.
@DrMattRegan
@DrMattRegan 2 дня назад
Correct, sometimes they also allowed different metal masks for the top layer of the ULA, which effectively allowed different connections. At NVidia, when i was there we still relied pretty heavily on fuses.
@bobweiram6321
@bobweiram6321 3 дня назад
On 10:48, you circle the screen refresh rate and vertical refresh, but not horizontal refresh rate. Is this an error?
@DrMattRegan
@DrMattRegan 3 дня назад
Hmm, i circle horizontal then vertical but not at the same time. Thanks for the feedback though.
@bobweiram6321
@bobweiram6321 3 дня назад
⁠​⁠Oops. I think I confused you. At 10:35 on the VGA timing web page, you mention horizontal sync rate, but you have vertical refresh circled in red. ⭕️ There's no horizontal anywhere on the page.
@DrMattRegan
@DrMattRegan 2 дня назад
You are right, i think there is a mistake on the TinyVGA website, www.tinyvga.com/vga-timing/640x480@60Hz Screen refresh rate is the VSYNC rate (60Hz) What is labeled "Vertical Refresh 31.46875 kHz" is actually the HSYNC rate. Well spotted.
@Malcrom1967
@Malcrom1967 2 дня назад
Where do you get your perf boards?
@DrMattRegan
@DrMattRegan 2 дня назад
Ebay, but the originate in China.
@Malcrom1967
@Malcrom1967 2 дня назад
@@DrMattRegan Could you post a link, please?
@DrMattRegan
@DrMattRegan 2 дня назад
The ebay seller i used is called royal2016888 but it looks like they are out of stock. If you search for "perfboard 30cm" there are some available.
@ianbuxton525
@ianbuxton525 День назад
Great Video, Thank you. This is a clever way of replicating functionality without resorting to more complex solutions. I will be interested to see you try it out with some of the more demanding Vic20 software e.g. Expanded screen games like Star Defence ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-ymJ4r0VslnY.html and Bongo ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-VGGzSkBFfmA.html
@DrMattRegan
@DrMattRegan День назад
Thanks for the feedback. They are good examples. From a screen resolution perspective, i can probably handle 16-32 different combinations of x and y already because the EPROM size. I'm undecided about handling the scroll down/up left/right (at least in this version of the machine), i could do it with some extra hardware, just have to decide whether the benefit is worth the extra cost. (Might save scrolling for the C64)
@ianbuxton525
@ianbuxton525 День назад
@@DrMattRegan Please do it for the VIC20, I am really interested to see how far you can push the compatibility. It is a quirky computer but it is The Friendly Computer. Even William Shatner said so.
@AndyGraceMedia
@AndyGraceMedia 3 дня назад
You prototyped your own VIC20 memory expansion card as a kid too? hahah! My goodness!! You rock Dr Matt! This is the best comp-eng content anywhere on RU-vid. I see your subs are increasing nicely - I think you have a seriously popular and profitable channel in the making here. You certainly deserve it because it's easy see the extraordinary amount of work that goes into it. Brilliant. The next generation of comp-sci/engies have an amazing resource.
@DrMattRegan
@DrMattRegan 3 дня назад
Thanks Andy. Yep, some 6116 SRAMs from Dick Smiths and a perf board from Tandy that had an edge connector that fit into a VIC-20. Was good for the cartridge games. I really appreciate the feedback. I do want to create a resource that helps the self taught and those going through the education system. Particularly with the link between theoretical CS (which is badly taught IMHO) and computer architecture.
Далее
VIC-20 Build from a breadboard 6502
16:39
Просмотров 16 тыс.
ZX Spectrum build video circuit.
19:44
Просмотров 12 тыс.
1 Subscriber = 1 Penny
00:17
Просмотров 52 млн
Handsoms😍💕
00:15
Просмотров 4,8 млн
DIY Laser Image Projector (100ft+ Range!)
20:08
Просмотров 395 тыс.
ZX Spectrum DRAM timing explained.
13:31
Просмотров 6 тыс.
Attempting to restore the world's first Ethernet bridge
25:37
16K ZX81 vs 16K ZX Spectrum
19:22
Просмотров 8 тыс.
VGA ZX Spectrum - Schematic
14:18
Просмотров 6 тыс.
Switches to CPUs: Relay based logic
8:55
Просмотров 2,2 тыс.