jueves, 20 de diciembre de 2012

El camino a los ordenadores personales: El SOL-20


Índices: El camino al O.P.       Historia de la Informática


Del Homebrew Computer Club surgieron varias empresas, una de ellas fue Processor Technology, creada en abril de 1975 por Gary Ingram y Bob Marsh. Su primer producto fue una placa con 4Kb de RAM para el Altair 8800, ya que la diseñada por MITS tenía problemas, por lo que se vendió bastante bien. Luego sacaron algunas placas de ampliación adicionales para el Bus S-100, como la famosa placa de video VDM-1 de Lee Felsenstein, miembro del Homebrew, o el interface de cinta de casete CUTS, que usaba su propio formato de grabación tipo Manchester, o el formato Kansas City estándar, formato en el que trabajó activamente Felsenstein.

La revista Popular Electronics quería un artículo sobre un terminal de ordenador inteligente, uno de los diseños que les faltaba, por lo que Les Solomon, uno de los editores responsables del artículo sobre el Altair (y de su nombre), pidió a Marsh y a Felsenstein que diseñaran uno. Bob Marsh, Lee Felsenstein y Gordon French (uno de los creadores del Homebrew) comenzaron a diseñar el Sol-20 en abril, y finalmente apareció en la portada de julio 1976, páginas 35 a 38, en un artículo titulado "Build the SOL Intelligent Computer Terminal" (construcción del Terminal de Ordenador Inteligente SOL), que se convirtió en el Sol-20 personal computer, que estuvo disponible comercialmente en diciembre de 1976.

El SOL-20 (fuente: corestack.com)

Usaba un procesador Intel 8080A a 2 MHz, montado en una placa base junto a 2Kb de ROM (estaban disponibles 3 diferentes sistemas llamados CONSOL, SOLED y SOLOS),  y 2Kb de RAM, compuesta por 1Kb de memoria de usuario y 1Kb de memoria de vídeo, ampliables hasta 64Kb como máximo, circuito de vídeo capaz de generar 16 líneas de 64 caracteres ASCII en blanco y negro, y un circuito de entrada/salida con un puerto serie y uno paralelo, además de cinco ranuras adicionales de expansión para el Bus S-100. Dentro de la caja, pintada en color "Azul IBM" y con los laterales en madera de nogal barnizada (comprada a bajo coste a un fabricante de armas), se montaba la placa base, la fuente de alimentación que proporcionaba +5V, +12V y -12V, un ventilador y el teclado de 85 teclas, que para abaratar el coste era similar a uno de membrana y en lugar de muelles usaba unos tacos de espuma.

El software se entregaba en cinta de casete, en ese momento no existía un único formato estándar, por lo que se entregan grabadas por una cara en formato Kansas City, y en la otra en formato CUTS. Gary Ingram y Dompier Steven escribieron el software, mientras que Lee Felsenstein escribió los manuales, que incluían todos los esquemas de los circuitos, la forma de montarlo y probarlo, e información sobre programación del Intel 8080.

Interior del SOL, izquierda fuente, derecha placas S-100, debajo la placa base (fuente: vintage-computer.com)

Se fabricaron unas 10.000 unidades, tanto montados (con un año de garantía) costando 2.129$, como en forma de kits (con 3 meses de garantía) costando 995$. Se anuncio una versión SOL-10 sin las ranuras de expansión y con un teclado de 70 teclas, que era 200$ mas económica, pero parece ser que no llegó a salir al mercado, pues no se conoce ninguna unidad actualmente.

También se fabricó una unidad de doble disquetera de 8" llamada Helios II Disk Memory System, disponible tanto en forma de kit por 1.895$, o montada por 2.295$. Cada disco tenía 384Kb de capacidad por disco, y para reducir costes usaba un solo motor para girar ambas unidades, y un solo motor para mover los dos cabezales de ambas unidades. A cambio disponía de un sistema electro-mecánico de expulsión de los discos, similar al usado unos años mas tarde por Apple en sus Lisa y luego en el Mac. Las unidades no eran demasiado fiables, y requerían periódicas recalibraciones, pero fueron la base de las disqueteras del Osborne-1, que fueron ejemplo de fiabilidad.

El SOL-20 y su gigantesca unidad de disquetes (fuente: oldcomputers.net)


La empresa se mantuvo activa hasta mayo de 1979, y la lista de productos fabricados en sus cuatro años de vida incluye:
  • Computadoras
    • Sol-20, tanto en kit como montado
  • Placas para el Bus S-100
    • VDM-1, placa de video
    • 3P + S, placa de entrada/salida con 3 puertos serie y 1 paralelo
    • 4KRA, ampliación de memoria de 4Kb estáticas
    • 8KRA, ampliación de memoria de 8Kb estáticas
    • 16KRA, ampliación de memoria de 16Kb dinámicas
    • 32KRA-1, ampliación de memoria de 32Kb dinámicas
    • CUTS, interfaz de cinta de casete en formato propio Manchester o Kansas City.
    • 2KRO, tarjeta con memoria EPROM
  • Software de sistema
    • SOLOS, el sistema operativo para el SOL-20
    • CONSOL, SOLED, monitores para el SOL-20
    • CUTER, un monitor y cargador de cinta de cassette.
    • ASSM, ensamblador para el 8080
    • BASIC / 5, interprete de BASIC para 5Kb de memoria
    • Extended Cassette Basic (8K), intérprete de BASIC para 8Kb de memoria
    • ALS-8, emulador de terminal
    • EDIT, un editor para el 8080
  • Juegos
    • 8080 Chess, un juego de ajedrez
    • TREK-80, un juego de temática Star Trek
    • GamePack 1, colección de Juegos
    • GamePack 2, colección de Juegos

