Página pesimizada para cualquier navegador y cualquier resolución
Bienvenido, osado visitante. En esta página encontrarás mis producciones
de software para ordenadores MSX (bueno, no todas, pero sí las que valen
la pena), útiles principalmente para los programadores de dicho sistema obsoleto.
Y todo es por supuesto gratis (freeware, hazloquequierasconelloware, etc), ya que
como dijo el gran Linus Torvalds:
"El software es como el sexo: es mucho mejor cuando es gratis"
Así que ya sabes, arrambla con todo lo que quieras y para cualquier comentario,
sugerencia o queja escríbeme a la dirección de e-mail que hay al principio
de la página.
Índice
Estos son los programas que puedes encontrar en esta página:
NestorBASIC: Imprescindible
extensión del BASIC que permite cosas como el uso de toda la memoria mapeada
disponible para almacenar datos o rutinas en código máquina, acceso
a todas las funciones de disco, o reproducción de músicas MoonBlaster
y efectos de sonido PSG desde el BASIC o el Turbo-BASIC.
Extensiones para NestorBASIC:
Rutinas externas en código máquina que añaden funcionalidades
nuevas a NestorBASIC.
NestorPreTer: Pre-intérprete
de BASIC. Ahora puedes escribir tus programas BASIC desde un editor de textos poniendo
todos los comentarios e indentaciones que quieras, sin usar números de línea
e incluso usando macros. NestorPreTer convertirá tu programa "fuente" en
un programa ejecutable MSX-BASIC sin comentarios, sin espacios, con los números
de línea generados automáticamente y con las macros expandidas.
InterNestor Suite: Pila
PPP+TCP/IP para ordenadores MSX2/2+/TR con al menos 256K de memoria mapeada y MSX-DOS
2. Incluye un cliente de telnet y un cliente de FTP. Atención:
InterNestor Suite requiere NestorMan para funcionar.
InterNestor Lite: Otra pila TCP/IP,
más "ligera" que InterNestor Suite; funciona en MSX2/2+/TR con al menos 128K
de memoria mapeada y no requiere MSX-DOS 2. Soporta dos tipos de hardware: puerto serie (RS232) con modem,
y la UNAPI Ethernet.
ObsoNET: ObsoNET es una tarjeta
Ethernet para ordenadores MSX, diseñada y anteriormente fabricada por Daniel
Berdugo.
NestorMan: Gestor de memoria
dinámica residente para MSX-DOS 2. Con NestorMan puedes reservar bloques
de memoria de entre 1 byte y 16K, lo cual brinda más flexibilidad que el
mecanismo de reserva de segmentos enteros del DOS 2. Además, permite crear
y gestionar listas doblemente encadenadas.
MegaSCSI: Utilidades varias
para los usuarios de esta fantástica controladora SCSI.
Además, también está disponible la siguiente información:
MSX2 Technical Handbook: Manual
técnico oficial del estándar MSX2, convertido a ficheros de texto
a mano por el menda.
Easymbler: Curso de ensamblador
fácil y ameno (bueno, más bien sectario) escrito por un servidor.
Proyecto InterNestor Suite:
InterNestor Suite fue mi proyecto de final de carrera (ingeniería de telecos).
Aquí puedes descargar la memoria del proyecto que entregué a los profesores
y la presentación que hice durante el examen.
Especificación MSX-UNAPI:
Humilde propuesta de estandar para la definición e implementación de nuevos APIs
(Application Program Interface) para MSX.
NestorBASIC es una extensión del BASIC para ordenadores MSX2/2+/TR con al
menos 128K de memoria mapeada. Es compatible con el Turbo-BASIC (de hecho lo incluye
y lo carga automáticamente cuando es instalado) y proporciona la siguiente
funcionalidad:
Acceso a toda la memoria mapeada del ordenador (a toda
la memoria libre en caso de tener DOS 2), hasta 4 Mb.
Acceso a toda la VRAM,con intercambio de bloques de
datos entre ésta y RAM.
Almacenamiento de diversos programas BASIC en la memoria mapeada,
con posibilidad de pasar de uno a otro sin perder las variables.
Acceso a ficheros de disco y acceso directo a sectores,
con lectura/escritura directamente a/de la memoria mapeada y VRAM.Búsqueda
de ficheros, gestión de directorios.
Compresión/descompresión de gráficos.
Reproducción de música MoonBlaster. Carga de
samplekits y wavekits.
Reproducción de efectos de sonido PSG.
Ejecución de rutinas en código máquina,
de la BIOS o bien contenidas en un segmento o en la memoria principal del BASIC
(incluyendo la zona de trabajo del sistema), directamente o por
interrupciones.
Ejecución de funciones de NestorMan y rutinas de InterNestor
Suite e InterNestor Lite.
NestorBASIC consta de un único fichero que se carga con un simple BLOAD.
Se instala en un segmento de RAM oculto y sólo usa unos 500 bytes de la memoria
principal del BASIC. Sus funciones se invocan a través de un USR y una matriz
de parámetros, por lo que pueden ser usadas desde turbo-bloques. El compilador
de Turbo-BASIC está incluido en el fichero de NestorBASIC, ambos se cargan
a la vez.
Descargables de NestorBASIC:
NBASIC.BIN:
NestorBASIC 1.11, con un simple BLOAD"NBASIC.BIN",R ya lo tienes instalado.
NBVERS-S.TXT: Información
sobre versiones en español.
NBVERS-E.TXT: Información
sobre versiones en inglés.
SAMPLES.LZH: Un par de
ejemplos de búsqueda de ficheros y reproducción MoonBlaster.
TCPCON.LZH: Ejemplo de uso
de InterNestor Suite e InterNestor Lite desde NestorBASIC. TCP
Console es un programa que abre una conexión TCP, envía
a la misma todo lo que el usuario teclea e imprime en pantalla todo lo que recibe
de la misma. Se incluyen los códigos "fuente" en formato
NestorPreTer y los programas ejecutables MSX-BASIC (TCPCON-S para InterNestor
Suite y TCPCON-L para InterNestor Lite).
NPLAYER.LZH:
NestorPlayer 1.0, reproductor de músicas MoonBlaster FM y Wave programado
en NestorBASIC. Permite navegar por todas las unidades de disco y directorios en
busca de ficheros de música, samplekits y wavekits.
SEE.LZH: PEditor de efectos
de sonido PSG desarrollado por Fuzzy Logic. NestorBASIC puede reproducir estos efectos.
Una de las funcionalidades de NestorBASIC consiste en la posibilidad de ejecutar
rutinas en código máquina previamente cargadas en cualquier segmento
de memoria. Esto permite desarrollar extensiones para ejecutar tareas que son imposibles
usando sólo BASIC o funciones de NestorBASIC. En esta sección están
las extensiones para NestorBASIC que he realizado, todas incluyen un manual de uso
y un ejemplo.
CABROPL4.LZH: Permite
el control directo del chip de sonido OPL4 contenido en el MonSound, sin necesidad
de usar el driver de MoonBlaster.
NMIF.LZH:
NestorMIF permite descomprimir ficheros gráficos en formato MIF previamente
cargados en memoria mapeada.
NCADS.LZH:
NestorCadenas. Esta extensión es útil para programas que contienen
muchas cadenas de texto. Ahora puedes almacenar todas las cadenas en un fichero
de texto, cargar dicho fichero en memoria mapeada, y usando NestorCadenas recuperarlas
a medida que las necesites. Puedes recuperarlas secuencialmente (en el orden en
que se hallan en el fichero) o aleatoriamente (identificando las cadenas con un
nombre). La ventaja es evidente: al guardar las cadenas en memoria mapeada, dispones
de más memoria principal para el programa BASIC.
Al escribir programas en el entorno MSX-BASIC nos encontramos con tres problemas.
Primero, los comentarios que añadimos al código consumen parte de
la escasa memoria disponible para el programa. Segundo, los nombres de las variables
sólo pueden tener dos carácteres, lo cual no aporta mucha legibilidad
al programa. Y tercero, los saltos y llamadas a subrutinas se refieren a números
de línea, lo cual tampoco ayuda a que el programa sea inteligible.
NestorPreTer, que funciona en MSX2/2+/TR con al menos
128K de memoria mapeada, ayuda a resolver estos problemas. Se trata de un pre-intérprete
de BASIC, es decir, una utilidad que transforma un fichero de texto en un programa
ejecutable MSX-BASIC; dicho fichero de texto lo puedes generar con un editor de
textos, o bien desde el propio entorno MSX-BASIC, guardando el programa en formato
ASCII (SAVE"PROGRAMA.BAS",A). El proceso que realiza NestorPreTer sobre este fichero
"fuente" es el siguiente:
Eliminación de los comentarios y de los espacios en
blanco. Puedes usar en tu "fuente" todos los comentarios y toda la indentación
que quieras, la memoria usada realmente por el programa será únicamente
la necesaria para albergar el código.
Generación de números de línea.
No es necesario que incluyas números de línea en tu listado, puesto
que NestorPreTer se encargará de generarlas. Para identificar líneas
concretas a fin de poder usar instrucciones de salto, puedes usar etiquetas alfanuméricas.
Expansión de macros. Puedes definir macros, es
decir, porciones de texto con un nombre específico (similar a la directiva
DEFINE del lenguaje C). Esto permite simular nombres largos para variables, por
ejemplo puedes incluir "@DEFINE NOMBRE_FICHERO F$" al principio del texto, y posteriormente
"INPUT @NOMBRE_FICHERO" como parte del código..
InterNestor Suite es una pila de protocolos TCP/IP, más PPP, para ordenadores
MSX2/2+/TR con MSX-DOS 2, al menos 256K de memoria mapeada e interfaz RS232. Permite
la conexión a internet mediante un modem y una cuenta de acceso en cualquier
ISP, o bien la conexión a otro equipo mediante cable null-modem. Se instala
como un TSR, por lo que cualquier aplicación puede hacer uso de sus rutinas
para acceder a internet. InterNestor Suite consta de:
Programa instalador, de los diversos módulos
que componen la pila.
Cuatro módulos de código: módulo
físico (RS232), módulo de nivel de enlace (PPP), módulo de
nivel de red (IP) y módulo de nivel de transporte (TCP).
Marcador telefónico para conexiones vía
modem.
Programas de control de la conexión PPP y
de las conexiones TCP.
Cuatro aplicaciones sencillas: n cliente de PING
, un resolver (cliente de acceso a servidores de nombres, por ejemplo para traducir
nombres de sitios a direcciones IP), un cliente de telnet simple, y un cliente de
FTP completo.
Manual de uso y programación, en inglés.
Este manual explica cómo instalar y usar InterNestor Suite, y proporciona
toda la información necesaria para realizar aplicaciones basadas en internet.
Atención: InterNestor Suite necesita
NestorMan para funcionar.
Descargables de InterNestor Suite:
INS-V10.LZH:
InterNestor Suite 1.0, con todos los componentes mencionados antes más
el driver Fossil para RS232 desarrollado por Erik Maas, necesario para el funcionamiento
de la pila.
InterNestor Lite es otra pila TCP/IP; ésta funciona en ordenadores MSX2/2+/TR
con al menos 128K de memoria mapeada y no requiere DOS 2. Soporta dos tipos de hardware:
puerto serie (RS232) con modem, y la UNAPI Ehternet.
INL11.LZH: InterNestor Lite 1.1.1.
Incluye las versiones serie y Ethernet, así como el driver Fossil (necesario para la versión serie)
y manual de uso y programación
en español y en inglés. Dispone de soporte para UDP y TCP, así
como para el envío y la recepción de datagramas en bruto, y tiene
resolver incorporado. Incluye un cliente de PING sencillo, un cliente/servidor de
TFTP, una cónsola TCP -cliente de Telnet simplificado- y un cliente de Telnet
con soporte parcial para códigos de escape VT100 (las tres primeras aplicaciones
incluyen el código fuente).
InterNestor Lite ya está completo: futuras actualizaciones únicamente
corregirán errores. Así pues, puedes basarte en esta versión
para desarrollar tus aplicaciones para Internet.
NOTA: A partir de la versión 1.1, el soporte explícito para tarjetas ObsoNET ha sido suprimido.
En su lugar, ahora InterNestor Lite soporta la UNAPI Ethernet. La BIOS de ObsoNET BIOS es compatible con la UNAPI Ethernet
a partir de la versión 1.1, por lo que con la BIOS convenientemente actualizada, los usuarios de ObsoNET pueden
usar InterNestor Lite para la UNAPI Ethernet. Puedes descargar la versión más reciente de la BIOS de ObsoNET desde
la sección de ObsoNET. También puedes echarle un vistazo a la
especificación UNAPI si quieres.
FTP.COM: Cliente de FTP para InterNestor
Lite 1.01. Se trata de una aplicación similar al cliente de FTP por línea
de comandos incluido en los sistemas operativos Windows y Linux. Requiere DOS 2,
y los comandos que actúan sobre múltiples ficheros (MGET, MPUT y MDELETE)
requieren además que NestorMan esté instalado.
INLIB: Librería C (SDCC)
para InterNestor Lite. Librería de funciones que permiten acceso a las
capacidades de InterNestor Lite desde programas desarrollados en lenguaje C. Está
pensada para usarse con SDCC, un compilador cruzado gratuito disponible para Windows
y Linux. Más información sobre el compilador SDCC y su uso para el
desarrollo de aplicaciones para MSX en la
Página MSX de Avelino Herrera.
INL11SRC.LZH: Código fuente de InterNestor Lite.
Licenciado bajo la GPL.
ObsoNET es una tarjeta Ethernet para ordenadores MSX, diseñada y anteriormente
fabricada por Daniel Berdugo. En esta sección encontrarás únicamente
el software que he desarrollado para dicha tarjeta.
Importante: Por favor, actualiza la BIOS de tu tarjeta ObsoNET a la versión 1.1, que es compatible
con la UNAPI Ethernet, para que puedas usar InterNestor Lite 1.1. El antiguo
InterNestor Lite para ObsoNET (versión 1.0x) está ahora discontinuado.
ONETM-S.TXT:
Manual del usuario y del programador de ObsoNET. Versión en español.
ONETM-E.TXT:
Manual del usuario y del programador de ObsoNET. Versión en inglés.
ONETFRL.COM:
Grabador de la Flash ROM de ObsoNET 1.0. Utilidad necesaria para actualizar
la BIOS de ObsoNET, y para grabar programas personalizados en su ROM.
BIOS.ROM, BIOSDOS2.ROM,
BIOS.DAT: ObsoNET BIOS 1.1. Esta versión is compatible con la BIOS 1.0,
pero añade compatibilidad con la UNAPI Ethernet. En el manual del usuario
se detallan las diferencias entre los tres ficheros.
BIOS10.ROM: La antigua BIOS versión 1.0,
por si tienes algún problema con la BIOS 1.1 (¡no deberías, por supuesto!)
InterNestor Lite. Con la BIOS 1.1, puedes usar
InterNestor Lite para la UNAPI Ethernet con tu tarjeta ObsoNET.
Como punto de partida para trabajar con ObsoNET, se recomienda leer las secciones
1 y 2 del manual de ObsoNET y la sección 2.3 del manual de InterNestor Lite.
NestorMan es un gestor de memoria dinámica para MSX2/2+/TR con MSX-DOS 2.
Se instala como un TSR, por lo que puede ser usado por cualquier aplicación.
NestorMan permite:
Reservar bloques de memoria dinámica de entre 1 byte y 16K.
Este mecanismo es mucho más versatil que el proporcionado por el DOS 2, que
sólo permite reservar segmentos de 16K enteros. Tras pedirle un bloque del
tamaño deseado, NestorMan devuelve el número de segmento en el que
se encuentra el bloque recién reservado, así como su dirección
de inicio. NestorMan se encarga de reservar los segmentos a medida que es necesario.
Crear listas doblemente encadenadas. Las listas de
este tipo son estructuras de datos en las que cada elemento se almacena con un puntero
al elemento siguiente y otro al elemento anterior. Es posible insertar elementos
(cualquier bloque de datos de hasta 16K de tamaño) y extraerlos en/de cualquier
posición de la lista, así como "navegar" por los elementos (moverse
hacia el siguiente o hacia el anterior, o bien buscar uno determinado según
su número de orden en la lista).
Descargables de NestorMan:
NMAN122.LZH:
NestorMan 1.22. Incluye manual de programación en español y
en inglés.
TEXTOR.LZH:
TexTor 1.0. Se trata de un editor de textos muy sencillo, similar al prehistórico
EDLIN de MS-DOS, que sirve como ejemplo del uso de NestorMan. Incluye el código
fuente.
MegaSCSI, desarrollado por ESE Artists
Factory, es la mejor controladora SCSI disponible para MSX. Tengo la enorme
suerte de poseer uno y he desarrollado varias aplicaciones para el uso con la misma,
que tienes listadas a continuación:
WPE.LZH: Dos utilidades, WP.COM
y WE.COM, para proteger contra escritura y rehabilitar particiones de disco creadas
con MegaSCSI. Incluye el código fuente.
BOOT60.LZH: Parche para
el programa de arranque en SRAM del MegaSCSI. Fuerza el arranque a 60Hz, o a 50Hz
si se mantiene pulsada la tecla H. Incluye el código fuente.
CHGKEY.LZH: Parche para
la SRAM del MegaSCSI. Permite usar el teclado normal (teclas 0-9 y A-F) en lugar
del teclado numérico para emular el cambio de disco al usar la emulación
de diskettes. Util para los usuarios de Philips 8245 y similares. Incluye el código
fuente.
PSETLIST.LZH: Incluye
dos programas. PARSET es un establecedor de particiones que utiliza la tabla de
particiones estándar del sector de arranque en vez del fichero MEGASCSI.TBL,
por lo que funciona con todos los discos que tengan esta tabla: ESE-ASPI, IDE, todos
los de PC... PARLIST lista todas las particiones existentes en el disco, con su
longitud y sector inicial. Incluye las fuentes.
NCDPLAY.LZH:
NestorCDPlayer es un reproductor de CD Audio para MegaSCSI. Es un TSR: queda
residente y puedes controlar la reproducción del CD desde cualquier programa,
mediante combinaciones de CTRL/SHIFT + CODE/GRAPH. Incluye el código fuente.
NDICREAT.LZH: Esta utilidad
no necesita MegaSCSI para funcionar, pero de poco te servirá si no lo tienes.
NestorDiskImageCreator permite crear discos imagen vacíos de cualquier
tamaño entre 10K y 32500K.
Si quieres desarrollar tus propias aplicaciones para MegaSCSI, este documento te
resultará de gran ayuda:
MEGUIDE.TXT: Traducción
reducida al inglés del manual de programación del MegaSCSI. No está
completa, pero los conceptos básicos y las funciones más importantes
de la BIOS están detallados.
Hace algunos añós Leonardo Padial
desarrolló una tarjeta con Z380 para MSX. Daniel Zorita y yo nos encargamos
de ayudarle con el software, y lo que aquí tienes es mi contribución
al proyecto:
EPROM30.LZH: Versión
3.0 de la EPROM que incorpora la tarjeta.
Z380MAN.TXT: Manual del
programador de la tarjeta LPE-Z380 con EPROM 3.0, sólo está disponible
en inglés.
Z380MAN.LZH: Vesión
comprimida del fichero Z380MAN.TXT.
ZUTILS.LZH: Incluye F2Z.COM,
para cargar un fichero en la memoria de la LPE-Z380; Z2F.COM, para realizar el proceso
inverso; y ZEXE.COM, para ejecutar un programa Z380.
CALLPCM.LZH: Ejemplo de
comando CALL de BASIC instalable en la LPE-Z380. Permite grabar y reproducir PCMs
directamente a/de la memoria de la LPE-Z380, usando el micrófono del Turbo-R.
Es un programa muy simple que no incluye nivel de disparo ni compresión de
silencios.
Si vas a desarrollar tus propios programas para LPE-Z380 y no tienes un ensamblador
para Z380, te resultará de gran utilidad lo siguiente:
Z380MAC.TXT: Macros para
ensamblar instrucciones Z380 en un ensamblador para Z80, sólo varía
ligeramente la sintaxis original de las instrucciones. Están probadas con
el Compass, no deberían dar problemas con otros ensambladores.
Aquí tienes algunas de mis utilidades pequeñas de todo tipo que he
ido desarrollando a lo largo de mi prolífica carrera como programador obsoleto,
todas para MSX2/2+/TR y la mayoría para MSX-DOS 2. Espero que alguna te resulte
útil.
MEM.LZH: Pequeño programa
que muestra información sobre la memoria mapeada total, reservada y libre,
dividida en slots. Requiere MSX-DOS 2.
CHCOPY2.LZH:
Chapuza Copy 2.0. Copión de diskettes que usa
toda la RAM libre y la VRAM para minimizar los cambios de disco. Requiere MSX-DOS
2.
RAMDD.LZH:
Registro de Arranque para MSX con Disco Duro. Ejecútalo desde el AUTOEXEC.BAT
de tu disco duro y podrás llevar lleva una cuenta del número de veces
que has arrancado el ordenador desde una determinada fecha de referencia, así
como la fecha y la hora del último arranque y del arranque actual. Requiere
MSX-DOS 2. Esta es la versión en español.
BOREHD.LZH:
Boot Register for MSX with Hard Disk. Versión en inglés de
RAMDD.
NAC11.LZH:
NestorAcentos 1.1. Programa residente que permite generar vocales acentuadas
y otros carácteres como ñ ¡ ¿ y carácteres gráficos
usando la tecla KANA en ordenadores MSX japoneses.
NEM3-SCC.LZH: Esto no
es más que el master de sonido SCC del Nemesis 3, aquel viejo invento de
Martos, pero modificado: ahora puedes conectar/desconectar cada canal SCC y PSG,
así como pausar la música. Util para componer arreglos.
MKROMDSK 1.2: Aplicación que resultará
útil para los que tengais un cartucho Flash ROM grabable. Lo que hace es
crear un archivo ROM a partir del contenido del RAM disk existente en el momento
de su ejecución. Si se graba ese archivo ROM en el cartucho Flash, al reiniciar
el ordenador aparecerá una unidad de disco de sólo lectura con todos
los ficheros y subdirectorios que habia en el RAM disk. Además, la ROM resultante
incorpora el kernel del DOS 2.
La versión 1.2 corrige un fallo que causaba que las ROMs generadas no funcionaran
en MSX Turbo-R con mapeador de RAM externo.
MKROMDSK requiere MSX-DOS 2 para funcionar, y consta de dos ficheros:
MKROMDSK.COM:
El fichero ejecutable de la aplicación.
MKROMDSK.DAT:
Plantilla usada para generar los ficheros ROM. Si tienes una imagen del kernel del
MSX-DOS 2.20, no es necesario que bajes este fichero, puesto que MKROMDSK.COM puede
generarlo a partir de dicha imagen. (NOTA: el kernel
2.30, presente en la DiskROM de los MSX Turbo-R, NO
sirve; tiene que ser un kernel 2.20).
MKROMD1 1.0: Esta aplicación
es idéntica a MKROMDSK, excepto que las ROMS generadas incorporan el kernel
del DOS 1 en vez del kernel del DOS 2. De esta forma, las ROMs generadas funcionan
en MSX2 con 64K RAM, o incluso en MSX1.
Este es el manual técnico oficial del estándar MSX2, editado por ASCII corporation en 1987, pasado a ficheros
de texto. Lo tecleé todo a mano en mi MSX allá por 1997 a partir de
fotocopias (el original nunca lo he visto ni en pintura), tarea que me llevó
unos cuatro meses. De paso corregí algunos fallos que tenía el original
y añadí información sobre el Turbo-BASIC. Atención:
Todos los textos están en inglés.
Easymbler es un curso de ensamblador del procesador Z80 (aunque orientado al MSX,
por supuesto) que escribí para el magazine en disco Eurolink, publicado por
MSX MEN (Ramón Ribas y Daniel Zorita) hace algunos años. La idea fundamental
es que debía ser fácil de entender y ameno, y con esto último
quizá me pasé un poco... juzga tú mismo.
EASYMB1.TXT: Primera entrega.
Introducción al código máquina. Descripción
del Z80.
EASYMB2.TXT: Segunda entrega.
Instrucciones del Z80.
EASYMB3.TXT: Tercera entrega.
Introducción a los ensambladores y a la arquitectura del
MSX. Técnicas básicas de programación.
EASYMB4.TXT: Cuarta entrega.
Funcionamiento y manejo de los slots del MSX.
EASYMB5.TXT: Quinta entrega.
La memoria mapeada del MSX.
Entre 1993 y 2002 estudié Ingeniería de Telecomunicaciones en la UPC, en Barcelona. El proyecto de final de carrera
se tituló "InterNestor Suite: diseño e implementación
de una pila TCP/IP para ordenadores MSX"; sí, es el mismo InterNestor
Suite que puedes descargar en esta página.
A continuación encontrarás la memoria del proyecto que redacté
y la presentación que utilicé el día del examen, el 11 de diciembre
de 2002. Por cierto que no estuvo mal la nota que obtuve: matrícula de honor.
:-).
MEMINS.ZIP: Memoria del
proyecto que entregué a los profesores, en formato MS Word 97.
PRESINS.ZIP: Presentación
del día del examen, en formato MS PowerPoint 97.
MSX-UNAPI significa MSX unified API definition and discovery standard
(estandar para la definición y el descubrimiento de APIs). Se trata de una propuesta
de estandar de codificación dirigida a los desarrolladores de hardware y software.
Cuando los aficionados desarrollan hardware nuevo para ordenadores MSX,
dotan a los dispositivos de una ROM que contiene un API (Application Program Interface)
consistente en una serie de rutinas, usadas por las aplicaciones para tener acceso
al hardware. El diseño y la implementación de este API quedan sujetos únicamente al
criterio del creador del hardware, dado que no existe una forma estandarizada
de hacerlo.
La especificación MSX-UNAPI propone una forma estandarizada de definir,
implementar, descubrir y usar tales APIs, de forma que dispositivos que proporcionen
la misma función pero creados por desarrollados distintos puedan tener APIs compatibles.
Es más fácil de lo que parece (¡en serio!) y puede resultar de gran utilidad para
desarrolladores de hardware y software. Si te intersa, aquí tienes los documentos disponibles
sobre la especificación MSX-UNAPI:
Introducción a la especificación MSX-UNAPI: Recomiendo
encarecidamente empezar por aquí. Se trata de un texto corto que introduce los
conceptos fundamentales de la especificación. Puedes elegir entre varias versiones:
Código de ejemplo: Las fuentes de algunos ejemplos
completamente funcionales que pueden ayudarte a entender todo el tema. Hay tres ficheros disponibles:
Ejemplo de software cliente. Software cliente
es el código que invoca las rutinas ofrecidas por un API a fin de realizar alguna tarea
con el hardware.
Especificación UNAPI para Ethernet v1.0: La primera desarrollada API que cumple la especificación
UNAPI, pensada para los desarrolladores de hardware Ethernet. Escoge tu versión:
InterNestor Lite soporta la UNAPI Ethernet. Si desarrollas tu propio hardware Ethernet,
y haces que su BIOS sea compatible con la UNAPI Ethernet, InterNestor Lite reconocerá y usará tu hardware automáticamente.
Los comentarios acerca de la especificación MSX UNAPI son bienvenidos.
Si quieres hablar sobre el tema, visita uno de los foros dedicados a MSX-UNAPI existentes:
Publicado InterNestor Lite 1.1. Ahora ambas versiones de InterNestor Lite
(para puerto serie y para Ethernet) se distribuyen en un solo paquete.
Además, ahora hay un único manual de usuario para ambas versiones.
Pues sí, la página principal ha desaparecido; de todas formas no tenía
nada interesante. Si quieres saber más sobre mí,
visita mi blog.
Ahora esta página cumple el estándar XHTML y usa CSS para la presentación
(que de todas formas sigue siendo muy simple). Échale un ojo a los bonitos
banercillos al final de la página.
Las referencias a Dumas han sido quitadas temporalmente. El proyecto está
actualmente congelado pero no muerto, espero.