stringtranslate.com

Comodoro 128

El Commodore 128 , también conocido como C128 , C-128 o C= 128 (la "C=" representa la parte gráfica del logotipo), es la última computadora doméstica de 8 bits lanzada comercialmente por Commodore Business Machines ( CBM). Presentado en enero de 1985 en el CES de Las Vegas , apareció tres años después de su predecesor, el Commodore 64 , el ordenador más vendido de los años 1980. Se vendieron aproximadamente 2,5 millones de C128 durante sus cuatro años de producción.

El C128 es un sucesor significativamente ampliado del C64, con una compatibilidad casi total. Está alojado en una carcasa rediseñada con un teclado mejorado que incluye un teclado numérico y teclas de función . La memoria se amplió a 128  KB de RAM en dos bancos de 64 KB. Un chip de gráficos independiente proporcionaba una salida de vídeo en color de 80 columnas además de los modos C64 originales. También incluía una CPU Zilog Z80 que permite que el C128 ejecute CP/M , como alternativa al entorno habitual Commodore BASIC . La enorme biblioteca de software CP/M, junto con la biblioteca de software del C64, le dio al C128 una de las gamas más amplias de software disponibles entre sus competidores.

El principal diseñador de hardware del C128 fue Bil Herd , que había trabajado en el Plus/4 . Otros ingenieros de hardware fueron Dave Haynie y Frank Palaia, mientras que el trabajo de diseño del circuito integrado estuvo a cargo de Dave DiOrio. El software principal del sistema Commodore fue desarrollado por Fred Bowen y Terry Ryan, mientras que el subsistema CP/M fue desarrollado por Von Ertwine.

Diseño

El indicador BASIC para Commodore 128 en modo de 40 columnas, ejecutando Commodore BASIC V7.0

La compleja arquitectura del C128 [2] [3] incluye cuatro tipos de RAM a los que se accede de manera diferente (RAM principal de 128 KB, RAM de video de 16 a 64 KB de CC, RAM de color VIC-II de 2 kNibbles, RAM de unidad de disquete de 2 KB en los C128D, 0 , 128 o 512 KB REU RAM) [ verificación fallida ] , dos o tres CPU (principal: 8502, Z80 para CP/M; el 128D también incorpora un 6502 en la unidad de disco), y dos chips de vídeo diferentes (VIC-IIe y VDC) para sus diversos modos operativos. [4] [5]

El C128 no realiza una prueba de RAM del sistema al encenderlo como las máquinas Commodore anteriores. [ cita necesaria ] En lugar del único microprocesador 6510 del C64, el C128 incorpora un diseño de dos CPU. La CPU principal, la 8502 , es una versión ligeramente mejorada de la 6510, capaz de funcionar a 2  MHz . La segunda CPU es una Zilog Z80 que se utiliza para ejecutar el software CP/M , así como para iniciar la selección del modo de funcionamiento en el momento del arranque. Los dos procesadores no pueden ejecutarse simultáneamente; por tanto, el C128 no es un sistema multiprocesamiento . [ ¿ investigacion original? ]

El teclado del C128 incluye cuatro teclas de cursor, una tecla Alt , una tecla Ayuda , una tecla Esc , una tecla Tab y un teclado numérico . Ninguno de estos estaba presente en el C64, que tenía solo dos teclas de cursor, lo que requería el uso de la tecla Shift para mover el cursor hacia arriba o hacia la izquierda. Esta disposición alternativa se mantuvo en el 128, para su uso en el modo C64. [6] La falta de un teclado numérico, tecla Alt y tecla Esc en el C64 fue un problema con algunos software de productividad CP/M cuando se usaba con el cartucho Z80 del C64. Muchos propietarios de C64 solicitaron un teclado y pasaron largas horas ingresando programas de escritura en lenguaje de máquina . [7] Muchas de las teclas agregadas coincidían con sus contrapartes presentes en el teclado de la PC IBM e hicieron que la nueva computadora fuera más atractiva para los desarrolladores de software empresarial. [8] Si bien el modo de 40 columnas del 128 duplica fielmente el del C64, el programador dispone de 1 K de RAM de color adicional, ya que se multiplexa a través de la dirección de memoria 1. [ cita necesaria ]

La fuente de alimentación del C128 ha mejorado con respecto al diseño poco confiable del C64, siendo mucho más grande y equipada con rejillas de ventilación y un fusible reemplazable. [ cita necesaria ]

Las primeras versiones del C128 ocasionalmente experimentan problemas de confiabilidad relacionados con la temperatura debido al uso de un blindaje de RF sobre la placa de circuito principal. El escudo estaba equipado con dedos que hacían contacto con la parte superior de los chips principales, aparentemente haciendo que el escudo actuara como un gran disipador de calor . Una combinación de un contacto deficiente entre el escudo y los chips, la conductividad térmica inherentemente limitada de los paquetes de chips de plástico, así como la conductividad térmica relativamente pobre del propio escudo, provocaron sobrecalentamiento y fallas en algunos casos. El chip de sonido SID es especialmente vulnerable a este respecto. El remedio más común es quitar el escudo, que Commodore había agregado en una etapa avanzada del desarrollo para cumplir con las regulaciones de radiofrecuencia de la FCC. [ ¿ investigacion original? ]

El C128 tiene tres modos de funcionamiento . El modo C128 ( modo nativo ) se ejecuta a 1 o 2 MHz con la CPU 8502 y tiene modos de texto de 40 y 80 columnas disponibles. El modo CP/M utiliza tanto el Z80 como el 8502, [9] y puede funcionar en modo de texto de 40 u 80 columnas. El modo C64 es casi 100 por ciento compatible con la computadora anterior. La selección de estos modos se implementa mediante el chip Z80. El Z80 controla el bus en el arranque inicial y verifica si hay un disco CP/M en la unidad, si hay algún cartucho C64/C128 presente o si la llave Commodore (que sirve como selector de modo C64) ) se presiona durante el arranque. Según estas condiciones, cambiará al modo de funcionamiento apropiado. [ cita necesaria ]

