CAAD

Comunidad de Aventuras Conversacionales y Relatos Interactivos
Fecha actual 29 Jun 2017 10:08

Todos los horarios son UTC + 1 hora




Nuevo tema Responder al tema  [ 52 mensajes ]  Ir a página 1, 2, 3, 4  Siguiente
Autor Mensaje
NotaPublicado: 01 Nov 2014 15:28 
Desconectado
Implementador
Implementador

Registrado: 13 Feb 2005 18:57
Mensajes: 1853
En viewtopic.php?p=69869#p69869 ...
DrVanHalenFan escribió:
Eer ¡anda! Una ficha en la wikiCAAD acaba de sufrir una pequeña actualización 8)

Se refiere a esta histórica edición:
wikicaad escribió:
Recuperación del sistema

Tras el cierre de Aventuras AD, pasaron cerca de 20 años sin saberse nada del programa, ya que las únicas copias supervivientes eran, en principio, las de los ganadores del concurso, y las que se pudieron encontrar de ellas estaban en discos irremediablemente deteriorados. Inesperadamente, entre el material cedido por Andrés Samudio a la Asociación de Usuarios de Informática Clásica (AUIC) para exponer en el evento Madrid Games Week 2013, aparecieron unos discos, guardados en su trastero durante años, con la mayor parte del sistema conservado y en estado funcional, a partir de los cuales el DAAD pudo ser recuperado en su práctica totalidad y ponerse a disposición del público interesado en su uso o estudio tras obtener el expreso permiso del autor durante la feria Valencia Va de Retro 2014.


Toda la película en: En busca del Parser Perdido


Arriba
 Perfil  
 
NotaPublicado: 02 Nov 2014 11:39 
Desconectado
Momio
Momio
Avatar de Usuario

Registrado: 09 Mar 2004 16:14
Mensajes: 4606
Tras revisar un poco por encima las capacidades del DAAD, veo que fue rápidamente superado por los pawlike para DOS de los 90 (SINTAC o NMP), y por los actuales (Superglús, ngpwas).

Supongo que como JSJ tuvo un DAAD algunas cosas ya directamente no se le tuvieron que ocurrir, y al final acabaron en todos los parsers pawlike.

DAAD tenía un pequeño problema con la indirección, y es que por las razones que quedaron de manifiesto aquí para el PAW, solo podía tener indirección en un parámetro, el primero, por lo que hay algunos condactos nuevos en DAAD que son copias de otro pero con los parametros cambiados, para poder hacer indireccion del segundo en lugar del primero. Por ejemplo COPYFF flag1 flag2 copia el contenido del flag1 en el flag2 mientras que COPYBF flag1 flag2 copia el contenido del flag2 en el flag1. También hay unos condactos BIGGER y SMALLER para comparar flags que no tendrían mucho sentido con indirección en ambos parámetros.

Además hay unos cuantos condactos dedicados a temas específicos que supongo que solo funcionarían en algunos interpretes, como el condacto WINDOW, WINSIZE, CENTRE, y algunos para vagos como el condacto SPACE (imprime un espacio) o DPRINT (para hacer el típico valor1+256*valor2). También habíia posibilidades de hacer un goto mediante etiquetas y el comando SKIP, aunque mucho más limitado que lo que tenía por ejemplo NMP.

El único condacto que realmente veo interesante, y que replicaré en ngpaws y Superglús, es el condacto SYNONYM, que creo que funciona diferente a como funcionaba en SINTAC o a las entradas sinónimas que usaba NMP. En realidad Superglús y ngpaws, en su librería base, hacen uso de lago similar a lo que hace el condacto SYINONYM de DAAD, pero sin condacto):

SINTAC (un poco de memoria):
Código:
ECHAR GASOLINA SYNONYM LLENAR DEPOSITO
 PRESENT oMoto
 CARRIED oBidon
 WRITELN "Llenas el depósito."             <--- No recuerdo si había un write o un print o algo, sino un MESSAGE valdría
 DONE