miércoles, 19 de diciembre de 2012

El camino a los ordenadores personales: El IBM 5100


Índices: El camino al O.P.       Historia de la Informática


IBM lanzó en 1975 el modelo IBM 5100 Portable Computer, cuyo prototipo fue el IBM SCAMP de 1973. Estaba pensado para que lo adquirieran los ingenieros de IBM y de sus clientes, pero no era una máquina económica, por lo que no se puede considerar muy personal, ya que se vendía por entre 9.000$ y 20.000$ dependiendo de la cantidad de memoria. En 1978 se lanzó una versión mejorada, el IBM 5110. Se dejó de fabricar en 1982, un año después de haber lanzado una máquina que originalmente se había denominado IBM 5150, pero como realmente no comparten nada de arquitectura con esta serie, finalmente se llamó IBM PC, .

Un 5100 con su cinta QIC (fuente: swtpc.com)
Era un ordenador portable, ya que incluía una carcasa para poder transportarlo, en teoría se podía trasladar de un lugar a otro fácilmente, pero aunque no disponía de baterías su peso era de 25Kilos, hoy nos parece un mastodonte, pero en su momento una máquina ocupaba el tamaño de una nevera y pesaba media tonelada. Incluía en la carcasa un teclado completo alfabético, un monitor CRT de 5" (podía conectarse uno externo, y conmutarse entre fondo blanco y letras negras, o fondo negro y letras blancas con un interruptor), una unidad de cinta, pero no de tipo casete sino de tipo QIC (Cartucho de Cuarto de Pulgada), y toda la lógica, incluyendo el procesador, la ROM con el software de sistema y entre 16 y 64 Kb de RAM.

El procesador, denominado PALM (Put All Logic in Microcode, o Toda la Lógica Puesta en Microcódigo), era de 16 bits y estaba desarrollado en chips TTL. Estaba desarrollado para emular a los procesadores de sus mainframes, principalmente los sistema 3 y sistema 370, por lo que el código desarrollado se podía utilizar tanto en el 5100 como en estos mainframes.

Como no podía direccionar mas de 64 KB de memoria, el 5100 usaba paginación de memoria para acceder a mas usando conmutación de bancos. La memoria ROM se denominaba EROS (Executable Read Only Storage, Almacenamiento de solo lectura ejecutable), y contaba con una versión de APL y/o de BASIC, que se trataba como un periférico mas para poder direccionarla. Si disponía de los los dos lenguajes, se conmutaba entre ellos con un interruptor en la parte frontal del aparato. Junto a la máquina se entregaba una cinta con tres Problem Solver Libraries (Librerías de Soluciones a Problemas), ya que su base de programas en APL era muy grande, con mas de 1.000 rutinas aplicables a problemas matemáticos, estadísticos y de análisis financiero.

El aparato desmontado, todo el bloque de la derecha es el procesador y la memoria (fuente: oldcomputers.net)

Mas adelante IBM lanzó un módem para el aparato, de forma que se podía conectar a otras máquinas, y comportarse como terminal de Mainframes IBM, ya que internamente no usaba ASCII sino EBCD, versión reducida del EBCDIC.

Como anécdota sobre esta máquina, entre los años 2000 y 2001 apareció una persona en varias BBS (versión de los actuales foros anteriores a Internet) que se decía llamar John Titor, y alegaba que era un viajero del tiempo del año 2036, un soldado cuya misión era recuperar una máquina IBM 5100, necesaria para según unos solucionar el problema del efecto 2038 (una versión mas modernas del problema del año 2000 motivada por usar enteros largos para almacenar fecha y hora), y según otras para ejecutar un programa y desencriptar un texto, ya que no podía transportar un Sistema/370 completo.

Supuesta foto de Titor en un viaje a 1940 (fuente: misteriosurbanos.com)

martes, 18 de diciembre de 2012

El camino a los ordenadores personales: Procesadores



Índices: El camino al O.P.       Historia de la Informática


Estos son los principales procesadores desarrollados hasta 1976

Aunque los que se quedaron con el mercado fueron Intel, Motorola y MOS, y en menor medida TI con su TMS9900 por usarlo en sus máquinas, y mas minoritario el SC/MP, existieron mas procesadores en la época, desde los primeros que solo eran una parte y hacían falta varios chips para montarlos, o los de 4 bits pensados para calculadoras y usados solo en ellas, la lista sería esta:

1969
Four-Phase Systems, AL1
El AL1 era un chip de 8 bits que contenía ocho registros y una ALU (unidad aritmético-lógica), por lo que no es una CPU en un chip, necesitando varios para formar una. Fue diseñado por Lee Boysel, y formaba parte de un conjunto de nueve chip, que formaban una CPU de 24 bits, usando tres AL1, aunque luego fue denominada como microprocesador, en respuesta a una serie de litigios con Texas Instruments en los 90. Se diseñó un sistema de demostración que usaba un único AL1, RAM ROM, y un dispositivo de entrada-salida.
8 bits
1970
Garrett AiResearch, MP944 (F14A)
El MP944 se usaba en la aviónica del F14A, este chip fue secreto militar y no se usó en ningún otro sistema.
20 bits
375 kHz
1971
Intel 4004
El 4004 fue el primer microprocesador de Intel y el primer procesador completo en un solo chip comercial, desarrollado para su uso en la calculadora Busicom, fue el que comenzó el camino para la informática personal.
4 bits
740 kHz
Pico Electronics PICO1 / General Instrument GI250
En 1971 Pico Electronics y General Instrument presentan su primera colaboración en circuitos integrados,una calculadora completa en un solo chip, desarrollada para la calculadora Monroe / Litton Royal Digital III. Este chip también optaba por ser declarado uno de los primeros microprocesadores o microcontroladores, ya que disponía de ROM, RAM y un juegos reducido de instrucciones en su interior. Las cuatro capas necesarias para su fabricación fueron dibujadas a mano a escala 1:500 en película de mylar, una tarea importante en el momento debido a la complejidad del chip.
4 bits
1972
Fairchild PPS-25
Procesador de 4 bits para uso en calculadoras, pero no era un único chip sino un grupo.
4 bits
400 kHz
Intel 8008
El 8008 era mas de dos veces mas potente que el 4004. Un artículo de 1974 en la revista Radio Electronics presentaba el Mark-8, que utiliza el 8008. The Mark-8 es considerada como una de las primeras computadoras personales, aunque para lo habitual hoy día era muy complicada de construir y manejar.
8 bits
500 kHz
Rockwell PPSK
Procesador de 4 bits para uso en calculadoras.
4 bits
200 kHz
1973
NEC μCOM 4
Procesador de 4 bits para uso en calculadoras.
4 bits
1 MHz
National IMP-16
Primero de 16 bits, pero compuesto por 5 chips separados.
16 bits
715 kHz
Burroughs Mini-D
Procesador de 4 bits para uso en calculadoras.
8 bits
1 MHz
1974
National IMP-8
Grupo de varios chips que forman una CPU.
8 bits
715 kHz
Intel 8080
El 8080 se convirtió en el cerebro del primer ordenador personal, el Altair. Los aficionados a los ordenadores podría comprar un kit por 395$. En cuestión de meses vendió decenas de miles unidades.
8 bits
2 MHz
Mostek 5065
Diseñado para el control de periféricos, potenciaba la entrada/salida y el manejo de interrupciones.
8 bits
1.4 MHz
Toshiba TLCS-12
El que inició la serie de microcontroladores de Toshiba, que todavía se mantiene en el mercado, aunque muy actualizada.
12 bits
1 MHz
General Instrument CP1600
Creado mediante una alianza entre General Instrument y Honeywell, está basado en el diseño del PDP-11 (base de otros como el Western Digital MCP-1600). Su uso mas conocido fue en la consola Intellivision.
16 bits
3.3 MHz
National IMP-4
Grupo de varios chips que forman una CPU.
4 bits
500 kHz
Intel 4040
Evolución del Intel 4004.
4 bits
740 kHz
Motorola 6800
Primer chip de Motorola, competidor directo en el mercado del Intel 8080.
8 bits
1 MHz
Texas Intrumets TMS1000
Calculadora en un chip de TI, su precio marcó la caída de los otros fabricantes de calculadoras, al conseguir poner una en el mercado a mitad de precio.
4 bits
400 kHz
National Semiconductor IPC-16A/520, "Pace"
PACE corresponde a "Procesamiento y elemento de control", fue el primer 16 bits comercial en un solo chip. Disponía de cuatro acumuladores de uso general, estaba vagamente basado en IMP-16, que a su vez lo estaba en las Data General Nova.
16 bits
National Semiconductor ISP-8A/500, "SC/MP"
El procesador SC/MP podía reducir su reloj hasta detenerse, no fue muy usado, pero fue elegido por Sinclair para su primer ordenador, el MK-14.
16 bits
1975
Intersil 6100
Familia de procesadores y chips de apoyo, que era compatible a nivel de instrucciones con el PDP-8.
12 bits
4 MHz
Signetics 2650
Usado en varios proyectos de construcción de hardware y artículos de programación en revistas como Electronics Australia y Elektor, donde se vendieron varios kits relacionados, lo convirtieron en muy popular en Australia. Disponía de 7 registros de 8 bits de propósito general, aunque sólo 4 eran visibles en cualquier momento. Usaba un bus de direcciones de 15 bits, por lo que solo podía direccionar 32 KB.
8 bits
1.2 MHz
Rockwell PPS-8
La serie de procesadores Parallel Processing System estaban diseñados para el cálculo paralelo, por lo que eran muy usado en calculadoras.
8 bits
256 kHz
Fairchild F-8
Otro de los mas extraños, carecía de bus de datos, usando otro sistema de señales para reducir el número de líneas. Fue el procesador mas vendido en 1977, y el usado en la primera consola con cartuchos intercambiables, la Fairchild Channel-F.
8 bits
2 MHz
RCA CDP 1801
Necesitaba 2 chips para forman una CPU.
8 bits
2 MHz
MOS 6501/6502
Clon del Motorola 6800, es el usado en muchos de los primeros equipos, como el Apple I y II, Commodore PET, 16 y 64. La diferencia entre ambos procesadores es la distribución de los pines.
8 bits
1 MHz
Hewlett Packard BPC
Un procesador híbrido, diseñado para poder adaptarse a los requerimientos de los clientes, usando varios chips para ello.
16 bits
10 MHz
1976
RCA CDP 1802
Más conocido como el COSMAC (Complementary Symmetry Monolithic Array Computer), es uno de los pocos que se siguen fabricando actualmente.  El 1802 tiene una arquitectura diferente, sincroniza con cualquier velocidad de reloj, por lo que podía ralentizarse o hasta pararse sin problemas. Usa 16 registros de 16 bits, debiendo establecerse el uso de cada uno antes de comenzar a usarlos.
8 bits
6.4 MHz
Zilog Z80
El procesador mas usado de la historia.
8 bits
2.5 MHz
Texas Instruments TMS9900
Introducido en junio de 1976, es una versión del procesador usado en los minis de TI de la serie 990. Se usó como procesador de la serie TI-99/4 y TI-99/4A.
16 bits
3.3 MHz
Signetics 8X300
Fue diseñado para ser un microcontrolador muy rápido, por lo que no puede considerase un microprocesador. Podía podría buscar, decodificar y ejecutar una instrucción en sólo 250 ns, por lo que en un ciclo de reloj podía leer la entrada de un dispositivo, modificarla, y enviar la salida a otro dispositivo.
8 bits
8 MHz