Modos

C128

C128 placa principal

En 1984, un año antes del lanzamiento del Commodore 128, Commodore lanzó el Plus/4 . Aunque estaba dirigido a un mercado empresarial de gama baja que no podía permitirse el costo relativamente alto y los requisitos de capacitación de las primeras PC compatibles con IBM , la prensa de Commodore lo percibió como una continuación del 64 y se esperaba que mejorara ese modelo. capacidades. Si bien las capacidades gráficas y de sonido del C64 fueron generalmente consideradas excelentes, la respuesta al Plus/4 fue de decepción. Tras la introducción del Plus/4, la prensa Commodore hizo repetidas recomendaciones para una nueva computadora llamada "C-128" con mayor capacidad de RAM, una pantalla de 80 columnas como era estándar en las computadoras comerciales, un nuevo lenguaje de programación BÁSICO que hizo A los programadores les resultó fácil utilizar los gráficos y el sonido de la computadora sin recurrir a PEEK y POKE , una nueva unidad de disco que mejoró la abismal tasa de transferencia del 1541 , así como la compatibilidad total con C64. [10] [11]

Los diseñadores del C128 lograron abordar la mayoría de estas preocupaciones. [ ¿ investigacion original? ] Un nuevo chip, el VDC , proporciona al C128 una pantalla compatible con CGA en color de 80 columnas (también llamada RGBI para rojo, verde y azul más intensidad ). El entonces nuevo microprocesador 8502 es completamente compatible con el 6510 del C64 , pero puede funcionar al doble de velocidad si se desea. El Commodore BASIC 2.0 del C64 fue reemplazado por BASIC 7.0, que incluye comandos de programación estructurados del BASIC 3.5 del Plus/4, así como palabras clave diseñadas específicamente para aprovechar las capacidades de la máquina. Se agregaron un editor de sprites y un monitor de lenguaje de máquina . La parte del editor de pantalla del Kernal se mejoró aún más para admitir un modo de inserción y otras funciones a las que se accede mediante combinaciones de teclas ESC, así como una función de ventana rudimentaria, y se reubicó en una ROM separada . El chip VIC-II que controla la pantalla de 40 columnas sólo puede funcionar a 1 MHz, por lo que la pantalla de 40 columnas aparece confusa en el FASTmodo. En el modo de 80 columnas, el editor aprovecha las funciones de VDC para proporcionar texto parpadeante y subrayado, activado mediante códigos de escape , además del texto inverso estándar de Commodore. [12] El modo de 80 columnas del C128 puede mostrar caracteres en minúscula junto con caracteres gráficos PETSCII ; El modo de 40 columnas está sujeto a la misma restricción de "mayúsculas y minúsculas" o "mayúsculas más gráficos" que los Commodores anteriores. [13] Los modos de 40 y 80 columnas son independientes y ambos pueden estar activos al mismo tiempo. Un programador con una pantalla compuesta y RGB puede utilizar una de las pantallas como "bloc de notas" o como soporte rudimentario de búfer múltiple. La pantalla activa se puede cambiar con ESC-X. [14] Se agregó un botón de reinicio de hardware al sistema. El teclado, sin embargo, no se cambió al diseño Selectric como se había convertido en estándar, sino que conservó el mismo diseño derivado del ADM-3A que en los modelos anteriores de Commodore.

La parte trasera del Commodore 128

El chip VDC es en gran medida inútil para los juegos, ya que no tiene sprites ni interrupciones de trama. [ ¿ investigacion original? ] Los NTSC C128 funcionarán con cualquier monitor tipo CGA (TTL RGB @ 15 kHz/60 Hz), como el IBM 5153. Sin embargo, los modelos PAL del C128 funcionan a 50 Hz y no son compatibles con la mayoría de los monitores CGA, que esperan una frecuencia de actualización de 60 Hz. El pin 7 de la salida VDC (normalmente no utilizado en monitores CGA) produce una señal monocromática NTSC/PAL, pero no se proporcionó ningún cable para ello y los usuarios interesados ​​tuvieron que fabricar el suyo propio o comprarlo en el mercado de accesorios. [ ¿ investigacion original? ]

Se introdujeron dos nuevas unidades de disco junto con el C128: la efímera 1570 de una cara y la 1571 de doble cara . Se anunció un modelo 1572 de doble disco , pero nunca se produjo. Más tarde se presentó el 1581 de 3,5 pulgadas . [ cita necesaria ] Todas estas unidades son más confiables que el 1541 y prometen un rendimiento mucho mejor a través de una nueva función de "modo ráfaga". [ ¿ investigacion original? ] La unidad 1581 también tiene más RAM integrada que sus predecesoras, lo que permite abrir una mayor cantidad de archivos a la vez. BASIC 7.0 incluye DLOADcomandos DSAVEpara soportar la carga y guardado en disco sin usar el ,8número de dispositivo u otro, y también un DIRECTORYcomando que lee la información del catálogo de un disco directamente en la memoria de la pantalla sin sobrescribir la memoria BASIC como en BASIC 2.0. Además, el C128 introduce el arranque automático del software del disco, una característica estándar en la mayoría de las computadoras personales, pero ausente en las máquinas Commodore hasta ese momento. Los usuarios ya no tienen que escribir LOAD"*",8,1. BASIC también agregó un comando COLLECT para eliminar archivos "splat" (archivos que no se cerraron correctamente y se truncaron a longitud cero). [ cita necesaria ]

Todas las unidades 1571 normalmente se iniciarán en modo nativo en el C128. Si el usuario cambia al modo C64 escribiendo "GO 64", la unidad permanece en modo nativo. Pero si el modo C64 se activa manteniendo presionada la tecla Commodore al encender, el 1571 pasa al modo 1541. Esta rutina es necesaria para el software que realiza acceso a la unidad de bajo nivel. [ cita necesaria ]

