Black Screen VIC-20 Repair (And Start Sequence Exploration)

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

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

  • @mustangj0hn
    @mustangj0hn 3 ปีที่แล้ว +35

    What freaks me out about this is that I've not done any 6502 programming in over 35 years, yet I could follow your commentary quite easily and understood exactly what was happening. On the other hand I can't remember what I ate for tea last night!!!

    • @mtpaley1
      @mtpaley1 2 ปีที่แล้ว +3

      I single stepped through almost the entire BBC micro ROM and knew how everything worked to a detail that is just amazing looking back at it 40 years later.

  • @TheSimTetuChannel
    @TheSimTetuChannel 3 ปีที่แล้ว +10

    Few things are as rewarding as learning and understanding more of what you care about.
    Your channel is the gift that keeps on giving!

    • @NoelsRetroLab
      @NoelsRetroLab  3 ปีที่แล้ว +2

      You're absolutely right. That's how I feel when I'm learning new things that come up in my videos, so I'm extremely happy to hear that other people enjoy that too! 😃

  • @ismaelyutub
    @ismaelyutub 3 ปีที่แล้ว +4

    It's amazing how you always go deep to understand the problem and not settling for just making it work again, great!

    • @NoelsRetroLab
      @NoelsRetroLab  3 ปีที่แล้ว +2

      Glad you like that too. That's my favorite part about solving problems 😃

  • @antonnym214
    @antonnym214 ปีที่แล้ว +2

    I loved my Vic 20. I had the base model with 5K RAM. I made good use of the cassette interface to get more out of the limited RAM by loading in parts of the program and data from tape as needed. It cost about $99 at the time I got mine and I was super-impressed by how nice the keyboard was, compared to the similarly-priced ZX-81.

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

    After many years, I finally got a Vic-20 (my first computer back in the '80s). It had the same symptoms you described in your video, and you know what? The kernal ROM was faulty! 😀 I just burnt a new kernal, and it's alive again. Now, I see the composite output quality is really poor... I'll follow your suggestions in your video about improving composite output quality. Gracias por tus excelentes vídeos, Noel!

  • @LogicWheels
    @LogicWheels 3 ปีที่แล้ว +6

    Hi Noel, as always a nice video. I have a tip for you. I noticed that you are using a glass fiber contact cleaner to clean the board contacts. Glass fiber is pretty abrasive and actually damages the protective gold layer. Next time you have to clean similar contacts try a simple pencil eraser, you will be surprised with the result.

  • @ChadDoebelin
    @ChadDoebelin 3 ปีที่แล้ว +1

    I like how you show the chip diagram and where you put your probe and the scope all in the same window and explain everything you are doing it right!

  • @iw0hex
    @iw0hex 2 ปีที่แล้ว +1

    Great job, I love VIC-20, my first home computer in 80's. Regards, Pasquale IW0HEX

  • @gertsy2000
    @gertsy2000 3 ปีที่แล้ว +1

    Well done Noel! Great to also see easy repairs. A knowledgeable support network is always a bonus.

  • @minombredepila1580
    @minombredepila1580 3 ปีที่แล้ว +2

    Whatever Noel is repairing or doing, I always learn something. Oh, how I love this channel !!!!

  • @IanSlothieRolfe
    @IanSlothieRolfe 3 ปีที่แล้ว +13

    Personally I would use turned pin headers for adapters that have to plug into IC sockets, as the square pin type can easily damage the socket preventing an actual IC from working reliably in them.
    One "feature" of some versions of the 6502 that is not commonly appreciated is that if it reads certain undefined instruction opcodes it can cause the processor to "jam", giving the impression the CPU is faulty. If your kernal or basic ROM is faulty, the processor can be given one of these jam instructions. I'm not sure if this is true of the 6510 variants used in the C64, but the original 6502 fitted to the PET and VIC 20 does appear to suffer this "feature".

    • @NoelsRetroLab
      @NoelsRetroLab  3 ปีที่แล้ว +4

      You're right about the pins. I didn't have any on hand and that EPROM is staying there permanently, so I didn't think much of it. But yes, if you have to take it out, then you should probably change the socket.
      That's a great insight about the 6502! I looked into it for a bit, but I wasn't able to see any normal instruction that would lock it up (like a HALT on the Z80). So some of those garbage opcodes would make a lot of sense.

    • @catgirlQueer
      @catgirlQueer 3 ปีที่แล้ว +1

      @@NoelsRetroLab there are a handful of illegal opcodes sometimes referred to as "KIL", which mess up the microcode counter past the CPU decode ROM, resulting in essentially a continuous NOP in most cases, I think

  • @RudysRetroIntel
    @RudysRetroIntel 3 ปีที่แล้ว +1

    Yet another VIC20 saved and another excellent video!

  • @senilyDeluxe
    @senilyDeluxe 3 ปีที่แล้ว +3

    About two years ago I pulled a VIC-20 out of a dumpster. It didn't boot, but I had another one that worked, so I just swapped socketed chips over until the working one stopped working. Well, the first chip was the VIC-1 which was OK, the second chip was the Kernal and that didn't work, so I put the known good one in the faulty VIC-20 and there was nothing else bad with it, so I was happy, made one of these crappy socket adapter constructs, burned a new one and now I have two VIC-20s. But all I ever do with it is sing along to
    ALL MECHANICAL CREATURES
    UNDER HUMILIATION
    COMBINE TOGETHER AND FIGHT FOR
    ROBOTIC LIBERATION.
    Also I just found out if you share a 1541 disk drive between a C16 and a VIC-20, the C16 doesn't mind at all, but the VIC-20 really doesn't like it. So the C16 has to be unplugged if I want to use the VIC-20.

  • @CallousCoder
    @CallousCoder 3 ปีที่แล้ว

    Nice Noël, I will finish of my video for over two weeks and then sit back and relax and watch your awesome VIC20 come back to live!

  • @spacedock873
    @spacedock873 3 ปีที่แล้ว +2

    Hi Noel. Interesting video. I always find that the best route for initial diagnostics is voltages, clocks, reset line, interrupts. Loading a reset vector (and possibly an initial stack pointer) on startup is an extremely common sequence for any CPU. The VIC-20 is obviously also looking for a cartridge "signature" during its startup sequence - another very common technique. I thought it was very strange how you spelled Kernel for the EPROM until something in the depths of my memory dragged up this particular Commodore-ism! Keep the videos coming 👍😁

  • @horusfalcon
    @horusfalcon 3 ปีที่แล้ว +4

    The mark of the true professional is the ability to make the difficult stuff look easy. That, and the willingness to share one's successes and errors to the benefit of others. Bravo!
    The breadboard trick is a good one. Would it be equally handy to put the female header pins on an old (failed) chip or chip socket to hold them straight during soldering? Also, since the female header pins look to be of good quality, could you not have just removed the old socket from the board, soldered the adapter directly to it, and let the adapter serve as a new chip socket? (Lower profile for the whole thing that way, too.)

    • @NoelsRetroLab
      @NoelsRetroLab  3 ปีที่แล้ว

      Thank you! Yes, very good point about removing the socket from the board. I should have done that.

  • @phil.pinsky
    @phil.pinsky 3 ปีที่แล้ว +1

    I absolutely love these commodore repair/diagnostic videos! You do such an amazing job. Thank you

  • @antonyharris1824
    @antonyharris1824 3 ปีที่แล้ว +1

    Thanks for another interesting watch Noel. Always feel like I'm learning something new. I've recently started getting more into electronics from building mods and basic fixes for old machines and these videos are great for ideas on what to look for.

  • @leec2106
    @leec2106 3 ปีที่แล้ว +2

    That surprised me that it was a ROM,
    I thought it was one of the 6522 chips.
    It has been a lot of years since I repaired any Commodore computers,
    Nice find.
    Lee

    • @NoelsRetroLab
      @NoelsRetroLab  3 ปีที่แล้ว

      Thank you! Apparently the ROM is a VERY common cause of black screens on VIC-20s, but really, it could have been many things that prevented the CPU from executing the code.

  • @HamsterSnr
    @HamsterSnr 3 ปีที่แล้ว +1

    With the MOS 6502, there isn’t any pin where one can completely disable/float the 6502 processor pins. Therefore it is not possible to make a diagnostic card that with its own processor can overtake and drive the bus. Also signals A14+A15 are not routed through to the expansion slot which adds another layer of difficulty. Just wondering if one is putting a larger capacity ROM in the kernal position, why not have a dip switch so one could swap between 2 different kernels like Jiffy DOS and PAL.

  • @joe.tiziano
    @joe.tiziano 3 ปีที่แล้ว

    Great explanation on fault finding on how the starts sequence works, please more of the same. Thank you.

  • @meganjperry9489
    @meganjperry9489 3 ปีที่แล้ว

    The Vic 20 was my 1st ever computer, followed by the commodore 64 which supported sprites from memory. I remember buying an assembler cartridge so I could program the 6502 in machine code. It was hard going for a while, but it helped me understand how the CPU operated, calling internal routines to switch out the ROMs and use the memory underneath them for storage etc. It also helped me understand computer architecture with address and data bus and the use for interrupt routines to name few. One thing that stood out is it had a tape drive which could take several minutes to find a game on it, the the same time again to load it. Great memories.

  • @GORF_EMPIRE
    @GORF_EMPIRE 3 ปีที่แล้ว +1

    Always good to see a Vic-20 saved from the bin. Good job as always. I may have considered removing the socket from the motherboard and soldered that adapter board directly in. It may be too tight for that socket and over time it may fail again.

    • @NoelsRetroLab
      @NoelsRetroLab  3 ปีที่แล้ว

      Thanks. Yes, that's not a bad idea. It would make the stack a bit shorter too, which would be nice.

    • @GORF_EMPIRE
      @GORF_EMPIRE 3 ปีที่แล้ว

      @@NoelsRetroLab That too but when you popped that into the socket the sound was cringe loud..... at least to my ears. 🙂

    • @ExtrvertEngineer
      @ExtrvertEngineer 3 ปีที่แล้ว

      Yes I winced then too! I would use turned pin headers if I was going to plug a daughter board into an IC socket.

  • @antman2919
    @antman2919 3 ปีที่แล้ว

    Been watching your videos for a few weeks now and totally loving it. Keep up the great work.

  • @jeffreyphipps1507
    @jeffreyphipps1507 3 ปีที่แล้ว

    Assumptions... Very informative (as usual). Thanks very much for this!

  • @YogSothoth1969
    @YogSothoth1969 3 ปีที่แล้ว +1

    Thank you Noel, as always a fascinating and interesting video! Learned a lot again. Best wishes, Michael

  • @ernestuz
    @ernestuz 3 ปีที่แล้ว +1

    To check CPU activity I prefer to use the lowest address bit (A0 in your case) tends to be a very busy signal.

    • @NoelsRetroLab
      @NoelsRetroLab  3 ปีที่แล้ว

      Oh right, the lower address bits make sense on a 6502 because that's the area it stores a lot of register-like values, right? I'll keep that in mind.

    • @ernestuz
      @ernestuz 3 ปีที่แล้ว +1

      ​@@NoelsRetroLab The lower address line selects when a memory address is odd or even. That means that when the CPU is fetching opcodes you can see lots of activity in it as it gets consecutive bytes. The R/W pin is not bad, honestly, but you depend on the code doing some writes to memory, that will be the case of the 6502, with a very limited register bank.
      Keep on the good work!

  • @binarybox.binarybox
    @binarybox.binarybox 3 ปีที่แล้ว

    Interesting and well presented, Noel....thank you.

  • @Flashy7
    @Flashy7 3 ปีที่แล้ว +6

    Noel repairs in nutshell: "aaaaand, nothing." ;)

    • @NoelsRetroLab
      @NoelsRetroLab  3 ปีที่แล้ว +3

      True. There's a lot of that along the way to finding the real fault 😃

  • @danielmantione
    @danielmantione 3 ปีที่แล้ว +4

    A 6502 will disconnect itself from the bus and wait for reset as soon as it executes a so called "crash" code. This is why the CPU did seam dead: The bad ROM did result in random data on the bus, which could make the CPU either execute a crash code or end up in an endless loop. As soon as I saw you suspect the CPU I was expecting to be diagnosed fine in the end: It is perfectly normal behaviour for a 6502.

    • @NoelsRetroLab
      @NoelsRetroLab  3 ปีที่แล้ว +1

      Right. That makes a lot of sense! That's the kind of thing you learn as you get more experience with particular CPUs. I kept looking through the instruction set for the equivalent of a HALT on Z80, but there was nothing like that. It turns out it's a normal behavior from executing "bad" opcodes. Very interesting. Cheers!

  • @ManOleg38
    @ManOleg38 3 ปีที่แล้ว +2

    5:45 Programming the 6502 book by Rodney Zaks.
    Thanks.

    • @rog2224
      @rog2224 3 ปีที่แล้ว

      Be prepared to sell an internal organ to get it in hardcopy

    • @NoelsRetroLab
      @NoelsRetroLab  3 ปีที่แล้ว +1

      Fantastic book! Really, all of Zaks' books about CPUs are great (Z80, 6809, etc).

  • @datort
    @datort 3 ปีที่แล้ว

    I just had to replace a Kernal ROM on my Plus/4. Looks like they really tend to fail quite often. Lovely video, thanks for the deep dive in the start up sequence. 😊

    • @NoelsRetroLab
      @NoelsRetroLab  3 ปีที่แล้ว +1

      Glad you enjoyed it! Yes, ROMs tend to fail a lot on VIC-20s and C64s for some reason. Not in other systems though!

  • @ClaymateDesigner
    @ClaymateDesigner 2 ปีที่แล้ว +1

    I still have that Zaks book... Brilliant.
    I started out with the Ohio Superboard II before I designed a 2k memory mod and a 64 character mod... made all the better because of CEGMON.

  • @David_Ladd
    @David_Ladd ปีที่แล้ว

    Great video!
    Thank you for sharing your work flow on diagnostics.
    The way the kernel ROM is kinda like how Color Basic, Extended Basic works on the TRS Color Computers. Then the cart ROM has two ways to be used on the Color Computer. This can also be a rabbit hole to go down. :O

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

    Brilliant video as always

  • @jensschroder8214
    @jensschroder8214 3 ปีที่แล้ว +1

    With the C64: Commodore didn't want to first build a game console that could only be started via a plug-in card. But the project was canceled and the function was found in the later C64. Therefore the plug-in card of the C64 can switch off all the kernel ROM and operate its own kernel.
    With the C20, plug-in cards were always an extension of the existing system.

  • @artursmihelsons415
    @artursmihelsons415 3 ปีที่แล้ว +2

    That was interesting repair. Now we know, that VIC-20 can't work without kernel ROM..
    What code remains was in that bad ROM?

  • @JeremyCook
    @JeremyCook 3 ปีที่แล้ว

    Nice tip with with resistor bridge thing.

  • @michaelcarey
    @michaelcarey 3 ปีที่แล้ว

    Hi Noel. Great video!

  • @manicminer4573
    @manicminer4573 3 ปีที่แล้ว

    Because it is a shared bus, I think that any chip on the bus has the potential to stop all bus activity. I also had a VIC20 which produced video but just all black video. It was caused by a faulty RAM chip, and came back to life after changing that IC. Interestingly, the VIC 'dead test' on the 'Penultimate cartridge' worked and correctly detected the faulty RAM.

  • @Doug_in_NC
    @Doug_in_NC 3 ปีที่แล้ว +2

    You wondered if the VIC diagnostics cartridge needed any functioning RAM to work. it’s actually a very well thought out system and includes 1K of RAM on the cartridge, though that doesn’t replace the video RAM it’s enough for the cartridge to run it’s diagnostics.

    • @NoelsRetroLab
      @NoelsRetroLab  3 ปีที่แล้ว +1

      I don't know! I meant to ask Sven and I forgot. I should check with him!

    • @Doug_in_NC
      @Doug_in_NC 3 ปีที่แล้ว +1

      @@NoelsRetroLab The original diagnostics cartridge Commodore used in the 1980s used the same pcb as the Super Expander cartridge that had a 4K ROM which added some graphics and sound commands to BASIC and 3K of RAM, but they only populated 2 of the 6 512 byte RAM chips to give 1K of the RAM and replaced the ROM. Sven’s Hyper Expander PCB design reproduces the same functionality with modern parts, and can do a lot more if fully populated - fully expanding the RAM, multiple switchable ROM images etc. it’s a really good design.

  • @Doug_in_NC
    @Doug_in_NC 3 ปีที่แล้ว +1

    You used the breadboard to align the male pin headers on the EPROM adaptor, but aligned the female headers manually. If you put male headers into the female ones, then you can flip the board over and use a breadboard to align the female headers too.

    • @NoelsRetroLab
      @NoelsRetroLab  3 ปีที่แล้ว +1

      Good point. I think the female ones align correctly naturally and I never had a problem with them. Maybe because the male ones don't have a natural resting position, I find it impossible to align them correctly by hand on the first pass 😃

  • @didierdubos
    @didierdubos 3 ปีที่แล้ว +1

    Great video !! On my BBC Master 128, I had hard time finding why it was sometimes not working after power up. I found out that one of the ROM (It has 5 roms) was faulty wich is weird thinking that it is programmed once and there's no possibility to erase anything..

    • @NoelsRetroLab
      @NoelsRetroLab  3 ปีที่แล้ว

      ROMs fail a lot on VIC-20 and C64s. They don't fail as often in other computers, but it happens. I've had bad ROMs on Amstrad CPCs as well.

  • @fixsomebits
    @fixsomebits 3 ปีที่แล้ว

    Good Video, good way to show the screen and to show the pinout of the chip and on which pins you are working, great for beginners to follow! One small thing: the adapter pins that go in the socket of the ROM seem very big (thicker than the ROMs original pins), they will probably ruin the Socket, or is this just fine?

    • @NoelsRetroLab
      @NoelsRetroLab  3 ปีที่แล้ว +1

      You're right about the pins being too big for that adapter. Since I'm planning on leaving it there permanently, I'm hoping it's OK. Otherwise, you're better off using turned pins (which I didn't have any on hand).

  • @NotMarkKnopfler
    @NotMarkKnopfler 3 ปีที่แล้ว +2

    TI-99/4A also requires a working ROM before you can use the cartridge port!

    • @NoelsRetroLab
      @NoelsRetroLab  3 ปีที่แล้ว

      Aha! I figured there would be other similar ones. Good to know! I probably never asked myself that question since I don't have a diagnostics cartridge for the TI-99, but I'll remember that. Thanks!

    • @NotMarkKnopfler
      @NotMarkKnopfler 3 ปีที่แล้ว

      @@NoelsRetroLab No problem. The 8K of cart space in a TI-99/4A cartridge is mapped into the CPU space starting at 0x6000. A special 'header' (a sequence of bytes) is required at the start of the cart ROM memory. the 4A console ROM checks for the header and if detected presents the cartridge as a menu option after the boot screen. All the best from the UK.

  • @danman32
    @danman32 3 ปีที่แล้ว

    I used to repair C64's way back when. We had a test cartridge with LED array that could tell you what chips were good or not. All it needed was the video chip and CPU to run, as well as none of the address or data lines stuck.
    This was especially useful when all chips were socketed as I could pull them all except the two mentioned and start adding chips back in.
    But what about the kernel ROM you ask? I would suspect the C64 had circuitry to disable the kernel ROM and let RAM or expansion port take it over.

  • @adilsongoliveira
    @adilsongoliveira 3 ปีที่แล้ว +2

    The only thing bad about this video is that I have a meeting in 5 minutes and can't finish watching it now :)

  • @retronexusnet
    @retronexusnet 2 ปีที่แล้ว

    Hi Noel! Where can I get the VIC 20 test cartridge with the clear shell?

  • @johnscarfone
    @johnscarfone 3 ปีที่แล้ว +1

    TIL that the VIC-20 has a different cartridge signature string than the C64 (CBM80). Neat.

  • @msmith2961
    @msmith2961 2 ปีที่แล้ว

    Noel: Always put the suspected dead part, like this CPU, into a working computer to prove it is faulty.
    Also Noel: Imma put this nice working ROM chip into the dead board and see if that fixes it...
    😂
    Just teasing. Keep up the awesome work! You're doing a great job saving those Commodores from landfill.

  • @RalphWLundvall
    @RalphWLundvall ปีที่แล้ว

    Will the Winbond W27C512 work in these situations. The datasheet states it is electrically erasable.

  • @melanierhianna
    @melanierhianna 2 ปีที่แล้ว

    Could you have a “system test” ROM to replace the kernel, sorry, kernal ROM that has a reset vector that just jumps to the address at A000 since that seems to be the only bit of the kernal needed.

  • @blauw67
    @blauw67 3 ปีที่แล้ว +1

    Curious to know what could brick the kernal rom, like I doubt that it came from the factory that way.

    • @Okurka.
      @Okurka. 3 ปีที่แล้ว +1

      Age bricked the MOS chip.

  • @robbyxp1
    @robbyxp1 3 ปีที่แล้ว

    Another lovely video. Thank you.

  • @MattKasdorf
    @MattKasdorf 2 ปีที่แล้ว

    How did you photograph the thumbnail for this video? Back lit, but legible IC markings.

  • @joegott1627
    @joegott1627 ปีที่แล้ว

    Were you able to close the case with this modification? I saw a different video where someone had done a VIC 20 mod and the case wouldn't close.

  • @robcfg
    @robcfg 3 ปีที่แล้ว

    I'm curious about the Dragon cartridge. Do these adapters work with the 2532s in the Dragon cartridges?

    • @NoelsRetroLab
      @NoelsRetroLab  3 ปีที่แล้ว +1

      Yes, they're the same ones I used in the Dragon vs CoCo video. Go check it out. I just had to break a trace to wire one signal differently. They're super handy!

    • @robcfg
      @robcfg 3 ปีที่แล้ว

      @@NoelsRetroLab Great stuff, thanks!

  • @minminJuly
    @minminJuly 3 ปีที่แล้ว

    Hi, I like your video and my vic20 does exactly like the one in your video. You wouldnt have any Kernal -06 avail for sale or the Eepprom?

    • @NoelsRetroLab
      @NoelsRetroLab  3 ปีที่แล้ว

      I don't sell anything liked that, but try a VIC-20 or even a C64 forum or FB group and I bet you'll find people there who can send you one for the cost of postage and little more. Good luck!

    • @minminJuly
      @minminJuly 2 ปีที่แล้ว

      @@NoelsRetroLab Hi..my vic 20 is dead.. nothing will display on my tv .the led is ON . i replaced the MOS 6502 and 901486-01 and the 901486-06 and the MOS 901460-03 and the 6560-101 and both 6522.. still dead .any idea what is next to be replaced? i dont get no activity on the tv when i turn it ON

  • @StatusFIX
    @StatusFIX 3 ปีที่แล้ว

    another one saved. >> where did you get the vic-20 diag kit?

  • @djmips
    @djmips 3 ปีที่แล้ว

    Sounds like it would be a good idea to make a replacement Kernel ROM diagnostics tester. Put that in to test the system.

    • @NoelsRetroLab
      @NoelsRetroLab  3 ปีที่แล้ว

      That's the problem: You can't! Without a working system ROM, you can't run anything from a cartridge. I guess the best option here is to put the diagnostics software in an EPROM and replacing the system ROM, but at that point you aren't testing it either. Not the best design from a maintenance point of view.

    • @danielmantione
      @danielmantione 3 ปีที่แล้ว

      @@NoelsRetroLab Diag264 for the C16/Plus4 works this way: You plug it into the KERNAL socket.

  • @mojoblues66
    @mojoblues66 3 ปีที่แล้ว

    Did you try the old ROM again? Perhaps it just needed a re-seat and some de-oxide.

  • @paveloleynikov4715
    @paveloleynikov4715 3 ปีที่แล้ว +1

    It has some AMD chips? (Two chips on lower left corner of the board).

    • @senilyDeluxe
      @senilyDeluxe 3 ปีที่แล้ว

      I didn't know they made 6116 SRAM either.

    • @danielmantione
      @danielmantione 3 ปีที่แล้ว +1

      Yes, Commodore occasionally bought ROM and RAM chips from AMD.

  • @scottlarson1548
    @scottlarson1548 3 ปีที่แล้ว +1

    Does this mean that the C64 diagnostic cartridge somehow replaces the kernal ROM in the memory map?

    • @3vi1J
      @3vi1J 3 ปีที่แล้ว +1

      It could. "Normal" C64 carts work similar to the way the VIC20 works, with the cartridges mapped at $8000 and the kernel looking for a signature at a specific address to jump into the cartridge (sidenote: You can do funny reset tricks by writing the standard signature to the RAM at that address when no cart is present). However, the 6510 has extra IO pins and, in conjunction with the PLA, supports actual bank switching. It's designed such that, if you tie the EXROM cart pin to high, the second 8k of ROM in the cart will get mapped to $E000-FFFF - replacing the kernel, including the reset vector.
      I picked this up as a teen in the 80's when I modded my C64 to add a reset button and toggle switch on the cart port so that I could rip carts to floppies, as I couldn't afford an EPROM reader. :p

    • @scottlarson1548
      @scottlarson1548 3 ปีที่แล้ว +1

      @@3vi1J Was there any way that a C64 cartridge could keep the ROM mapped so the code could still make calls to the kernal? I never owned a C64.

    • @3vi1J
      @3vi1J 3 ปีที่แล้ว +1

      @@scottlarson1548 Absolutely. If you ground the EXROM cart pin, the second 8k of a 16k cart gets mapped to $A000 - replacing the BASIC ROM instead of the kernel ROM. This is how most 16k carts are configured. The first 8k always gets mapped to $8000. The exception is the carts for the Japanese MAX machines - they always tie EXROM high and map on top of the reset vector because the Commodore MAX had no built-in ROMs.

    • @scottlarson1548
      @scottlarson1548 3 ปีที่แล้ว +1

      @@3vi1J So the cartridge could chose to keep the kernal ROM mapped or replace it depending on what it needed. What a great design!

    • @danielmantione
      @danielmantione 3 ปีที่แล้ว

      @@scottlarson1548 This one was more luck than wisdom (due to the desire to make the C64 compatible with the Ultimax), but it is for sure one of the features that make the C64 so powerfull. It's not just that the cartridge can choose, but it can also change dynamically. Many advanced tricks such as hidden fastload cartridges and freezer cartridges are made possible by this and completely impossible on other 8-bit computers.
      In general I'd say the C64 is still one of the most well designed computers ever.

  • @ManOleg38
    @ManOleg38 3 ปีที่แล้ว

    8:45 Why you use this chip tester?
    Did a retro chip tester from Stephan's 8bit-museum can test a 6502 CPU's ?

    • @NoelsRetroLab
      @NoelsRetroLab  3 ปีที่แล้ว +1

      Because it's the only chip tester that I have that tests the 6502. I love Stephan's tester but it can't do a large IC like this one.

  • @stephenwhite506
    @stephenwhite506 3 ปีที่แล้ว

    Even if a diagnostics cart for a system does not need the system's ROMs. A faulty system ROM can still corrupt the data bus. A faulty IC may not respect its chip select signal and hence corrupt the bus.

  • @daramo09
    @daramo09 3 ปีที่แล้ว

    Excelente video!! Saludos desde España!

  • @stephengordon4081
    @stephengordon4081 3 ปีที่แล้ว

    I'm sure the FCC appreciates your removal of the emf shield.

    • @NoelsRetroLab
      @NoelsRetroLab  3 ปีที่แล้ว

      I don't know about the FCC, but those chips in there sure do! 😃 Jokes aside, I need to learn more about it (and maybe make a video). Has the FCC relaxed their regulations since then? What exactly is affected by something like this and how far does it extend? Because I'm not getting any solid information when I try to find out more about this.

    • @danielmantione
      @danielmantione 3 ปีที่แล้ว +1

      @@NoelsRetroLab The clock speed of 1MHz means that traces in the computer will pulse at less than 1MHz. This the frequency range of medium wave radio, therefore bad EMF shielding will cause noise on AM radios. The 17 MHz of the crystal (and VIC) may interfere with short wave radio. These shields were mandatory in order to avoid that you get angry neighbours whose radio listening experience is hurt, by using your computer.
      Nowadays we use AM radio a lot less, however, shielding devices from emitting radio is still considered good engineering practise.

  • @omfgbunder2008
    @omfgbunder2008 3 ปีที่แล้ว

    Just curious, was the old ROM corrupted or just dead?

    • @NoelsRetroLab
      @NoelsRetroLab  3 ปีที่แล้ว

      Good question. I didn't check but I suspect it's totally dead. If you think about it, it doesn't read that many bytes from the ROM before it jumps to the cartridge, so it would be surprising if it was just one of those few bytes (but I guess it's possible).

    • @danielmantione
      @danielmantione 3 ปีที่แล้ว +1

      MOS Technology ROMs are real ROMs, the data is hard wired in a metal layer during manufacturing, which means there isn't really a lot of possibility for corruption; any corruption would be actual defects in the chip and this would be very close to a dead chip.

    • @GodmanchesterGoblin
      @GodmanchesterGoblin 3 ปีที่แล้ว

      @@danielmantione Thanks. I was wondering if they were OTP EPROMs, but probably at the volume these were made, a mask layer for the data contents made sense.

    • @danielmantione
      @danielmantione 3 ปีที่แล้ว

      @@GodmanchesterGoblin The costs of a mask layer were likely also lower for Commodore than for others, because of the vertical integration of the company: Engineers designing computers could just walk downstairs to talk to people manufacturing the chips in the fab. The overhead costs for producing masks must have been low.

  • @GodmanchesterGoblin
    @GodmanchesterGoblin 3 ปีที่แล้ว

    It would be interesting to compare the contents of the bad ROM with a good one. I wonder if they are masked ROMs or if they are OTP EPROMS...? (OTP=One Time Programmable, in plastic because it's a lot cheaper than a ceramic windowed package). If the whole ROM is bad, then it has clearly had its day. But it's also possible that only some bits have become corrupted, and if it was OTP EPROM then they most likely would have gone from a 0 to a 1 (the initial erased state is always all ones). In such a case it might be possible to reprogram the chip with a correct version of its original data using a suitable EPROM programmer. Note that you can only program a 1 to a 0 in this kind of device, so the original data would be required (not an alternative version with some differences), and the corruption must be from a 0 to a 1, and not the other way round. (Just thinking out loud - hope it helps.)

    • @NoelsRetroLab
      @NoelsRetroLab  3 ปีที่แล้ว +1

      I should look into that. As far as re-programming them, I have no hopes of being able to do that 😃 My EPROM programmer is limited in the kind of voltages it supplies, and these kind of EPROMs (if they're even an EPROM) usually require high voltages. I really think it's a masked ROM though since it's labeled as MOS (and they fail often).

    • @GodmanchesterGoblin
      @GodmanchesterGoblin 3 ปีที่แล้ว

      @@NoelsRetroLab I think you're right; it's most likely to be a masked ROM. And yes, EPROM and OTP ROM of that period require specific programming voltages - up to 21 volts in some cases - and that tends to require more specialised programming hardware.

  • @catcam
    @catcam 3 ปีที่แล้ว

    Thanks for great content !!!

  • @snorman1911
    @snorman1911 3 ปีที่แล้ว

    I just repaired a C64 with a bad Kernal ROM! Shame the original ROMs aren't widely available.

  • @RixtronixLAB
    @RixtronixLAB 3 ปีที่แล้ว

    Nice video, keep it up, thanks :)

  • @tenminutetokyo2643
    @tenminutetokyo2643 2 ปีที่แล้ว

    Replace the RF 4-pin choke too. They are still made.

  • @awilliams1701
    @awilliams1701 3 ปีที่แล้ว

    So even though you can bypass the ROM in the C64 (or can you? I honestly don't know how that works and after this video I'm wondering) I've seen C64 repairs where a bad ROM prevented the dead test from working. So you never know.

    • @NoelsRetroLab
      @NoelsRetroLab  3 ปีที่แล้ว

      I need to check the details of the C64, but yes, you can definitely bypass it. It's normal procedure to remove all the ROM and then test it. I believe there's a signal FROM the cartridge that tells the system to use the ROM in the cartridge instead of the system one.

  • @TechCowboy
    @TechCowboy 3 ปีที่แล้ว

    You're going to need to get yourself a Coleco ADAM and look at all it's quirks

  • @ShamblerDK
    @ShamblerDK 3 ปีที่แล้ว

    Interesting to see that it was assembled in Hong Kong and not China 🙂

  • @Dorff_Meister
    @Dorff_Meister 2 ปีที่แล้ว

    I've seen bad ROMs keep a C64 from dead testing, too.

  • @martinkuliza
    @martinkuliza 3 ปีที่แล้ว

    20:20 Technically it's KERNEL not KERNAL
    I do understand that Robert Russell MADE AN HONEST MISTAKE IN SPELLING in his
    white-papers and then the program writers of the VIC-20 took it as gospel that the spelling was KERNAL (not knowing the spelling mistake that was made)
    and in turn they just adopted the name into VIC 20
    but at the end of the day , it is a mistake.
    Carrying on a Mistake does not make it correct LOL
    When i learned computers as a young lad it was KERNEL
    Back in the days when we had M.C.P. (Master Control Program)
    so yeah , Technically it's "KERNEL"
    if it was me i'd be reprinting the label

    • @Okurka.
      @Okurka. 3 ปีที่แล้ว

      *I

    • @martinkuliza
      @martinkuliza 3 ปีที่แล้ว

      @@Okurka.
      Oh... sorry.. Your'e correct
      I'll make the change
      EDIT : after making the change i found a few other mistakes as well.
      changed them as well
      thanks for the heads up.

    • @Okurka.
      @Okurka. 3 ปีที่แล้ว

      @@martinkuliza *You're

    • @martinkuliza
      @martinkuliza 3 ปีที่แล้ว

      @@Okurka. that doesn't sound right, i do know the difference between Your and You're
      let me check

    • @martinkuliza
      @martinkuliza 3 ปีที่แล้ว

      @@Okurka. i checked, that word doesn't even appear in my comment.
      where did you see it ?

  • @TheHeGermany
    @TheHeGermany 3 ปีที่แล้ว

    kernAl?

    • @NoelsRetroLab
      @NoelsRetroLab  3 ปีที่แล้ว

      I know, it looks like I'm horrible at spelling. Just going along with the way they're written in all the original documents. I blame some engineer with bad spelling back in the day 😃

  • @awilliams1701
    @awilliams1701 3 ปีที่แล้ว

    "clearly I haven't been in this before"
    LMAO I BEG people to throw away the cardboard ones all the time. I'm not happy about the metal ones either, but I'm like that's on you. But the cardboard ones are harmful IMO.

  • @TanjoGalbi
    @TanjoGalbi 3 ปีที่แล้ว

    Psst... You spelt Kernel wrong on your label! 🤫😏

  • @objection_your_honor
    @objection_your_honor 3 ปีที่แล้ว

    Your "music" is annoying as hell.

  • @RalphWLundvall
    @RalphWLundvall ปีที่แล้ว

    "Just burn" The github instructions state if burning one ROM image burn to $E000 (for a 512 EPROM or EEPROM). Is that what you did here? @NoelsRetroLab