sábado, 26 de noviembre de 2016

¿Por qué usar Excel si tenemos VU-CALC para ZX81?

VU-CALC es una hoja de cálculo comercializada por PSION para el ZX81 con expansión de 16 kB en el año 1982. El precio de salida de este programa fue 7,95 GBP.






















El programa permite tener un hoja de cálculo de 26 filas y 36 columnas. Es relativamente sencilla la introducción de datos, e incluso la inserción de fórmulas.

















Cuando se sale de la hoja de cálculo al menú principal, y se quiere volver mediante la opción "C", el programa vuelve a la hoja de cálculo y conserva todos los datos incluidos.

















Se permite la introducción de fórmulas relativamente complejas, siempre que se utilicen los operadores aritméticos básicos (+ - / *). Una vez que se aprende el manejo del programa, funciona muy bien.


















Buen programa de PSION.

viernes, 18 de noviembre de 2016

Color y Sonido en el ZX81


El Sinclair ZX-81 se caracteriza por ser un ordenador sin color ni sonido. Menos de un año después de su lanzamiento al mercado, ya existían prototipos e incluso interfaces comerciales que podían generar sonidos apoyándose sobre todo en los chips de General Instruments AY-3-8910 y 8912. Dichas interfaces debían disponer de un altavoz del que el ZX-81 no disponía. Más difícil es encontrar dispositivos que generaran color, y de hecho solo se han encontrado referencias comerciales de dos interfaces y de una interface para uno de los clones no oficiales del ZX81.


INTERFACE DE 8 COLORES

Esta interface se publicitaba en Francia a un precio de 395F (aproximadamente 60 euros), pero no hay referencias de su fabricante más allá de la serigrafía de la placa. Requería hacer modificaciones en la placa y se accedía a los colores desde el Basic. No requería tener ampliación de memoria.













































COLOUR INTERFACE (LAMBDA 8300)

El Lambda 8300, uno de los clones no oficiales del ZX81, sí disponía de una interface para generar color, requiriendo además de una ROM modificada. Esta interface también podía utilizarse en el ZX81.





















INTERFACE DE SONIDO

Esta interface fue fabricada por Mageco Electronic, basada en el chip AY-3-8912 y no requería ampliación de memoria. El tono y el registro se introduce a través de POKEs en las direcciones 16519 y 16515, respectivamente. Con estos valores se ejecutaba un programa en código máquina en la dirección 16514. Aparentemente, también fue comercializado solamente en Francia.



QS SOUND BOARD

Esta interface fue comercializada por Quicksilva en 1982 a un precio de 16 GBP, basada en el chip AY-3-8910. Este chip es capaz de generar 4096 tonos diferentes en cualquiera de sus tres canales. Quicksilva desarrolló varios programas para esta interface que podía reproducir sonidos de explosiones, laser, cohetes, etc…




ZXM SOUND BOX

Esta interface fue comercializada por Timedata, basada en el chip de sonido AY-3-8912 y también podía conectarse a un ZX Spectrum. Al igual que otras interfaces, se introducen el registro y el tono en las direcciones 16515 y 16519, y se ejecuta el código máquina en la dirección 16514.


ZON X-81 PROGRAMMABLE SOUND GENERATOR

Interface comercializada por BI-PAK a un precio de 25,95 GBP en 1982, sin necesidad de ampliación de memoria. Al igual que otros interfaces, ejecuta un programa Basic con valores POKE en las direcciones 16515 y 16519, ejecutándose en la 16514. Este programa se añade al programa Basic del usuario.


MUSIC SYNTHESISER

No hay muchas referencias sobre este sistema comercializado por William Stuart Systems Ltd, a un precio de 29,32 GBP en 1982. La misma empresa comercializaba el SR1 Speech Recognition a un precio de 56,35 GBP.


SOUND GENERATOR