El C128 tiene el doble de RAM que el C64, una proporción mucho mayor de la cual está disponible para programación BÁSICA, debido al nuevo chip de conmutación de banco MMU . Esto permite que el código del programa BASIC se almacene por separado de las variables, lo que mejora en gran medida la capacidad de la máquina para manejar programas complejos, acelera la recolección de basura y facilita la depuración para el programador. Se puede ejecutar un programa en ejecución STOP, editar su código, inspeccionar o alterar los valores de las variables en modo directo y reanudar la ejecución del programa con la tabla de variables intacta usando el comando de BASIC GOTO. [15] Aunque otros BASIC admiten el CONTcomando para reiniciar la ejecución sin borrar las variables, editar cualquier código hace que se borre. [16] Se pueden cargar diferentes configuraciones de memoria usando el comando BASIC BANK. [ cita necesaria ]

BASIC 7.0 tiene un complemento completo de gráficos y comandos de manejo de sonido, así como los comandos de disco de BASIC 4.0 y una limpieza de basura mejorada, y soporte para programación estructurada a través de IF...THEN...ELSE, DO...WHILE, y MIENTRAS...WEND bucles. [ cita necesaria ] Sin embargo, los caracteres programables aún no son compatibles, por lo que el programador tendrá que manipularlos con PEEK y POKE como en el VIC-20 y C64. [ ¿ investigacion original? ]

En el lado negativo, BASIC 7.0 funcionó considerablemente más lento que BASIC 2.0 a menos que se usara el modo de 2 MHz debido a su tamaño de 28 KB (un aumento del 250% sobre BASIC 2.0) y a tener que cambiar de banco para acceder a las variables del programa y al texto del programa BASIC (si es mayor que 16k de longitud). [ cita necesaria ]

La ROM del 128 contiene un huevo de pascua : al ingresar el comando SYS 32800,123,45,6en modo nativo se muestra una pantalla con una lista de los principales desarrolladores de la máquina seguida del mensaje Link arms, don't make them."Además, al ingresar las palabras clave QUITo OFFse producirá un archivo ?UNIMPLEMENTED COMMAND ERROR. Estos comandos son vestigios del intérprete BASIC destinados a una computadora portátil LCD planificada pero nunca producida y estaban destinados a salir del intérprete BASIC e ignorar la entrada del teclado durante la ejecución de un programa sensible, respectivamente. [ cita necesaria ]

Las mayores capacidades de hardware del C128, especialmente el aumento de RAM, resolución de pantalla y velocidad del bus serie, lo convirtieron en una plataforma más capaz que el C64 para ejecutar el sistema operativo gráfico GEOS . [ cita necesaria ]

CP/M

El uso del modo CP/M requiere el uso de un disquete de arranque. El disquete se incluía con la computadora, que no incluía una unidad de disco.

La segunda de las dos CPU del C128 es la Zilog Z80 , que permite al C128 ejecutar CP/M . El C128 se envió con CP/M 3.0 (también conocido como CP/M Plus, que es compatible con versiones anteriores de CP/M 2.2) y emulación de terminal ADM31/3A . Había disponible un cartucho CP/M para el C64, pero era costoso y de uso limitado ya que la unidad 1541 no puede leer los discos formateados MFM en los que se distribuía el software CP/M. El software debía estar disponible en discos específicos de Commodore formateados utilizando el esquema de codificación GCR . [ cita necesaria ] Commodore puso a disposición versiones de PerfectCalc y PerfectWriter derivado de EMACS , [17] y los grupos de usuarios de Commodore a veces tenían una selección de disquetes CP/M, pero la disponibilidad limitada del software anulaba uno de los principales atractivos de CP/M: su enorme biblioteca de software. Además, los cartuchos sólo funcionan en los primeros modelos C64 de 1982 y son incompatibles con unidades posteriores. Como también eran incompatibles con el C128, el equipo de diseño decidió admitir CP/M colocando el Z80 en la placa principal del sistema. [ cita necesaria ]

El C128 ejecuta CP/M notablemente más lento que la mayoría de los sistemas CP/M dedicados, ya que el procesador Z80 funciona a una velocidad efectiva de sólo2MHz  . _ Esto se debió a que el bus del sistema del C128 se diseñó alrededor de las CPU 65xx. Estas CPU manejan datos y direcciones de memoria de manera muy diferente al Z80. CP/M también se ejecutó más lentamente por varias razones, como la necesidad de pasar el control al 8502 para cualquier E/S o procesamiento de interrupción. Por estas razones, pocos usuarios ejecutaron el software CP/M en el C128. [ ¿ investigacion original? ]

Cuando se enciende el C128, el Z80 se activa primero y ejecuta una pequeña ROM del cargador de arranque en $0-$FFF para verificar la presencia de un disco CP/M. Si no se detecta ninguno, el control pasa al 8502 y se inicia el modo nativo C128. [ cita necesaria ]

En la práctica, el modo CP/M requiere una unidad 1571 o 1581 para ser útil, ya que una 1541 no puede leer discos MFM y funcionará mucho más lento debido a que no admite el modo ráfaga del C128. No obstante, los discos de arranque CP/M deben estar en el formato GCR nativo de la unidad; Los discos MFM no se pueden iniciar, solo se pueden leer una vez que el usuario ya está en CP/M. Esto se debe a que el código necesario para operar la unidad en modo MFM se carga como parte del proceso de inicio. Además, generalmente se requiere el modo de 80 columnas, ya que la mayoría del software CP/M espera una pantalla de 80 columnas. El C128 emula un terminal ADM-3A [ cita necesaria ] en modo CP/M, por lo que será necesario configurar el software para eso. Además de los comandos estándar del terminal ADM-3A, hay varios adicionales disponibles para usar las funciones de VIC-II y VDC, incluida la configuración del texto y el color de fondo. El intérprete de comandos CP/M (aunque no el software de aplicación) incluye una protección para evitar que el usuario emita un código de control para que el texto y el fondo tengan el mismo color, lo que haría que el texto fuera invisible y obligaría al usuario a reiniciar la computadora. Si esto sucede, el fondo predeterminado será gris con texto marrón. [ cita necesaria ]

