Commodore 128

La segunda CPU es un Zilog Z80, que se usa para hacer funcionar software CP/M, al igual que para iniciar el modo de selección de sistema operativo durante el arranque.

Basado en lo que encuentra, cambiará al modo de operación apropiado.

Un nuevo chip, el VDC, provee al C128 con una pantalla de 80 columnas compatible con la norma CGA (también llamada RGBI por Red-Green-Blue-Intensity, rojo-verde-azul-intensidad).

En el modo 80 columnas, el editor toma ventaja de las características del VDC para permitir texto parpadeante y subrayado, activado mediante códigos de escape.

La parte del editor de pantalla del kernel fue mejorada aún más para soportar un sistema de ventanas rudimentario y fue relocalizada en una ROM separada.

Todas estas unidades son más fiables que la 1541 y prometían unas mejores prestaciones mediante un modo ráfaga.

La unidad 1581 también tiene más RAM en placa que sus predecesores, haciendo posible abrir un mayor número de ficheros simultáneamente.

También escribiendo las instrucciones QUIT u OFF, produce un "?UNIMPLEMENTED COMMAND ERROR".

Estas instrucciones existen en previsión de un ordenador portátil con pantalla LCD nunca producido y están pensados para salir del intérprete BASIC e ignorar el teclado durante la ejecución de programas sensibles, respectivamente.

Desafortunadamente, el C128 era notablemente más lento trabajando en CP/M que la mayoría de sistemas CP/M dedicados, ya que el procesador Z80 funcionaba a una velocidad efectiva de solo 2 MHz (en lugar de los más comunes 4 MHz) y a su uso de CP/M 3.0, cuya complejidad lo hace inherentemente más lento que el anterior y más extendido sistema CP/M 2.2.

A pesar de ello, esta característica no funcionó correctamente en la primera generación del C128.

Pensado para darle al nuevo ordenador una gran librería de programas de grado profesional, los cuales no tenía Commodore, el CP/M ya había pasado hacía tiempo su mejor momento cuando se presentó el C128.

Esta característica duplica fielmente el comportamiento del C64 cuando un cartucho (como el BASIC de Simons) es enchufado en el puerto y activa esas dos líneas; pero, a diferencia del C64, donde el cambio del mapeado de memoria de estas líneas se realiza directamente en hardware, el firmware de arranque del Z80 del C128 comprueba las líneas al arrancar y entonces cambia de modo según sea necesario.

Muchas de las características adicionales del C128 están desactivadas o no disponibles en este modo.

Esto tiene que ver con el mayor puerto E/S de la CPU del C128.

Algunos programas del C64 se confunden con este bit de E/S extra, manteniendo la tecla CAPS LOCK pulsada se fuerza la línea de E/S, igualando la configuración del C64 y resolviendo el problema.

Debido a que este registro ya es completamente funcional en el modo C64, una escritura inadvertida podría contaminar la pantalla de 40 columnas al cambiar la CPU a 2 MHz, en la cual la velocidad del reloj del procesador de vídeo VIC-II no puede producir una pantalla coherente.

's Gazette publicó un programa escrito que explotaba esta diferencia usando una matriz de interrupciones para permitir el modo rápido cuando se alcanza la parte inferior de la pantalla visible y entonces desactivarlo cuando el retrazado de la pantalla vuelve a empezar en la parte superior.

[5]​[6]​ A finales de 1985 Commodore lanzó al mercado europeo una nueva versión del C128 con un chasis rediseñado.

La extensión más popular fue el "BASIC 8" de Free Spirit Software, que añadió comandos para gráficos VDC de alta resolución al BASIC 7.0.

Una explicación adicional puede encontrarse en el hecho de que el C64 vendió muchas unidades a la gente interesada principalmente en videojuegos, a los que la cara C128 no les daba demasiado valor como para actualizar.

Con su lenguaje de programación BASIC avanzado, su compatibilidad con CP/M y sus paquetes de software nativo "amistosos con el usuario" como Jane, Commodore intentó crear un mercado para negocios pequeños para el C128, incluso marcando "Personal Computer" en la caja, pero esta estrategia no tuvo éxito frente a sus contemporáneas compatibles IBM PC de bajo coste, como la Leading Edge Model D y la Tandy 1000 que, en algunos casos, se vendían por menos que un sistema C128 completo.

Bil Herd ha indicado que los objetivos de diseño del 128 no incluían inicialmente la compatibilidad al 100 % con el C64.

El chip de sonido SID es particularmente vulnerable a este problema.

Este bug está presente en todas las máquinas Commodore de 8 bits.

Usar el modo CP/M requiere el uso de un disquete de arranque
El Commodore 128D expuesto en el Museo Bolo, EPFL, Lausanne. La realización de este trabajo fue apoyada por Wikimedia CH.