NMP:
Código:
- ECHAR GASOLINA
- LLENAR DEPOSITO
 PRESENT oMoto
 CARRIED oBidon
 WRITELN "Llenas el depósito."           
 DONE


Como veis en ambos el modelo es similar, para una entrada concreta se admiten dos frases concretas:


Superglús/ngpaws:
Código:
ECHAR GASOLINA
 LET 33 _voc_LLENAR
 LET 34 _voc_DEPOSITO

LLENAR DEPOSITO
 PRESENT oMoto
 CARRIED oBidon
 WRITELN "Llenas el depósito."           
 DONE



En Superglús y ngpaws no existe el soporte de entradas sinónimas, por lo que se hace el truco de cambiar el verbo y nombre de la frase. Esto que a priori parece más incómodo, y probalemente lo sea para casos como el del ejemplo, es tremendamente útil para funcionar en un modelo de acciones como el de Inform. Por ejemplo en la librería base de ngpaws podemos ver cosas como:

Código:
COGER TODO   ; COGER TODO DE --> SACAR TODO DE
 PREP DE
 LET 33 &&_voc_SACAR


PONER TODO
 PREP EN
 LET 33 &&_voc_METER


VACIAR _                               
 NOTEQ 51 255
 PRESENT @51
 ONOTZERO @51 aContainer
 COPYFF 34 44
 COPYFF 35 45
 LET 33 &&_voc_SACAR
 LET 34 &&_voc_TODO
 LET 43 &&_voc_DE



Como veis en la práctica lo que hace la librería es primero revisar la orden del jugador y tratar de convertirla en los verbos básicos. Por ejemplo COGER DE-> SACAR, VACIAR xxx-->SACAR TODO DE xxxx, etc. Al final la librería solo tiene que atender a las acciones definitivas (SACAR, COGER, etc.)

Lo que me planteo es añadir el condacto SYNONYM a ngpaws y Superglús (como condacto plugin son 10 minutos) para mejorar la legibilidad de la librería base, cambiando esos

Código:
 LET 33 &&_voc_SACAR
 LET 34 &&_voc_TODO


por

Código:
 SYNONYM SACAR TODO

_________________
Sígueme en twitter: @uto_dev
http://www.ngpaws.com


Arriba
 Perfil  
 
NotaPublicado: 02 Nov 2014 13:41 
Desconectado
Implementador
Implementador

Registrado: 13 Feb 2005 18:57
Mensajes: 1853
Lo de los streams con WINDOW me recordó a algo que también tiene la Z-machine. No sé si la idea de fondo es la misma.

SYNONYM y SKIP también me parecieron novedosos, además de la pareja de EXTERN-like con dos parámetros SFX y GFX.

Uto, hay una tabla de conversión para letras especiales que, aunque posiblemente ya las descubrieras, pueden ser relevantes para el tema de los emuladores accesibles de Speccy.

Sólo he leído por encima la mitad del pdf. Como curiosidades y cosas graciosillas anoté:

Citar:
Essentially DAAD will look at each entry in the table until it is exhausted - the table of entries, not DAAD!

DAAD es incansable, ¡acaso lo dudan!

Citar:
This is a very powerful action designed to manipulate PSI's.

El cliente siempre tiene la razón. Si él dice que son PSI, pues PSI (nada de anglos NPC, que además de tontos, son feos... ¡y huelen mal!).

Citar:
REMEMBER You are not allowed to release software with MSDOS present - it is against the distribution agreement.

No vayamos a tener problemas con tito Bill y nos deje en ropa interior, ¡o peor!

Citar:
NB You must test your adventure to ensure you do not get any of these runtime errors!

¡¡Chavales... test, test, test!!

Citar:
Thus a CHANCE 50 condition would allow PAW to look at the next [...] then PAW considers the next entry [...] consider that PAW carries out the

