Commodore 8 Bit Repair

download Commodore 8 Bit Repair

of 34

Transcript of Commodore 8 Bit Repair

  • 7/30/2019 Commodore 8 Bit Repair

    1/34

    Introduction to Commodore

    8-Bit Maintenance

    Rob Clarke

    Bil Herd

  • 7/30/2019 Commodore 8 Bit Repair

    2/34

  • 7/30/2019 Commodore 8 Bit Repair

    3/34

    Goals

    Determine the desired level of test and repair

    Assess the target system

    Quick appearance vs. Fully operational

    Troubleshoot

    Parts Swap vs. Full in depth

    RepairParts availability, swap, hack

  • 7/30/2019 Commodore 8 Bit Repair

    4/34

    Inspection

    Look, look, look, look some more, seriously.

    Initial Turn On

    Watch, listen, smell, heat

    The rap

    Moving parts, oxidation, discoloration

    Blown Fuse

    About Fuses

  • 7/30/2019 Commodore 8 Bit Repair

    5/34

    Anything Look Unusual

  • 7/30/2019 Commodore 8 Bit Repair

    6/34

    Troubleshooting

    Localization

    Simple Example What it takes to light the indicator

    AC

    Cord Switch Fuse-

    +

    Power

    Supply

    Light

  • 7/30/2019 Commodore 8 Bit Repair

    7/34

    Step One

    Establish the Power Supplies are good

    Logic Supply +5V

    Analog Supply +12V, -12V

    Adjunctive Supply 9VAC

    Hi-Voltage CRT 18+ kV

    Safety

    Listen

  • 7/30/2019 Commodore 8 Bit Repair

    8/34

    What Next

    Supplies are good, now

  • 7/30/2019 Commodore 8 Bit Repair

    9/34

    Diagnostic Hardware

    PET Built in diagnostics on 2001

    The PETvet

    VIC-20

    Commodore Diagnostic

    C64 / C128

    Dead Test Cartridge (Really Useful)

    Other Diagnostic Cartridge Plus/4, C16, C232

    Diag264

  • 7/30/2019 Commodore 8 Bit Repair

    10/34

    PETvet

    Developed By Mike Hill

    Programmable ROM/RAM

    replacement

    Customisable Memory Maps

    Reprogrammable by Serial port

    Tools to halt CPU and view

    memory

  • 7/30/2019 Commodore 8 Bit Repair

    11/34

    Other PET Tools

    Built in diagnostics on Rev-1 ROMs LED on board 2001 series

    Build a NOP generator

    The 2001 Service Kit!

  • 7/30/2019 Commodore 8 Bit Repair

    12/34

  • 7/30/2019 Commodore 8 Bit Repair

    13/34

  • 7/30/2019 Commodore 8 Bit Repair

    14/34

    VIC-20 Diagnostic

    RAM / ROM Checksums

    Primarily for I/O

    Loop Backs most ports

    Picture Courtesy Ray Carlsen

  • 7/30/2019 Commodore 8 Bit Repair

    15/34

    C64 / C128 Dead Test Cart

    Ultimax mode to bypass Kernal

    Works with no RAM/ROM/SID or CIAs

    Uses border to indicate bad RAM

  • 7/30/2019 Commodore 8 Bit Repair

    16/34

    C64 / C128 Diagnostic Cartridge Needs a bootable machine

    Like VIC cart, loops back I/O ports

  • 7/30/2019 Commodore 8 Bit Repair

    17/34

    C64 / C128 Diagnostic Cartridge Easy to build your own

    Schematics freely available, but over complicated!

    C128 Version similar but untested by me.

  • 7/30/2019 Commodore 8 Bit Repair

    18/34

    Plus/4, C16, C232 Diag264

    Built to fix a Commodore 232 Kernal or Cartridge based

    Comprehensive testing of RAM/ROM & Ports

  • 7/30/2019 Commodore 8 Bit Repair

    19/34

  • 7/30/2019 Commodore 8 Bit Repair

    20/34

    Common Culprits VIC 20

    Reliable, mine all work today with no fixes!

    ROMs easily replaceable

    RAMs easily sourceable (2114s, TMM2016)

  • 7/30/2019 Commodore 8 Bit Repair

    21/34

    Common Culprits C64

    64s are cheap, so by implication

    Most commonly PLA (black screen)

    & SID (works but defective sound) CIAs are fragile but replaceable

    For everything else, Ray Carlsen

  • 7/30/2019 Commodore 8 Bit Repair

    22/34

    SuperPLA Multi

    Created by Jens Schoenfeld

    Extracted C64 PLA eprom image in 1994

    Equations derived as part of C-One project

    Implemented on a MACH210 modern PLA Includes PLAs from CBM-IIs, Plus/4, and 1551

    Also includes modes not implemented on C128

  • 7/30/2019 Commodore 8 Bit Repair

    23/34

    Resources

    PEThttp://www.bitfixer.com/bf/petvet

    http://www.6502.org/users/andre/petindex/index.html

    http://www.zimmers.net/anonftp/pub/cbm/pet/index.htmlhttp://www.vintage-computer.com/vcforum/forumdisplay.php?21-Commodore

    VIC-20

    http://sleepingelephant.com/ipw-web/bulletin/bb/index.php

    C64, C128

    http://www.retro-donald.de/pages/superpla-multi.php

    http://www.swinkels.tvtom.pl/swinsid/http://www.lemon64.com/

    http://personalpages.tds.net/~rcarlsen/

    Plus/4, C16, C232

    http://inchocks.co.uk/commodore/Diag264/HTMLManual/Diag264.htm

    http://plus4world.powweb.com/homehttp://www.commodore16.com/index.php/forum.html

    Spares

    http://www.arcadecomponents.com/index.htmlhttp://store.go4retro.com/http://retro-donald.de/sinchai-shop/

    General Info

    http://www.softwolves.pp.se/misc/arkiv/http://personalpages.tds.net/~rcarlsen/http://www.zimmers.net/anonftp/pub/cbm/

    http://www.bitfixer.com/bf/petvethttp://www.bitfixer.com/bf/petvethttp://www.6502.org/users/andre/petindex/index.htmlhttp://www.vintage-computer.com/vcforum/forumdisplay.php?21-Commodorehttp://www.vintage-computer.com/vcforum/forumdisplay.php?21-Commodorehttp://www.vintage-computer.com/vcforum/forumdisplay.php?21-Commodorehttp://www.bitfixer.com/bf/petvethttp://sleepingelephant.com/ipw-web/bulletin/bb/index.phphttp://www.bitfixer.com/bf/petvethttp://www.retro-donald.de/pages/superpla-multi.phphttp://www.swinkels.tvtom.pl/swinsid/http://www.lemon64.com/http://personalpages.tds.net/~rcarlsen/http://www.bitfixer.com/bf/petvethttp://inchocks.co.uk/commodore/Diag264/HTMLManual/Diag264.htmhttp://www.commodore16.com/index.php/forum.htmlhttp://www.commodore16.com/index.php/forum.htmlhttp://www.commodore16.com/index.php/forum.htmlhttp://store.go4retro.com/http://www.arcadecomponents.com/index.htmlhttp://retro-donald.de/sinchai-shop/http://retro-donald.de/sinchai-shop/http://retro-donald.de/sinchai-shop/http://personalpages.tds.net/~rcarlsen/http://www.softwolves.pp.se/misc/arkiv/http://www.zimmers.net/anonftp/pub/cbm/http://www.zimmers.net/anonftp/pub/cbm/http://www.zimmers.net/anonftp/pub/cbm/http://www.zimmers.net/anonftp/pub/cbm/http://www.zimmers.net/anonftp/pub/cbm/http://personalpages.tds.net/~rcarlsen/http://personalpages.tds.net/~rcarlsen/http://www.softwolves.pp.se/misc/arkiv/http://www.softwolves.pp.se/misc/arkiv/http://retro-donald.de/sinchai-shop/http://retro-donald.de/sinchai-shop/http://retro-donald.de/sinchai-shop/http://retro-donald.de/sinchai-shop/http://retro-donald.de/sinchai-shop/http://retro-donald.de/sinchai-shop/http://retro-donald.de/sinchai-shop/http://store.go4retro.com/http://store.go4retro.com/http://store.go4retro.com/http://www.arcadecomponents.com/index.htmlhttp://www.commodore16.com/index.php/forum.htmlhttp://www.commodore16.com/index.php/forum.htmlhttp://www.commodore16.com/index.php/forum.htmlhttp://plus4world.powweb.com/homehttp://inchocks.co.uk/commodore/Diag264/HTMLManual/Diag264.htmhttp://inchocks.co.uk/commodore/Diag264/HTMLManual/Diag264.htmhttp://inchocks.co.uk/commodore/Diag264/HTMLManual/Diag264.htmhttp://www.bitfixer.com/bf/petvethttp://personalpages.tds.net/~rcarlsen/http://personalpages.tds.net/~rcarlsen/http://www.lemon64.com/http://www.lemon64.com/http://www.swinkels.tvtom.pl/swinsid/http://www.swinkels.tvtom.pl/swinsid/http://www.retro-donald.de/pages/superpla-multi.phphttp://www.retro-donald.de/pages/superpla-multi.phphttp://www.retro-donald.de/pages/superpla-multi.phphttp://www.retro-donald.de/pages/superpla-multi.phphttp://www.retro-donald.de/pages/superpla-multi.phphttp://www.retro-donald.de/pages/superpla-multi.phphttp://www.retro-donald.de/pages/superpla-multi.phphttp://www.bitfixer.com/bf/petvethttp://sleepingelephant.com/ipw-web/bulletin/bb/index.phphttp://sleepingelephant.com/ipw-web/bulletin/bb/index.phphttp://sleepingelephant.com/ipw-web/bulletin/bb/index.phphttp://sleepingelephant.com/ipw-web/bulletin/bb/index.phphttp://sleepingelephant.com/ipw-web/bulletin/bb/index.phphttp://www.bitfixer.com/bf/petvethttp://www.vintage-computer.com/vcforum/forumdisplay.php?21-Commodorehttp://www.vintage-computer.com/vcforum/forumdisplay.php?21-Commodorehttp://www.vintage-computer.com/vcforum/forumdisplay.php?21-Commodorehttp://www.vintage-computer.com/vcforum/forumdisplay.php?21-Commodorehttp://www.vintage-computer.com/vcforum/forumdisplay.php?21-Commodorehttp://www.vintage-computer.com/vcforum/forumdisplay.php?21-Commodorehttp://www.vintage-computer.com/vcforum/forumdisplay.php?21-Commodorehttp://www.zimmers.net/anonftp/pub/cbm/pet/index.htmlhttp://www.zimmers.net/anonftp/pub/cbm/pet/index.htmlhttp://www.6502.org/users/andre/petindex/index.htmlhttp://www.6502.org/users/andre/petindex/index.htmlhttp://www.bitfixer.com/bf/petvethttp://www.bitfixer.com/bf/petvethttp://www.bitfixer.com/bf/petvethttp://www.bitfixer.com/bf/petvet
  • 7/30/2019 Commodore 8 Bit Repair

    24/34

    After Swapping the Chips

    Check the environment carefully

    Requires an Oscilloscope (or itd already be fixed)

    Power Supply - most Common Denominator

    Ripple and noise

    Non-monotonic

    Absolute values

  • 7/30/2019 Commodore 8 Bit Repair

    25/34

    Power Supply

    Non-monotonic power up

  • 7/30/2019 Commodore 8 Bit Repair

    26/34

    Power Supply

    Excessive ripple or other noise

  • 7/30/2019 Commodore 8 Bit Repair

    27/34

    Care and Feeding of Proc

    Proc

    Clean +5v

    Stable Clock

    Clean /RST

    A0-15

    D0-7

    /ROMsel

    /CS Logic

    R/W

    $FFFC

  • 7/30/2019 Commodore 8 Bit Repair

    28/34

    The Order of Things

    /RESET

    /ROM CS

    /IO CS

    /RAM CS

  • 7/30/2019 Commodore 8 Bit Repair

    29/34

    Get to know the Neighbors

    Proc

    +5

    Clock

    /RESET

    A0-15

    D0-7

    R/W/IRQ, /NMI

    2 (Phi2)

    Trigger

  • 7/30/2019 Commodore 8 Bit Repair

    30/34

    RAM/ ROM

    ROM

    Trigger

    ADDR DATA

    /CE

    RAM

    Trigger

    /CE

    /WE

    ADDR DATA

  • 7/30/2019 Commodore 8 Bit Repair

    31/34

    Making Sense of Chaos

  • 7/30/2019 Commodore 8 Bit Repair

    32/34

    When Logic is Invalid

  • 7/30/2019 Commodore 8 Bit Repair

    33/34

    Zero or One

  • 7/30/2019 Commodore 8 Bit Repair

    34/34

    Good Diagnostics

    Problem with most microprocessor systems is

    its an all or nothing affair.

    A good diagnostic runs with minimal

    requirements. First establishes RAM works

    before using it for more advanced diagnostics.