Placa desarrollada por Maplin Electronics capaz de generar 3 tonos en un rango de frecuencias. Se accedía a través de un programa en Basic, POKEando a la dirección 16370 y dando como valor el código de atenuación.  Está basado en chips de lógica discreta de la familia 74LS. Se vendía en formato kit mediante petición por correo a Maplin.


CHROMA INTERFACE

Esta interface está diseñada y comercializada por Paul Farrow desde 2014, a un precio de 60 GBP, sin incluir el envío. Esta interface puede adquirirse aún en su web. Tiene una paleta de 16 colores, tanto en el color de la fuente (INK) como en el fondo (PAPER). Los programas deber ser adaptados para poder soportar esta paleta de colores. En la web del autor hay varios programas disponibles. Esta interface está emulada en EightyOne. El sonido de LOAD/SAVE se pasa al altavoz de la TV a través del cable SCART.


PROTOTIPOS O SIN REFERENCIAS

  • Colour Board de Haven Hardware. Existió un prototipo de hardware. Se publicitó para el ZX80 en la revista Sinclair User de Agosto de 1982 a un precio de 49,95 GBP.
  • QS Colour Board (1982). En Mayo de 1982 existió un diseño de esta placa sobre el papel. El autor del libro apuntado en las referencias pudo probar esta placa, aunque el resultado no fue bueno porque algunos chips se quemaron.
  • Vocal Synthersizer de Mageco Electronics (1982).
  • QS Speech Board (1982). Prototipo mostrado en 2nd ZX Microfair, el 30 de enero de 1982.
  • Speech Pack (S-Pack) de DCP Microdevelopments (Sinclair User - Julio de 1982). Mapeaba los puertos en las direcciones 49148 y 49149, con las palabras almacenadas en varias ROMs. El pack se vendía a un precio de 49,95 GBP con una ROM. ROMs adicionales a 14,95 GBP cada una. Este dispositivo se conectaba a un I/O pack del mismo fabricante llamado P-Pack que era el que se conectaba al slot del ZX81. El precio del P-Pack era 37,95 GBP.

REFERENCIAS
Web de Philip Lord para los diseños de Maplin
Libro “The ZX81 Add-On Book”. Martin Wren-Hilton, Shiva Publishing Ltd, 1982.




viernes, 11 de noviembre de 2016

Libro "The ZX81 Add-On Book"

Esta pequeña joya de apenas 70 páginas fue escrita en 1982 por Martin Wren-Hilton a la temprana edad de 16 años. El autor escribía en la revista SYNC de usuarios americanos de ZX80/ZX81.

Publicado por Shiva Publishing Ltd, es de los pocos libros que tratan del hardware del ZX81 y tiene varios capítulos relativos a los periféricos disponibles para este micro, incluyendo prototipos, además de una lista detallada de suministradores.

Sin duda una gran fuente de información, antes y ahora.



miércoles, 9 de noviembre de 2016

Critical Path Analysis para ZX81

Estamos ante un ancestro del MS Project y Oracle Primavera, realizado por Timex en 1982 para el modelo con ampliación de 16 kB. El objetivo de este software era el Timex 1000.

En realidad son dos programas, uno ("PERT-CPM") permite la evaluación de proyectos mediante la técnica del camino crítico. Proyectos con una relación de eventos, actividades y duraciones. El segundo programa ("Network") permite encontrar la distancia mínima a recorrer en un red de nodos interconectada.

Existe otra versión del mismo nombre programado por Hilderbay en 1981, aunque en este caso el programa es de una sola carga.























Antes de comenzar a introducir datos es mejor leerse las instrucciones de cómo debe hacerse. A continuación la pantalla inicial y la presentación de resultados del programa "PERT-CPM".

































La solución al proyecto introducido es que la duración que presenta el camino crítico es de 44 unidades de tiempo con la sucesión de eventos listado en la columna "Critical Path".


El segundo programa, "Network", requiere que, al introducir las conexiones entre nodos, esta se haga del nodo menor al nodo mayor, sino el programa devolverá un mensaje de error. Por ejemplo, del nodo 4 al nodo 5, y no del nodo 5 al nodo 4 aunque sobre el papel la red que hayamos dibujado esté correcto.

