Skip to main content
48 votes
Accepted

Why does the Commodore C128 perform poorly when running CP/M?

I'm Linards Ticmanis, the guy who put out the CPMFAST package in 1999 that has been mentioned several times in the other answers (although I go by the nickname TeaRex on here). While creating that, I ...
TeaRex's user avatar
  • 1,225
46 votes

Why does the Commodore C128 perform poorly when running CP/M?

(2017.03.03) I have added a second answer with diagrams and more technical details. This answer is already huge and self-contained; the other focuses on the complexities due to hardware. Why does the ...
RichF's user avatar
  • 9,346
42 votes
Accepted

What precautions to take when powering on old computer for the first time in years

There are several simple precautions that are always worth taking when powering up a vintage microcomputer after long periods of storage or non-use. The minimum, simple steps, should include: Place ...
Brian H's user avatar
  • 60.8k
34 votes
Accepted

What was the intention with the Commodore 128?

Was it the original intention to combine them? No. The Z80 was not even part of the original design. It was added out of necessity to meet a "100% C64 compatible" claim of the original marketing. ...
RichF's user avatar
  • 9,346
32 votes

What was the intention with the Commodore 128?

The Commodore 128 was intended to be a fully-compatible, more professional, upgrade to the popular Commodore 64. The marketing called for addressing the most widely criticized shortcomings of the C64 ...
Brian H's user avatar
  • 60.8k
31 votes
Accepted

Can the two CPUs in a Commodore 128 run at the same time?

No, they cannot. They share both the data and the address bus of the C128, so they can only run exclusively at any one point in time. The address bus is apparently directly connected, the data bus ...
tofro's user avatar
  • 35.2k
31 votes
Accepted

MOS 8502, just a 6510B?

The change in the MOS designator from 65xx to 85xx was due to the process change - original 65xx were NMOS process, while later 85xx changed to the new HMOS process. This allowed for better densities ...
Brian H's user avatar
  • 60.8k
22 votes
Accepted

What was the end of line convention for text files on the 8-bit Commodores

