staylor@mutley.UUCP (Scott G. Taylor) (12/14/87)
Having tried many times to get Ross Cuniff's Adventure Definition Language to run on our PDP-11/70 with V7, I'm crying help. The sources compile fine, however when compiling with adlcomp, all game compilations came up with "WARNING: STRING undefined". Likewise for TELLER and a few other pre-defines. Additionally, compiling aard comes back with "WARNING: verb( ACTION ) already assigned." After compiling and informing me that I had 2-5 warnings, adlrun tells me "Illegal instruction, ip = 4068". The adldebug program tells me that the instructions at that location are ok. I suspect that the problem may be that adl was originally written for a 32 bit machine (e.g. storage conflicts with 32 vs. 16 bit). If anyone has had any experience and feel they might be able to help me out, please send some E-mail correspondence likewise. Mass Appreciates.
cunniff@hpfclq.HP.COM (Ross Cunniff) (12/22/87)
In message <191@mutley.UUCP>, staylor@mutley.UUCP (Scott G. Taylor) writes: > Having tried many times to get Ross Cuniff's Adventure Definition > Language to run on our PDP-11/70 with V7, I'm crying help. The > sources compile fine, however when compiling with adlcomp, all > game compilations came up with "WARNING: STRING undefined". > Likewise for TELLER and a few other pre-defines. Additionally, > compiling aard comes back with "WARNING: verb( ACTION ) already > assigned." These warnings are just that: warnings. They are informing you that certain features of the language are not being used (look in the documentation for what STRING and TELLER do). The warning about verb( ACTION ) already assigned is also harmless. They are unrelated to the problem below: > After compiling and informing me that I had 2-5 warnings, adlrun > tells me "Illegal instruction, ip = 4068". The adldebug program tells > me that the instructions at that location are ok. There are several things that could be wrong here. 1. You didn't edit adltypes.h for your local system, and consequently the types int16, int32, and address are not properly defined. If adldebug give you reasonable looking instructions (i.e., no ILLEGAL instructions), this is probably not the problem. 2. You might need to modify the Makefiles to compile with separate instruction and data space. The cc option for this is, I believe, -I or -i (consult your local man page). This is because ADL is a rather large program (although not as big as, say, NetHack). If you are on a PDP-11, and this still doesn't work, try changing the line in include/adltypes.h from #define DEBUG 1 to #define DEBUG 0 This will also make the games run faster. 3. Users of 80*86 based systems will need to compile with large code and data space in order to get things to run. > I suspect that the problem may be that adl was originally written for > a 32 bit machine (e.g. storage conflicts with 32 vs. 16 bit). This turns out not to be the case. ADL was indeed originally written on a 32 bit machine, but the first port was to an IBM PC (by the way, if anybody wants to make their code portable, just port it between a large 32-bit UN*X machine and an MS-DOS clone several times. Sure shakes out those word size and byte order assumptions in a hurry!) > Mass Appreciates. You're welcome. E-Mail or post if you have any more questions. Ross Cunniff ...{ucbvax,hplabs}!hpda!cunniff cunniff%hpda@hplabs.ARPA