lunes, 17 de diciembre de 2012

El camino a los ordenadores personales: El Microsoft Basic


Índices: El camino al O.P.       Historia de la Informática


La historia comienza con una necesidad del momento. Para medir el tráfico en las carreteras, se usaba un tubo de goma vacío, unido a un punzón, al pasar un coche oprime el tubo, el aire empuja al punzón que marca en una cinta de papel que se mueve bajo el. Para procesar estas cintas, en 1970 dos jóvenes estudiantes de secundaria en Seattle (Estado de Washington) llamados Bill Gates y Paul Allen crean una empresa a la que llaman Traf-O-Data. Como disponían de tiempo en ordenadores de la escuela, pagaban a sus compañeros para leer manualmente las cintas y perforar tarjetas con los datos, que luego procesaban ellos. En 1972, para evitar la lectura manual quisieron montar un ordenador basado en el Intel 8008, para lo que encontraron a  Paul Gilbert. Mientras se desarrollaba el ordenador, ellos hicieron el software, para lo que Allen creó un emulador del 8008 para el IBM 360 de la Universidad de Washington. Una vez todo finalizado ganaron su primer dinero, pero el Estado de Washington había pensado lo mismo, por lo que poco después lo lanzaron ellos, acabando con su negocio.

El ordenador Traf-O-Data (fuente: Michael Holley)

En 1975 aparece el Altair 8800, y Bill Gates se da cuenta del impacto que tendrá, por lo que convence a Allen de desarrollar un interprete de Basic para la máquina, cuyo punto débil era la complicada programación en código máquina. Antes de empezar a desarrollar nada usan una táctica de tanteo del interés en el producto, por lo que envían una carta a la empresa fabricante de los Altair, MITS, en la que su empresa, Traf-O-Data, les ofrece la posibilidad de comercializar su interprete de Basic (aunque realmente no existía).

El creador del Altair, Ed Roberts vio una gran posibilidad de negocio, por lo que llamó inmediatamente al número indicado en la carta, pero era una casa particular y no sabían lo que era el Basic. Al cabo de unos días Bill Gates llamó a MITS para conocer el interés tras la carta, y llegó a un acuerdo con Roberts para hacerle una presentación del producto en unas semanas.

Paul Allen y Bill Gates, con la ayuda de Monte Davidoff, comenzaron a trabajar en el producto usando un software simulador de Intel 8080, que habían desarrollado ellos mismo para que se ejecutara en un minicomputador PDP-10, fabricado por DEC (Digital Equipment Corporation). Su versión era muy similar a la de Digital Equipment, sobre todo imitaron el manejo de cadenas de longitud variable. Aunque su lenguaje permitía el uso de nombres de variable largos (lo habitual en esa época era usar solo una letra o una letra mas un dígito), cuando construía la tabla de símbolos en tiempo de ejecución lo hacía secuencialmente, y luego usaba una búsqueda lineal para localizar las variables, por lo que un programa con varias variables se ejecutaba mucho más despacio que uno que usara una única matriz para todas las variables.