C64 Basic used a CR as EOL for disk files. (source: Commodore SX-64 User's Guide, page 22: “CR stands for the CHR$ code 13, the carriage return, which is automatically PRINTed at the end of ever ...
scruss's user avatar
  • 21.7k
21 votes

How do I save Commodore BASIC programs in ASCII?

(This answer is about using the built-in methods on real hardware. If it's about conversion of emulator files, then Brian's solution may be more suitable.) TL;DR: Saving a program as text onto a disk ...
Raffzahn's user avatar
  • 225k
19 votes
Accepted

Are there games for the C128 that run (mainly) on the Z80 rather than the 6502?

You can write Zilog 80 programs and games (as I do) on the Commodore 128. I exploit Z88DK, which does the magic of booting the C128 in Zilog 80 mode. The Zilog80 at 2mhz effective speed is about as ...
Fabrizio Caruso's user avatar
18 votes

Why does the Commodore C128 perform poorly when running CP/M?

My first answer attempts to answer all the OP's questions without going too deep into the hardware details. Since posting that answer, I have had the pleasure of corresponding for several days with ...
RichF's user avatar
  • 9,346
18 votes
Accepted

What pointing devices were available for C64/C128?

Before GEOS and the 1351 mouse became popular for the C64/C128, the most notable (non-joystick) pointing device was the famous Koala Pad. There were a few programs for the C64 before GEOS that ...
Brian H's user avatar
  • 60.8k
17 votes
Accepted

Slowdowns in CBM BASICs between 4.x and 7.x?

The BASIC versions for both the Plus/4 and the C128 use a more complicated memory setup: BASIC 3.5 (+4) can access about 59K of RAM - that's only possible because it constantly disables and reenables ...
Venner's user avatar
  • 1,684
16 votes

Slowdowns in CBM BASICs between 4.x and 7.x?

I've benchmarked the various Commodore BASICs on their 8-bit systems. This benchmark tests 10,000 iterations of FOR/NEXT, GOSUB/RETURN, GOTO, variable manipulation of integers, floats, and strings, ...
Tim Locke's user avatar
  • 4,820
15 votes

Is there software that will run across multiple Commodore 8-bit machines without modification?

BASIC games that use no memory specific code can be ported between different commodore machines. (I did some successfully between PET and C64). Machinecode games could be transferred between some ...
EL Dendo's user avatar
  • 1,132
14 votes
Accepted

What is the exact bus protocol used by the C64/C128 REU?

The basic behavior is correctly stated in the question. However, the details of the timing have to account for the rather complicated details of how RDY works on the NMOS version 6502 and MOS 6510 (...
Brian H's user avatar
  • 60.8k
13 votes
Accepted

Did the Commodore 128's Z80 CPU also have full access to the machine's custom hardware?

The Z80 can access all hardware I/O addresses in the C128, with the natural exception of the built-in I/O port (a 6520-style PIA) of the 8502 CPU. That means that, if I remember correctly, the only ...
TeaRex's user avatar
  • 554
12 votes

Can the two CPUs in a Commodore 128 run at the same time?

The 8502 CPU was also there for C128 mode, of course. The 8502 and Z80 cannot be used at the same time. There are however other options. The C128D has a third CPU, a 6502, in the floppy drive. Any ...
Tim Locke's user avatar
  • 4,820
12 votes

Is there software that will run across multiple Commodore 8-bit machines without modification?

It seems that Michael Steil at pagefault.org has recently posted an analysis of the KERNAL calls from all of the Commodore 8-bit machines to try and track lineage. However, what is relevant here is ...
bjb's user avatar
  • 16.4k
11 votes

How can I adapt a digital CGA/C128 signal (RGBI DE-9) to a modern monitor?

One strategy is to convert the digital to analog, then the analog to VGA. CGA consists of digital red, green, blue, and intensity (RGBI) 5V signals, plus horizontal (15.75 kHz) and vertical (59.92 Hz)...
snips-n-snails's user avatar
11 votes
Accepted

Get exact position of raster beam on C64/C128

On a C64 PAL model, the VIC chip processes through 312 lines where each lines takes 63 clock cycles to display (including some time for horizontal and vertical blanking for returning the raster beam). ...
Peter B.'s user avatar
  • 4,387
11 votes
Accepted

Extending C128D Keyboard cable

You can absolutely do this, I've used a 6 foot extension like this before on my 128DCR with no signaling issues. You are correct that you need all 25 pins wired straight through which a normal DB25m/...
mnem's user avatar
  • 4,555
10 votes

Which memory management is easiest to program - CoCo 3 or C128/Apple //e?

Neither CoCo nor Retro-Apples are my specific area of expertise - I'll try to answer from a more European viewpoint. Concepts and technical solutions are similar, however. Basically, all the ...
tofro's user avatar
  • 35.2k
10 votes
Accepted

Commodore VIC-20/64/128/16/Plus 4 floppy disk drive replacement

SD2IEC SD2IEC is a free software which turns an ATmega644 microcontroller into an emulated VC1541. It attempts a near-complete emulation (I think REL files aren't implemented, but nearly noone ever ...
10 votes

What was the intention with the Commodore 128?

The original intention was basically to have the functionality of two separate computers: a 6502-based system running Commodore's OS (with some features added beyond what the Commodore 64 offered, ...
cjs's user avatar
  • 26.7k
10 votes
Accepted

Restore a BASIC program after reset or "NEW" command on a Commodore 128

Florian Müller's Vom C64 zum C128: Tips & Tricks (available through https://www.retrozone.ch/c128/books/download.php) gives this command in section 3.7.2: POKE PEEK(45)+256*PEEK(46),1:DELETE 1
Michael Graf's user avatar
  • 10.1k
10 votes
Accepted

What is the largest single file that can be loaded into a Commodore C128?

The maximum size file that you can load with the built-in commands is 65280 bytes. This is using the address range of $0000-$FEFF for either BANK. There is no "wrap" ability to extend from ...
Brian H's user avatar
  • 60.8k

Only top scored, non community-wiki answers of a minimum length are eligible