En modo CP/M, es posible ejecutar MBASIC, la versión de Microsoft de BASIC-80 para CP/M. En comparación con el modo nativo BASIC 7.0, MBASIC es conciso y limitado en sus capacidades, requiere el uso de combinaciones de teclas estilo terminal para editar líneas de programa o mover el cursor de texto y carece de funciones de sonido o gráficos. Aunque MBASIC tiene características matemáticas y de cálculo de las que BASIC 7.0 carece, como soporte para números enteros y variables de doble precisión, cualquier ventaja de velocidad obtenida mediante el uso de variables enteras se vuelve discutible debido al rendimiento extremadamente lento de la computadora en modo CP/M. [ ¿ investigacion original? ] Además, Commodore BASIC tiene coma flotante de 40 bits que sirve como punto medio entre la coma flotante de 32 bits de MBASIC y las variables de doble precisión de 64 bits. MBASIC también ofrece sólo 34k de espacio gratuito para programas frente a los aproximadamente 90k de BASIC 7.0. [ cita necesaria ]

Otros software CP/M como Wordstar y Supercalc también serán superados significativamente por equivalentes C128 en modo nativo como PaperClip , que también tienen una interfaz más fácil de usar. [ ¿ investigacion original? ]

El CP/M CBIOS (la parte de CP/M que interactúa con el hardware) no interactúa directamente con el hardware como en la mayoría de las implementaciones de CP/M; más bien, llama a las rutinas del kernel para el manejo de interrupciones y E/S; cuando es necesario usar el kernel, el Z80 usa rutinas en $FFD0 - $FFEF para pasar datos de parámetros al 8502, que luego se activa y el Z80 se desactiva. Una vez que la rutina del núcleo termina de ejecutarse, el control vuelve al Z80. [ cita necesaria ] Se informó que el programador a cargo de portar CP/M al C128 tenía la intención de tener la interfaz CBIOS con el hardware directamente en el lenguaje de máquina Z80, pero tuvo grandes dificultades con los chips VDU ya que eran propensos a sobrecalentarse. y autodestructivo. La VDU también se sometió a numerosas revisiones de hardware mientras el C128 estaba en desarrollo y el programador CP/M no pudo hacer que su código funcionara correctamente, por lo que el equipo de ingeniería del C128 solicitó que simplemente reescribiera el CBIOS para pasar llamadas de función al 8502. [ 18] [19]

El modo CP/M es muy diferente de los entornos operativos familiares para los usuarios de Commodore. Mientras que Commodore DOS está integrado en la ROM de las unidades de disco Commodore y generalmente se accede a él a través de BASIC, CP/M requiere el uso de un disquete de arranque y requiere la entrada de comandos concisos heredados de plataformas de minicomputadoras . Los programas CP/M tienden a carecer de la naturaleza fácil de usar de la mayoría de las aplicaciones Commodore. Con la intención de brindarle a la nueva computadora una gran biblioteca de software comercial de nivel profesional de la que Commodore carecía, CP/M ya había pasado su mejor momento a mediados de la década de 1980, por lo que rara vez se usaba en el C128. [ ¿ investigacion original? ]

C64

Foto de la década de 1980 que muestra una configuración C128 con dos unidades de disco y dos monitores que muestran pantallas independientes de 40 y 80 columnas. Muchos usuarios continuaron usando el 1541 heredado de su sistema C64 como segunda unidad.

Al incorporar las ROM C64 BASIC y Kernal originales en su totalidad (16 KB en total), el C128 logra casi el 100 por ciento de compatibilidad con el Commodore 64. Se puede acceder al modo C64 de tres maneras:

  1. Mantener presionada la tecla del logotipo de Commodore al iniciar.
  2. Ingresar el GO 64comando y luego responder Yal ARE YOU SURE?mensaje, en BASIC 7.0. [20]
  3. Arrancando con un cartucho C64 enchufado.

Conectar a tierra las líneas /EXROM y/o /GAME del puerto del cartucho hará que la computadora se inicie automáticamente en modo C64. Esta característica duplica fielmente el comportamiento del C64 cuando un cartucho (como el BASIC de Simons ) se conecta al puerto y afirma cualquiera de estas líneas pero, a diferencia de un C64 real, donde la acción de cambio de mapa de memoria de estas líneas se implementa directamente en hardware, el código de inicio del firmware Z80 del C128 sondea estas líneas durante el encendido y luego cambia de modo según sea necesario. Los cartuchos C128 en modo nativo son reconocidos e iniciados mediante el sondeo del kernel en ubicaciones definidas en el mapa de memoria. [ cita necesaria ]

El modo C64 duplica casi exactamente las características de un C64 de hardware. El modo de ráfaga MMU, Z80 e IEC están deshabilitados en el modo C64; sin embargo, todas las demás funciones de hardware del C128, incluidos el VDU y el modo de 2 MHz, aún están accesibles. Las teclas extendidas del teclado C128 se pueden leer en lenguaje de máquina, aunque las rutinas del núcleo sólo reconocen las teclas que existen en el C64. Algunos juegos son capaces de detectar si un C128 está funcionando y cambiar al modo de 2 MHz durante el retroceso vertical para un rendimiento más rápido. [ cita necesaria ]

