PAWS2DAAD ========= TARGET ------ PAWS2DAAD takes snapshot files (.SNA, .SP, .Z80) of Spectrum games written with either The Quill (version A or C) or the Professional Adventure Writer, and produces source files for DAAD (Aventuras AD Adventure Writer), which is the evolution of Quill and PAW made by Infinite Imaginations (aka Tim Gilberts) for Spanish company Aventuras AD. Please make sure you use the tool to convert/update your own games, or ask for permission to copyright holder(s) if you use it for third party games. DOWNLOAD -------- Only the Windows version is compiled at the moment: http://www.ngpaws.com/downloads/DAAD/PAWS2DAAD/ You can though compile it using freepascal (install package fpc on Linux or find the free pascal compiler in the Lazarus page for Mac, then just "fpc paws2daad.pas" from the source file at Github repository) NOTES ON PAWS/QUILL TO DAAD CONVERSIONS --------------------------------------- PAWS2DAAD generates DAAD source in the DSF format used by DAAD Reborn Compiler, which is a modern implementation of the old compiler, with some newer features. DAAD Reborn Compiler (aka DRC) is also include in the "DAAD Ready" suite. On theother hand, PAWS2DAAD does not generate a DSF source file which can be used directly in DAAD, because DAAD start database file uses processes in a different way. You can find the start database files at DRC site (https://github.com/daad-adventure-writer/DRC). There is one for English and one for Spanish. You will notice that file already have 7 processes. You will have to manually merge the start database and PAWS2DAAD output. In order to do that you will have to accomodate the DAAD processes into the exported content, so these are the steps: 1) In the file generated by PAWS2DAAD, renumber all process from process 3 and above, to have numbers above 7. So if for instance you have process 3,4,5,6,7 and 8, make process 3 become process 9, process 4 become process 10, process 5 become 11, and process 6 become process 12. You can leave process 7 and 8 as is because ç they are already above 6. Please have in mind DAAD expects processes in numeric order, so you cannot just renumber process 3 to 6 and leave them in the same place in the source file, you would have to move the position where process 6 should be (just after process 5). 2) You also have to find any PROCESS condact calling these processes and renumber those calls too. 3) Now also renumber process 1 in your file to 3, process 2 to 4 and process 0 to 5, and place them in order in the file. 4) You will now have a DSF file missing process 0, 1, 2 and 6. Copy those processes from standard start database DSF file you can find in DRC site. 5) If the game you are porting used auto-decrement flags, make sure you remove semicolons in the second entry of new PROCESS 1. That entry, which is commented by default, simulates PAWs auto-decrement flags,as DAAD does not support them by default. This is the code : > _ _ MINUS 5 1 ; Update auto flags MINUS 6 1 ; These are not supported anymore MINUS 7 1 ; as we use the low section as MINUS 8 1 ; a small stack NOTZERO 0 ; But should you need them MINUS 9 1 ; this is the Version 1 DAAD code! ABSENT 0 MINUS 10 1 6) If you were converting a Quill game, check the /VOC section and complete the words up to 5 characters, as Quill only supports 4 but DAAD requires 5. For instance if you have this: LANC 100 noun Replace with: LANCE 100 noun 7) Once this is done, game should be compilable and playable, but not everything from PAW/QUILL can be converted to DAAD, so PAWS2DAAD adds "PAWS2DAAD note" comments wherever it had to make some changes. Most of them should work out of the box, but if something is not properly working you better start checking those comments first. PLATFORM -------- The code has been compiled with Freepascal so it's easy to get it working for Windows, Linux and MacOS at least. To build the code just install freepascal and type: fpc paws2daad.pas INPUT ----- The input must be any spectrum game made with PAWS or Quill, in any of this file formats: - .SP (Pedro Gimeno's Spectrum Emulator) - .SNA (JPP Emulator) - .Z80 (Lunter's Z80 Emulator) Only certain versions of Z80 games are supported, so if you find problems with it convert the snapshot to SNA first. USE --- Just type PAWS2DAAD in the command line to know about the syntax. DEVELOPERS ---------- This program is based in UNPAWS, which was developed first by Jose Luis Cebrian, and then ported to pascal and improved by Carlos Sánchez. Releases starting from version 1.0 are maintained by Alexander Katz. The source code has been published in Github by Carlos Sánchez. This fork has been made by Carlos Sánchez (Uto). REPORTS ------- Any bug report or suggestion could be sent to Github's bug tracker.