Lo perforaron en una cinta de papel, y Paul Allen tomó un vuelo hasta Albuquerque (Nuevo México), donde cargaron el producto en un Altair, apareciendo en pantalla un mensaje de bienvenida sobre el Altair Basic. Allen tecleó "PRINT 3+3", apareció un 6, y empezaron una demostración exitosa del producto.

Una versión comercial en cinta de papel (fuente: computerhistory.org)

Inicialmente era distribuido en cinta perforada en versión para máquinas con al menos 4Kb de memoria. Luego apareció la versión para 8Kb de memoria llamada BASIC-80, que funcionaba en los Intel 8080, Intel 8085 y Zilog Z80, y la prepararon para instalarse en una ROM, evitando su carga desde cinta de papel. La popularidad de su sistema lo hizo migrar a otros fabricantes de ordenadores, por lo que lo portaron a otras máquinas con otros procesadores, BASIC-68 para los Motorola 6800, BASIC-69 para los Motorola 6809, y una versión 650-BASIC para los MOS Technology 6502 (aunque fue una mala migración, ya que ocupaba 9 Kb cuando las ROM del momento eran de 8Kb). Luego apareció el BASIC-86 para los Intel 8086/88 de 16-bits, y hasta tuvo versiones para el Motorola 68000. La última versión del Microsoft Basic en ROM fue la incluida en los MSX Turbo-R. Ademas de los Altair y compatibles S-100, fue usado como base para los BASIC en ROM de muchas máquinas, como:

  • Applesoft BASIC, usando en los Apple II
  • Commodore BASIC, usado en PET, VIC 20, C64
  • Microsoft Level II BASIC, Level III BASIC y Color BASIC para los TRS-80
  • Extended Color BASIC para los TRS-80 y los Dragon.
  • Atari Microsoft BASIC I y II para la familia Atari de 8 bits, incluyendo la consola 2600
  • MBASIC bajo CP/M
  • MSX BASIC, para ordenadores domésticos MSX
  • Amiga BASIC, para los ordenadores Amiga de 32 bits con Motorola 68000
  • MS BASIC para Macintosh, bajo Mac OS con un Motorola 68000

Con el MS-DOS, migraron su BASIC para que se ejecutara desde el sistema operativo en disquete, llamándose IBM BASIC o BASICA (Basic Avanzado) cuando se incluía en el MS-DOS de IBM, y GWBASIC en el resto de versiones de MS-DOS. Evolucionó al QBASIC y luego QuickBASIC en las últimas versiones de MS-DOS, siendo este el último distribuido libremente junto al sistema operativo. Con la aparición del Windows 3, se mejoró ampliamente y pasó a ser el Visual Basic, que permitía programación en entorno gráfico. Se incluyó en Office para programación interna (VB para aplicaciones), se pueden desarrollar script de internet usando Visual Basic Script (VBScript) en lugar de javascript (aunque nunca fue muy usado). Actualmente es uno de los lenguajes posibles para Visual Studio tanto en escritorio como en Web, siendo mas usado que el C#.

Pantalla de arranque de la última versión de Visual Basic (fuente: 3.bp)

domingo, 16 de diciembre de 2012

El camino a los ordenadores personales: El Homebrew Computer Club


Índices: El camino al O.P.       Historia de la Informática


Con el nacimiento de los procesadores, los aficionados a la electrónica y a la computación pudieron empezar a disponer de ordenadores, y comenzaron a reunirse para compartir sus experiencias. Uno de los primeros fue el Homebrew Computer Club (Club de ordenadores hechos en casa, Home Brew es la expresión para Cerveza Casera), en Silicon Valley, que se reunieron entre el 5 de marzo de 1975 y diciembre de 1986.

Era un grupo de aficionados entusiastas, aunque la mayor parte tenía estudios de ingeniería electrónica o programación, que se reunían e intercambiaban información, componentes y circuitos para sus ordenadores, muchas veces hechos por ellos en casa. Su inicio parte de reuniones periódicas entre Gordon French y Fred Moore, con algún invitado, que se reunían en el Community Computer Center en Menlo Park (Estado de California). Al no poder publicar en el People's Computer Company (el PCC fue otro grupo dedicado a la difusión de la computación con un famoso boletín publicado desde octubre de 1972 y abril de 1977), convocaron la primera reunión "formal", que se celebró en el garaje de Gordon French en Menlo Park, en marzo de 1975, centrados en la llegada a la zona del primer Altair, una unidad de pruebas remitida para su estudio por el People's Computer Company. Luego se reunieron en la universidad de Stanford, alternadas con reuniones en "The Oasis", un bar y grill cercano, cuando no lo hacían al salir de la reunión. Muchos formaron el Club 6800 en  Cupertino (California) al desaparecer el original.
Portada de uno de sus boletines (fuente: Swtpc6800)

Publicaron un boletín de noticias muy influyente en la formación de la cultura de Silicon Valley, editado por sus miembros, que fue uno de los medios que iniciaron la idea del computador personal, y ayudaba a sus miembros a montar y ampliar los kits de sus computadoras, como los Altair. Un evento importan fue la publicación del "Open Letter to Hobbyists" (carta abierta a los aficionados), escrita por Bill Gates, que arremetía contra los primeros hackers que pirateaban los programas informáticos comerciales (como su Microsoft BASIC). El primer número apareció el 15 de marzo de 1975, y el último número fue el 21 de diciembre de 1977.

