home *** CD-ROM | disk | FTP | other *** search
- ; DATE 12/18/83 07:50 by H M Van Tassell
-
- This version of XLISP is taken from David Betz version 1.1 for CP/M-80
- and the AZTEC compiller which is on SI/G volume 118.
-
- I wanted a CP/M-86 version and recompiled the source code with the
- Computer Innovations compiler CI-C86. The only changes made to the
- original source code files was to change from <...> to "..." on the
- #include <stdio.h>.
-
- The setjmp.h file was made empty because the CI-C86 stdio.h defines
- this item. The empty file ctype.h was added to the disk since the
- CI-C86 compiler doesn't use this header file. A new #setdef was added
- to the xlisp.h file for the CI-C86 compiler.
-
- New submit files were made and you may re-compile and link by:
- 1. A>submit cclisp
- 2. A>submit linklisp
- NOTE for systems with limited disk storage:
- submit.cmd and cc1.cmd, cc2.cmd, cc3.cmd, and cl.cmd must be available
- on resident disks and you may need to modify the cclisp.sub and
- linklisp.sub files to show on which disks certain files may be found.
- This should result in a new XLISP.CMD file being generated
-
-
- This is the SI/G volume 118 abstract and is presented here for
- information. Files marked by ** are not included on this disk.
- --------------------------------------------------------------
-
- The CP/M distribution for XLISP contains the following files:
-
- ABSTRACT.118 this file)
- xlisp.doc (documentation)
- xlbind.c (routines to bind values to symbols)
- xldmem.c (dynamic memory management routines)
- xleval.c (the evaluator)
- xlfio.c (file i/o routines)
- xlio.c (i/o routines for 'xlread')
- xlisp.c (the main routine)
- xlisp.h (the definition file)
- xllist.c (list functions)
- xlmath.c (arithmetic functions)
- xlobj.c (object oriented functions)
- xlkmap.c (keymap functions)
- xlprin.c (the printer)
- xlread.c (the reader)
- xlstr.c (string functions)
- xlsubr.c (misc. functions)
- junk.c ** (routines needed for the AZTEC C version)
- setjmp.h (definition file for 'setjmp.asm')
- setjmp.asm ** (setjmp and longjmp for AZTEC C)
- alloc.c ** (memory allocation routines)
- sbrk.asm ** (more memory allocation routines)
- xlisp.com ** (an executable for 64K Z-80 systems)
- xlmake.sub ** (a file for compiling and assembling XLISP)
- xlisp.lnk ** (a command file for linking XLISP)
- pt.lsp (a sample program)
- t.lsp (another sample program)
-
- Before compiling XLISP, look at the beginning of the file 'xlisp.h'.
- You should check to see that the conditionals defined here are
- appropriate for your machine.
-
- You should also edit the command files 'xlmake.sub' and 'xlisp.lnk'
- to indicate which disks to expect input from and which disks to place
- output on. They are currently configured for my VT180 system with
- four 180K 5 1/4 inch mini-floppies. I assigned the disks as follows:
-
- A the C compiler, assembler, library, 'stdio.h' and
- 'setjmp.h'
- B unimportant
- C the XLISP sources and the '.ASM' files generated
- by the compiler
- D the generated object files
-
- Note that all of the source files expect to find 'stdio.h' and
- 'setjmp.h' on disk A.
-
- Since XLISP evaluates functions recursively, it tends to use up
- a lot of stack space. Depending on how stack space is allocated
- on your machine, you may need to tell the linker to allocate more
- than the normal amount of space. I generated the original XLISP
- on a PDT-11/150 under the RT-11 operating system using the DECUS-C
- compiler and needed to tell the RT-11 linker to allocate 10000 octal
- bytes of stack space in order to make XLISP run reasonably well.
-
- You can gain back about 400 nodes worth of list space by leaving
- out the 'Keymap' class. This can be done by editing the 'xlisp.h'
- file under the conditional for 'AZTEC' and removing the definition
- for the symbol 'KEYMAPCLASS'. You only really need to recompile
- 'xlisp.c' and 'xldmem.c' after changing this definition. You should
- then relink leaving out 'xlkmap.o'.
-
- Have fun and let me know of any problems or suggestions you might
- have.
-
- David Betz
-
-
- Best of luck too from Harry Van Tassell
-