A continuación pantalla inicial y presentación de resultados.



















Ambos programas son bastante rudimentarios y caprichosos en la entrada de datos, pero lo cierto es que al final realizan su trabajo y presentan los resultados, no sin antes dejarnos con la incertidumbre al ponerse la pantalla en negro mientras realizan los cálculos.

viernes, 4 de noviembre de 2016

UDG Graphics dK´tronics para ZX81

Esta aplicación desarrollada por dK´tronics para ZX81 en 1981 es en realidad la combinación de hardware y software que propone la utilización de una EPROM de 4kB con 448 gráficos programados, a la que se puede añadir una RAM que permite almacenar UDGs realizados por el software que acompaña.

El hardware está formado por una placa que dispone de varios zócalos. Un zócalo para la EPROM que proporcionada por el fabricante con los gráficos pre-programados, otro para una RAM adicional y el tercero para la ROM del ZX81. La placa se ubica en el interior de la carcasa del ZX81. La EPROM es una compatible 2532 de 4kB.

La RAM puede ser un chip 4118 (1kB x 8 bits) o 6116 (2kB x 8 bits). La primera permitiría almacenar 128 gráficos y la segunda 256.
















Para realizar la instalación hay que hacer ciertas modificaciones en la placa del ZX81 como va indicando paso a paso el manual.

El chip de RAM no va incluido en el paquete original pero podía ser suministrado también por dK´tronics, aunque sólo el modelo 4118.





















El software permite editar los juegos de caracteres existentes, desarrollar nuevos, grabarlos e imprimirlos. Los nuevos juegos de caracteres se graban en la RAM adicional por lo que no se puede simular esta operación en un emulador.


















La edición es relativamente simple, mediante la utilización de espacios y puntos para significar el 0 o el 1 del bit editado. Se puede editar una línea de las 8 que forman el caracter, o bien el caracter completo.

















Después de grabar los cambios hay que realizar la operación de POKE para almacenarlo en la memoria RAM de la placa.

















Una vez realizada esta operación ya podemos imprimir nuestro conjunto de caracteres.

















Todas las pantallas están extraídas de un emulador que no puede emular la RAM en la que se ha grabado nuestro set de caracteres por lo que nos mostrará el original del ZX81.

















Una idea original, aunque no es para principiantes, con una gran cantidad de UDGs disponibles y la posibilidad de generar nuestros propios conjuntos de caracteres. El conjunto de caracteres grabado en la EPROM puede descargarse de la web cuyo enlace facilito abajo, y cargarlo en el emulador EightyOne como bloque de memoria en la dirección 8192. También se puede obtener el mismo resultado seleccionando la opción de dK´tronics en CHR$ Generator en el menú de hardware del emulador.






















Referencia: Software y Hardware

martes, 1 de noviembre de 2016

TOOLKIT para ZX81

TOOLKIT es una utilidad desarrollada por Artic Computing en 1982 para el ZX81 con 16 kB de RAM. El programa fue publicado tanto por Artic como por Sinclair Research. Introduce 9 nuevas funciones a las que se accede ejecutando el RAND USR correspondiente, según el manual de instrucciones.





















El programa baja la RAMTOP a la dirección 30500 y se instala por encima de esta dirección, precisamente para que no pueda accederse por otros programas. Ocupa los 2268 bytes restantes hasta el tope de memoria.

Lo que me ha interesado de este programa es la rutina MEM (RAND USR 31850 o RAND USR MEM) para el cálculo de la memoria RAM disponible. Hay varios programas que realizan la misma función pero siempre para el modelo de 16 kB. Como es sabido, en este modelo la memoria de display de pantalla, entre las variables del sistema D_FILE y VARS, ocupa un espacio fijo de 793 bytes. Mientras que en el modelo de 1kB este área de memoria es variable, desde el mínimo de 25 bytes hasta los 793 bytes, lo cual dificulta algo más el cálculo de la memoria RAM disponible.
