En los C128 norteamericanos, cuando está en modo C64, incluso la ROM de caracteres (fuente) cambia con respecto a la del modo C128. Los primeros prototipos del C128 tenían una única ROM, con un conjunto de caracteres ligeramente mejorado respecto al del C64. Pero algunos programas C64 leen la ROM de caracteres como datos y fallarán de varias maneras en un C128. Por lo tanto, al C128 se le proporcionó una ROM de caracteres de doble tamaño, que ofrece la fuente C128 en modo C128 y la fuente C64 en modo C64. Los modelos internacionales del C128 utilizan la fuente C64 sin modificar en ambos modos, ya que la segunda mitad de la ROM de caracteres está dedicada a la fuente internacional (que contiene cosas como caracteres acentuados o diéresis alemanas ). [ cita necesaria ]

Algunos de los pocos programas C64 que fallan en un C128 se ejecutarán correctamente cuando ⇪ Caps Lockse presione la tecla (o la tecla ASCII/Nacional en los modelos C128 internacionales). Esto tiene que ver con el puerto de E/S integrado más grande de la CPU del C128. Mientras que la llave que se encuentra tanto en el C64 como en el C128 es simplemente un pestillo mecánico para la llave izquierda, la llave del C128 se puede leer a través del puerto de E/S integrado del 8502 . Algunos programas C64 se confunden con este bit de E/S adicional; Mantener la tecla en la posición hacia abajo forzará la línea de E/S a nivel bajo, coincidiendo con la configuración del C64 y resolviendo el problema. [ cita necesaria ]SHIFT LOCK⇧ Shift⇪ Caps Lock⇪ Caps Lock

Un puñado de programas C64 escriben en $D030 (53296), a menudo como parte de un bucle que inicializa los registros del chip VIC-II . Este registro mapeado en memoria, no utilizado en el C64, determina la velocidad del reloj del sistema. Dado que este registro es completamente funcional en el modo C64, una escritura involuntaria puede alterar la pantalla de 40 columnas al cambiar la CPU a 2 MHz, velocidad a la cual el procesador de video VIC-II no puede producir una pantalla coherente. Afortunadamente, pocos programas padecen este defecto. En julio de 1986, COMPUTE!'s Gazette publicó un programa de escritura que explotaba esta diferencia mediante el uso de una interrupción ráster para habilitar el modo rápido cuando se llegaba a la parte inferior de la pantalla visible, y luego lo deshabilitaba cuando la representación de la pantalla comenzaba nuevamente en la parte superior. . Al utilizar la frecuencia de reloj más alta durante el período en blanco vertical , se mantiene la visualización de vídeo estándar y al mismo tiempo se aumenta la velocidad de ejecución general en aproximadamente un 20 por ciento. [21] [22]

Algunos programas C64 carecerían de efectos de sonido y música porque en un C64 la página de memoria $D4xx del chip SID también se reflejaba en las páginas $D5xx, $D6xx y $D7xx, mientras que en un C128 solo era accesible a través de la página $D4xx. Este no es un problema común, ya que la guía de referencia de C64 solo describe los registros en $D4xx en detalle mientras describe $D5xx-$D8xx simplemente como "IMÁGENES SID", lo que hace que la mayoría de los programas accedan a ellos a través de la página $D4xx y, por lo tanto, reproduzcan el sonido. como estaba previsto en un C128. [ cita necesaria ]

Una manera fácil de diferenciar entre un C64 de hardware y un C128 que funciona en modo C64, generalmente usado desde un programa en ejecución, es escribir un valor diferente de la $FF (255)dirección de memoria $D02F (53295) , un registro que se usa para decodificar las claves adicionales del C128 ( el teclado numérico y algunas otras teclas). En el C64, esta ubicación de memoria siempre contendrá el valor $FFsin importar lo que se escriba en ella, pero en un C128 en modo C64, el valor de la ubicación (un registro mapeado en memoria) se puede cambiar. Por lo tanto, verificar el valor de la ubicación después de escribir en ella revelará la plataforma de hardware real. [ cita necesaria ]

configuración de RAM

Para manejar cantidades relativamente grandes de ROM y RAM (diez veces el tamaño del 8502)64 KB de espacio de direcciones) el C128 utiliza el chip 8722 MMU para crear diferentes mapas de memoria, en los que aparecerían diferentes combinaciones de RAM y ROM según patrones de bits escritos en el registro de configuración de la MMU en la dirección de memoria $FF00 . Otra característica de la unidad de gestión de memoria es permitir la reubicación de la página cero y la pila . [ cita necesaria ]

Aunque en teoría el C128 puede admitir 256k de RAM en cuatro bloques, la PCB no tiene disposiciones para agregar esta RAM adicional, ni la MMU puede acceder a más de 128k. Por lo tanto, si la MMU está programada para acceder a los bloques 2 o 3, todo lo que resulta es un espejo de la RAM en los bloques 0 y 1. [ cita necesaria ]

Dado que los registros de E/S y las ROM del sistema se pueden deshabilitar o habilitar libremente, además de poder ubicarse en cualquier banco de RAM y el VIC-II está configurado para usar cualquiera de los bancos para su espacio de memoria, son posibles hasta 256 configuraciones de memoria, aunque el La gran mayoría de ellos son inútiles (por ejemplo, son posibles combinaciones no viables como la ROM del núcleo en el banco 0 y los registros de E/S en el banco 1). Debido a esto, la declaración BANK de BASIC permite al usuario seleccionar 15 de los arreglos más útiles, siendo el encendido predeterminado el Banco 15. Este valor predeterminado coloca las ROM del sistema, los registros de E/S y el texto del programa BASIC en el bloque 0, con el bloque 1 es utilizado por las variables del programa BASIC. El texto y las variables del programa BÁSICO pueden extenderse hasta $FFEF . Pero dado que el bloque 0 contiene las ROM y los registros de E/S desde $4000 en adelante, BASIC utiliza una rutina de conmutación interna para leer texto de programa superior a $3FFF . [ cita necesaria ]