De entre sus componentes surgieron muchos de los que trabajaron marcando la diferencia en el campo de la computación personal, muchos de los cuales crearon sus propias empresas. Los miembros mas destacados incluyen a:

  • Gordon French, un de los fundadores del club, creador del chicken hawk d-i-y computer (ordenador hágalo-usted-mismo pollo alcón), ayudó en el diseño del SOL-20
  • Fred Moore, otro de los fundadores del club, político que trabajó en popularizar la informática y el acceso a la información.
  • Bob Marsh, co-fundador de Processor Technology junto con Gary Ingram, ayudó en el diseño del SOL-20 y otras placas de la empresa.
  • George Morrow, desarrolló placas para el bus S-100, creó varios personales con CP/M, y ayudó en el desarrollo del Osborne-1
  • Adam Osborne, trabajó para Intel desarrollando documentación, fundó la Osborne Computer Corporation, y junto con Al Alcorn y Lee Felsenstein diseñaron el Osborne-1.
  • Lee Felsenstein (portador de "la gran vara", un puntero que usaba como apoyo para la moderación), creador de la VDM-1, la placa de vídeo mas popular para el Altair, diseñador de los ordenadores SOL-20Osborne-1.
  • Steve Wozniak y Steve Jobs, los fundadores de Apple.
  • John Draper, apodado Capitan Cruch, el que ideó las blue-box, escribió el EasyWriter, procesador de texto para los Apple, y luego lo pasó al PC.
  • Jerry Lawson, creador del Fairchild Channel-F, el primer sistema de videojuegos que usaba cartuchos, único miembro afroamericano del club.
Versión Japonesa de la Fairchild Channel-F (Fuente: pong-picture-page.de)


Muchos de los miembros se vuelven a reunir de vez en cuando en eventos, para rememorar los viejos y buenos tiempos en que un hombre era un hombre y hacía sus propios programas, y una ordenador un montón de chatarra unida por cables soldados manualmente. 

sábado, 15 de diciembre de 2012

El camino a los ordenadores personales: El procesador F14A (MP944)


Índices: El camino al O.P.       Historia de la Informática


El MP944, apodado F-14A por su uso, fue el primer microprocesador en un solo chip de la historia, diseñado y desarrollado entre 1968 y 1970, antes del Intel 4004, que fue el primero comercial y salió al mercado en 1971. Aunque fuese el primer procesador, no influyó en la historia de lo ordenadores por dos razones, solo se empleaba en la aviónica de F14 Tomcat, y fue secreto militar hasta finales de los 90.

Un F14 en vuelo (fuente: wikipedia)

Era un chip MOS-LSI, diseñado por Steve Geller y Ray Holt mientras trabajaban para la Garrett AiResearch Corp., solicitados por la Grumman Aircraft, fabricante de los aviones de combate de la Marina de los EE.UU. F14A "Tomcat". Los chips fueron fabricados por American Microsystems Inc, empresa ubicada en Santa Clara (California).

El conjunto de chips diseñado era parte del Central Air Data Computer o CADC (ordenador central de datos de vuelo), encargado de controlar tanto las superficies de control de vuelo de la aeronave, como de la visualización de información de vuelo para el piloto. El CADC recibía información de cinco fuentes diferentes: El sensor de presión estática, el sensor de presión dinámica, la información del piloto analógico, la sonda de temperatura, y la entrada digital de interrupción del piloto. La salida de la CADC controlaba las superficies en movimiento de la aeronave, las alas de geometría variable, flaps, alerones y timones. El CADC también controlaba cuatro pantallas de la cabina, la de velocidad ​​Mach, altitud, velocidad del aire y velocidad vertical.

El CADC usaba un sistema redundante en tiempo real, con autodiagnóstico incorporado, de modo que ante el fallo de una unidad pasaba el control a otra. Dos sensores de cuarzo de última generación, un conversor de analógico a digital de alta precisión de 20-bit, otro conversor de digital a analógico de alta precisión de 20-bit, el conjunto de chips MOS-LSI, y una fuente de alimentación de alta eficiencia formaban el corazón del CADC.

Sobre sus características internas tampoco hay excesiva información, sus creadores dicen que era mucho mas avanzado que el 4004, y los de Intel alegan que era de uso muy específico en lugar de uso general como el suyo.

El circuito del F14A (fuente: firstmicroprocessor.com)
Un equipo de más de 25 personas, entre directores, ingenieros, programadores y técnicos de las empresas Garrett AiResearch y American Microsystems trabajó durante tres años para lograr diseñar un avanzado sistema altamente integrado, un ordenador digital de datos de vuelo, en un momento en que los diseños se basan en tecnología mecánica, con engranajes de precisión y levas.

Ray Holt fundó su propia empresa, Microcomputer Associates, donde lanzo el ordenador Jolt, un entrenador para el MOS 6502.