Al ejecutar la rutina MEM aparece el cálculo de memoria mostrado en la imagen anterior. El programa al ejecutarse, asigna una variable a cada una de las nuevas funciones como puede verse al ejecutarse RAND USR 31532 o RAND USR DUMP. Si ejecutamos un CLEAR, veremos que no obtendremos un resultado al ejecutar RAND USR MEM, pero sí al ejecutar RAND USR 31850. En este caso el área de memoria libre será 13161 bytes. Es decir, con la ejecución de CLEAR también hemos liberado el área de variables usado por el propio programa.

El cálculo es relativamente preciso, ya que si a 16384 (16 kB) le restamos el espacio ocupado por el programa (2268 bytes), la memoria de pantalla (793 bytes) y el área de variables del sistema (125 bytes), nos daría un número cercano a los 13161 bytes. La diferencia es de 37 bytes, que seguramente fuera menos al deducir las pilas.

martes, 20 de septiembre de 2016

Hints & Tips for Videogame Pioneers: The birth of a new era, a new medium, a new industry

En esta entrada ya hacia una breve mención a este libro publicado por Andrew Hewson en 2016. Tras la lectura, tengo que decir que es un buen libro que hará las delicias de los que vivieron (vivimos) aquella época.



Comienza con los años previos a la creación de Hewson Consultants, compatibilizando su incipiente interés por la programación de micro-ordenadores y su trabajo principal en aquel entonces, hasta la desaparición de la última compañía que mantenía el legado de Hewson. Desde sus comienzos con un ZX80, para cuya adquisición tuvo que pedir un crédito de 500 GBP, hasta el cierre de su compañía 21st Century Entertaiment especializada en juegos Pinball, ya en la segunda mitad de los años 90.

Andrew Hewson reconoce que fue arrastrado, como el resto de la industria del videojuego en el Reino Unido, por un cambio en la forma de gestionar empresas de software. Una época en la que pequeñas empresas fundadas en garajes o en dormitorios, no podían competir con una industria boyante en la que los equipos de trabajo eran cada vez más grandes y complejos. Situación que está muy bien descrita en la película-documental From Bedrooms to Billions (Anthony y Nicola Caufield, 2014), en la que el propio Hewson aparece.

Volviendo otra vez al libro, lo que más me gusta son los primeros capítulos referentes al nacimiento de un hobby, posterior desarrollo de esa pasión y la época del Spectrum. Cabe destacar la evolución de la compañía, centrada al principio en publicaciones escritas, aunque no publicó muchos libros, y su movimiento hacia la publicación de software producido por otros. Todos los programadores que publicaron con Hewson son entrevistados en el libro.

Y para terminar, una frase extraída del libro cuando estaba a punto de publicar "Hits & Tips for the ZX80" y que muestra el espíritu de esos pioneros a los que se refiere el libro: "I never attempted to seek out a publisher for the book because the idea of placing a person or organisation between me and what I wanted to do, was too awful to contemplate. Only my wife knew anything about what I was up to. I found myself a printer in Wallingford who had a new-fangled photocopying machine"

domingo, 18 de septiembre de 2016

ZX81 en Versión Kit se vende en eBay

Después de más de 40 pujas, hoy se ha vendido en eBay un kit sin montar del ZX81. Rara vez sale a la venta un kit de estos, de hecho es difícil entender como puede ver alguno aún. 

Estos kits fueron vendidos por Sinclair nada más sacar a la venta el ZX81 en marzo de 1981, y en su mayoría se vendieron por correo y por lo tanto la caja es la de cartón marrón, como es el caso de esta venta. Son placas issue 1.

Este kit incluía todos los componentes y el manual "Assembly Instructions", que aunque se puede encontrar escaneado, no es fácil encontrarlo original. Sin calificar cuánto de original son los componentes que incluye, hay que decir que el estado de conservación es excelente, incluido los manuales y la caja.