A alguien ser le olvidó revisar tras hacer copypaste ;)

Citar:
The Spectrum interpreter (and indeed the MSX which emulates it)

Citar:
The parser works by scanning an input line (up to 125 characters)


Y, en los fuentes de aventuras:

ORIGINA2.SCE del DISK09 escribió:
Código:
; 8-6-89
;
;
;                                           'In this life, all is possible!'
;                                                           Manuel González
;
;
; 'Everything is possible in this life ( but it all costs time and money! )'
;                                                              Tim Gilberts
;
;                                      'And also WE ALL have to work for it'
;                                                            Andrés Samudio

¡Filósofos!

ORIGINA2.SCE del DISK09 escribió:
Código:
;#IF C64
; #ECHO ¡Odio al Commodore!
;#ENDIF

Un mal día lo tiene cualquier programador, ¡malditas máquinas!


Arriba
 Perfil  
 
NotaPublicado: 02 Nov 2014 13:58 
Desconectado
Implementador
Implementador

Registrado: 13 Feb 2005 18:57
Mensajes: 1853
¡Ah! y en el DISK03 está la descripción de los famosos y "complejos" cables de conexión.

Spoiler: "CABLES.DOC"
Código:
                   CONEXION ENTRE LOS ORDENADORES

Hay que construir los siguientes cables:

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:

     Función DB-25 Spectrum
     ------- ----- --------
     Masa      7    1                     |---------------| 
     TXD       2    2                  |---  6 5 4 3 2 1  |
     RXD       3    3                  |---  - - - - - -  |
     DTR       20   4                     |---------------| 
     CTS       5    5                       
     +12 V     6    6                     Zócalo RS-232 Spectrum


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

Los  hilos se han numerado de izquierda a derecha  sosteniendo  el
cable  de forma que la patilla A del conector del C-64 es  la  que
queda más a la derecha.


Arriba
 Perfil  
 
NotaPublicado: 02 Nov 2014 22:51 
Desconectado
Implementador
Implementador
Avatar de Usuario

Registrado: 09 Sep 2004 18:24
Mensajes: 1444
Oleeeeeeeee, bravo Rockersucker!!! Conseguida la última gran pieza de arqueología aventuril!

P.D.: tu nick debería haber sido siempre ese, y así nadie se equivocaría ;-)


Arriba
 Perfil  
 
NotaPublicado: 03 Nov 2014 01:12 
Desconectado
Momio
Momio
Avatar de Usuario

Registrado: 09 Mar 2004 16:14
Mensajes: 4606
dddddd escribió:
¡Ah! y en el DISK03 está la descripción de los famosos y "complejos" cables de conexión.


Supongo que lo complejo era leerse el manual del CPC, Disciple, +3 y demás para ver como iba el patillaje del RS-232 para hacer el cable serie que conectaba con el PC ¿no? (el cual por cierto llevaba un vetusto RS-232 de 25 pines, que cayo en desuso mucho antes de que los conectores RS-232 en general cayeran en desuso).

_________________
Sígueme en twitter: @uto_dev
http://www.ngpaws.com


Arriba
 Perfil  
 
NotaPublicado: 03 Nov 2014 10:14 
Desconectado
Yiepp
Yiepp

Registrado: 19 Dic 2011 10:58
Mensajes: 51
Akbarr escribió:
Oleeeeeeeee, bravo Rockersucker!!! Conseguida la última gran pieza de arqueología aventuril!

P.D.: tu nick debería haber sido siempre ese, y así nadie se equivocaría ;-)


Bueno mas bien es Rockersuke, que lo de sucker puede quedar un pelin raro, jeje :)

Pero si, como os han dicho en Zona de Pruebas, esto es un gran acontecimiento, y esperemos que sirva para aumentar el numero de aventuras/aventureros de la escena!


Arriba
 Perfil  
 
NotaPublicado: 03 Nov 2014 11:20 
Desconectado
Betatester
Betatester
Avatar de Usuario