En 1971 Ray Holt escribió un artículo sobre el diseño del chip para la revista Computer Design, pero por motivos de seguridad nacional la Marina de los EE.UU. no aprobó su publicación. Lo volvió a intentar en 1985 siendo otra vez rechazado. La siguiente vez que lo volvió a intentar le costó un año de insistencias, pero consiguió la autorización y se publicó el 21 de abril de 1998. El primer anuncio público del chips en un medio no especializado apareció en el Wall Street Journal el 22 de septiembre de 1998. Ray Holt realizó una charla sobre el chip en el Computer Vintage Festival de Santa Clara en septiembre de 1998.

viernes, 14 de diciembre de 2012

El camino a los ordenadores personales: El CP/M


Índices: El camino al O.P.       Historia de la Informática


Gary Kildall nació en 1941, y falleció en 1994 en un accidente poco investigado, parece que tuvo una pelea en un bar y se dio un golpe en la cabeza, pero no recordaba nada de esto, acudió dos veces al hospital sin encontrarle nada, pero falleció a los tres días. Su padre era un antiguo oficial de la marina Noruega, que ejercía de profesor naval en Seattle, estado de Washington (no confundir con la capital Washington DC, ciudad situada cerca de la costa del Atlántico, el estado está en la costa del pacífico justo debajo de Canadá). Su madre era Canadiense de ascendencia Sueca.  

Asistió a la Universidad de Washington con vocación de profesor de matemáticas, pero se enamoró de la nueva tecnología informática. Después fue profesor en la Escuela Naval de Postgrado (NPS), en Monterey (California), muy cerca de Silicon Valley. Kildall conoció la disponibilidad del primer microprocesador, el Intel 4004, llamó ràidamente a Intel, compró uno de los procesadores y comenzó a escribir programas, trabajando en la propia Intel como consultor en sus días libres para estar mas cerca de la información. Regresó unos meses en 1972 a la Universidad de Washington, para terminar su doctorado en ciencias de la computación. A su regreso publicó varios artículos sobre compiladores y análisis de flujos de datos, usando en sus pruebas un sistema Intellec prestado por Intel, para el desarrollo bajo 80088080, para los que desarrolló una variante del PL/I (Program Leguaje/One) de la IBM, a la que denominó PL/M (Program Leguaje/Microcomputer).

Kindall y Dorothy (fuente: atariarchives.org)

Usando PL/M, en 1973 Kildall comenzó a trabajar en un sistema operativo de disco para las Intelec con unidad de disco flexible, del que surgió el CP/M, originalmente por Control Program/Monitor (un monitor es un programa que permite ver y modificar la memoria de un ordenador, lo que se usaba para escribir programas en código máquina), pero luego lo cambio a Control Program/Microcomputer. Intel le compró el PL/M y lo comercializó, pero no estuvo interesada en su sistema operativo.

Kildall dejó la escuela naval, y junto a su esposa Dorothy crearon una empresa, originalmente llamada "Intergalactic Digital Research", que cambió luego por Digital Research, Inc., y comenzaron a vender su CP/M para la IMSAI 8080 a través de anuncios en revistas. Pronto fue un éxito, y tuvo que adaptarlo a muchos sistemas diferentes, lo que le llevó a intentar simplificar su desarrollo, dividiendo el sistema en tres partes, así solo debía adaptar la parte mas pequeña de las tres a cada máquina en concreto: 
  • CCP (command control processor, el intérprete de comandos, que era estándar)
  • BDOS (basic disk operating system, el sistema de archivos, que era estándar)
  • BIOS (basic input/output system, las rutinas de manejo del hardware, dependientes de la máquina)
El sistema de archivo estaba pensado para disqueteras de baja densidad. Los nombres de archivos se especifica como una cadena de hasta ocho caracteres, seguido de un punto, seguido de una extensión de nombre de archivo de uno a tres caracteres, donde la extensión identifica el tipo de contenido del archivo. Cada unidad de disco se identifica por una letra empezando por la A. Para hacer referencia a un archivo en una unidad específica, se indica la letra, seguida de dos puntos, el nombre del archivo, un punto, y su extensión. Si no se indica unidad se usa la predeterminada. El tamaño de cada archivo se especifica como el número de sectores que ocupa y no por su tamaño real (originalmente registros de 128 bytes, el tamaño de un sector de disco de 8 pulgadas), guardando este número el sistema operativo en el bloque de control de archivos (FCB). Como programas como los editores de texto tratan los archivos como secuencias de caracteres en lugar de secuencias de registros, marcan el final real de los datos con una carácter especial (Ctrl-Z, ASCII SUB, hexadecimal 1A). Con la llegada de los disquetes de alta capacidad y de los discos fijos, se modificó el tamaño del bloque, pasando a ser un bloque lógico en lugar de uno físico, que pasó a ser de 1Kb, luego 2Kb, y creció hasta ocupar 32Kb, lo que hacia muy poco eficiente al sistema si guardaba muchos ficheros pequeños. La fecha y hora de la última modificación de un archivo no apareció hasta la versión 2.2, pero por compatibilidad era una característica opcional.

