CBM 2001 repair - help needed

  • I received a dead CBM 2001 with 16k dynamic RAM, 40 chars and real keyboard in 2006. The 9'' screen was working but showed garbage. I had to replace the CPU and keyboard PIA. RAM was bad, so disabled on-board RAM and placed 32k static RAM on the memory expansion socket. I was able to enter a short BASIC program and run it. Since many keys did not work, I disassembled the keyboard and cleaned the conductive rubbers with alcohol. I learned that this is a bad idea indeed - even more keys were dysfunctional. I lost interest and put the box back on the rack where it slept until today.

    I do not want to lose my mental health during COVID lockdown, so I decided to return to the Commodore box. Last week I ordered a bag of conductive rubber pads from the bay. I removed the old pads from the keys and glued the new pads in with silicone. The keyboard did not work at all. I had to replace the keyboard PIA (for the second time). Now the keyboard works like a charm. But now I am really lost: whatever I type after the BASIC prompt, as soon as I hit <RETURN> the machine falls into the monitor. I already checked the ROMS.

    Has anyone seen this before?

  • You called the monitor via break (see the b* in the first line). The program counter (pc) is $0073. This is at the CHRGET routine. This as called to read the BASIC text or a direct line from the input buffer. This routine is a copy from $E0F9. But it seems you have bad RAM at the zero page. So the copy of CHRGET is lost and with the data byte $00 at $0073 the monitor is called.

    Have a look at you DRAM!

  • HI HofMar!

    Thank you for the hint. The machine was badly broken, so I already replaced the dynamic RAM with static RAM on the expansion bus. I learned that during BASIC init the routine for CHRGET is copied from ROM to page zero. Later an address is being patched. I compared the memory and found the routine almost correctly copied. One byte was bad. Very strange. I wrote a quick-and-dirty RAM tester and found the RAM ok. I noticed that the machine crashed whenever I hit it (slightly). One of the cheap sockets, I thought - and replaced all sockets for PIA, VIA, CPU, and ROMs with turned sockets. The machine did no longer crash, but it still fell into the monitor. I checked the ROMs. All OK. I replaced the PIAs, VIA - no change. Lastly I replaced the CPU. That helped! Just don't ask me why. Were these machines also that unreliable back in the 80's? I already replaced the keyboard PIA and the CPU two times during repair.

    All right. One problem solved. More ahead. Next time I will care for the DRAM...

    Stay healthy,