Registrado: 23 Mar 2010 20:11
Mensajes: 1141
Ubicación: Valencia
Es que este hombre tiene síndrome de personalidad múltiple digital... :lol:

_________________
El humor existe para recordarnos que por muy alto que sea el trono en el que uno se siente, todo el mundo usa su culo para sentarse.


Arriba
 Perfil  
 
NotaPublicado: 03 Nov 2014 15:35 
Desconectado
Implementador
Implementador
Avatar de Usuario

Registrado: 09 Sep 2004 18:24
Mensajes: 1444
Ivanzx escribió:
Akbarr escribió:
Oleeeeeeeee, bravo Rockersucker!!! Conseguida la última gran pieza de arqueología aventuril!

P.D.: tu nick debería haber sido siempre ese, y así nadie se equivocaría ;-)


Bueno mas bien es Rockersuke, que lo de sucker puede quedar un pelin raro, jeje :)

Pero si, como os han dicho en Zona de Pruebas, esto es un gran acontecimiento, y esperemos que sirva para aumentar el numero de aventuras/aventureros de la escena!

Ha sido sin querer, POR SUPUESTO :mrgreen: :mrgreen: :mrgreen:


Arriba
 Perfil  
 
NotaPublicado: 04 Nov 2014 01:57 
Desconectado
Momio
Momio
Avatar de Usuario

Registrado: 09 Mar 2004 16:14
Mensajes: 4606
Tras una lectura más detallada, no veo más cosas relevantes aparte de lo ya dicho en DAAD respecto a lo que al lenguaje se refiere, excepto que:

1) Ya aceptaba #defines, de una manera muy genérica, #includes, #ifdefs, etc. Estas cosas estaban en SINTAC y NMP, y están en ngpaws y Superglus via txtpaws.

2) El bucle principal de la aventura (respuestas->proceso1->proceso2) no iba "hardcoded" en el intérprete, sino que se hacía con condactos (con SKIP era perfectamente factible hacer bucles). Esto lo llevaba SINTAC de serie, y yo se lo fusilé y se lo puse a NMP. Ahora sospecho que JSJ se lo fusiló a DAAD previamente :D. Lo cierto es que ni Superglús ni ngpaws tienen esa funcionalidad, es una de las funcionalidades de escaso o nulo uso que decidí no soportar en Superglús porque el coste de hacerlo era mucho para el poco uso que se le daba. Nadie lo ha hechado de menos en 10 años de Superglús, asi que sospecho que realmente no se usaba demasiado. En ngpaws sería mucho más fácil ponerlo eso sí.

_________________
Sígueme en twitter: @uto_dev
http://www.ngpaws.com


Arriba
 Perfil  
 
NotaPublicado: 04 Nov 2014 09:37 
Desconectado
Grafista
Grafista
Avatar de Usuario

Registrado: 13 Sep 2004 21:16
Mensajes: 602
Ubicación: Alginet - València
Deduzco Uto, que entonces, aparte de el interés puramente histórico o curioso, no tendría más sentido usar el DAAD que en un contexto retroinformático donde se quisiera generar la aventura para varios retro-sistema (tipo Mansión Kali)?

_________________
Dwalin


Arriba
 Perfil  
 
NotaPublicado: 04 Nov 2014 10:10 
Desconectado
Momio
Momio
Avatar de Usuario

Registrado: 09 Mar 2004 16:14
Mensajes: 4606
Dwalin escribió:
Deduzco Uto, que entonces, aparte de el interés puramente histórico o curioso, no tendría más sentido usar el DAAD que en un contexto retroinformático donde se quisiera generar la aventura para varios retro-sistema (tipo Mansión Kali)?