Los 1k superior e inferior de RAM ( $0$3FF y $FF00 - $FFFF ) son RAM "compartida", visible desde ambos bloques. La MMU permite expandir cualquiera de los dos en incrementos de hasta 16k. El rango $0$3FF contiene la página cero y la pila, mientras que $FF00 - $FFFF contiene los registros MMU y los vectores de reinicio. Estas áreas siempre son compartidas y no se pueden cambiar a RAM no compartida. La RAM compartida es siempre el banco opuesto al que utiliza actualmente la CPU, por lo tanto, si se selecciona el banco 0, cualquier lectura o escritura en la RAM compartida se referirá a las ubicaciones correspondientes en el banco 1 y viceversa. El VIC-II se puede configurar para usar cualquier banco de RAM y desde allí, su ventana normal de 16k. Mientras que en el C64, el VIC-II sólo puede ver la ROM de caracteres en los bancos 2 y 4 de su espacio de memoria, el C128, en cambio, permite habilitar o deshabilitar la ROM de caracteres para cualquier banco VIC-II vía la caja registradora a $1 . Además, hay dos conjuntos de RAM en color: uno visible para la CPU y el otro para el VIC-II, y el usuario puede seleccionar qué chip ve qué. [ cita necesaria ]

En el modo CP/M, el prefijo del segmento de programa y el área del programa transitorio residen en el banco 1 y los registros de E/S y el código del sistema CP/M en el banco 0. [ cita necesaria ]

La RAM del C128 se puede ampliar desde los 128 KB estándar a 256, 512 o incluso 1024 KB, ya sea mediante el uso de módulos de expansión de memoria comerciales o haciendo uno basado en esquemas disponibles en Internet. [23]

Las unidades de expansión de RAM de Commodore utilizan un controlador DMA 8726 externo para transferir datos entre la RAM del C128 y la RAM de la unidad de expansión. [ cita necesaria ]

C128D

Commodore 128D en exhibición en el Musée Bolo , EPFL , Suiza
Fuente de alimentación conmutada Commodore 128DCR , equipada con un ventilador de refrigeración de 60 mm

A finales de 1985, Commodore lanzó una nueva versión del C128 con un chasis rediseñado que se asemeja al Amiga 1000 . Llamado Commodore 128D, este nuevo modelo europeo presentaba un chasis de plástico con un asa de transporte en el lateral, incorporó una unidad de disco 1571 en el chasis principal, reemplazó el teclado incorporado por uno desmontable y agregó un ventilador de refrigeración . El teclado también presentaba dos patas plegables para cambiar el ángulo de escritura. [24]

El C128 se lanzó en el Reino Unido el 25 de julio de 1985, [25] y en Norteamérica en noviembre de 1985. [26]

Según Bil Herd , jefe del equipo de hardware (también conocido como "C128 Animals"), el C128D estaba listo para producción al mismo tiempo que la versión normal. Trabajar para lanzar dos modelos al mismo tiempo había aumentado el riesgo de entrega a tiempo y era evidente que la PCB principal tiene grandes orificios en secciones críticas para soportar la carcasa C128D y la carcasa normal al mismo tiempo. [ cita necesaria ]

A finales de 1986, Commodore lanzó una versión del C128D en América del Norte y partes de Europa denominada C128DCR, CR que significa "de costo reducido". El modelo DCR presenta un chasis de acero estampado en lugar de la versión de plástico del C128D (sin asa de transporte), una fuente de alimentación modular de modo conmutado similar a la del C128D, que conserva el teclado desmontable y la unidad de disquete interna 1571 de ese modelo. Se consolidaron varios componentes de la placa base para reducir los costos de producción y, como medida adicional de reducción de costos, se eliminó el ventilador de refrigeración que estaba instalado en la fuente de alimentación del modelo D. Sin embargo, se conservaron las disposiciones de montaje en el subchasis de la fuente de alimentación, así como los dos puntos de conexión de CC de 12 voltios en la placa de circuito impreso de la fuente de alimentación para alimentar el ventilador. La disposición de montaje del C128DCR es para un ventilador de 60 mm. [ cita necesaria ]

Una mejora significativa introducida con el modelo DCR fue la sustitución del controlador de pantalla de vídeo (VDC) 8563 por el 8568 VDC, técnicamente más avanzado , y su equipamiento con 64 KB de RAM de vídeo, la cantidad máxima direccionable por el dispositivo. El aumento de cuatro veces en la RAM de vídeo respecto a la instalada en el C128 "plano" hizo posible, entre otras cosas, mantener múltiples pantallas de texto en apoyo de un verdadero sistema de ventanas, o generar gráficos de mayor resolución con una paleta de colores más flexible. . Pocos programas comerciales aprovecharon estas posibilidades. [ cita necesaria ]

El C128DCR está equipado con nuevas ROM denominadas "ROM de 1986", denominadas así por la fecha de copyright que se muestra en la pantalla de inicio. Las nuevas ROM solucionan una serie de errores que están presentes en las ROM originales, incluido un infame error uno por uno en la tabla de decodificación del teclado, en el que el carácter permanecía en minúscula cuando estaba activo. Parte del software solo se ejecutará en el DCR, debido a la dependencia de las características mejoradas del hardware de la computadora y de las ROM revisadas. [27]Q⇪ Caps Lock

A pesar de las capacidades de video RGB mejoradas del DCR, Commodore no mejoró BASIC 7.0 con la capacidad de manipular gráficos RGB. Manejar el VDC en modo gráfico continúa requiriendo el uso de llamadas a primitivas ROM del editor de pantalla o sus equivalentes en lenguaje ensamblador , [28] o mediante el uso de extensiones de lenguaje BASIC de terceros, como " BASIC 8 " de Free Spirit Software, que agrega Comandos de gráficos VDC de alta resolución para BASIC 7.0 . [ cita necesaria ]

El rendimiento del mercado