El precio de cierre de la venta ha sido de 185 GBP (217€), y 18,2 GBP (21,3€) de gastos de envío.

miércoles, 7 de septiembre de 2016

El ZX81 en RetroGamer (nº 158)

En el número 158 de la revista RetroGamer (edición inglesa) aparece un artículo de Marlyn Carroll sobre el ZX81 con motivo del 35 aniversario del lanzamiento de este micro.

Un repaso por la historia de este ordenador a partir de la evolución del ZX80, sus especificaciones técnicas, su software y con aportes de figuras importantes como John Grant, Steve Vickers, Charles Cecil y Rick Dickinson. Incluye una entrevista con Bob Smith, programador actual del Spectrum y ZX81.

Muchos de los que luego fueron programadores reconocidos con el ZX Spectrum comenzaron su andadura con el ZX81. Hay un consenso en reconocer la importancia de este ordenador en el desarrollo de la industria del software y de acercar la informática a los domicilios, algo en lo que, sin duda, mucho tiene que ver Sir Clive Sinclair.

Rick Dickinson reconoce que es su favorito e incluso llega a afirmar que Clive Sinclair coloca a este micro también como su favorito por encima de otros ordenadores de su propia marca.

domingo, 4 de septiembre de 2016

Resolución de Pantalla en el ZX Spectrum (y III)

Video Compuesto
Una señal de video compuesto combina las 3 componentes del video; brillo, color y sincronización en una sola, de manera de que sea más fácil su transmisión.

Una señal de video compuesto en blanco y negro consiste solamente en la combinación del brillo y la sincronización, en una señal denominada luminancia y representada mediante el símbolo Y. La información del color se añade a la luminancia para formar la señal de video compuesto. Hay dos señales diferentes referidas al color, señales U y Y, denominadas conjuntamente como crominancia.

En el estándar PAL, la señal de video compuesto está basada en la luminancia en blanco y negro Y, y en la crominancia U y V, en lo que se denomina como señal YUV. El valor de Y (luminancia) se calcula en una fórmula que asigna pesos a los colores principales RGB:

Y = 0,299R + 0,587G + 0,114B

Y los valores de U y V (crominancia) se definen de la siguiente manera:

U = 0,493 (B – Y)
V = 0,877 (R – Y)

El ZX Spectrum utiliza el chip LM1889 para modular la señal de color -crominancia- (U y V) a una sub-portadora de color compatible con PAL usando el cristal de 4,43336 MHz. Después, esta señal se combina con la luminancia (Y) en los transistores TR1 y TR2 para obtener la señal de video compuesto que se envía al modulador de UHF. Es decir, el propio ZX Spectrum ya genera una señal de video compuesto.


Posteriormente, esta señal es de nuevo modulada en el circuito UM1223 para generar la señal portadora RF compatible con la señal UHF de los TV de la época.



Modo FLASH

Cuando el bit correspondiente al FLASH está activado, la ULA intercambia los colores de la fuente y el fondo a razón de 3 veces por cada 2 segundos, o lo que es lo mismo a una frecuencia de 1,56 Hz.


Modo BRIGHT

El modo BRIGHT de cada uno de los colores lo genera la ULA a través de su circuito interno de generación de la señal de luminancia (Y), mediante la variación de las intensidades de corriente, en miliamperios, de los 3 colores fundamentales RGB (Rojo – Verde – Azul). Se aplica a todos los colores excepto al negro que no tiene brillo.


Borde de la Pantalla (BORDER)

El display de la pantalla se genera a través de dos fuentes de información; la primera, es la memoria de video alojada en la RAM, y la segunda, el color del borde que se especifica a través de un registro.

El registro del color del borde no está implementado en una ubicación de la RAM, sino a través de 3 bits en el puerto I/O 254 (FEh). La utilización de 3 bits permite la generación de 8 combinaciones de colores RGB.


El puerto FEh es gestionado por la ULA y constituye un puerto de entrada y salida utilizado por varios dispositivos: teclado, altavoz y las conexiones MIC/EAR.