En contexto retroinformático tiene su sentido, sí. Fuera de él... fue claramente superado ya por SINTAC y NMP, y en cuanto a las herramienta actuales (ngpaws y Superglús) solo podríamos echar de menos los saltos (SKIP) en Superglús, en ngpaws creo que quedan superados por los colon condacts. Tampoco es que en NMP se usaran mucho las etiquetas la verdad...

En el fondo tanto ngpaws como Superglús son los DAAD del momento, porque son "escribe una vez, compila para todas las máquinas" (entendiendo como "todas las máquinas" las activas del momento, que igual que DAAD no compilaba para ZX81 u VIC-20, Superglús/ngpaws no compilan para Spectrum/C64/CPC).

_________________
Sígueme en twitter: @uto_dev
http://www.ngpaws.com


Arriba
 Perfil  
 
NotaPublicado: 04 Nov 2014 10:21 
Desconectado
Momio
Momio
Avatar de Usuario

Registrado: 09 Mar 2004 16:14
Mensajes: 4606
De los fuentes de la AO2:

Spoiler: Mostrar
JODE 96 Verb
CAPULLO 95 Verb
MARIC¢N 96 Verb
JODER 96 Verb
FOLLAR 96 Verb
; FOLLEN 95 Verb
; GILIPOLLAS 95 Verb
MIERDA 95 Verb
IDIOTA 95 Verb
IMBECIL 95 Verb
CULO 96 Verb
PUTA 96 Verb
CABRON 96 Verb
; CABR¢N 95 Verb
; JOPUT 95 Verb


Spoiler: Mostrar
COGEL 108 Verb ; coger en chino
COJER 109 Verb ; coger mal escrito

_________________
Sígueme en twitter: @uto_dev
http://www.ngpaws.com


Arriba
 Perfil  
 
NotaPublicado: 04 Nov 2014 12:26 
Desconectado
Semimomio
Semimomio
Avatar de Usuario

Registrado: 23 Abr 2004 08:49
Mensajes: 2876
Ubicación: España (Galicia)
Hola,

Efectivamente, el mayor interés del DAAD es el de rellenar un nicho retro-aventurero. Es algo así como lo que yo hice con "Asalto y Castigo", una aventura portable a varios sistemas retro y actuales.

El mayor punto fuerte del DAAD es la posibilidad de generar ejecutables para varias arquitecturas (hoy retro), como sistema "mejorado" para hacer aventuras... no sé yo. Parece que incluso hay muchas menos cosas automáticas que en el PAWS, por ejemplo.

Me da la impresión de que el DAAD es el SWAN (system without a name) adaptado a la aventura conversacional en España, con vocabulario y construcciones en español que el parser debía entender. Su punto fuerte para una empresa como AD era el poder generar versiones para todas las plataformas... ¿pero eso ya lo tenía el SWAN?

Si el precio del DAAD fue solo por la traducción... ¡todo fueron beneficios!

_________________
-- Baltasar, el arquero


Arriba
 Perfil  
 
NotaPublicado: 04 Nov 2014 12:40 
Desconectado
Implementador
Implementador

Registrado: 13 Feb 2005 18:57
Mensajes: 1853
baltasarq escribió:
Su punto fuerte para una empresa como AD era el poder generar versiones para todas las plataformas... ¿pero eso ya lo tenía el SWAN?

Según wikicaad, SWAN ya era capaz de exportar a múltiples plataformas. No sé si para DAAD se incluyó alguna más...


Arriba
 Perfil  
 
Mostrar mensajes previos:  Ordenar por  
Nuevo tema Responder al tema  [ 52 mensajes ]  Ir a página 1, 2, 3, 4  Siguiente

Todos los horarios son UTC + 1 hora


¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 2 invitados


No puede abrir nuevos temas en este Foro
No puede responder a temas en este Foro
No puede editar sus mensajes en este Foro
No puede borrar sus mensajes en este Foro

Buscar:
Saltar a:  
cron
Desarrollado por phpBB® Forum Software © phpBB Group
Traducción al español por Huan Manwë para phpBB-Es.COM