Documentos de Académico
Documentos de Profesional
Documentos de Cultura
4.0 El Interprete
Descripción del funcionamiento de los intérpretes.
4.1 Los CondActos
Descripción completa de los CondActos en el sistema.
4.1.0 Terminos usados en esta sección
4.1.1 Indirección
4.1.2 Condiciones
4.1.3 Acciones
4.2 Versiones del interprete por máquinas
Detalles sobre los intérpretes específicos de cada máquina.
4.2.0 IBM
4.2.1 Spectrum 48/128
4.2.2 Amstrad CPC 464/664/6128
4.2.3 CBM 64/128
4.2.4 MSX
4.2.5 Atari ST
4.2.6 Amiga
4.2.7 PCW 8000 & 9000 series
4.3 Errores
Informes de error generados por los intérpretes.
4.4 El parser
Analisis de los aspectos de los parsers
4.4.1 El parser ingles
4.4.2 El parser español
4.5 Las Banderas
Desglose detallado del uso de una bandera.
Apendices
A – Conjunto de caracteres
B – Conexión entre ordenadores
C – EXTERN
D – Lista de los programas del DAAD V2
E – DAAD Notas del 2018
Sección 1 - Descripción
1/ El Código Fuente
EL código fuente (.SCE files) es una colección de tablas, que
contiene toda la información que define un juego de aventuras. Está
en formato de archivo de texto ASCII.
2/ El Compilador
Este se instala solamente en la maquina de desarrollo.
El Compilador comprueba si hay errores en el código Fuente y lo
convierte en una base de datos DAAD (archivo .ddb) para la máquina
especifica que el Interprete pueda entender.
3/ Los Interpretes
Son el verdadero corazón del DAAD. Hay un intérprete por cada
ordenador soportado por sistema DAAD. Ejecuta los datos de la base
de datos utilizando su colección de rutinas para realizar las tareas
necesarias para los juegos de aventura. Proporciona el aspecto
independiente de la máquina del DAAD.
a) Drawstring
Estos utilizan una forma de dibujo conocido como PLOT, LINE y
FILL, que permiten gráficos muy complejos que utilizan muy
poca memoria. Se utilizan en ordenadores de 8 bits. Tenga en
cuenta que existen editores gráficos para cada tipo de
máquina, excepto MSX, ya que MSX puede utilizar los gráficos
de Spectrum casi sin cambios.
b) Image
Estos gráficos se dibujan utilizando un software gráfico
externo, que porporcionan las funciones necesarias para
ensamblar las imagenes en una base de datos de gráficos para
los Interpretes. Este sistema se utiliza en ordenadores de 16
bits. Se pueden producir con cualquier paquete gráfico, pero
DEGAS PI1 en ST es el formato de archivo estándar aceptado por
los programas.
5/ Utilidades y Comunicaciones
Estas son una colección de programas instaladas, por lo general en
la máquina de desarrollo y cuando sea necesario en el la máquina
objetivo, para permitir la conversión y envío de datos, entre las
máquinas
El ciclo principal para desarrollar una aventura de texto con DAAD
puede visualizarse de la siguiente manera:
Inicio
|
¡Idea del juego!
Si
Compilar .DDB
para cada máquina
|
Enviar a cada
máquina
|
Hecho
ST Amiga
EGA o CGA
CGA
PC CPC
PCW CGA old
old
Spectrum MSX
CBM 64
Disk 1 – Developer
Disk 2 - Utilities
DAAD se suministra con una amplia gama de utilidades para llevar a cabo
diversas tareas. Los subdirectorios de este disco reflejan ese
propósito.
Other Programs/Hardware
QE TUTOR.SCE
DC TUTOR
ST
AMIGA
Haga una copia del disco OS mínimo. Coloque todos los archivos en este
disco.
PC
Debes tener las versiones EGA y CGA de la paleta cargada para cada
imagen en DMG en el ST. Cualquier tipo de búfer será resuelto. No
importa si está o no comprimido pero la conversión será más rápido lo
está.
Envia un archivo DEGAS PI1 con una paleta de color complete para PC -
esta será normalmente la pantalla de carga ST. Utilice CSTVGA para
hacer un archivo VGA. Tendrá la extension .V13. Para hacer la pantalla
de carga, renombre la extención de archive a .VGS.
CPC
Desde CPM use MCRF para hacer un fichero ejecutable en AMSDOS. Esto se
describe en la sección sobre este programa.
Spectrum
DISCiPLE:-
Siempre que sus gráficos y base de datos tengan el mismo nombre (los
gráficos tendrán un signo + en posición de carácter 10), puede utilizar
LOAD d1"drs" para ejecutar el juego.
+3:-
Use ASH para añadir una cabecera Spectrum al fichero .DDB, renombralo
PARTx.DDB y envielo al CPC usando Procomm & UKM7AMS. El +3 aceptará un
disco en formato de datos CPC fácilmente.
CBM
Envie la database al CBM usando DR en el CBM y GOCBM on the PC. Debe dar
la dirección de carga como 0x3880.
Envie una copia del fichero gráfico del Spectrum al IBM usando XM en
Spectrum y XMP on the IBM (renombralo PARTx.SDG). O vea la nota sobre +3
bajo CPC.
Use DSC para hacer un fichero para CBM (que se denominará yyy.CDG).
Envie el fi cher o al CBM usando DR en el CBM y GOCBM en el PC.
Debes dar la dirección de carga que figure como la dirección más baja
dada por DSC.
Use el editor DG para limpiar las imágenes – tendrá que hacer muy poco
aquí si ha tenido cuidado en la elaboración de las imágenes en el
Spectrum. El juego de caracteres es en realidad 8x8 en CBM y es
posible que desee diseñar uno especial para él (y el modo de texto CPC
/ ST).
MSX
Envie una copia del fichero gráfico del Spectrum al IBM usando XM en
Spectrum y XMP on the IBM (renombralo PARTx.SDG).
Use DSM para hacer un fichero para MSX (que se denominará PARTx.MDG).
PCW
4.0 Descripción
Inicialización
Bucle Principal
No ¿Mas entradas?
Si
¿Verbo No
Coincide?
Si
¿Nombre No
Coincide?
Si
¿Más No
1 CondActs?
Si
No Si
Condición?
No
Hacer Acción ¿Tiene exito?
Si
Si 1
¿RESTART? ----> Inicio
No
Si No
¿EXIT? 1
Fin
Busqueda en una Tabla de Procesos
El uso de la palabra "_", bien sea como Verbo o como Nombre, hará que
esa palabra coincida con cualquier parte de la SL. Po r lo t anto, u na
entrada en la tabla como "_ _", disparará cualquier entrada, no importa
lo que se haya tecleado. Esto será la entrada normal en el Proceso de
0, ya que será muy poco probable que una SL válida esté presente o sea
significativa para el bucle principal del juego.
1. RESTART: que causará una salida complete de todas las tablas (aunque
esté en un sub-proceso de nivel 10) y saltará al inicio del Proceso
0.
4.1.1. Indirección
AT locno
NOTAT locno
ATGT locno
ATLT locno
PRESENT objno
ABSENT objno
WORN objno
NOTWORN objno
CARRIED objno
NOTCARR objno
ZERO flagno.
NOTZERO flagno.
EQ flagno. valor
GT flagno. valor
LT flagno. valor
ADJECT1 palabra
ADVERB palabra
PREP palabra
NOUN2 palabra
ADJECT2 palabra
CHANCE porcentaje
ISDONE
Tiene éxito si la última table finalizó saliendo tras ejecutar una
Acción. Esto es util para probar un simple valor booleano éxito/fallo
desde un Sub-Proceso. Una acción DONE hara que la condición 'done', al
igual que cualquier condacto provoque la salida, o la caida al final
de la tabla - suponiendo que al menos un condacto (que no sea NOTDONE)
sea ejecutado.
Tiene éxito si la última tabla terminó sin hacer nada o con una acción
NOTDONE.
HASAT/HASNAT valor
Por ejemplo, la opción de CPC magic draw que carga los colores de la
paleta después de dibujar con tinta negra sobre papel negro se puede
activar con:
HASAT TIMEOUT
Por supuesto, puede asignar sus propios valores a partes de una bandera
y probarlos simplemente con las condiciones HASAT/HASNAT.
INKEY
QUIT
GET objno.
DROP objno.
WEAR objno.
REMOVE objno.
CREATE objno.
DESTROY objno.
DROPALL
AUTOG
Una búsqueda del número del objeto representado por Nombre (Adjetivo) 1
se hace en la Sección de Definición de Objeto (OBJ) según su prioridad
de localización que será: aquí, llevado, puesto, etc. Es más lógico que
el jugador esté tratando de coger un objeto que esté en la localidad
actual, que uno que lleve o tenga puesto encima, por eso el orden de
prioridades.
Si el objeto es encontrado, su número se pasa a la acción GET. De otra
forma, si es un objeto que existe en cualquier otra parte del juego o
si el Nombre1 no está en el Vocabulario, el SM26 ("No hay uno de esos
aquí") se imprime. Si no, el SM8 ("No puedo hacer eso") se imprime
(significa que no es un objeto válido pero que existe en el juego). De
todas formas las acciones NEWTEXT y DONE se ejecutan.
AUTOD
En una búsqueda del número del objeto representado por Nombre (Adjetivo) 1 se
hace en la tabla de objetos (OBJ) en orden de prioridad de: llevado, puesto
encima, aquí. Es más probable que el jugador esté intentando ponerse encima
(WEAR) un objeto que lleve en sus manos, que uno que ya lleve puesto o esté
aquí. Si el objeto se encuentra, su número se pasa a la acción WEAR. De otra
manera, si hay un objeto en existencia en cualquier parte del juego o si el
Nombre1 no estaba en el Vocabulario, entonces el SM28 ("No tengo uno de
esos") se imprime. Si no, el SM8 ("No puedo hacer eso") se imprime. No es un
objeto válido, pero sí existe en el juego. De cualquier modo, las acciones
NEWTEXT y DONE se ejecutan.
AUTOR
Una búsqueda por el número del objeto representado por el Nombre (Adjetivo) 1
se hace en la tabla de Objetos (OBJ) con una prioridad de: puesto encima,
llevado, aquí. El jugador, lo más probable es que esté tratando de quitarse
(REMOVE) un objeto que lleve puesto, que uno que lleve en sus manos o que esté
aquí. Si un objeto se encuentra, su número se pasa a la acción REMOVE. Si hay
un objeto en existencia en cualquier parte del juego o si el Nombre1 no estaba
en el Vocabulario, entonces el SM23 ("No llevo uno de esos") se imprime. Si
no, el SM8 ("No puedo hacer eso") se imprime (no es un objeto válido pero
existe en el juego). De cualquier forma, las acciones NEWTEXT y DONE se
ejecutan.
AUTOP locno
Una búsqueda del número del objeto representado por el Nombre (Adjetivo) 1 se
hace en la tabla de Objetos (OBJ) en el siguiente orden de prioridad: llevado,
puesto, aquí. Es más factible que el jugador esté intentando poner un objeto
que lleva en sus manos dentro de otro, que uno que lleva puesto encima o está
aquí. Si el objeto se encuentra, su número se pasa a la acción PUTIN. Si hay
un objeto en existencia en cualquier parte del juego o si el Nombre1 no está
en el Vocabulario, entonces el SM28 ("No tengo uno de esos") se imprime. Si
no, el SM8 ("No puedo hacer eso") se imprime. No es un objeto válido, pero
existe en el juego. De todos modos, las acciones NEWTEXT y DONE son
ejecutadas.
AUTOT locno
Una búsqueda por el número del objeto representado por el Nombre (Adjetivo) 1
se hace en la tabla de Objetos (OBJ) según la siguiente prioridad: un
contenedor, llevado, puesto, aquí. El jugador es más probable que esté
intentando sacar un objeto que esté dentro de un contenedor que un objeto que
sea llevado, puesto encima, o aquí. Si un objeto se encuentra, su número se
pasa a la acción TAKEOUT.
Si hay un objeto en existencia en cualquier parte del juego o si el Nombre1 no
está en el Vocabulario entonces el SM52 ("No hay uno de esos en él"), viene
luego una descripción del objeto que sirve de localidad, y luego el SM51 (“.”)
se imprime.
Si no, el SM8 ("No puedo hacer eso") se imprime. (No es un objeto válido pero
existe en el juego). De cualquier modo, las acciones NEWTEXT y DONE se
ejecutan.
Nota Importante: No se hace ningún chequeo, ni por AUTOP ni por AUTOT, de que
el objeto que se va a usar como contenedor, o sea el de locno esté actualmente
presente. Esto debe ser hecho por ti, si así es requerido.
COPYOO objno1 objno2
RESET
COPYOF 1 11
SAME 11 38
puede ser usado para chequear que el objeto 1 esté en la misma localidad
del jugador, aunque ISAT 1 255 sería mucho mejor.
WHATO
SET flagno
CLEAR flagno
RANDOM flagno.
MOVE flagno.
Esta orden puede ser usada para dar a los personajes movimientos
aleatorios en direcciones válidas, poniendo para ello el Verbo de la SL
en una palabra de movimiento aleatoria y dejando que la orden MOVE
decida si el personaje puede ir en esa dirección.
Hay que tener en cuenta, que cualquier movimiento especial (o
movimientos) que se manejen en la tabla de Respuestas para el jugador,
deben manejarse separadamente para un PSI.
Hay tres acciones para manipular las banderas que se usan para controlar
al jugador:
GOTO locno.
MODE option
por ejemplo, MODO 3 detiene el prompt 'Más ...' y hace que todos los
caracteres se convierten a la gama 128-256.
Opciones:
1 – Limpia la ventana despues del input.
2 – Reimprime la línea input en el stream actual cuando se complete.
4 – Reimprime el texto actual del input después de un timeout.
WINDOW window
CENTRE
CLS
SAVEAT y BACKAT
BORDER colour
TAB col
SPACE
NEWLINE
MES mesno
MESSAGE mesno
Imprime el mensaje dado por mesno, pero luego ejecuta una acción
NEWLINE.
SYSMESS sysno
DESC locno
PRINT flagno.
DPRINT flagno
LISTOBJ
LISTAT locno+
0 – Acción normal
1 – Grabar a CINTA (es decir, no se pregunta "¿disco o cinta?")
2 - Grabar a DISCO (ídem)
SAVE opt
Esta acción salva el estado actual del juego a disco o cinta. El SM60
("Nombre del fichero:") se imprime y se llama a la rutina input para
obtener pedirle el nombre del fichero al jugador. Si el nombre
suministrado no es acceptable, el SM59 ("Nombre de fichero no válido.")
se imprime. Esto no se comprueba en máquinas de 8 bits, el nombre del
archivo se adaptará adecuadamente por el Sistema.
LOAD opt
Esta acción carga una partida desde disco o cinta. El nombre del
fichero se obtiene de la misma forma que SAVE. Diferentes errores
pueden aparecer en cada máquina si el archivo no se encuentra o sufre
un error de carga, generalmente un error de 'I/O'. La siguiente acción
se realiza sólo si la carga se realiza correctamente. En caso
contrario, se efectúa un GOTO 0, RESTART.
RAMSAVE
RAMLOAD flagno.
Ahora dos acciones que permiten hacer una pausa en el juego durante un
tiempo o hasta que se pulse una tecla:
ANYKEY
PARSE n
Modo 1 fue diseñado para usarlo en las convesaciones con los PSI.
Cualquier cadena (es decir, una frase adicional entre comillas [""])
que esté presente en la frase actual tecleada por el jugador se
convierte automáticamente en una SL - sobrescribiendo la SL existente
formada originalmente para esa frase.
_ _ PARSE 0
MESSAGE "Ellos no entienden "
REDO
word word CondAct list ; Cualquier frase que nuestro PSI entienda
_ _ MESSAGE x ; como arriba u otro mensaje diferente
NEWTEXT
PROCESS procno.
REDO
DOALL locno+
Si se usa un bucle DOALL para cosas como ABRIR TODO, hay que tener en
cuenta el hecho de que, en el funcionamiento de la mayoría de las
puertas, se han puesto banderas y que entonces habría que convertir
esas banderas en objetos para poderlas incluir en un bucle DOALL.
SKIP distance | etiqueta
Skip puede aceptar como parámetro una etiqueta local. Estas etiquetas
son precedidos por el signo “$”. Son locales para cada tabla de
procesos y no afectará a los símbolos globales utilizados. La gran
ventaja es que se pueden referenciar.
Por ejemplo:
$backloop
_ _ PRINT Flag
MINUS Flag 1
NOTZERO Flag
SKIP $backloop
_ _ ZERO Error
SKIP $Forward
_ _ EXIT 0
$Forward
_ _ ...
RESTART
END
DONE
NOTDONE
OK
El SM15 ("OK") se imprime y la acción DONE se ejecuta.
EXTERN value
CALL address
PICTURE picno
DISPLAY value
Acciones varias:
MOUSE option
4.2.0 El IBM
Ejecutando el interprete
El archivo más común con el que vamos a trabajar será INTSDM si está
utilizando el idioma español. Esta es la versión 'Interpreter,
Spanish, Developer, Multi-graphics'. Las características del desarrollo
del intérprete también se explican en la sección sobre la
configuración de la máquina de desarrollo
Para utilizar los archivos OBJ debe combinarlos usando LINK con
cualquier rutina externa que está utilizando.
LINK \OBJ\INTSDM+EXTERN+CHARS,INTSDM;
El módulo EXTERN contiene rutinas para lidiar con EXTERN. Mientras que
el módulo de CHARS contiene varias variables externas que pueden ser
modificadas reemsamblando CHARS.ASM. El módulo CHARS siempre debe ser
el último módulo que se indique en LINK.
INTl{M {V}}
Los interpretes para desarrolladores:
donde l es el idioma
Ejemplos:
A>INTSDM CAVE
A>INTED CAVE E
A>INTSM
A>INTEM V
Notas especiales
INTl.EXE ;Interpreter
Este archivo debe linkarse con un módulo CHARS con el número correcto
de "partes". El CHARS.OBJ suministrado está establecido en dos. El
archivo se debe renombrar con el nombre del juego.
Ejecutando el interprete
En DISCiPLE
LOAD d1"drs"
En +3
LOAD "drs"
!,?,a,e,i,o,u,n.
,¨, ,‚,¡,¢,£,¤
Notas especiales
Ejecutando el interprete
Notas
Las opciones INK y PAPER establecen que la tinta utilice 0-3 para
escribir los caracteres. Estos dependen de los colores establecidox en
la base de datos de gráficos. BORDER establece el color físico real del
borde de 0-26.
Ejecutando el interprete
Se inician con:
4.2.4 El MSX
Hay una sutil diferencia entre el MSX y Spectrum: Cada línea de píxeles
en MSX tiene su propio atributo de color. Esto puede causar algunos
problemas leves en los gráficos al portarlos. Con el fin de mantener la
velocidad solamente se establecen los atributos del pixel por encima y
por de bajo del que está siendo trazado (esto no es estrictamente
cierto, sólo se establece si corresponde posicion línea-columna 8x8).
Esto proporcionará una emulación razonable del Spectrum, pero puede
causar problemas si se dibujan los gráficos suponiendo que todo el
color de la celda de caracteres se ajustará al dibujar una línea a
través de ella. Nota: ¡ES DEMASIADO LENTO establecer todas las líneas
a8 píxeles!
4.2.5 El Atari ST
Ejecutando el interprete
Los requerimientos para hacer una copia con autoarranque son los mismos.
4.2.6 El Amiga
Sólo hay un único intérprete para cada idioma en el Amiga, lDIn. Donde
l es el idioma y n el número de partes.
Ejecutando el interprete
Deberá crear un disco que contenga el sistema operativo mínimo AMIGA (Si
mantiene una copia de este disco puedes simplemente hacer una copia del
mismo cada vez que realiza un master).
Ejecutando el interprete
Los requerimientos para hacer una copia con autoarranque son los mismos.
Notas:
El parser actúa buscando en una línea de Input, (que puede ser hasta 125
letras), palabras que estén en el Vocabulario, extrayendo de esta forma
"frases" que se puedan convertir en Sentencias Lógicas (SL).
El parser sabrá que todos los Nombres que tengan un valor menor de 50
los utilizará el escritor para nombres propios, y por lo tanto no se
verán afectados por esta regla.
(Adverbio)Verbo(Adjetivo1[Nombre1])(preposición)(Adjetivo2[Nombre2])
COGE TODO
ABRIR PUERTA (porque el artículo LA no está en el Vocabulario)
SUR (porque DIRIGETE no está en el Vocabulario)
COGE MALETA
MIRA DENTRO ELLA (ese ella se asume que es maleta, puesto que es
el último Nombre del que se ha hablado)
4.4.0 Español
Flag 29
7 - Establece si hay gráficos disponibles. Si la bandera es menor de
128 se asume que está en modo texto de 80 columnas (porque sólo el
ST y el IBM no establecen este bit, y eso es cuando se están
ejecutando en modo texto de 80 columnas)
6 - Modo de dibujo invisible para máquinas Drawstring. Cuando se
establece este bit hace que las máquina Drawstring que usan paleta
(por ejemplo CPC) se abstengan de establecer los colores hasta el
toda la imagen se haya dibujado
5 - Imagenes OFF (drawstring solamente)
4 - Espere por una tecla después de dibujar la imagen (drawstring)
3 – Cambia el color del BORDER de la imagen (drawstring)
2/1 Sin definir
0 - Mouse presente (16 bit solamente).
Flag 50 Lleva el Número del Objeto a un bucle DOALL (Es el valor que
sigue a DOALL).
Flag 52 La fuerza del jugador (el máximo peso de los objetos llevados
más los puestos encima) Inicialmente es 10. Se establece con la
acción ABILITY.
Flag 54
Lleva el número de la loc. del objeto actualmente referido.
Flag 55
Lleva el Peso del objeto actualmente referido.
Flag 56
Estará a 128 si el objeto actualmente referido es un contenedor.
Flag 57
Estará a 128 si el objeto actualmente referido se puede llevar
puesto encima.
Flag 58 y 59 Son los atributos de los objetos de usuario actualmente
referenciados.
Cada entrada de esta sección contiene una palabra (o los primeros cinco
caracteres de una palabra), un valor de palabra y un tipo de palabra.
Palabras con el mismo valor y tipo se llaman sinónimos. Un
especificador de idioma opcional se puede dar para fijar una palabra
para un idioma específico.
Esta sección, que tiene una entrada para cada objeto, contiene el
texto que se imprime cuando se describe un objeto. Un objeto es
cualquier cosa en una aventura que puede ser manipulados y los objetos
son numerados desde 0 hacia arriba. El Objeto 0 es para el intérprete
una fuente de luz
Esta sección, que tiene una entrada para cada localidad, contiene el
texto que se imprime cuando se describe una localidad. Las entradas
están numeradas de 0 hacia arriba y la localidad 0 es la localidad en
la cual comienza la aventura.
Esta sección tiene una entrada para cada localidad y cada entrada puede
estar vacía (null) o contener un número de "pares de movimiento". Un par
de movimiento consiste en un Verbo (o un Nombre de conversion a Verbo)
del vocabulario seguido por el número de una localidad.
Esto significa que cualquier Verbo (o un Nombre de conversion a Verbo)
con ese valor causa un movimiento hasta esa localidad. Una entrada
típica sería:
SUR 6
ESTE 7
SALIR 6
NORTE 5
Process table 0
CTL
Note:
a) NULLWORD es el carácter que se utilizará como palabra nula. Debe
ser un character diferente a a-Z o 0-9. No se recomienda cambiar
esta definición.
VOC
Notas:
a) 'n' debe evaluar a los números consecutivos y empezar por cero.
b) STX el límite es 60-255
c) MTX el límite es 1-255
d) OTX el límite es 1-255
e) LTX el límite es 1-252
f) Las líneas de texto sólo deben contener caracteres imprimibles
ASCII normales, o un código de escape como se describe a
continuación. El compilador le dará una advertencia si
encuentra cualquier carácter de control en el texto. Cualquier
carácter con un valor de menos decimal de 32 o superior a 127
se considera un código de control incluyendo TAB (código 9). El
compilador sólo da una advertencia acerca de los códigos de
control - Si los dejas pueden inducer a error al intérprete y
algunos códigos de control también pueden confundir al
compilador.
Notas:
a) Debe tener el mismo nº de entradas que en LTX.
b) 'n' debe evaluar a los números consecutivos y empezar por cero.
c) WORD debe estar en el vocabulario como Verbo (o Nombre < 20).
d) LOCNO se debe especificar en LTX.
OBJ
/n w-s LN w-s WT w-s CONT w-s WR w-s NOUN w-s ADJ {w-s{;com}} EOL
Notas:
a) n debe comenzar en 0 y ser consecutivo.
b) Debe haber el mismo número de entradas que en OTX.
c) LN es la posición de los objetos en el inicio de la aventura y se
debe especificar en LTX, o ser 252-254, WORN, CARRIED, o la
palabra carácter nulo.
252 y la palabra carácter nulo no significa que estan creados
253 y WORN significa puesto encima
254 y CARRIED significa llevado
d) WT es el peso de los objetos en un rango de 0-63.
e) CONT especifica si el objeto es un contenedor. Puede ser Y o la
palabra nula.
f) WR especifica si el objeto se puede poner/quitar. Puede ser Y o
la palabra nula.
g) NOUN es un nombre en el vocabulario, que se refiere al objeto o
la palabra nula.
h) ADJ es un adjetivo en el vocabulario, que se refiere al objeto o
la palabra nula.
i) Si un objeto comienza puesto (WORN) entonces WR debe ser Y.
j) No se puede especificar un adjetivo sin un nombre.
PRO
Notas:
a) V debe ser un verbo en el vocabulario, un nombre < 20 en el
vocabulario o la palabra carácter nulo.
b) debe ser un nombre en el vocabulario o carácter nullword.
c) KEYWORD puede ser una CONDITION o una ACTION.
d) Cualquier cosa en la col 1 se supone que es el comienzo de la
siguiente entrada.
e) PARAM1 sólo puede estar encerrado entre corchetes '[]' para la
mayoría de CondActos que tengan un parámetro. Esta indica que se
requiere indirección. Esto hará que el condacto use el contenido
de la bandera especificado por el parámetro, como parámetro real.
por ejemplo (suponiendo que la bandera 100 contiene 9):
SETCO 12 ; Establece el número de objeto actual a 12
SETCO [100] ; Establece el número de objeto actual a 9
Condiciones
Acciones
NEWTEXT
ABILITY value value
WEIGHT flagno
RANDOM flagno
INPUT stream
WHATO
CALL address
PUTO locno+
NOTDONE
AUTOP
AUTOT
MOVE flagno WINSIZE
height width REDO
CENTRE
INKEY
EXIT value
SKIP offset8
RESTART
TAB col
COPYOF objno flagno
COPYOO objno objno
COPYFO flagno objno
COPYFF flagno flagno
Notas:
a) flagno y value están en el rango 0-255.
b) percent está en el rango 1-99.
c) objno debe definirse en OTX.
d) mesno debe definirse en MTX.
e) smesno debe definirse en STX.
f) prono debe ser el número de la table de procesos.
g) locno debe definirse en LTX.
h) locno+ debe definirse en LTX o ser 252-255 o el character null
word, 'WORN', 'CARRIED' o 'HERE'.
i) adjective debe ser un adjetivo en el vocabulario o el caracter
word.
j) adverb debe ser un adverbio en el vocabulario o el caracter word
null.
k) Preposition debe ser una en el vocabulario o el caracter word
null.
l) noun debe ser un nombre en el vocabulario o el caracter word
null.
m) 'stream' es una window/stream 0-7 válida.
n) Line, col, height y width no comprueban el rango en el compilador
como los interpretes adaptandose a la pantalla cuando sea
necesario.
o) offset8 es una distancia de salto de -127 a 128, que especifica
una entrada para saltar. Si se especifica una etiqueta local,
entonces la distancia se calcula automáticamente.
5.2 Comandos del pre-procesador
Una línea que comienza con /LNK puede aparecer en cualquier parte del
código fuente y obliga al Compilador a cambiar a un archivo de código
fuente diferente. Tenga en cuenta que todo lo que sigue a la
instrucción /LNK en el archivo actual se ignora.
Por ejemplo:
#INCLUDE filespec
Este grupo de comandos tendrá lugar juntos. Tenga en cuenta que el ELSE
es opcional. Todas las líneas siguientes al #if (hasta el siguiente
#else o #endif) se incluirán en la compilación, sólo si symbol tiene un
valor no cereo (verdadero).
#if !DRAW
compilará las líneas entre #if y #endif sólo si estamos en una máquina
de discos de 53 columna.
#ECHO
Por ejemplo:
#if PC
#echo Including IBM Display handler
#include \LIB\PCDISP.SCE
#endif
#LOOKUP lang
Los valores válidos para 'lang' son 0 para Inglés o '1' para Español.
Pueden asignarse a símbolos, si es necesario.
#INCBIN filespec
#defw 6578
#defw IOADDR+4 65535
#HEX hexpair{{w-s}{hexpair}...}
#hex FFDE7898
#HEX 00 89 FD F3
#DBADDR symbol
#USERPTR n
#EXTERN {filespec}
#SFX {filespec}
ERRORES de compilación
¡La base de datos es tan grande que abarca desde 65535 hasta
0!
Opuesto a 63!
The compiler thinks you have missed the closing bracket ']'
on an indirected parameter.
2. Image (DMG)
Spectrum
SAVE Graphics
Equivalente al comando BASIC SAVE f CODE m, n donde m es la
dirección de inicio de la base de datos, n es la longitud y f es
el nombre del archivo.
VERIFY Graphics
Equivalent to the BASIC command VERIFY f CODE m,n
LOAD Graphics
Equivalent to the BASIC command LOAD f CODE, i.e. it will load
any file of bytes back to the address it was saved from.
Very Important
Si se presiona BREAK o se detecta un error de cinta durante una
carga, la base de datos retenida en la memoria estaría dañada. Si
se presiona CAPS SHIFT & 6 mientras se solicita un nombre, la
base de datos gráfica no se verá afectada.
Amstrad CPC
Disc/Tape
Para aquellos con una unidad de disco y una platina de cinta. Le
permite elegir entre Guardar, gato, etc.
Very Important
Si se presiona ESC o se detecta un error durante una carga, la base de
datos retenida en la memoria estaría dañada, por lo que se realiza una
llamada para establecer una base de datos mínima. Esto significa que
sus gráficos se perderán, pero no ha dañado la base de datos y puede
usar cualquier opción disponible. Si se presiona ESC mientras se
solicita un nombre, la base de datos gráfica no se verá afectada.
CAT
Puede usarse para catalogar una cinta o disco de la misma manera que en
BASIC.
Commodore 64
Very important
Si se presiona RUN STOP o se detecta un error durante una carga,
la base de datos almacenada en la memoria estaría dañada, por lo
que se realiza una llamada para establecer una base de datos
mínima. Resultado: ¡una ubicación en blanco! Esto significa que
sus gráficos y patrones de color se perderán pero la base de
datos no está corrupta y puede usar cualquier opción disponible.
Si se pulsa RUN STOP mientras se solicita un nombre o medio, la
base de datos gráfica no se verá afectada.
Insert I
Amend A picno.
Size S
Spectrum
Amstrad CPC
Commodore 64
Dump D
CBM Y CPC
* Las subrutinas ahora se pueden anidar a una profundidad de diez
como en el Spectrum
* No hay la opción Freehand (mano alzada)
* CTRL + C (CTRL + T on CPC) permite colocar caracteres gráficos
individuales en la pantalla en la Base del Cursor para agregar
detalles a las imágenes.
CBM
* La función Ayuda en H aún está disponible a pesar de que
Spectrum / CPC no la tienen.
* No dibuje 'off' en la parte inferior de la pantalla, esto
dañará las dos líneas de texto inferiores en el intérprete, ya
que no usa una pantalla dividida como el editor.
El editor de caracteres
Commodore 64
Para modificar el patrón, use las teclas del cursor (marcadas con
CRSR) junto con SHIFT, según sea necesario, para mover el cursor
parpadeante. El estado del bit debajo del cursor se puede cambiar
en cualquier momento usando la BARRA ESPACIADORA.
Amstrad CPC
A picno
Spectrum
Amstrad CPC
-------------
| FINAL | Marcador de final de cadena
|-----------|
| |
| SIGUIENTE | Comandos todavía no dibujados
|-----------|
| |
| |
| |
| LIBRE | Memoria disponible
|-----------|
| TFINAL | Punto final temporal
|-----------|
| |
| |
| |
| DIBUJO | Cadena principal de dibujo
-------------
1) Comandos de Dibujo
2) Comandos de Color
Neither Inverse nor Over use any memory but their state is
encoded as part of each future instruction which is affected by
them.
3) Commando de Subroutina
Tenga en cuenta:
4) Comandos de Edición
Q W E
A D
Z X C
1) Commandos de Dibujo
2) Comandos de Color
3) Comando de Subrutina
4/ Comandos de Edición
2) Comandos de Color
3) Comando Subrutina
4/ Editing commands
1. Introducción:
================
Éste es el creador y editor de la base de datos con los gráficos
(y el sonido, en la versión de ST) de la aventura para los
ordenadores de 16 bits y PCW. Hay dos versiones:
2.1.4. Quit:
Sale al sistema tras pedir confirmación.
2.2.1. Locations:
Información sobre los datos contenidos en una localidad. En ella
podemos ver:
-Botones << y >>: nos permiten ver la localidad anterior y
la
siguente respectivamente. Entre ellos aparece el número de la
localidad que estamos viendo.
-Offset: si esta localidad está vacía, aparecerá la frase "no
data". En caso aparecerá un número en hexadecimal que no es de
niguna utilidad para el desarrollo de la de la aventura.
-Copy: permite copiar este gráfico o sonido a otra localidad.
En realidad sólo se copia el puntero a ese gráfico o sonido, por
lo que el tamaño de la b.d.g. no aumenta, ahorrándose así memoria.
Notese que la información de dos localidades con el mismo gráfico
o sonido es independiente, es decir, podemos tener dos localidades
apuntando al mismo gráfico y en una tenerlo como fijo y en otra
como flotante, o con distintas coordenadas, o tener dos
localidades apuntando al mismo sonido y en cada una haber
especificado una frecuencia distinta.
-Clear: borra el puntero de la localidad, con lo que esta
queda libre. Si esta era la única localidad que apunta a ese
gráfico o sonido, el programa nos lo advierte y pide confirmación.
La actualización de la base de datos al borrar un dibujo o sonido
puede llevar algún tiempo; especialmente si no se trabaja con un
disco ram. Al finalizar la actualización conviene salir del DMG y
borrar el fichero .BAK que se ha creado para disponer de más
espacio de trabajo en el disco.
-Nobuff/buffer:Al cargar el juego el DAAD reserva una zona de
memoria (buffer) en la que se cargan tantos gráficos y sonidos
como quepan, todos los demás serán cargados de disco cuando se
haga un PICTURE. Con la opción buffer indicamos al DAAD que el
gráfico o sonido de esta localidad tiene prioridad a la hora de
cargarse en memoria al principio del juego. Se usa, por ejemplo,
para gráficos de objetos, marco para el gráfico, caras de
personajes y en general cualquier cosa en la que se necesite
velocidad y no queramos que el juego se ponga a cargar. Hay que
tener en cuenta que la capacidad del buffer es limitada, variando
según el modelo de ordenador y la memoria de que disponga. Se
garantizan 32k de buffer aunque normalmente se puede contar con
algo más.
Tanto para gráficos como para sonido, en la parte baja del panel
están los botones OK para confirmar los cambios realizados y
Cancel, que nos pregunta si queremos cancelar todos los cambios
realizados desde que se seleccionó Locations en el menú DB, sólo
los de la localidad seleccionada en este momento, o ninguno.
2.2.4. Squeeze:
Comprime la b.d.g. Requiere más espacio de disco cuanto mayor sea
la b.d.g. , por lo que conviene comprimir antes de que la b.d.g.
crezca demasiado (unas 300k si se trabaja con disco ram en una
máquina de 1 mega).
2.2.7. Info:
Nos da el número de gráficos y sonidos que tiene la b.d.g. (si
hemos copiado un gráfico o un sonido a más de una localidad, sólo
se cuenta una vez) y la longitud total de la b.d.g.
2.3.1. View:
Permite ver con la paleta de ST/Amiga/VGA la pantalla que hayamos
cargado en la memoria de trabajo.
2.4.3. Calculate:
Como alternativa a las opciones de cargar las paletas de EGA y CGA
se puede hacer que el DMG las calcule a partir de la de ST. Esto
es más cómodo pero los resultados no son tan buenos, aunque se
pueden mejorar con la opción Edit.
2.4.4. Edit:
Permite editar las paletas de EGA y CGA. En la mitad izquierda del
panel aparecen tres columnas que, de izquierda a derecha,
representan los 16 registros de la paleta (numerados del 0 al 15)
y los colores de EGA y CGA que tienen asignados respectivamente.
A continuación se listan los colores de EGA y CGA junto el número
que representa a cada uno en el DMG y sus valores RGB:
EGA:
----
RGB
0 Negro 000
1 Azul 006
2 Verde 060
3 Cyan oscuro 066
4 Rojo 600
5 Magenta oscuro 606
6 Naranja 620
7 Gris claro 666
8 Gris oscuro 222
9 Azul claro 337
10 Verde claro 272
11 Cyan claro 277
12 Rojo claro 722
13 Magenta claro 727
14 Amarillo 772
15 Blanco 777
CGA:
----
RGB
0 Negro 000
1 Cyan 277
2 Rosa 727
3 Blanco 777
Si se le llama con
DMG nombrebdg
y no existe una b.d.g. con ese nombre, la creará para CGA.
Si se le llama con
DMG nombrebdg -ega
y no existe una b.d.g. con ese nombre, la creará para EGA.
Q - Salir al sistema.
a) Cable 1:
-----------
Sirve para conectar el PC vía RS-232 con el Atari ST, el
Amiga y el Amstrad CPC. Tiene un conector hembra de 25 pines (DB-
25) a cada extremo. Los conectores deben estar cableados como
sigue:
1--------------1
2--------------2
3--------------3
|---4 4---|
| 5--------------5 |
|---6 6---|
| 7--------------7 |
|---8 8---|
20--------------20
b) Cable 2:
-----------
Para conectar el PC con el RS-232 de un Spectrum 128k ó +2. Los
programas de comunicaciones que se suministran con el DAAD sólo
funcionan con un Disciple,que es incompatible con el +2A y el +3
(las comunicaciones con +3 y PCW se hacen a través del Amstrad
CPC, utilizando discos en formato DATA que pueden ser leídos por
cualquiera de los tres ordenadores).
Es un cable de 6 hilos con un conector DB-25 en un extremo y un
conector para el zócalo RS-232 del Spectrum en el otro cableados
como sigue:
c) Cable 3:
-----------
Para conectar el puerto paralelo del PC con el puerto de E/S de
usuario del Commodore 64. Es un cable plano de 25 hilos con un
conector a presión DB-25 en un extremo y el conector adecuado para
el Commodore en el otro. Este conector está cableado como sigue:
Hilo Patilla del conector del C-64
---- -----------------------------
5 M
9 L
11 K
13 J
15 H
17 F
19 E
21 D
23 C
25 B
#incbin filespec
#hex hexpair{{whitespace}{hexpair}....}
#dbaddr symbol
Dará el símbolo de la dirección actual en la base de datos. Esto se
puede usar para los comandos CALL o #defw.
1/ SFX,EXTERN
#extern {filespec}
#sfx {filespec}
#int {filespec}
2/ CALL address
Assembler bit
-------------
1/ Z80
EXTERN 0 6
#defw Anaddress
LD A,(BC)
PUSH AF
INC BC
LD A,(BC)
LD E,A
INC BC
LD A,(BC)
LD D,A ; DE = Anaddress
POP AF ; A = 6
Tenga en cuenta que en las máquinas donde coexisten RAM y ROM, su entorno
será de 64 K de RAM, por lo que no busque ROMS sin más información...
LISTA DE LOS PROGRAMAS DEL DAAD V2
================================================================================
NOTA:Los ficheros con la extensión .ARJ están comprimidos. Bajo cada uno de
ellos se listan los ficheros que se obtienen al descomprimirlos.
PIXELS <DIR>
CACGA.COM -Convierte gráficos de Amstrad CPC a CGA
CSTEGA.EXE -Convierte gráficos en formato .PI1 de ST a EGA
CSTVGA.EXE -Idem a VGA (para la pantalla de presentación)
CSTAM.EXE -Idem a Amiga
CSTS.EXE -Idem a Spectrum
CSTA.COM -Idem a Amstrad CPC
CST1PCW.EXE -Idem a PCW
CST3PCW.EXE -Convierte gráficos en formato .PI3 de ST a PCW
COMMS <DIR>
XMP.EXE -Comunicaciones entre PC y Spectrum (Con Disciple)
GOCBM.COM -Comunicaciones con Commodore 64
PPM.COM -Envía una aventura al MSX y la ejecuta (Necesita PDS)
AAH.COM -Añade una cabecera de Amstrad CPC a un fichero
ASH.COM -Añade una cabecera de Spectrum +3 a un fichero
RAAH.COM -Quita la cabecera de Amstrad CPC de un fichero
RASH.COM -Quita la cabecera de Spectrum +3 de un fichero
SQUEEZE <DIR>
FINDTOK.EXE -Halla los tokens que proporcionarán la compresión más
eficiente del texto de la aventura.
RECOVER <DIR>
LOOK.COM -Permite examinar los textos de una aventura compilada
PRINT <DIR>
SPP.COM -Pone la impresora en modo IBM
WP <DIR>
STRIP.COM -Elimina los espacios al final de cada línea
de un texto.
ASC1ST.COM -Convierte un texto en formato del 1st Word
de Atari a ASCII
ASM <DIR>
MHEX.COM -Crea a partir de un fichero binario un bloque en
fuente para incluir en el listado de la aventura
GENTASM.COM -Convierte un listado de GENS de Spectrum al ensamblador
cruzado 2500AD (no incluido)
INTE1.EXE
INTE2.EXE
INTE3.EXE
INTECGA1.EXE
INTECGA2.EXE
INTECGA3.EXE
INTED.EXE
INTEDM.EXE
INTEM1.EXE
INTEM2.EXE
INTEM3.EXE
INTS1.EXE
INTS2.EXE
INTS3.EXE
INTSCGA1.EXE
INTSCGA2.EXE
INTSCGA3.EXE
INTSD.EXE
INTSDM.EXE
INTSM1.EXE
INTSM2.EXE
INTSM3.EXE
DEMO <DIR>
STT1.DAT -La base de datos gráfica de la primera parte de Los Templos
Sagrados para poder estudiarla con el DMG y poder hacer las
versiones de Atari ST y Amiga si se desea.
OTROS <DIR>
DAAD <DIR>
EDI1 -Intérprete inglés para una parte
EDI2 -Intérprete inglés para dos partes
EDI3 -Intérprete inglés para tres partes
SDI1 -Intérprete español para una parte
SDI2 -Intérprete español para dos partes
SDI3 -Intérprete español para tres partes
PART1.CHR -Set de caracteres
SDI2.INFO -Un icono que, renombrándolo, se puede usar
con cualquier intérprete
UTILIDADES <DIR>
DOS-TO-DOS -Permite leer y escribir discos de PC y Atari
VT100 -Programa de comunicaciones
Este disco contiene, además, todos los directorios y ficheros necesarios para
hacer que la aventura se autoejecute. Para ello basta con hacer una copia del
disco, eliminar el directorio OTROS y, evidentemente, incluir la aventura.
IV.- Spectrum (1 disco de 3 1/2 para Disciple y otro de 3'' para +3)
====================================================================
1.-Disciple:
------------
DRS -Cargador BASIC para una aventura
DS48IS -Intérprete
DG -Editor de gráficos: cargador BASIC
DS48GE -Editor de gráficos: programa en C.M.
BLANK + -Una base de datos gráfica vacía necesaria para el editor
XM -Programa de comunicaciones con PC: cargador BASIC
SXM -Programa de comunicaciones con PC: programa en C.M.
2.-Spectrum +3:
---------------
DRS -Cargador BASIC para una aventura
DS48IS.P3F -Intérprete
DG -Editor de gráficos: cargador BASIC
DS48GE.P3F -Editor de gráficos: programa en C.M.
BLANK.SDG -Una base de datos gráfica vacía necesaria para el editor
V.- CPC/PCW (1 disco de 3''):
=============================
CPC (CMP):
----------
P11CPM3.EMS -Versión de CPM3 preparada para usar el protocolo de
comunicación Modem7
DCPCIS.Z80 -Intérprete
MCRF.COM -Construye u programa ejecurable desde AmsDOS a partir de los
ficheros de una aventura
UKM7AMS.COM -Programa de comunicaciones
CPC (AmsDOS)
------------
DG.BIN -Editor de gráficos
BLANK.BIN -Base de datos gráfica vacía para DG
NOTA: El mismo disco de 3'' contiene por una cara los ficheros para +3 y por la
otra los de CPC y PCW.
1.-DAAD:
--------
LS1 -Cargador para la primera parte de una
aventura LS2 -Idem para la segunda parte
SDI -Intérprete
DR -Programa para recibir based de datos desde
PC DRC -Y su C.M.
DG -Editor de gráficos.
DGC -Su C.M.
aBLANK -Base de datos gráfica vacía para
DG R -Programa para renombrar ficheros
S -Programa para borrar ficheros
2.-FAST HACK'EM:
----------------
Programa para formatear disco y copiar discos y ficheros.
DAAD
Adventure Writer
Version 2 - Release 2
Syntax highlighter:
Chris Ainsley
A special thanks goes to Andrés Samudio who kindly contributed DAAD to the
public domain, allowing us to build upon this wonderful heritage.
http://8-bit.info/infinite-imaginations-aventuras-ad/
1
Preambulo
Crecer en Europa en los 80 con un interés en los juegos de aventura, ya sea que
solo quisieras jugar o escribir, significaba usar directa o indirectamente los
sistemas de aventura de Gilsoft. Con "The Quill" y su sucesor "PAWs (escritor
profesional de aventuras)", Gilsoft publicó aplicaciones innovadoras que
permitieron crear aventuras de código de máquina de una manera simple e
innovadora. Para la mayoría de nosotros, solo hemos experimentado los juegos
que hemos experimentado, pero algunos de nosotros aprovechamos las nuevas
posibilidades y escribimos novelas interactivas. Un defensor temprano muy
conocido de los sistemas fue, por ejemplo, Fergus McNeill (Bored of the Rings,
The Colour of Magic, The Big Sleaze).
Si bien PAWs fue el último sistema abierto al público, no fue el último sistema que
involucró a Tim Gilberts, el fundador de Gilsoft. Después de que la etiqueta de
Gilsoft se desvaneció a finales de la década de 1980, fundó Infinite Imaginations
para asesorar y apoyar a otras empresas con herramientas y soluciones
personalizadas. Durante este tiempo, se creó SWAN (Sistema sin nombre) para
Delta 4 de Fergus McNeill y fue el primer sistema disponible solo para una sola
compañía.
Luego vino DAAD. Es el sistema final basado en el código que se puede seguir
hasta Quill. Al mismo tiempo, es el sistema más avanzado de esta cadena y
admite un analizador que está a la par de los títulos de Infocom. DAAD fue
desarrollado como una solución interna para la legendaria aventura española
Forge Aventuras AD. Después de que Aventuras AD tuvo que cerrar en bancarrota
en 1992, el sistema se consideró perdido durante muchos años. En 2014, el Sr.
Samudio, el fundador de Aventuras AD, descubrió el sistema en su ático. En lugar
de mantener el DAAD bajo llave, lo puso a disposición de la escena de aventura
española. Su generosa contribución de dominio público es la base sobre la cual se
basa este nuevo lanzamiento de DAAD.
Cuando el DAAD volvió a estar disponible después de décadas, resultó que el tiempo no
era bueno para el sistema. Teóricamente, las aventuras fueron apoyadas tanto en español
como en inglés. Prácticamente fue para que los intérpretes de inglés fueran borrados en
casi todos los medios. Dado que Aventuras AD no los usaba, se eliminaron con el tiempo.
Lo mismo se aplica a las plantillas de juegos en inglés. Parecía que el apoyo del idioma
inglés había desaparecido en las perpetuas mareas del tiempo. Además, el disco C64
estaba dañado. Algunas partes de él podrían ser restauradas, pero el analizador español
ya no era la última versión, sino una copia del último juego de Aventuras AD, Chichén Itzá.
Uno podría arreglar con el sistema, pero era un hecho que partes importantes de DAAD
probablemente se perderían para siempre.
DAAD es muy sofisticado, pero no espere que sea el PAW 2 que nunca estuvo en
la tienda. DAAD se creó teniendo en mente al desarrollador profesional de
aventuras. En lugar de ser una aplicación única, es un conjunto de más de 30
herramientas que necesitan ser operadas desde el shell de comandos de DOS.
DAAD requiere habilidades de programación y conocimiento en el manejo de
archivos de código fuente y compiladores. Las fuentes de sus aventuras (archivos
.SCE) se compilan en bases de datos de juegos que deben dominarse y
transferirse a los sistemas de destino donde se ejecutan en intérpretes
específicos de la plataforma. Las herramientas necesarias para lograr esto son
proporcionadas o referenciadas. Hay una sección en la documentación de 1991
llamada "un ejemplo trabajado" que explica los pasos necesarios. Además,
tenemos una sección de ejemplos trabajados en esta documentación de 2018,
con el propósito de complementar el problema original con conocimiento
moderno y formas más sencillas de dominar su juego de aventuras.
3
Tenga en cuenta que los archivos DAAD .SCE deben procesarse en DOS. Para
garantizar la compatibilidad, le sugerimos que los abra con la codificación de la
página de códigos 437. Puede anular la configuración predeterminada en la
configuración del usuario para abrir siempre archivos .SCE con codificación
CP437.
Después de montar los contenidos del directorio DAAD en DOSBox, está
totalmente configurado y listo para crear sus propias novelas interactivas..
Changes and additions since DAAD v2 Release 1 (1991)
in DAAD\SCE\
in DAAD\
in DAAD\TAPMAST\
in DAAD\TOOLS\
5
in LIB\AMIGA\
in LIB\ST\
DAAD\INTERP\ → contains all the DOS interpreter files, see 1991 docs
ATARI ST
Este es uno es bastante fácil. Haz exactamente lo que dice la documentación de
1991. No hagas la transferencia de cable sugerida. Use un emulador de elección
para obtener sus archivos de juego en una imagen de disco vacía. Hatari es una
buena solución, ya que permite el montaje de directorios como discos duros TOS.
No olvide copiar los archivos del intérprete de la imagen del disco DAAD ST.
AMIGA
Compilar como se describe en la documentación de 1991. No use ninguno de los
programas de transferencia a menos que realmente quiera hacerlo de la manera
antigua. Recomendamos encarecidamente obtener ADF Opus, un gran explorador
y editor de imágenes de disco de Amiga. Es una aplicación de Windows pero
funciona bien en Linux con Wine. Haga una copia de la imagen de disco MinOS
Amiga (en LIB\AMIGA\). Reemplace PART1.DDB en la imagen con su propia base
de datos de juegos. Haga lo mismo con el archivo PART1.DAT si su aventura
no es solo de texto. Si no quiere agregar una pantalla de carga, básicamente ya
está hecho. Si desea agregarla: en lugar de crear una pantalla de carga como se
describe en la documentación, cree una imagen IFF con una herramienta moderna
como GIMP. Utilice la utilidad S-Pic proporcionada (consulte la documentación
incluida) para crear un ejecutable comprimido de su imagen. Agréguelo al disco de
su juego y agregue el nombre ejecutable de la imagen en “s/startup-sequence”.
Debe ingresarse antes de la línea de carga del intérprete. El intérprete de inglés
7
(EDI) se a renombrado a INTERP en la plantilla de SO mínima. Si está creando un
juego en español, debe eliminar el intérprete que ya está en el disco y copiar SDI
desde el disco DAAD Amiga al disco de su juego. Cambie el nombre a INTERP y
listo. La copia y el cambio de nombre se pueden hacer con ADF Opus.
PC (DOS)
Sin cambios a la documentación de 1991. Solo queremos agregar que
definitivamente debe seguir con el método descrito como "usar nuevos gráficos
multimáquinas del sistema". Después de 28 años, es seguro decir que este
método funcionará mejor para usted.
CPC
Puede estar cerca de la documentación de 1991. Recomendamos usar WinAPE para
transferir sus archivos de juego a un disco de Amstrad. WinAPE tiene un modo de "edición
de disco", permitiendo convenientemente alterar el contenido mediante arrastrar y soltar.
WinAPE es una aplicación de Windows pero se ejecutará con Wine en Linux. En Linux,
recomendamos Arnold para todas las tareas que no sean mover bits y bytes. En LIB / CPC
hay un disco mínimo configurado con los archivos esenciales listos para compilar su juego
(DAAD_compile.DSK). Siempre debe hacer una copia del disco de compilación primero en
lugar de usar la imagen original. Esto tiene la ventaja de que puede eliminar todos los
archivos, excepto el binario del juego, una vez completado el proceso de compilación. El
disco contiene un archivo GFX.BIN que es una base de datos de gráficos vacía que puede
usar para aventuras solo de texto. Reemplácelo con su propio archivo si creó gráficos.
DAAD siempre quiere archivos gráficos, no funcionará sin ellos. La compilación es
manejada por MCRF que es un programa CP / M. Por lo tanto, debe iniciar en CP/M para la
compilación en sí. La documentación de 1991 dice que puede usar CP/M 2.2 y CP / M 3
(Plus), lo cual está desafortunadamente desafortunado. Solo CP/M 3 (Plus) funcionará.
Encontrarás una imagen en LIB\CPC. Aquí está la sinopsis:
Tenga en cuenta que debe especificar el tipo de base de datos de texto. DDB es
del compilador directo (que se recomienda) y se supone que BIN tiene un
encabezado de disco CPC.
Reemplace MYFILE con el nombre de su juego, por supuesto. También necesita un cargador de cinta.
Hay un archivo TAPLOAD en el disco, que se puede utilizar como una plantilla con todas las
funciones. Usa el comando MERGE de nuevo para echarle un vistazo y tal vez borrar la línea donde
carga una pantalla en caso de que no proporciones una. Guárdelo en el disco a través de SAVE
"TLOADER" LINE 10 o simplemente sobreescribiéndolo. Si elige sobreescribirlo, el sistema creará
un archivo .BAK de todos modos. Ahora necesita obtener su cargador y el juego binario de la imagen
de disco +3 en la estructura DAAD en DOSBox. Podría usar WinAPE nuevamente para este propósito.
IDSK también hará el trabajo. Coloque los dos archivos en el directorio de masterización de cintas en
DAAD\TAPMAST. Finalmente use TAPCAT para crear el archivo TAP final. TAPCAT es una utilidad de
DOS, no necesita cambiar a un shell de comandos de Windows para esa. También se puede
encontrar una breve documentación que contiene un ejemplo de trabajo para la constelación del
script DAAD TLOADER junto con un binario en el directorio de masterización de cintas. ¡Felicidades,
cinta lista para distribución!
10
CBM 64
El Commodore 64 fue nuestro hijo problemático debido a discos dañados,
intérpretes obsoletos, encabezados perdidos. Vamos a reemplazar el howto de 1991
por completo con este.
Si tienes eso, lo tienes bien. Tenga en cuenta que hay un archivo similar en la
imagen del disco, que es la base de datos de gráficos. Lo reconoce porque aparece
con una A invertida en el directorio. Debe dejar eso en la imagen, incluso si crea una
aventura de solo texto ya que el archivo contiene el juego de caracteres para su
juego. Si desea utilizar un juego de caracteres diferente, hay uno robado de un juego
de Aventuras AD en el disco. Ingrese el editor DG, seleccione la opción cargar juego
de caracteres, proporcione el nombre NEWCHRSET cuando se le pida un nombre.
Guarde la base de datos de gráficos como PART1 en el disco nuevamente. Agregue
gráficos por supuesto si desea que su aventura incluya gráficos.
DAAD también tiene instalaciones para que importes tus gráficos desde la base de
datos de gráficos de Spectrum. Hay dos intérpretes en el disco, EDI (inglés) y SDI
(español). Agregamos cargadores para juegos en inglés y español. Por lo tanto,
puede renombrar convenientemente un cargador. LE = Loader English y LS =
Loader Spanish. LE1, por ejemplo, cargará un juego inglés PART1. LS2 cargará un
juego español PART2. Finalmente borre del disco lo que ya no necesita. Esto
finalmente trae un analizador sofisticado a la par con PAWs al Commodore 64.
¡Disfruta!
11
Problemas conocidos
Los juegos Spectrum +3 solo pueden guardarse en cinta
Guardar en el disco nunca se implementó con los intérpretes del DAAD Spectrum.
Entonces, el juego funciona, pero le pedirá una cinta cuando escriba el comando
GUARDAR. Tim es consciente del problema y dijo que podríamos respaldar la
función desde Gilsoft PAWs (versión +3), que de hecho puede guardar en cinta y
disco. Como los PAW y el intérprete DAAD no están demasiado lejos el uno del
otro, confiamos en que puede esperar una actualización en el futuro cercano. Tim
definitivamente tendrá una mirada. Manténganse al tanto.
Credits
Parte del software que ahora incluimos con el DAAD no está hecho por nosotros.
Queremos dar crédito a los autores originales y aconsejarle que los apoye de
cualquier manera que pueda. SC por ejemplo, a pesar de que es regalo, puede ser
registrado.
Legal notes
Los archivos binarios del DAAD fueron cedidos amablemente al dominio público por
Andrés Samudio, el fundador de Aventuras AD. Fue su empresa la que tuvo el derecho
único de usar este software. Las fuentes de las herramientas de DAAD y el compilador
siguen siendo copyright Tim Gilberts e Infinite Imaginations y no se distribuyen.
Usted es responsable de cualquier problema legal que surja de su uso de este software.
Ultimas palabras
Nos tomó muchas horas, té y polvo de hadas crear este nuevo lanzamiento del
DAAD, todo por el bien de la preservación. DAAD es la herramienta final y más
sofisticada que surge del código que una vez comenzó como "The Quill" en un
teclado de goma ZX Spectrum. Ahora completa nuevamente por primera vez en
casi 30 años, nunca estuvo disponible para el público y nunca para una audiencia
en inglés. DAAD es un hito importante en la historia de la aventura de texto, un
patrimonio que se refleja en las maravillosas "aventuras conversacionales" de
Aventuras AD. Pero en lugar de un "gracias", queremos que use el sistema.
Demasiadas aventuras se escribieron con ella y el tiempo no podría ser mejor para
cambiar eso. ¡Imagina mundos!
13