El disco se formateaba usando la primera parte como directorio, guardando espacio para 256 ficheros, al no existir sub-directorios, ese era un máximo que no se podía superar (y era casi imposible hacerlo en su momento aunque hoy día llenemos discos de Teras como si nada), pero luego se crearon 16 áreas de usuario para organizar los archivos en los discos en sistemas multi-usuario, cada usuario podía acceder solo a su área y a un área común (por lo que solo permitía hasta 15 usuarios, nuevamente mucho mas de lo que las máquinas del momento soportaban). Esto permitió mejorar el manejo de los discos duros, ya que se podían suplir los sub-directorios con el manejo de las 16 áreas.

El CP/M corriendo en un Otrona Attaché (Fuente: z80.eu)
El éxito fue muy grande, Kindall se vio sorprendido, tardó en adaptar sus sistema a los nuevos disquetes de alta densidad y los discos duros, hasta que los fabricantes se unieron para lanzar su propia versión, por lo que Kildall tuvo que darse prisa, pero lanzó el CP/M versión 2, lo que acabó haciéndole el dueño indiscutible del mercado de los microcomputadores que usaban procesadores compatibles con el 8080 (el Intel 8080, el Zilog Z80 y el Intel 8086), o de los que aceptaban tarjetas de ampliación para correrlo (como el Apple II). En 1981, en ​la cima de su popularidad, CP/M estaba disponible para 3.000 modelos de ordenador diferentes, y su empresa vendía por valor de 5,4 millones de dólares al año.

Cuando en 1980 IBM se disponía a lanzar su IBM PC pensaron en usar BASIC y CP/M, y fueron a ver a Microsoft pensado que ambos eran suyos, pero este Bill Gates les envió a Digital Research. Cuando acudieron, según dicen las leyendas urbanas Kildall les hizo esperar varias horas para irse a volar en su avioneta, lo que disgustó a la IBM abandonando la idea. Pero la versión mas cierta parece ser otra, ya que las conversaciones las llevaba su mujer Dorothy, directora comercial de la empresa, ella les recibió mientras Gary viajaba a visitar en su avión privado, al que le gustaba pilotar, a un importante cliente. A ella no le gustó la petición de IBM de firmar un acuerdo de no divulgación estándar, por lo que llamó a sus abogados. Cuando llegó Gary, no puso pegas por el contrato y firmaron, pero no le convenció lo que le ofrecieron, 200.000$ mas 10$ por máquina vendida, el disponía de un avión, tres coches de lujo, dos formula uno, varias casas, y lo dejó pasar. IBM volvió a hablar con Microsoft, donde Bill Gates vio la oportunidad, compró un clon de CP/M llamado QDOS (Quick and Dirty Operating System, sistema operativo rápido y sucio) escrito por Tim Paterson, y se lo licenció a IBM como el MS-DOS.

El IBM PC ocasionó la muerte de los anteriores ordenadores, y MS.DOS tomó el relevo al CP/M, a pesar de los intentos de Gary, que no quería interponer un pleito por plagio, sabía que era difícil de demostrar y no le gustaba la idea de pleitear, aunque al final lo hizo y llegó a un acuerdo con IBM en 1981, esta vendería  MS.DOS o CP/M-86, lo que eligieran los usuarios (aunque el precio del CP/M era seis veces mayor por lo que no vendió casi ninguno). Luego lanzó una versión mejorara y compatible del MS.DOS, el DR-DOS 3.41, pero tampoco consiguió imponerse, y acabó vendiendo en 1991 Digital Research a Novell por "solo" 120 millones de dólares.

Otro desarrollo suyo fue el GEM Desktop, lanzado en 1985, el primer entorno de ventanas para DR-DOS y MS.DOS. No tuvo demasiado éxito, pero se usó luego en los ordenadores Atari ST, y fue la base del programa Ventura Publisher.

Los primeros programas de mucho éxtio para uso personal, el procesador de texto WordStar (nunca olvidaré los comandos de punto) y la base de datos dBase II (no existió dBase I, el nombre fue elegido para parecer mas avanzado), fueron originalmente escritos para CP/M. Existen versiones de CP/M para el Intel 8086 de 16 bits denominada CP/M-86, una versión para microprocesadores Motorola 68000 llamada CP/M-68k,  hay una versión para el Zilog Z8000, e incluso existe versión multi-usuario y multi-tarea denominada MP/M.

Cartucho de CP/M para el Commodore 64 (fuente: blogsdelagente.com)

Entre las máquinas que lo han soportado, podemos mencionar MITS Altair 8800, IMSAI 8080, los portables Osborne 1 y Kaypro, el Apple II (con tarjeta Z80), los BBC Micro (con tarjeta Z80), los Commodore 64 (con cartucho Z80) y Commodore 128 (con doble procesador), el IBM PC (versión CP/M 86 y MP/M), los Atari ST con GEM en su ROM (Versión CP/M 68k), el ZX Spectrum con el interface de disco Beta Disk, las gamas de Amstrad CPC, Spectrum +3 y PCW, los ordenadores MSX con disquetera, el VTech Laser 700 o los Spectravideo SVI-328.