En enero de 1987, Info informó que "Todos esos rumores sobre la muerte inminente del C128 pueden tener alguna base real". Al afirmar que Commodore quería desviar recursos para aumentar la producción de 64C y sus clones de PC, la revista afirmó que "la última palabra en línea es que el último C128 saldrá de producción en diciembre de 1987". [29] ¡Calcular! declaró en 1989: "Si compró su 128 con la impresión de que el software específico del 128 sería abundante y llegaría rápidamente, probablemente se haya sentido bastante decepcionado. Uno de los principales puntos de venta del 128 es su total compatibilidad con el 64, un punto que ha funcionado más en contra del 128 que a su favor". [27] Debido a que el 128 ejecutaría prácticamente todo el software 64, y debido a que las computadoras domésticas de 32/16 bits de próxima generación, principalmente Commodore Amiga y Atari ST , representaban la última tecnología, apareció relativamente poco software para el modo nativo del C128 ( probablemente del orden de 100 a 200 títulos comerciales, más la proporción habitual de programas de escritura de revistas y de dominio público ), lo que lleva a algunos usuarios a arrepentirse de su compra. [30] Si bien el C128 vendió un total de 4 millones de unidades entre 1985 y 1989, su popularidad palideció en comparación con la de su predecesor. Una explicación para estas cifras de ventas más bajas puede ser que el C64 se vendió a personas interesadas principalmente en los videojuegos, y el C128, más caro, no añadió mucho valor para mejorar. [ ¿ investigacion original? ]

Algunos programas de C64, como Bard's Tale III y Kid Niki, se ejecutaron en modo 128 sin indicarlo en la documentación, utilizando el arranque automático y el acceso al disco más rápido del 1571. [31] Algunas aventuras de texto de Infocom aprovecharon la pantalla de 80 columnas y aumentaron la capacidad de memoria. Algunos juegos de C64 se trasladaron al modo nativo como Kikstart 2 y The Last V8 de Mastertronic , que tenían versiones C128 separadas, y Ultima V: Warriors of Destiny de Origin Systems , que usaba RAM adicional para música si se ejecutaba en el C128. Star Fleet I: The War Begins de Interstel tenía versiones separadas y aprovechó la visualización de 80 columnas en el C128. Sin embargo, la gran mayoría de los juegos simplemente se ejecutaban en modo C64 ya que pocos desarrolladores aprovechaban el rendimiento nativo del C128. [32]

Por el contrario, muchos títulos de software de productividad del C64 se trasladaron al C128, incluidas las populares series PaperClip y PaperClip Writer. [33] Este software utilizó memoria adicional, pantalla de 80 columnas, teclado mejorado y unidades de disco de gran capacidad para proporcionar funciones que se consideraban esenciales para el uso empresarial. [34] Con su avanzado lenguaje de programación BASIC, compatibilidad CP/M y paquetes de software nativos " fáciles de usar " como Jane , Commodore intentó crear un mercado empresarial de gama baja para el C128 similar a su estrategia con el Plus/4 . incluso distanciándose de la etiqueta de computadora doméstica al marcar el C128 como "Computadora personal" en la carcasa. [35] [36] Significativamente, el C128 fue la primera computadora Commodore en anunciar su uso de Microsoft BASIC , donde el nombre de Microsoft habría sido un activo competitivo. [ cita necesaria ]

La C128 era sin duda una mejor máquina de negocios que la C64, pero en realidad no era una mejor máquina de juego. [ ¿ investigacion original? ] Las personas que querían máquinas comerciales compraron clones de PC de IBM casi exclusivamente cuando se lanzó el C128. La disponibilidad de IBM compatibles de bajo costo como el Leading Edge Model D y Tandy 1000 que, en algunos casos, se vendieron por menos de un sistema C128 completo descarriló la estrategia informática para pequeñas empresas de Commodore . [ cita necesaria ] Había un programa CAD de nivel profesional , Home Designer de BRiWALL, [37] pero, nuevamente, la mayor parte de este trabajo se realizaba en PC en la era del C128. La razón principal por la que el C128 todavía se vendía bastante bien fue probablemente que era una máquina mucho mejor para la programación de aficionados que el C64, además de ser un modelo de seguimiento natural para los propietarios con importantes inversiones en periféricos y software del C64. [ ¿ investigacion original? ]

Pero en última instancia, el C128 no pudo competir con los nuevos sistemas de 16/32 bits, que lo superaron a él y al resto de su generación de 8 bits en casi todos los aspectos. Cuando se suspendió el C128(D/DCR) en 1989, se informó que su fabricación costaba casi tanto como el Amiga 500 , aunque el C128D tuvo que venderse por varios cientos de dólares menos para mantener intacta la imagen de marketing de alta gama del Amiga. . [ cita necesaria ]

Bil Herd ha declarado que los objetivos de diseño del C128 no incluían inicialmente una compatibilidad del 100% con el C64. Siempre se buscó alguna forma de compatibilidad después de que una mujer se acercó a Herd en la presentación del Plus/4 y estaba decepcionada de que el paquete de software educativo que había escrito para el C64 no se ejecutara en la nueva computadora de Commodore, pero cuando el departamento de marketing de Commodore se enteró de esto , anunciaron de forma independiente compatibilidad total. Herd dio el motivo de la inclusión del procesador Z80 en el 128 para garantizar esta afirmación de "100% de compatibilidad", ya que admitir el cartucho Z80 del C64 habría significado que el C128 suministrara energía adicional al puerto del cartucho. También afirmó que el chip de vídeo VDC y el Z80 fueron fuentes de problemas durante el diseño de la máquina. Herd añadió que "sólo esperaba que el C128 se vendiera durante aproximadamente un año, pensamos que un par de millones estaría bien y, por supuesto, no socavaría a Amiga ni siquiera al C64". [32] Después de que Commodore aumentara el precio del 64 por primera vez al introducir el 64C rediseñado en 1986, se informó que sus ganancias por cada 64C vendido eran mucho mayores que las del C128. [38]

Especificaciones

Ver también

