Con "modo terminal" o "modo de texto" me refiero a la interfaz pura de texto, en donde se programaba BASIC, se interactuaba con el S.O. respectivo, y se corrían programas que usaban PRINT e INPUT para interactuar con el usuario.
Lo que aquí escribo es mi visión respecto a cómo Atari operaba, pero me gustaría conocer un poco más de otros computadores de la época, y de la boca de la misma comunidad: ¡ustedes!
NOTA: Yo hablo en pasado para darle el toque retro....
-----------
En la línea Atari de 8-bits, la "ventana de texto" era de 40 caracteres por 24 filas, aunque sólo se usaban 38 columnas por defecto, dejando las primeras 2 para margen. La zona de texto sólo podía tener un color y 2 tonos (uno para los caracteres y otro para el fondo). En BASIC, uno podía moverse libremente por la pantalla durante la edición de programas, pero seguía siendo modalidad de líneas de comando, permitiendo reingresar algo que aún permanece en pantalla tan sólo poniendo el cursor sobre algun caracter de esa línea y presionando "RETURN" (equivale a "Enter" o "Intro").
Pero Atari ofrecía 2 modos más de texto: uno que permite 20 carateres por línea pero usando 4 colores más el fondo y con el set de caracteres reducido a la mitad, y otro similar, pero del doble de alto (o sea, había espacio para un máximo de 12 líneas en pantalla). En estos modos no se podía usar el modo de texto libre para editar código, pero como las líneas de distintos tipos podían usarse para armar una misma pantalla especial para algún programa, en el sistema venía un par de modos especiales en que las 4 líneas inferiores eran en modo editable de 40 columnas y el resto tenía alguno de los otros 2 modos de texto (o de gráficos).
Dadas las caracteríasticas del hardware, era posible cambiar la definición del set de caracteres que venía en ROM, reemplazándola por una en RAM. Así se podía cambiar la tipografía o definir caracteres gráficos que representen sprites y generar animaciones cambiando la definición del caracter en memoria o el reemplazando el caracter en pantalla.
También era posible crear DL (Display List o lístas de despliege) que definían qué tipo de líneas usar en la pantalla, de arriba hacia abajo, por lo que se podía generar pantallas con textos y gráficos mixtos, e incluso espacio vacío que no ocupaba memoria.
Tambiés era posible generar líneas más anchas o más angostas, con lo que se podía ampliar el área visible (incluso saliendo por los costados de la pantalla, ideal para juegos con scroll horizontal) o más angostas (para ahorrar memoria, con solo 32 caracteres normales por línea).
Esos tres modos de texto eran todo lo que se necesitaba para hacer juegos y aplicaciones de ofimática, ¿pero era realmente así?
Para competir contra el importante mercado de los computadores de oficina, había que igualar su interfaz: los PCs usaban 80 columnas por 25 filas. Diversos proveedores introdujeron algún módulo de expansión, cartucho o modificación del HW interno. Incluso Atari liberó la XEP80. ¿Resultado? Programas incompatibles!!! Pero qué importa si lo que se quería era un computador de bajo costo para una secretaria acostumbrada a una máquina de escribir.
se veía asi:
Otro momento en que se requería de muchas columnas fue cuando se comenzó a usar el Atari para aceder a BBS's y a emular terminales VT-100 (80x24 u 80x25). Algunos programas de comunicaciones hacían uso de las expansiones disponibles (con ese costo adicional), en tanto que otros se las arreglaron para simular (emular) las 80 columnas. Para ello se usaron diversas técnicas, siendo la más usual la de dibujar texto en modo gráfico nativo, y la más creativa la del uso de flickering.
La técnica gráfica consistía en dibujar letras de 3x7 pixeles en modo gráfico 8, el de mayor resolución: 320x192, pero con sólo 1 color y dos tonos disponibles, similar al modo de texto por defecto. Si bien se lograba una legibilidad decente, su manipulación resultaba lenta en ciertas ocasiones, por ejemplo, durante un refresco de pantalla. Imaginen lo que sería avanzar una página al leer o editar un documento. Además, recordemos que a veces se perdían bytes en los modems si no se rescataban a tiempo, pues los buffers eran pequeños, y por otro lado la memoria del computador escasa, e incluso utilizada mayoremente por los pixeles del modo gráfico. Sin embargo, hubo programas que lograron optimizar rutinas mediante la manipulación de DL para obtener terminales VT-100 con respuesta a tiempo real. ICE-T es un programa de comunicaciones que se destacó en esta técnica. Un procesador de texto que usó esta técnica fue The Last Word.
La técnica del flickering se basaba en la utilización de un modo especial de texto de 40 columnas con 2 frames alternados a la fecuencia de refresco de la pantalla. En un frame se ponían sólo los caracteres que estaban en las columnas pares y en la otra iban aquellos de las impares. Como resultado se tenía cada par de caracteres utilizando la misma posición en pantalla. Para que no se superpusieran visualmente, cada frame tenía su propia definición del set de caracteres: uno cargadito para la izquierda y otro a la derecha, usando sólo los 4 bits respectivos para el caracter a definir en cada uno de sus respectivos 8 bytes. FlickerTerm fue un programa de comunicaciones que usó esta técnica. ¿Ventajas? No se requiere HW especial, ni tanta CPU o memoria RAM comparado al método gráfico. ¿Contras? El parpadeo constante termina cansando la vista, vienen los dolores de cabeza, etc...
Como indiqué al comienzo, me gustaría que otros aportaran información adicional para Atari o comparativa para otros computadores. Recuerdo que el ZX81 tenía una resolución en blanco y negro de 32x24, y el editor no era libre (sólo se podía editar la línea de más abajo), pero que era más que el VIC-20, que tenía 22x23!!! ¿Qué pasa con los MSX, Spectrum y el resto de los Commodore? ¿Se podía llegar a 80 columnas?