VIC 20 build. Colour

แชร์
ฝัง
  • เผยแพร่เมื่อ 25 ธ.ค. 2024

ความคิดเห็น • 82

  • @GadgetUK164
    @GadgetUK164 หลายเดือนก่อน +10

    Brilliant series!!! Love to see how you approach each part of this!

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

      @@GadgetUK164 glad you like it 👍

  • @cryptocsguy9282
    @cryptocsguy9282 หลายเดือนก่อน +1

    This is a great 👍🏾 watch , it's interesting that different resistor values help create some of the different colour shades, I didn't know that

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

      Thanks for watching!

  • @Maurg1975-z7x
    @Maurg1975-z7x หลายเดือนก่อน +5

    The vic20 has been my very First computer. I am an electronic engineer and I enjoy these videos a lot! Thank you

    • @DrMattRegan
      @DrMattRegan  หลายเดือนก่อน +1

      Great to hear! I think these machines started many a career.

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

      Mine too, after the disastrous Atari VCS basic cartridge (we await the TTL version of that one, as its a very finicky one to program, introducing potential compatability issues 😢).
      Seeing what they doing with it these days, as far as graphics tricks, and games, I wish I hadn't upgraded so quickly to the Commodore 64. Hmm, I just realised, what if they had made the Vic chip colour bus 8 bits, and put a second 5KB left over chip on it, acting as a 16 bit bus, which would be enough for 80 Columns, and maybe 2 or more colour attributes per character? Technically, you could do a 128KB Vic this way.

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

      @@waynemorellini2110 I think the Commodore 64 pushed the limits of what text can be displayed with NTSC

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

      @DrMattRegan From memory the Ntsc line can get a disappointing 426 pixels. The Atari could get was it 384, 360? At 640, it could still displayed, but would be very fuzzy. The c128 can actually display 640 over composit in monochrome, believe it or not. I had believed that it was supposed to be very low, in the range of vhs, but this is probably a common manufacturer limitation, by some standard. But with such a VIC, you would go s-video if you had something that could support that resolution, such as with the c128, or component, or scart, or commodore 1084 monitor or vga. Except for some smooth games, I think it would be aimed for business or productivity through a monitor.

    • @DrMattRegan
      @DrMattRegan  หลายเดือนก่อน +1

      Yes, there is a difference between colour and B/W with NTSC. The apple 2 can display B/W with a dot clock of 7.16 MHz, which gives a total of 454 pixels, of which 280 are active. I haven't tried it, but the Apple IIe can have a dot clock of 14.318 MHz in 80 column monochrome mode, so there are some composite monitors that will display it, but i don't know what it looks like on a NTSC TV.

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

    Excellent video. So many tricks in there I could hardly keep up with how they all work. I'll need to watch it 10 times 🙂

    • @DrMattRegan
      @DrMattRegan  หลายเดือนก่อน +1

      Enjoy! Have a look around at some of the other series.

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

    Although I don't fully understand all of the technicalities, I'm really enjoying this series.

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

      Same

    • @DrMattRegan
      @DrMattRegan  หลายเดือนก่อน +1

      Stick at it. I've pitched different videos at different levels on the channel, so have a look around.

  • @Pikkey63
    @Pikkey63 หลายเดือนก่อน +1

    the Macgyver of the lost chips. I bow to such genius 🥰

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

    Wow just discovered this channel. Very technical but perfect explained.

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

      Keep at it, i have a simpler series which explains the logic in simpler terms.

  • @briancampbell179
    @briancampbell179 หลายเดือนก่อน +1

    Another great video.
    In all my years it never occurred to me to parallel a latch with memory to make a simple readable register. It proves that it’s never too late to learn new tricks. I think it will come in handy in the macro scale 6502 system I’m working on, either in the high speed microcode ROM or the 6532 RIOT.

    • @DrMattRegan
      @DrMattRegan  หลายเดือนก่อน +1

      Excellent, it was going to be a pain to multiplex all the latch outputs. I tend to think of them as being an external mirror of the contents of some desired SRAM cells.

    • @briancampbell179
      @briancampbell179 หลายเดือนก่อน +1

      @DrMattRegan , that's how I would have done it without this trick.
      The funny thing is that I have used the software equivalent of this trick in the system I developed for my wife's business, using a downloaded copy of a database table for reads and writing changes in parallel. The penny never dropped to do the same thing in hardware

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

    Genuinely excited when I saw this in my feed, watching now ❤

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

      Hope you enjoy it!

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

      @@DrMattRegan Yeah im watching to 🤗

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

    This vídeo is amazing to see, it feels like this is what the commander x16 should of been.

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

      Thanks for the feedback. I haven't watched all the commander x16 videos, but the ones i've watched seem to show what they've done rather than the details of how it works. That said, David Murray's channel is two orders of magnitude bigger than mine, so that seems a more popular approach.
      Personally, i like seeing the details and the design decisions (and the debug), which is why i make the videos this way. I want people to feel like they could design/build it themselves, rather than just showing what i've done.

    • @gilbertvera1678
      @gilbertvera1678 หลายเดือนก่อน +1

      @DrMattRegan he always said at the start that he wanted to build a modern vic 20 without the vic chip. What do i see here but the doc making a vic 20 without a vic chip
      What else would you call it ?

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

    Thank you, Dr. Matt. Great video as always. I love how a single bit was used to switch the display mode on a per character location basis. (I never had a VIC, so was relatively unaware of some details.)

    • @DrMattRegan
      @DrMattRegan  หลายเดือนก่อน +1

      Glad it was helpful! It's an interesting design. The VIC is a warm up for the VIC II.

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

    Thoroughly enjoying this series. Many thanks.
    I suspect you have your own plans, but if I might get in early with suggestions for future series might I suggest:
    Acorn System / Atom - another way to do a 6502 system based in a more modular architecture and 'OS'.
    Amstrad CPC - a Z80 system with cleverly designed video and memory using minimal logic. Thanks.
    Both are also CRTC - based, which might be interesting to explore via your state-machine designs.
    PPS:
    The Amstrad PCW might also be worth an explore - one way to make a functional Z80-based CP/M system with a surprisingly fast very high resolution screen in minimal logic. (Simplistically the display is a window in to a larger block of memory that can be moved about by updating registers rather than doing slow RAM copies)

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

      Thanks for the thoughts. I'm working on a new Spectrum series with a Turing Z80 and a Commodore 64, but i can look at other machines after that.

  • @pickoftheglitter
    @pickoftheglitter หลายเดือนก่อน +1

    Great series!!!! I'm waiting for the moment you will release a VIC replacement project on your github channel 😉

    • @DrMattRegan
      @DrMattRegan  หลายเดือนก่อน +1

      I'm thinking about it, but i'd need a reddit channel or some where to go for people who try to build it.

  • @zsaleeba
    @zsaleeba หลายเดือนก่อน +1

    I'm enjoying the series, Matt
    - Zik

    • @DrMattRegan
      @DrMattRegan  หลายเดือนก่อน +1

      Hey Zik, great to hear from you! Have you had a look at the Turing6502 series??

    • @zsaleeba
      @zsaleeba หลายเดือนก่อน +1

      @@DrMattRegan I only discovered your channel recently and I'm working through the back catalog. By the way I'm doing a retrocomputing project of my own - recreating a VAX-11/780. But I still have a long way to go.

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

      Sounds interesting. You should document it with videos as go along. Are you thinking of FPGAs or TTL?

  • @ostrov11
    @ostrov11 หลายเดือนก่อน +1

    Спасибо, отличный контент.

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

      Thanks for the feedback.

  • @supahfly_uk
    @supahfly_uk หลายเดือนก่อน +1

    Ooh this is good stuff ♥

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

      Glad you liked it!

  • @hraharahra
    @hraharahra หลายเดือนก่อน +1

    First! For the algo! Thank you for the awesome series!

    • @DrMattRegan
      @DrMattRegan  หลายเดือนก่อน +1

      Glad you like them!

  • @Randy-nb6fw
    @Randy-nb6fw หลายเดือนก่อน +1

    epic

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

    Again, just perfect. 👌

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

      Thanks again!

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

    Hi Matt. The vic row and column size registers are designed to go up to large numbers. There was previously efforts to make an 80 columns business machine, which were abandoned before efforts went into the Vic. The replacement VIC40 prototype even had a drop in compatible 40 column vic chip (it seems the new vichip and upgraded memory were the dufferences). Somebody tried one on a normal vic and adjusted the kernel to work with it. Is it possible to make it adjust resolution as you specify more rows and columns, and support progressive scan? This would make it possible to specify rows and columns that hit certain standard display resolutions of VGA and HDMI. Would be a great little present to neglected Vic fans, who could plug and hdmi adaptor into the vga port and put it on a regular TV, and poke a new resolution. Or even full Vic 40 vicchip compatibility? 😊
    (by the way, Atari pot controllers were cool).
    Anyway, a TTL miminalistic suggestion for you: the Vectrex, which had a computer keyboard add on, that was developed but not released before the collapse. So, that's out there somewhere. The people with the rights have been very accommodating, so might like to accommodate a ttl version, after seeing your work.

    • @DrMattRegan
      @DrMattRegan  หลายเดือนก่อน +1

      @@waynemorellini2110 thanks for the interest. I’ve been trying to decide what to do with respect to sizing. I can probably accommodate 16-32 different combinations of register settings. I may modify the raster generator FSM to take in the parameters during sync, but I’d probably need an external raster count register. I’ve been thinking about how to do smooth scrolling in the Commodore 64, I’ll experiment with that a little more.
      I’ll have a look at the Vectrex, but I don’t know much about it. - Looks like it uses the 6809, I’ve been tossing up whether to do a 6809 or 68000 first in the SAP format ie like the SAP6502.

    • @waynemorellini2110
      @waynemorellini2110 หลายเดือนก่อน +1

      @DrMattRegan You were looking at a Sinclair QL, which had a TTL Thor comparable computer with expanded functionality, which has expanded into a number of replacement boards and cards, and chips. The latest is a FPGA QL computer board about the size of an PI Zero, that plugs into the back as an accelerator and io expanded, but also can act as a stabd alone computer. So, there is a group of supported upgraded graphics modes and minor features, OS's, and GUI's. The guy QLJaguar, or QLvsJaguar, or the reversed names, has a repository on this stuff, and there are a couple more around, which links are on one of my broken systems. So, there are some simple improvements suitable for TTL, without getting into sprites. One, is a guy that modified the chip to get over 100 interpolated colour pallet, and 16 colour mode.
      As for the Vectrex, just a very basic system, plus vector monitor, which could be emulated on a TV, but dacs left for a laser or vector monitor. It also had an early 3D headset with spinning colour wheel. But, there are various colour vector monitirm emulator, screen and overlay out there. They tend to set the colour by the intensity of the beam driver setting. This makes old games colour automatically, pretty well. The Vectrex was quiet a buzz, especially projected ( I used to set up magnifying freezer lens sheets and play it on the ceiling). Somebody is doing a new laser console privately, but hasn't posted for a while. I was going to do one decades back, but abandoned the original laser proposal, and got too sick to pursue the volumetric 3D project, or with a misc processor (or Arm) and produce a cartridge to go into the original. But, there is a pitrex cart from Australia now. You might be the first person to hear about the volumetric 3D version I wanted to do. It would have been a game changer for the community.

    • @waynemorellini2110
      @waynemorellini2110 หลายเดือนก่อน +1

      By the way, if you are looking at doing an Commodore 64. The designer of the vic chips had a proposal for an 80 column follow up version of the 64, which he presented to Jack Trameil that got knocked back (as Jack was pursuing the 264 series, which ultimately also sealed the fate of the Vic). It was short sighted, as an expanded compatible 64 without the latter weirdness of the 128, could have made the system more sellable for years, longer, and into the small business and retail market, where 64's were sometimes used. It really only needed 80 column text mode with programmable graphics preferably, 16 sprites (like the PC engine) with 4+ unique colours at 320+. That's double the data rate, or two banks of memory to do. So close to being a machine that could still be sold as a simple terminal, and productivity machine with geos gui.
      Now, the designer seems to be still around, pursued the design of the chip, but couldn't find funding where they were located. So, he might have full spec sheets for an upgraded 80 column vic2 chip. Which, I suspect, going on his vic 1 and vic 40 upgrade, might be mostly 80 columns, double graphic resolution modes, and more sprites, which would be little difference in circuitry to the Vic2, but double frequency (he did say they showed the vic 2 could do this, I saw recently, and its the same thing I have been suggesting to people) plus a refinement and doubling of existing sprite circuitry, but with an increase in collision detection, unless its similar to the scheme I previously had). What people don't realise, is once you reach a certain level you are adequate for a range of games, at a certain screen size. The PC Engine, or its super turbo graphics show one step above adequate, and are good. The Amiga was also in this range. You really needed 256 colour pallete for screen and sprites to maximise those sort of 2D games above the super turbo graphics, and maybe am ARM. 512 width graphics look corse on a big screen, but not chunky like 256 or 320. 640-768 is good to still preserve that retro corse look. 4 colours per sprite and character is adequate. 640 resolution is good. The 80 column 64 could have been good to this day as a games machine.
      The c65 disclaimer. Even though its blitter and spec seems like an 1983 technology. It was years later through different engineers, and might bare little resemblance to the rejected c64 by the designer of the vic chips, mentioned above.

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

      I'll probably do a 68000 series first, i've been trying to decide which machine to test it with. The two main runners are the QL and the Mac. I'm not sure an Amiga can be done with through hole technology, although it can be done with an FPGA.

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

      I know many people want to expand/extend the original machines, but i do worry about losing software compatibility, which is why i haven't designed my own instruction set. For example the commander x16 is an interesting expansion of these systems, but i think using a modern era FPGA for video feels like putting a brand new computerized, fuel injected engine into a classic car.

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

    Nice one. Your circuit board is looking pretty complicated now, I'd hate to see the mess of wires behind that thing. You could use that extra color ROM space to create different palettes for the VIC by tying a register or even some DIP switches to some of the remaining address lines.

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

      Correct, there is plenty of space in the Colour EPROM, but it's still a simple solution.

  • @paulspark7287
    @paulspark7287 หลายเดือนก่อน +1

    Is there any chance of adding a BOM for each .pdf file please? There are a few unlabelled ICs on the schematic (e.g. U25, U28, U29, U31, U32, U23, U45, U46, U46., U48, U49, U50, U20). I could go back through the video and figure them out but I was just going to stock up on my 74xxx series to come back to this in the future.

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

      @@paulspark7287 I will at the end, but it’s a work in progress at the moment. Most of the chips are 74HC574s.

    • @paulspark7287
      @paulspark7287 หลายเดือนก่อน +1

      @@DrMattRegan I'll add a bunch of those to the shopping list. Thanks for the quick reply.

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

    Wow, this is amazing!
    How large would the circuit be if you didn't use the EPROMS, bit hard wired the complete circuit?

    • @DrMattRegan
      @DrMattRegan  หลายเดือนก่อน +1

      I built a more conventional video circuit in this video
      th-cam.com/video/qbzzzkNPICI/w-d-xo.html
      The EPROMs make i much easier, and i want to highlight that it's just a Finite State Machine.
      For the colour EPROM, it would probably take 8 74HC151s and a 74HC04. I haven't done the Karnaugh maps, so it might be simpler than that.

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

    Matt, I've made a few suggestions for TTL computers, but most computers are either too unsuported, like the Jupiter ACE (sinclair like), Mattel Aquarius, PCW, plus 4, or way too complex, like the Amiga, ST, Comodore 64. Mac or PC. But, the PC offers a rare opportunity. It is a minfeild of incompatabilities from different hardware, with direct hardware addressing of the hardware. But, there are certain hardware modes, input devices, video, sound and storage, that should most likely or always, be supported, which may be enough to maintain compatability with properly written hardware for a class of machine. CGA, is one such peice of hardware, but demo makers are demonstrating 6845 timming trickes to do 320 and 640 side modes in 16 colours, which means new retro software might be written to support such tricks (where you only have to identify that a useful mode and xt features are being setup, to switch them on, and drop support for the rest of the 6845 and xt motherboard hardware). But, the old popular Amstrad series of XT machines, including the Sinclair PC 200, use common 16 colour graphics modes, which means many European software releases might support it, and there might be another such chip in the rest of the world. Limiting to modes and hardware that need to be supported. But, ps2/386/usb/ega/various VGA hardware, might also have a subset of commonly supported hardware.
    But thinking about it, it just gets too complex once you go past a CGA xt or Amstrad/Sinclair PC. So, it's probably not worth considering. But, a nice project for students. I take it you lecture at university? Ultimately, the only really useful projects for students to do, are a Linux or javaecript engine os computer. Where universities can expand, and industry can produce custom silicon versions as they like. From there, students could try to do versions in the simpler to manufacture magnetic cellular automata logic at university (extremely low energy, extremely fast at cutting edge (4Thz), but hopefully still fast enough (in Mhz) in a low cost setup). Anyway, it's probably just too hard.

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

      Thanks for the long post!.
      Interestingly, i actually have more prototypes under development than i have time to make videos. It's actually making and editing the videos that's most time consuming.
      I have prototypes for both a SAP 8086 and a SAP 68000 under development. I was thinking of the PC for the 8086 and either a Mac or Sinclair QL for the 68000. I was actually thinking of running the two series in parallel, interleaving the videos, to make it easier to compare and contrast the two CPUs.
      I've still got a couple more videos on the VIC-20 and the ZX Spectrum to go and i'd also like to do a commodore 64 series as well, so i've got plans for another 50-100 videos up my sleave. I would like to make one a week, but i find that very taxing and once per fortnight is more manageable. I do work full-time as a medical doctor (my other career) at the moment, so right now this is a hobby.

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

      @DrMattRegan Thank you. You're welcome. You are very busy. What sort of medical doctor, because your name seems a bit familiar now? (re-edit, probably heard it in connection with the genetics research).
      Maybe a video comparing the systems?
      I did suggest to a friend designing a commercial system that I thought possibly you were going to make an adaptive system that could switch between different systems through the read only memory. If so then, is it Andy Hu's channel, with his HEC's supervisor mode for Z80 and other supervisor-less CPU'S, might be worth looking at, to have an overall control system level (or get the 68000/arm to do supervisor).

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

      I’m a clinical geneticist (the biological computing system). Interestingly, much of the sequence analysis is done on NVidia hardware which is a little amusing, given I spent 5 years on and off working for NVidia.
      The spectrum and VIC20 may ultimately be the same hardware with different state machines!

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

      @@DrMattRegan I probably have heard your name attached to that.

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

    Wow excellent

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

      Thank you! Cheers!

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

    Very nice

  • @mheermance
    @mheermance 24 วันที่ผ่านมา

    Color using VGA makes so much more sense than NTSC. I only sorta understand the color burst, and phase angle stuff.

    • @DrMattRegan
      @DrMattRegan  24 วันที่ผ่านมา

      @@mheermance yep, it’s just that VGA pushes the memory system twice as hard. I am planning to do a “PAL from an EPROM” video, where I show how we go from RGB to PAL/NTSC. The mathematics isn’t as scary as it looks. BTW: do you think it’s better to finish one series first or mix them up?

    • @mheermance
      @mheermance 24 วันที่ผ่านมา

      @DrMattRegan I am fine with mixing them up a little. I also suspect this series attracted a bunch of new viewers. Mixing them up a bit might transition them to some other material as well.

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

    There is a vic chip replacement design, the Victor or some such name, but it is the ussual FPGA design over the top, so I cant get behind it, like with the FPGA Hyper?? or Ultra Pet??, with all the sprites etc. Not representative of maxinum efficiency and what they would have done in that sort of design if they thought of it and pursued it. I forget the details of the vicchip replacement, but unless it something they could realisticaly do in ttl, gatearray or custom at the proposed price point to represent what your machibe could have been, whats the point? I have commonality with the vichip inventor, but the vicchip was his older design technology, that didn't find a console to use it in the 1970's. The vic2 didn't go far enough (he actually proved that the vic2 design could do 80 columns, and was planning a upgraded replacement chip. Though I dont think this had 16 sprites per line, and I haven't heard about 4 colour 320 or 640 mode and 16 colour 160 or 320 mode. If Jack had stayed at commodore, he would have been in a big battle without the Amiga, he didn't get for Atari by under offering for the design. Atari could have got it, and Motorola flood the market with their slightly stripped down version. All of which Jack stuffed. Without the Vicchip designer, could they really have progressed to something that could compete on price, with a number of machines using the stripped down Amiga chipset from Motorola. The US home computer market stalled, and Amstrad was the only real lasting cheaper advancement in the UK. Commodore had crushed so much competition, who was going to invest enough in a custom chip to make machines that competed with the 64. We dont consider, the reasons why the 64 suceeded. The MSX failed on older graphics tech rather than pull out ahead with a master system level graphics chip, plus 512 80 column).

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

      @@waynemorellini2110 I guess my goal here is to use TTL logic to explain what the VIC does, rather than complete with existing FPGA designs/software solutions. Education is really what’s on offer, rather than the best possible implementation.

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

      @DrMattRegan Sorry. I don't mean compete with FPGA, too much.. Just duscussing simple software compatability graphics modes introduced by newer designs, and the odd suggestion. :)
      The Spectrum is a prime one, as a number of different machines and chip upgrades enhanced graphics with simple mode before the sorctrum next. So, there is going be newr software out there that uses them. The TTL QL Thor etc machines also have regularly supported newer simp,e graphics modes. In the end, your designs might be the only non fpga designs out there for people in years time.

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

    Does this version of basic belong to me. My name is Colin B Maharaj

    • @DrMattRegan
      @DrMattRegan  หลายเดือนก่อน +1

      I believe this is Microsoft basic.