Referencias

  1. ^ "Commodore 128 (plataforma)".
  2. ^ Matthews, Ian (11 de julio de 2003). "El Commodore 128: la computadora de 8 bits más versátil jamás fabricada". commodore.ca . Archivado desde el original el 26 de julio de 2003 . Consultado el 28 de diciembre de 2020 .
  3. ^ Bennet, Chris. "Nuevas computadoras en la feria CES" (PDF) . Archivado desde el original (PDF) el 22 de octubre de 2012 . Consultado el 13 de julio de 2011 .
  4. ^ "Computadora Commodore 128D". www.oldcomputers.net . 8 de mayo de 2016 . Consultado el 28 de diciembre de 2020 .
  5. ^ "Comodoro 128D". Archivado desde el original el 24 de julio de 2011 . Consultado el 16 de febrero de 2011 .
  6. ^ "Guía del sistema C128 - 9.5 MOVER EL CURSOR EN MODO C64". commodore.ca . Consultado el 8 de agosto de 2016 .
  7. ^ Espera, Mitchell; Antes, Robert W.; Volpe, Jerry (1982). El libro oficial del Commodore 128. HW Sams. ISBN 9780672224560. Un teclado numérico (las teclas numéricas agrupadas como en una calculadora) es útil para cualquiera que ingrese grandes cantidades de datos numéricos, pero esta característica faltaba en el Commodore 64. Dado que muchos propietarios de Commodore 64 pasaban horas ingresando programas en lenguaje de máquina en el En forma de largas listas de números, a menudo se solicitaba esta característica.
  8. ^ Waite, Lafore & Volpe 1982: "... hacen que el C128 sea más atractivo para aquellos desarrolladores de software empresarial establecidos que están acostumbrados a trabajar con disposiciones de teclado más tradicionales".
  9. ^ Commodore CP/M Código fuente y manual del programador.
  10. ^ "Plus/4 y C-16: decepcionantemente mediocres" (PDF) .
  11. ^ "Portado de Commodore; vista previa de las impresoras Plus 4, Amiga y Alphacom".
  12. ^ "Guía del sistema C128 - Apéndice I". Commodore.ca. Archivado desde el original el 31 de mayo de 2012 . Consultado el 18 de abril de 2012 .
  13. ^ Waite, Lafore y Volpe 1982
  14. ^ "Eslabón perdido descubierto". CORRER . No. Número especial 2. 1986. págs. 66–68.
  15. ^ Simmonds y Borden 1986, pág. 84.
  16. ^ "Guía del usuario de GW-BASIC".
  17. ^ ¡ Calcular! abril de 1985
  18. ^ "¿Por qué el Commodore C128 funciona mal cuando ejecuta CP/M?". Intercambio de pila .
  19. ^ "Sobrecarga CP/M". Los programadores del C128 CP/M que deseen agregar o cambiar funciones del sistema operativo deben intentar realizar cambios en el BIOS. Por un lado, el código fuente del BIOS está disponible, pero no para BDOS o CCP.
  20. ^ "Guía del sistema C128 - 2.2.1 TABLA DE CAMBIO DE MODO". commodore.ca . Consultado el 8 de agosto de 2016 .
  21. ^ jul86-64 ModoVelocidad (A)
  22. ^ jul86-64 ModoVelocidad (B)
  23. ^ Ampliaciones de memoria para el Commodore 128
  24. ^ "Comodoro 128D". Historia de la Computación . 9 de enero de 2024 . Consultado el 9 de enero de 2024 .
  25. ^ "Reportaje especial: ¡Feliz cumpleaños!". Semanario de Computación Popular . 1 de mayo de 1987. págs. 14-18 (18).
  26. ^ "Índice de 1985" (PDF) . Animador informático . vol. 4, núm. 10 de enero de 1986. p. 6.
  27. ^ ab Randall, Neil (junio de 1989). "Sólo 128". ¡Calcular! . vol. 11, núm. 6 #109. pag. 54 . Consultado el 11 de noviembre de 2013 .
  28. ^ Wallace, Luis R; Darus, David P (febrero de 1986). "Gráficos de ultra alta resolución: un gran avance en su C-128". CORRER . vol. 3, núm. 2 #26. págs. 34–39.
  29. ^ "El molino de rumores". Información . No. 13. Enero-febrero de 1987. p. 52.
  30. ^ "La ejecución del correo". CORRER . vol. 3, núm. 11 #35. Noviembre de 1986. págs. 132-133.
  31. ^ Randall, Neil (octubre de 1988). "Más juegos". ¡Calcular! . vol. 10, núm. 10 #101. pag. 47 . Consultado el 10 de noviembre de 2013 .
  32. ^ ab En memoria del Commodore C128 Archivado el 29 de noviembre de 2014 en Wayback Machine.
  33. ^ "Soluciones digitales Inc" . Revista Commodore (Publicidad). vol. 8, núm. 7. julio de 1987. p. 2.
  34. ^ Guerra, Bob (marzo de 1986). "Productividad Plus para el C-128". CORRER . vol. 3, núm. 3 #27. págs. 24–36.
  35. ^ Kevelson, Morton (agosto de 1985). "Ceremonias de inauguración del Commodore 128". ¡Ahí! . Núm. 20, págs. 29–34.
  36. ^ "La nueva PC Commodore". CORRER . vol. 2, núm. 3 #15. Marzo de 1985. p. 6.
  37. ^ "Briwall". EJECUTAR (Publicidad). vol. 6, núm. 4 #64. pag. 46.
  38. ^ Leemon, Sheldon (febrero de 1987). "Microscopio". ¡Calcular! . vol. 9, núm. 2 #81. pag. 24 . Consultado el 9 de noviembre de 2013 .
  39. ^ Wiese, William Jr (julio de 1986). "El sistema informático personal Commodore 128". BYTE . vol. 11, núm. 7. McGraw-Hill . págs. 269-278. C-128 CP/M utiliza los procesadores Z80 y 8502. El Z80 ejecuta la mayoría de las funciones del BIOS CP/M.

Bibliografía

enlaces externos