├── .clang-format ├── .github └── workflows │ ├── Dockerfile_builder │ ├── Dockerfile_maiko │ ├── build.yml │ ├── buildBuilderImage.yml │ └── buildRelease.yml ├── .gitignore ├── CMakeLists.txt ├── CODE_OF_CONDUCT.md ├── LICENSE ├── NOTICE ├── README.md ├── bin ├── ChangeLog ├── README ├── compile-flags ├── config.guess ├── config.sub ├── copyright ├── dbxinit.txt ├── environment-variables ├── legacy │ ├── makefile-init.sparc-multi │ ├── makefile-sunos3.mc68020 │ ├── makefile-sunos3.mc68020-multi │ ├── makefile-sunos3.mc68020-x │ ├── makefile-sunos3.sparc │ ├── makefile-sunos4.1.i386 │ ├── makefile-sunos4.1.i386-multi │ ├── makefile-sunos4.1.mc68020 │ ├── makefile-sunos4.1.mc68020-multi │ ├── makefile-sunos4.1.mc68020-x │ ├── makefile-sunos4.1.sparc │ ├── makefile-sunos4.1.sparc-color │ ├── makefile-sunos4.1.sparc-multi │ ├── makefile-sunos4.1.sparc-x │ ├── makefile-sunos4.i386 │ ├── makefile-sunos4.i386-multi │ ├── makefile-sunos4.mc68020 │ ├── makefile-sunos4.mc68020-multi │ ├── makefile-sunos4.mc68020-x │ ├── makefile-sunos4.sparc │ ├── makefile-sunos4.sparc-3 │ ├── makefile-sunos4.sparc-color │ ├── makefile-sunos4.sparc-multi │ ├── makefile-sunos4.sparc-multi-3 │ ├── makefile-sunos4.sparc-x │ └── makefile-sunos4.sparc-x-3 ├── machinetype ├── makefile-cygwin.x86_64-sdl ├── makefile-cygwin.x86_64-x ├── makefile-darwin.386-x ├── makefile-darwin.aarch64-sdl ├── makefile-darwin.aarch64-x ├── makefile-darwin.ppc-x ├── makefile-darwin.x86_64-sdl ├── makefile-darwin.x86_64-x ├── makefile-dos ├── makefile-emscripten.wasm-wasm ├── makefile-emscripten.wasm_nl-wasm_nl ├── makefile-freebsd.386-sdl ├── makefile-freebsd.386-x ├── makefile-freebsd.aarch64-sdl ├── makefile-freebsd.aarch64-x ├── makefile-freebsd.x86_64-sdl ├── makefile-freebsd.x86_64-x ├── makefile-haiku.x86_64-sdl ├── makefile-header ├── makefile-init-darwin.386 ├── makefile-init-darwin.aarch64 ├── makefile-init-darwin.x86_64 ├── makefile-init-freebsd.386 ├── makefile-init-freebsd.aarch64 ├── makefile-init-freebsd.x86_64 ├── makefile-init-linux.aarch64 ├── makefile-init-linux.x86_64 ├── makefile-init-openbsd.x86_64 ├── makefile-init-sunos5.sparc ├── makefile-linux.386-sdl ├── makefile-linux.386-x ├── makefile-linux.aarch64-sdl ├── makefile-linux.aarch64-x ├── makefile-linux.armv7l-sdl ├── makefile-linux.armv7l-x ├── makefile-linux.x86_64-sdl ├── makefile-linux.x86_64-x ├── makefile-openbsd.x86_64-x ├── makefile-sunos5.386-x ├── makefile-sunos5.i386-x ├── makefile-sunos5.sparc-x ├── makefile-sunos5.x86_64-x ├── makefile-tail ├── makeinitlde ├── makeright ├── mkvdate ├── osversion ├── release-one ├── start-release ├── test.vm ├── u2dnames.sed └── unix2dos.sed ├── docs ├── NEWCDRCODING.md └── Using-Dodo-networking-with-Maiko.md ├── inc ├── MyWindow.h ├── XKeymap.h ├── address.h ├── adr68k.h ├── allocmdsdefs.h ├── arith.h ├── arithopsdefs.h ├── array.h ├── arrayopsdefs.h ├── bb.h ├── bbtmacro.h ├── bbtsubdefs.h ├── bindefs.h ├── bindsdefs.h ├── bitbltdefs.h ├── bltdefs.h ├── byteswapdefs.h ├── car-cdrdefs.h ├── cell.h ├── chardevdefs.h ├── commondefs.h ├── conspagedefs.h ├── copyright ├── cr ├── dbgtooldefs.h ├── dbprint.h ├── debug.h ├── devconf.h ├── devif.h ├── dirdefs.h ├── display.h ├── dld.h ├── dlpidefs.h ├── drawdefs.h ├── dskdefs.h ├── dspdata.h ├── dspifdefs.h ├── dspsubrsdefs.h ├── emlglob.h ├── eqfdefs.h ├── etherdefs.h ├── fast_dsp.h ├── findkeydefs.h ├── foreigndefs.h ├── fpdefs.h ├── fvardefs.h ├── gc2defs.h ├── gcarraydefs.h ├── gccodedefs.h ├── gcdata.h ├── gcdefs.h ├── gcfinaldefs.h ├── gchtfinddefs.h ├── gcmain3defs.h ├── gcoflowdefs.h ├── gcrcelldefs.h ├── gcrdefs.h ├── gcscandefs.h ├── gvar2defs.h ├── hardrtndefs.h ├── ifpage.h ├── inetdefs.h ├── initatms.h ├── initdspdefs.h ├── initkbddefs.h ├── initsoutdefs.h ├── inlineC.h ├── inln68k.h ├── inlnPS2.h ├── inlnSPARC.h ├── inlndos.h ├── intcalldefs.h ├── iopage.h ├── kbdif.h ├── kbdsubrsdefs.h ├── keyboard.h ├── keyeventdefs.h ├── keysym.h ├── kprintdefs.h ├── ldeXdefs.h ├── ldsoutdefs.h ├── lineblt8defs.h ├── lisp2cdefs.h ├── lispemul.h ├── lispmap.h ├── lispver1.h ├── lispver2.h ├── llcolordefs.h ├── lldsp.h ├── llstkdefs.h ├── locfile.h ├── loopsopsdefs.h ├── lowlev1defs.h ├── lowlev2defs.h ├── lpdefs.h ├── lpglob.h ├── lpglobl.h ├── lpkit.h ├── lppatch.h ├── lpproto.h ├── lspglob.h ├── lsptypes.h ├── lsthandldefs.h ├── maiko │ └── platform.h ├── maindefs.h ├── medleyfp.h ├── misc7defs.h ├── miscndefs.h ├── miscstat.h ├── mkatomdefs.h ├── mkcelldefs.h ├── mnxdefs.h ├── mvsdefs.h ├── my.h ├── nfsfh.h ├── nfswatch.h ├── opcodes.h ├── os.h ├── osmsgdefs.h ├── osmsgprint.h ├── perrnodefs.h ├── picture.h ├── pilotbbt.h ├── print.h ├── rawcolordefs.h ├── rawrs232c.h ├── retmacro.h ├── returndefs.h ├── rpcdefs.h ├── rplconsdefs.h ├── rs232c.h ├── sdldefs.h ├── shiftdefs.h ├── stack.h ├── storagedefs.h ├── stream.h ├── subr0374defs.h ├── subrdefs.h ├── subrs.h ├── sxhashdefs.h ├── testtooldefs.h ├── timeout.h ├── timerdefs.h ├── tos1defs.h ├── tosfns.h ├── tosret.h ├── ttydefs.h ├── typeofdefs.h ├── ubf1defs.h ├── ubf2defs.h ├── ubf3defs.h ├── ufsdefs.h ├── unixcommdefs.h ├── unixfork.h ├── unwinddefs.h ├── uraiddefs.h ├── uraidextdefs.h ├── usrsubrdefs.h ├── uutilsdefs.h ├── vars3defs.h ├── version.h ├── vmemsavedefs.h ├── xbbtdefs.h ├── xbitmaps.h ├── xcdefs.h ├── xcursordefs.h ├── xdefs.h ├── xinitdefs.h ├── xlspwindefs.h ├── xmkicondefs.h ├── xrdoptdefs.h ├── xscrolldefs.h ├── xwinmandefs.h └── z2defs.h ├── include ├── README ├── ansidecl.h └── dld.h └── src ├── allocmds.c ├── arithops.c ├── arrayops.c ├── asmbbt.c ├── atom.c ├── bbt68k.s ├── bbtSPARC.s ├── bbtsub.c ├── bin.c ├── binds.c ├── bitblt.c ├── blt.c ├── box ├── byteswap.c ├── car-cdr.c ├── chardev.c ├── chatter.c ├── codeconv.c ├── codetbl.c ├── common.c ├── conspage.c ├── cr ├── dbgtool.c ├── dir.c ├── dlpi.c ├── doscomm.c ├── doskbd.c ├── dosmouse.c ├── draw.c ├── dsk.c ├── dsp386.il ├── dspSPARC.il ├── dspif.c ├── dspsubrs.c ├── ejlisp.c ├── eqf.c ├── ether_common.c ├── ether_nethub.c ├── ether_sunos.c ├── findkey.c ├── foreign.c ├── fp.c ├── fvar.c ├── gc.c ├── gc2.c ├── gcarray.c ├── gccode.c ├── gcfinal.c ├── gchtfind.c ├── gcmain3.c ├── gcoflow.c ├── gcr.c ├── gcrcell.c ├── gcscan.c ├── gvar2.c ├── hardrtn.c ├── imagefile.c ├── imagefile2.c ├── inet.c ├── initdsp.c ├── initkbd.c ├── initsout.c ├── intcall.c ├── kbdif.c ├── kbdsubrs.c ├── keyevent.c ├── kprint.c ├── launch.asm ├── lde.html ├── ldeboot.c ├── ldeether.c ├── ldsout.c ├── lineblt8.c ├── lisp2c.c ├── llcolor.c ├── llstk.c ├── loopsops.c ├── lowlev1.c ├── lowlev2.c ├── lpdual.c ├── lpkit.c ├── lplexyy.c ├── lpmain.c ├── lpread.c ├── lpsolve.c ├── lptran.c ├── lpwrite.c ├── lpytab.c ├── lsthandl.c ├── main.c ├── misc7.c ├── miscn.c ├── mkatom.c ├── mkcell.c ├── mkvdate.c ├── mnwevent.c ├── mnxmeth.c ├── mouseif.c ├── mvs.c ├── osmsg.c ├── perrno.c ├── picture.c ├── rawcolor.c ├── rawrs232c.c ├── return.c ├── rpc.c ├── rplcons.c ├── rs232c.c ├── sdl.c ├── setsout.c ├── shift.c ├── storage.c ├── subr.c ├── subr0374.c ├── sxhash.c ├── testtool.c ├── timer.c ├── truecolor.c ├── tstsout.c ├── tty.c ├── typeof.c ├── ubf1.c ├── ubf2.c ├── ubf3.c ├── ufn.c ├── ufs.c ├── unixcomm.c ├── unixfork.c ├── unwind.c ├── uraid.c ├── usrsubr.c ├── uutils.c ├── vars3.c ├── vesafns.asm ├── vesainit.c ├── vgainit.c ├── vmemsave.c ├── xbbt.c ├── xc.c ├── xcursor.c ├── xinit.c ├── xlspwin.c ├── xmkicon.c ├── xrdopt.c ├── xscroll.c ├── xwinman.c └── z2.c /.github/workflows/Dockerfile_builder: -------------------------------------------------------------------------------- 1 | #******************************************************************************* 2 | # 3 | # Dockerfile to build image with all the tools to build Maiko 4 | # 5 | # Copyright 2023 by Interlisp.org 6 | # 7 | # Frank Halasz 2023-02-21 8 | # 9 | # ****************************************************************************** 10 | 11 | FROM ubuntu:22.04 12 | SHELL ["/bin/bash", "-c"] 13 | USER root:root 14 | # Install build tools 15 | RUN apt-get update && apt-get install -y make clang libx11-dev gcc 16 | USER root 17 | WORKDIR /root 18 | ENTRYPOINT /bin/bash 19 | -------------------------------------------------------------------------------- /.github/workflows/Dockerfile_maiko: -------------------------------------------------------------------------------- 1 | #******************************************************************************* 2 | # 3 | # Dockerfile to build Maiko for Linux to be used by buildRelease github action 4 | # The output of this is intended to be a directory in the github workspace 5 | # file system it is not intended to be a useable Docker image. 6 | # 7 | # Copyright 2023 by Interlisp.org 8 | # 9 | # Frank Halasz 2023-02-21 10 | # 11 | # ****************************************************************************** 12 | 13 | FROM ghcr.io/interlisp/maiko-builder 14 | ARG INSTALL_LOCATION=/usr/local/interlisp/maiko 15 | SHELL ["/bin/bash", "-c"] 16 | # Copy over / clean maiko repo 17 | COPY . ${INSTALL_LOCATION} 18 | # Build maiko 19 | RUN cd ${INSTALL_LOCATION}/bin \ 20 | && ./makeright x cleanup \ 21 | && ./makeright x 22 | RUN cd ${INSTALL_LOCATION}/bin \ 23 | && if [ "$(./machinetype)" = "x86_64" ]; then \ 24 | ./makeright init; \ 25 | fi 26 | -------------------------------------------------------------------------------- /.github/workflows/build.yml: -------------------------------------------------------------------------------- 1 | name: Build 2 | 3 | on: [push, pull_request] 4 | 5 | defaults: 6 | run: 7 | shell: bash 8 | 9 | jobs: 10 | build: 11 | runs-on: ${{ matrix.os }} 12 | strategy: 13 | matrix: 14 | os: [macos-11, macos-12, ubuntu-22.04, ubuntu-20.04] 15 | steps: 16 | - uses: actions/checkout@v3 17 | - name: Install X11 dependencies on MacOS 18 | if: ${{ runner.os == 'macOS'}} 19 | run: brew install --cask xquartz 20 | - name: Build 21 | working-directory: bin 22 | run: ./makeright x 23 | 24 | # 25 | # Commented out because the RPi is not online at this time (6 July 2021) 26 | # 27 | # build-pi: 28 | # runs-on: [self-hosted, linux, ARM] 29 | # if: ${{ github.repository == 'Interlisp/maiko' }} 30 | # steps: 31 | # - uses: actions/checkout@v3 32 | # - name: Build 33 | # working-directory: bin 34 | # run: ./makeright x 35 | 36 | build-cmake: 37 | runs-on: ${{ matrix.os }} 38 | strategy: 39 | matrix: 40 | os: [macos-11, macos-12, ubuntu-22.04, ubuntu-20.04] 41 | env: 42 | BUILD_TYPE: Release 43 | steps: 44 | - uses: actions/checkout@v3 45 | - name: Show CMake version 46 | run: cmake --version 47 | - name: Install X11 dependencies on MacOS 48 | if: ${{ runner.os == 'macOS'}} 49 | run: brew install --cask xquartz 50 | - name: Install SDL2 dependencies on MacOS 51 | if: ${{ runner.os == 'macOS'}} 52 | run: brew install sdl2 53 | - name: Install SDL dependency on Ubuntu 54 | if: ${{ runner.os == 'Linux'}} 55 | run: sudo apt-get update && sudo apt-get install -y libsdl2-dev 56 | - name: Create Build Environment 57 | run: cmake -E make_directory ${{github.workspace}}/build 58 | - name: Configure CMake 59 | shell: bash 60 | working-directory: ${{github.workspace}}/build 61 | run: cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=$BUILD_TYPE 62 | - name: Build 63 | working-directory: ${{github.workspace}}/build 64 | shell: bash 65 | run: cmake --build . --config $BUILD_TYPE 66 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Object files 2 | *.o 3 | # Editor backups and recovery files 4 | *~ 5 | \#*# 6 | .DS_Store 7 | # build directories 8 | build/** 9 | cmake-build-*/** 10 | .idea/ 11 | *.m68k-x/** 12 | *.m68k/** 13 | *.386-sdl/** 14 | *.386-x/** 15 | *.386/** 16 | *.ppc-x/** 17 | *.ppc/** 18 | *.sparc-x/** 19 | *.sparc/** 20 | *.x86_64-x/** 21 | *.x86_64-sdl/** 22 | *.x86_64/** 23 | *.wasm/** 24 | *.wasm-wasm/** 25 | *.wasm_nl/** 26 | *.wasm_nl-wasm_nl/** 27 | *.armv7l-x/** 28 | *.armv7l/** 29 | *.aarch64-x/** 30 | *.aarch64-sdl/** 31 | *.aarch64/** 32 | init.386/** 33 | *.universal/** 34 | # core files 35 | core 36 | *.core 37 | *.swp 38 | 39 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | Copyright Venue (Wayne Booth Marci, Estate of John Sybalsky) and Interlisp contributers. 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining 4 | a copy of this software and associated documentation files (the 5 | "Software"), to deal in the Software without restriction, including 6 | without limitation the rights to use, copy, modify, merge, publish, 7 | distribute, sublicense, and/or sell copies of the Software, and to 8 | permit persons to whom the Software is furnished to do so, subject to 9 | the following conditions: 10 | 11 | The above copyright notice and this permission notice shall be 12 | included in all copies or substantial portions of the Software. 13 | 14 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 15 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 16 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 17 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE 18 | LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION 19 | OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION 20 | WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 21 | 22 | -------------------------------------------------------------------------------- /NOTICE: -------------------------------------------------------------------------------- 1 | Many thanks to Wayne Booth Marci, who inherited the rights of Venue, 2 | including the copyright of works identified as Copyright Venue. 3 | 4 | Permission to release these files with the open source MIT License 5 | has been granted. 6 | -------------------------------------------------------------------------------- /bin/ChangeLog: -------------------------------------------------------------------------------- 1 | 1 Jan 02 JDS 2 | 3 | FILES CHANGED: src/byteswap.c bin/makefile-tail 4 | 5 | Fix MAKE rules for tstsout, setsout so they use the byteswapper if 6 | necessary. Changed byteswap.c to only define byte_swap_code_page 7 | if we're using reswapped code streams (which we aren't, as of 8 | now), so we don't have to drag that all in or move the function to 9 | someplace unrelated. 10 | 11 | 12 | 1 Jan 2002 JDS 13 | 14 | FILES CHANGED: bin/config.guess bin/config.sub bin/osversion, 15 | bin/machinetype (new), bin/makeright, bin/README 16 | 17 | Update config.guess to GNU latest, and make osversion use it. Add 18 | a new script, machinetype, also based on config.guess to determine 19 | underlying hardware architecture for us. Changed makeright to use 20 | machinetype. 21 | 22 | Added a README file, describing where to get new versions of the 23 | config utilities. 24 | 25 | 22 Nov 01 JDS 26 | 27 | FILES CHANGED: bin/makeright, bin/makefile-linux.386-x, osversion, 28 | mach 29 | 30 | Revamped Linux make to use "makeright" script, as other systems 31 | do. Need to revamp it all to use autoconf somehow. 32 | 33 | 13 Dec 01 JDS 34 | 35 | FILES CHANGED: llstk.c, xlspwin.c, dspsubrs.c, xcursor.c 36 | 37 | The function Set_XCursor is called two ways: From the DSPCURSOR subr, 38 | and within the C code directly. I had to fix the direct C calls 39 | because Set_XCursor sets Current_Hot_X to 15-y (its second arg)-- 40 | but the function was being called with Current_Hot_Y as the 2nd 41 | arg. As a result (HARDRESET) followed by ^B would bollix the 42 | cursor position and menu selection would be off. 43 | 44 | Fixed files llstk.c, xlspwin.c, dspsubrs.c to make it work. 45 | 46 | Added a warning comment to the function itself. 47 | 48 | 20 Dec 01 JDS 49 | 50 | FILES CHANGED: xrdopt.c, main.c, lspwin.c, storage.c 51 | 52 | The X-emulator parser for command line options would NOT accept 53 | the -m flag to set max memory size (it required -memory); changed 54 | the -maxpages to -xpages (controlling # of pages written at once 55 | in sysout writing), and changed the default sysout size from 8Mb 56 | to 32Mb. 57 | 58 | 22 Dec 01 JDS 59 | 60 | FILES CHANGED: main.c, mkvdate.c, version.h 61 | 62 | Changed Linux to using gettimeofday() from time(), so we get finer 63 | grained timings. Changed mkvdate.c to include sys/time.h unless 64 | USETIMEFN rather than unless SYSVONLY. 65 | 66 | Need to think about using autoconf to drive make process and get 67 | away from the script-based maker. 68 | 69 | -------------------------------------------------------------------------------- /bin/README: -------------------------------------------------------------------------------- 1 | 2 | FILES USED IN THIS DIRECTORY 3 | 4 | config.guess 5 | config.sub taken from GNU project's "config" directory, on 6 | prep.ai.mit.edu/pub/gnu/config. Update 'em as 7 | needed. 8 | 9 | -------------------------------------------------------------------------------- /bin/copyright: -------------------------------------------------------------------------------- 1 | 2 | 3 | /************************************************************************/ 4 | /* */ 5 | /* (C) Copyright 1989, 1990, 1990, 1991, 1992, 1993, 1994, 1995 Venue. */ 6 | /* All Rights Reserved. */ 7 | /* Manufactured in the United States of America. */ 8 | /* */ 9 | /* The contents of this file are proprietary information */ 10 | /* belonging to Venue, and are provided to you under license. */ 11 | /* They may not be further distributed or disclosed to third */ 12 | /* parties without the specific permission of Venue. */ 13 | /* */ 14 | /************************************************************************/ 15 | -------------------------------------------------------------------------------- /bin/dbxinit.txt: -------------------------------------------------------------------------------- 1 | alias a alias 2 | a t trace 3 | a d delete 4 | a r run 5 | a c cont 6 | a q quit 7 | a h help 8 | a p print 9 | a l list 10 | a s step 11 | a go "run /python/local/sysouts/LISP.SYSOUT -NF" 12 | a dbx "stop in OP_dbx" 13 | a gc "set *(LispPTR *)(Valspace + 2*1772) = 0114" 14 | a engc "set *(LispPTR *)(Valspace + 2*1772) = 0" 15 | a st status 16 | a csf "call sf(MachineState.pvar-10)" 17 | a bt "call bt()" 18 | a btvv "call btvv()" 19 | a n next 20 | a tos "call print(MachineState.tosvalue)" 21 | a Ctos "call print(tscache)" 22 | a csp "call print(*((LispPTR *)(MachineState.csp)))" 23 | a Csp "call print(*((LispPTR *)(cspcache)))" 24 | a do "call doko()" 25 | a ppc "print ((int)(MachineState.currentpc) - (int)(MachineState.currentfunc))" 26 | a sf "call sf(fx)" 27 | a fn "stop in OP_fn" 28 | a ret "stop in OP_return" 29 | a err "stop in error" 30 | a warn "stop in warn" 31 | a ifp "print *InterfacePage" 32 | a iop "print *IOPage" 33 | a pro "print *(PROCESS *)(\!:1)" 34 | a oct "call printf(\"%o\n\" , (\!:1)" 35 | a eve "print *(EVENT *)(\!:1)" 36 | a dev "print *(FDEV *)(\!:1)" 37 | a pac "print *(PACKAGE *)(\!:1)" 38 | a str "print *(Stream *)(\!:1)" 39 | a pque "print *(PROCESSQUEUE *)(\!:1)" 40 | a name "call print_atomname((\!:1))" 41 | a stk "call all_stack_dump((\!:1) , (\!:2) ,(\!:3))" 42 | a astk "call all_stack_dump(0 , 0 , 0)" 43 | a sastk "call all_stack_dump(0 , 0 , 1)" 44 | a type "call type_num(\!:1)" 45 | a dtd "call dtd_chain(\!:1)" 46 | a btvv "call btvv()" 47 | a satom "call S_MAKEATOM(\!:1)" 48 | a a68k "call a68k(\!:1)" 49 | a la "call laddr(\!:1)" 50 | a sval "call S_TOPVAL(\!:1)" 51 | a atom "print MAKEATOM(\!:1)" 52 | a val "call GETTOPVAL(\!:1)" 53 | a sff "call sff((\!:1))" 54 | a stopop "stop in \!:1 if ((struct fnhead *)(MachineState.currentfunc))->framename == \!:2" 55 | a stopfunc "stop if ((struct fnhead *)(MachineState.currentfunc))->framename == \!:1" 56 | a stoppc "stop in \!:1 if (((struct fnhead *)(MachineState.currentfunc))->framename == \!:2 && ((int)(MachineState.currentpc) - (int )(MachineState.currentfunc) > \!:3)) " 57 | a sop "stop in \!:1" 58 | a sc "call stack_check(0)" 59 | 60 | use . /python0/users/maiko/working/src /python0/users/maiko/working/inc 61 | ignore VTALRM 62 | ignore IO 63 | -------------------------------------------------------------------------------- /bin/environment-variables: -------------------------------------------------------------------------------- 1 | FILE: environment-variables 2 | 3 | LDESRCESYSOUT 4 | LDESOURCESYSOUT SYSOUT full-file name you want to run 5 | 6 | LDEDESTSYSOUT SYSOUT name for destination of SAVEVM/LOGOUT 7 | 8 | LDEKBDTYPE 9 | type2 10 | type3 11 | type4 12 | jle 13 | as3000j 14 | LDEFILETIMEOUT 15 | -------------------------------------------------------------------------------- /bin/legacy/makefile-sunos3.mc68020: -------------------------------------------------------------------------------- 1 | # Options for sun3 and mc68020 2 | 3 | # This is to make the %$#@! Apollo cc happy 4 | OEXT = .o 5 | 6 | OPTFLAGS = -O2 7 | DISPOPTFLAGS = -O 8 | FPFLAGS = -f68881 9 | DFLAGS = -DKBINT -DOPDISP -DSUN3_OS3_IL -DNEWBITBLT -DLOGINT -DSUNDISPLAY 10 | LDFLAGS = -lsuntool -lsunwindow -lpixrect -lc -lm 11 | INLINE = $(SRCDIR)disp68K.il 12 | BITBLTFILE = $(OBJECTDIR)bitblt68K.o 13 | COLORFILES = $(OBJECTDIR)colorbltfns.o 14 | 15 | OBJECTDIR = ../sunos3.mc68020/ 16 | 17 | default : $(OBJECTDIR)lde $(OBJECTDIR)ldeether 18 | 19 | $(OBJECTDIR)xc.o : $(SRCDIR)xc.c $(INCDIR)lispemul.h $(INCDIR)emulglobal.h \ 20 | $(INCDIR)address.h \ 21 | $(INCDIR)address68k.h $(INCDIR)stack.h $(INCDIR)lispglobal.h \ 22 | $(INCDIR)lisptypes.h $(INCDIR)lispmap.h $(INCDIR)cell.h \ 23 | $(INCDIR)initatoms.h $(INCDIR)gcdata.h \ 24 | $(INCDIR)arith.h $(INCDIR)stream.h \ 25 | $(INCDIR)tos1defs.h $(INCDIR)tosretmacro.h \ 26 | $(INCDIR)tosfuncall.h $(INCDIR)inlineC.h \ 27 | $(INCDIR)inline68K.h \ 28 | $(INCDIR)inlineSPARC.h $(INCDIR)fast_disp.h \ 29 | $(INCDIR)fastinline68K.h 30 | cc $(DISPRFLAGS) $(SRCDIR)xc.c $(INLINE) -o $(OBJECTDIR)xc.o 31 | -------------------------------------------------------------------------------- /bin/legacy/makefile-sunos3.mc68020-multi: -------------------------------------------------------------------------------- 1 | # makefile-sunos4.mc68020-multi 2 | # Options for SunOS4 and mc68020 for CG3 or CG6 3 | # Add -DDISPLAYBUFFER in DFLAGS 4 | # ${RELEASENAME} is "sunos3.mc68020-multi" 5 | 6 | # This is to make the %$#@! Apollo cc happy 7 | OEXT = .o 8 | 9 | OPTFLAGS = -g 10 | DISPOPTFLAGS = -O 11 | FPFLAGS = -f68881 12 | # DISPLAYBUFFER for Color Sparcstation code testing 13 | # NEWBITBLT for assembler version of bitblt. 14 | DFLAGS = -DKBINT -DOPDISP -DSUN3_OS3_IL -DDISPLAYBUFFER -DNEWBITBLT -DLOGINT -DSUNDISPLAY 15 | LDFLAGS = -lsuntool -lsunwindow -lpixrect -lc -lm 16 | 17 | INLINE = $(SRCDIR)disp68K.il 18 | BITBLTFILE = $(OBJECTDIR)bitblt68K.o 19 | COLORFILES = $(OBJECTDIR)colorbltfns.o 20 | 21 | OBJECTDIR = ../$(RELEASENAME)/ 22 | 23 | default : $(OBJECTDIR)lde $(OBJECTDIR)ldeether 24 | 25 | $(OBJECTDIR)xc.o : $(SRCDIR)xc.c $(INCDIR)lispemul.h $(INCDIR)emulglobal.h \ 26 | $(INCDIR)address.h \ 27 | $(INCDIR)address68k.h $(INCDIR)stack.h $(INCDIR)lispglobal.h \ 28 | $(INCDIR)lisptypes.h $(INCDIR)lispmap.h $(INCDIR)cell.h \ 29 | $(INCDIR)initatoms.h $(INCDIR)gcdata.h \ 30 | $(INCDIR)arith.h $(INCDIR)stream.h \ 31 | $(INCDIR)tos1defs.h $(INCDIR)tosretmacro.h \ 32 | $(INCDIR)tosfuncallmacro.h $(INCDIR)inlinedefsC.h \ 33 | $(INCDIR)inlinedefs68K.h \ 34 | $(INCDIR)inlinedefsSPARC.h $(INCDIR)fastdispatch.h \ 35 | $(INCDIR)fastinlinedefs68K.h 36 | cc $(DISPRFLAGS) $(SRCDIR)xc.c $(INLINE) -o $(OBJECTDIR)xc.o 37 | 38 | 39 | -------------------------------------------------------------------------------- /bin/legacy/makefile-sunos3.mc68020-x: -------------------------------------------------------------------------------- 1 | # Options for sun3, mc68020 and X-Window 2 | 3 | XFILES = $(OBJECTDIR)XClose.o \ 4 | $(OBJECTDIR)Cursor.o \ 5 | $(OBJECTDIR)XWindow.o \ 6 | $(OBJECTDIR)DoRing.o \ 7 | $(OBJECTDIR)DoScroll.o \ 8 | $(OBJECTDIR)XEvent.o \ 9 | $(OBJECTDIR)XGravity.o \ 10 | $(OBJECTDIR)XInit.o \ 11 | $(OBJECTDIR)InitXevent.o \ 12 | $(OBJECTDIR)XKbdMouse.o \ 13 | $(OBJECTDIR)LispWindow.o \ 14 | $(OBJECTDIR)LispXbitblt.o \ 15 | $(OBJECTDIR)XKeyboard.o \ 16 | $(OBJECTDIR)MakeXicon.o \ 17 | $(OBJECTDIR)OpenDisplay.o \ 18 | $(OBJECTDIR)ReadXoption.o \ 19 | $(OBJECTDIR)XReconfig.o \ 20 | $(OBJECTDIR)XScroll.o \ 21 | $(OBJECTDIR)Scrollbar.o \ 22 | $(OBJECTDIR)XCursor.o \ 23 | $(OBJECTDIR)XMouse.o \ 24 | $(OBJECTDIR)Subwindows.o \ 25 | $(OBJECTDIR)VideoColor.o \ 26 | $(OBJECTDIR)XWindowMgr.o 27 | 28 | XFLAGS = -DXWINDOW 29 | 30 | # This is to make the %$#@! Apollo cc happy 31 | OEXT = .o 32 | 33 | OPTFLAGS = -O2 34 | DISPOPTFLAGS = -O 35 | FPFLAGS = -f68881 36 | DFLAGS = -DOPDISP -DSUN3_OS3_IL -DNEWBITBLT -DLOGINT $(XFLAGS) 37 | LDFLAGS = -lX11 -lpixrect -lc -lm 38 | INLINE = $(SRCDIR)disp68K.il 39 | BITBLTFILE = $(OBJECTDIR)bitblt68K.o 40 | 41 | OBJECTDIR = ../sunos3.mc68020-x/ 42 | BYTESWAPFILES = $(OBJECTDIR)byteswap.o 43 | 44 | default : $(OBJECTDIR)lde $(OBJECTDIR)ldeether 45 | 46 | $(OBJECTDIR)xc.o : $(SRCDIR)xc.c $(INCDIR)lispemul.h $(INCDIR)emulglobal.h \ 47 | $(INCDIR)address.h \ 48 | $(INCDIR)address68k.h $(INCDIR)stack.h $(INCDIR)lispglobal.h \ 49 | $(INCDIR)lisptypes.h $(INCDIR)lispmap.h $(INCDIR)cell.h \ 50 | $(INCDIR)initatoms.h $(INCDIR)gcdata.h \ 51 | $(INCDIR)arith.h $(INCDIR)stream.h \ 52 | $(INCDIR)tos1defs.h $(INCDIR)tosretmacro.h \ 53 | $(INCDIR)tosfuncall.h $(INCDIR)inlineC.h \ 54 | $(INCDIR)inline68K.h \ 55 | $(INCDIR)inlineSPARC.h $(INCDIR)fast_disp.h \ 56 | $(INCDIR)fastinline68K.h 57 | cc $(DISPRFLAGS) $(SRCDIR)xc.c $(INLINE) -o $(OBJECTDIR)xc.o 58 | -------------------------------------------------------------------------------- /bin/legacy/makefile-sunos3.sparc: -------------------------------------------------------------------------------- 1 | # Options for SunOS3 and SPARC 2 | 3 | # This is to make the %$#@! Apollo cc happy 4 | OEXT = .o 5 | 6 | OPTFLAGS = -O2 7 | FPFLAGS = 8 | # JRB - I'm not 100% sure about these flags; someone should check... 9 | DFLAGS = -DKBINT -DFLTINT -DSPARCDISP -DOS4_TYPE4BUG -DOLD_CURSOR -DSUNDISPLAY 10 | LDFLAGS = -lsuntool -lsunwindow -lpixrect -lc -lm 11 | #-Dsparc? 12 | INLINE = $(SRCDIR)dispSPARC.il 13 | 14 | OBJECTDIR = ../$(RELEASENAME)/ 15 | COLORFILES = $(OBJECTDIR)colorbltfns.o 16 | 17 | default : $(OBJECTDIR)lde $(OBJECTDIR)ldeether 18 | 19 | # Special rules to create xc.c on Sun4 20 | 21 | #run cpp to expand macros 22 | $(OBJECTDIR)xc.i: $(SRCDIR)xc.c $(INCDIR)lispemul.h $(INCDIR)emulglobal.h $(INCDIR)address.h \ 23 | $(INCDIR)address68k.h $(INCDIR)stack.h $(INCDIR)lispglobal.h \ 24 | $(INCDIR)lisptypes.h $(INCDIR)lispmap.h $(INCDIR)cell.h \ 25 | $(INCDIR)initatoms.h $(INCDIR)gcdata.h \ 26 | $(INCDIR)arith.h $(INCDIR)stream.h \ 27 | $(INCDIR)tos1defs.h $(INCDIR)tosretmacro.h \ 28 | $(INCDIR)tosfuncall.h $(INCDIR)inlineC.h \ 29 | $(INCDIR)inline68K.h 30 | cc -Qproduce .i $(DFLAGS) -I$(INCDIR) $(SRCDIR)xc.c -o $(OBJECTDIR)xc.i 31 | 32 | #run c compiler to produce first pass assembly 33 | $(OBJECTDIR)xc.s1: $(OBJECTDIR)xc.i 34 | rm -f $(OBJECTDIR)xc.s1 35 | /lib/ccom - $(FPFLAGS) <$(OBJECTDIR)xc.i >$(OBJECTDIR)xc.s1 36 | 37 | #generate C program to remove dispatch loop, optimize 38 | $(OBJECTDIR)disphack.c: $(SRCDIR)disphack.lex 39 | rm -f $(OBJECTDIR)disphack.c 40 | lex -t $(SRCDIR)disphack.lex > $(OBJECTDIR)disphack.c 41 | 42 | #uses this program to find dispatch 43 | $(OBJECTDIR)find-disp.c: $(SRCDIR)find-disp.lex 44 | rm -f $(OBJECTDIR)find-disp.c 45 | lex -t $(SRCDIR)find-disp.lex > $(OBJECTDIR)find-disp.c 46 | 47 | $(OBJECTDIR)find-disp: $(OBJECTDIR)find-disp.c 48 | cc -o $(OBJECTDIR)find-disp $(OBJECTDIR)find-disp.c -ll 49 | 50 | $(OBJECTDIR)dispatch-label.c: $(OBJECTDIR)find-disp $(OBJECTDIR)xc.s1 51 | rm -f $(OBJECTDIR)dispatch-label.c 52 | $(OBJECTDIR)find-disp < $(OBJECTDIR)xc.s1 >$(OBJECTDIR)dispatch-label.c 53 | 54 | $(OBJECTDIR)disphack: $(OBJECTDIR)disphack.c $(OBJECTDIR)dispatch-label.c 55 | cc -o $(OBJECTDIR)disphack $(OBJECTDIR)dispatch-label.c $(OBJECTDIR)disphack.c -ll 56 | rm -f $(OBJECTDIR)dispatch-label.o $(OBJECTDIR)disphack.o 57 | 58 | $(OBJECTDIR)xc.s2: $(OBJECTDIR)xc.s1 $(OBJECTDIR)disphack 59 | rm -f $(OBJECTDIR)xc.s2 60 | $(OBJECTDIR)disphack < $(OBJECTDIR)xc.s1 >$(OBJECTDIR)xc.s2 61 | 62 | $(OBJECTDIR)xc.s3: $(OBJECTDIR)xc.s2 $(INLINE) 63 | rm -f $(OBJECTDIR)xc.s3 64 | /usr/lib/inline -i $(INLINE) < $(OBJECTDIR)xc.s2 > $(OBJECTDIR)xc.s3 65 | 66 | $(OBJECTDIR)xc.o: $(OBJECTDIR)xc.s3 67 | /bin/as -o $(OBJECTDIR)xc.o -O1 $(OBJECTDIR)xc.s3 68 | -------------------------------------------------------------------------------- /bin/legacy/makefile-sunos4.1.i386: -------------------------------------------------------------------------------- 1 | # Options for i386SUN 2 | # This is to make the %$#@! Apollo cc happy 3 | OEXT = .o 4 | 5 | #For debugging 6 | OPTFLAGS = -g 7 | FPFLAGS = 8 | DFLAGS = -DKBINT -DFLTINT -DNOASM -DOS4 -DI386 -DCHECK -DLOGINT -DSUNDISPLAY 9 | LDFLAGS = -lsuntool -lsunwindow -lpixrect -lc -lm 10 | INLINE = $(SRCDIR)disp386i.il 11 | 12 | OBJECTDIR = ../sunos4.i386/ 13 | BYTESWAPFILES = $(OBJECTDIR)byteswap.o 14 | COLORFILES = $(OBJECTDIR)colorbltfns.o 15 | 16 | default : $(OBJECTDIR)lde $(OBJECTDIR)ldeether 17 | 18 | # Special rules to create xc.c on 386i 19 | 20 | #run cpp to expand macros 21 | $(OBJECTDIR)xc.i: $(SRCDIR)xc.c $(INCDIR)lispemul.h $(INCDIR)emulglobal.h $(INCDIR)address.h \ 22 | $(INCDIR)address68k.h $(INCDIR)stack.h $(INCDIR)lispglobal.h \ 23 | $(INCDIR)lisptypes.h $(INCDIR)lispmap.h $(INCDIR)cell.h \ 24 | $(INCDIR)initatoms.h $(INCDIR)gcdata.h \ 25 | $(INCDIR)arith.h $(INCDIR)stream.h $(INCDIR)dbprint.h\ 26 | $(INCDIR)tos1defs.h $(INCDIR)tosretmacro.h \ 27 | $(INCDIR)tosfuncallmacro.h $(INCDIR)inlineC.h \ 28 | $(INCDIR)n_op_inlineC.h $(SRCDIR)disp386i.il \ 29 | $(INCDIR)dummy_entries.h \ 30 | $(INCDIR)inline386i.h $(INCDIR)fast_disp.h \ 31 | $(INCDIR)fastinline68K.h 32 | cc -c -O -Qproduce .s $(DFLAGS) -I$(INCDIR) $(SRCDIR)xc.c -o $(OBJECTDIR)xc.s 33 | 34 | #run c compiler to produce first pass assembly 35 | #$(OBJECTDIR)xc.s1: $(OBJECTDIR)xc.i 36 | # rm -f $(OBJECTDIR)xc.s1 37 | # /lib/ccom - $(FPFLAGS) <$(OBJECTDIR)xc.i >$(OBJECTDIR)xc.s1 38 | 39 | $(OBJECTDIR)xc.s2: $(OBJECTDIR)xc.s $(INLINE) 40 | rm -f $(OBJECTDIR)xc.s2 41 | /usr/lib/inline -i $(INLINE) < $(OBJECTDIR)xc.s > $(OBJECTDIR)xc.s2 42 | 43 | $(OBJECTDIR)xc.o: $(OBJECTDIR)xc.s2 44 | /bin/as -o $(OBJECTDIR)xc.o -O1 $(OBJECTDIR)xc.s2 45 | -------------------------------------------------------------------------------- /bin/legacy/makefile-sunos4.1.i386-multi: -------------------------------------------------------------------------------- 1 | # Options for sun4 and mc68020 2 | 3 | # This is to make the %$#@! Apollo cc happy 4 | OEXT = .o 5 | 6 | OPTFLAGS = -O 7 | DISPOPTFLAGS = -O 8 | FPFLAGS = 9 | DFLAGS = -DKBINT -DOS4 -DI386 -DCHECK -DLOGINT -DDISPLAYBUFFER -DSUNDISPLAY -DNEWBITBLT -DOPDISP 10 | LDFLAGS = -lsuntool -lsunwindow -lpixrect -lc -lm 11 | INLINE = $(SRCDIR)disp386i.il 12 | BITBLTFILE=$(OBJECTDIR)bitblt386i.o 13 | 14 | OBJECTDIR = ../sunos4.i386-multi/ 15 | BYTESWAPFILES = $(OBJECTDIR)byteswap.o 16 | COLORFILES = $(OBJECTDIR)colorbltfns.o 17 | 18 | default : $(OBJECTDIR)lde $(OBJECTDIR)ldeether 19 | 20 | # Special rules to create xc.c on 386i 21 | 22 | #run cpp to expand macros 23 | $(OBJECTDIR)xc.s: $(SRCDIR)xc.c $(INCDIR)lispemul.h $(INCDIR)emulglobal.h $(INCDIR)address.h \ 24 | $(INCDIR)address68k.h $(INCDIR)stack.h $(INCDIR)lispglobal.h \ 25 | $(INCDIR)lisptypes.h $(INCDIR)lispmap.h $(INCDIR)cell.h \ 26 | $(INCDIR)initatoms.h $(INCDIR)gcdata.h \ 27 | $(INCDIR)arith.h $(INCDIR)stream.h $(INCDIR)dbprint.h\ 28 | $(INCDIR)tos1defs.h $(INCDIR)tosretmacro.h \ 29 | $(INCDIR)tosfuncall.h $(INCDIR)inlineC.h \ 30 | $(SRCDIR)disp386i.il \ 31 | $(INCDIR)inline386i.h $(INCDIR)fast_disp.h \ 32 | $(INCDIR)fastinline68K.h 33 | cc -c -O -Qproduce .s $(DFLAGS) -I$(INCDIR) $(SRCDIR)xc.c -o $(OBJECTDIR)xc.s 34 | 35 | #run c compiler to produce first pass assembly 36 | #$(OBJECTDIR)xc.s1: $(OBJECTDIR)xc.i 37 | # rm -f $(OBJECTDIR)xc.s1 38 | # /lib/ccom - $(FPFLAGS) <$(OBJECTDIR)xc.i >$(OBJECTDIR)xc.s1 39 | 40 | $(OBJECTDIR)xc.s2: $(OBJECTDIR)xc.s $(INLINE) 41 | rm -f $(OBJECTDIR)xc.s2 42 | /usr/lib/inline -i $(INLINE) < $(OBJECTDIR)xc.s > $(OBJECTDIR)xc.s2 43 | 44 | $(OBJECTDIR)xc.o: $(OBJECTDIR)xc.s2 45 | /bin/as -o $(OBJECTDIR)xc.o -O1 $(OBJECTDIR)xc.s2 46 | 47 | -------------------------------------------------------------------------------- /bin/legacy/makefile-sunos4.1.mc68020: -------------------------------------------------------------------------------- 1 | # Options for sun4 and mc68020 2 | 3 | # This is to make the %$#@! Apollo cc happy 4 | OEXT = .o 5 | 6 | OPTFLAGS = -O2 7 | DISPOPTFLAGS = -O 8 | FPFLAGS = -f68881 9 | # DISPLAYBUFFER for Color Sparcstation code testing 10 | # [I remove DISPLAYBUFFER option . 11 | # You may run 'makeright multi'. -osamu '90/02/07] 12 | # NEWBITBLT for assembler version of bitblt. 13 | DFLAGS = -DKBINT -DOPDISP -DOS4 -DSUN3_OS4_IL -DOS4_TYPE4BUG -DNEWBITBLT -DLOGINT -DSUNDISPLAY 14 | LDFLAGS = -lsuntool -lsunwindow -lpixrect -lc -lm 15 | 16 | INLINE = $(SRCDIR)disp68K.il 17 | BITBLTFILE = $(OBJECTDIR)bitblt68K.o 18 | COLORFILES = $(OBJECTDIR)colorbltfns.o 19 | 20 | OBJECTDIR = ../sunos4.mc68020/ 21 | 22 | default : $(OBJECTDIR)lde $(OBJECTDIR)ldeether 23 | 24 | $(OBJECTDIR)xc.o : $(SRCDIR)xc.c $(INCDIR)lispemul.h $(INCDIR)emulglobal.h \ 25 | $(INCDIR)address.h \ 26 | $(INCDIR)address68k.h $(INCDIR)stack.h $(INCDIR)lispglobal.h \ 27 | $(INCDIR)lisptypes.h $(INCDIR)lispmap.h $(INCDIR)cell.h \ 28 | $(INCDIR)initatoms.h $(INCDIR)gcdata.h \ 29 | $(INCDIR)arith.h $(INCDIR)stream.h \ 30 | $(INCDIR)tos1defs.h $(INCDIR)tosretmacro.h \ 31 | $(INCDIR)tosfuncall.h $(INCDIR)inlineC.h \ 32 | $(INCDIR)inline68K.h \ 33 | $(INCDIR)inlineSPARC.h $(INCDIR)fast_disp.h \ 34 | $(INCDIR)fastinline68K.h 35 | cc $(DISPRFLAGS) $(SRCDIR)xc.c $(INLINE) -o $(OBJECTDIR)xc.o 36 | 37 | -------------------------------------------------------------------------------- /bin/legacy/makefile-sunos4.1.mc68020-multi: -------------------------------------------------------------------------------- 1 | # makefile-sunos4.mc68020-multi 2 | # Options for SunOS4 and mc68020 for CG3 or CG6 3 | # Add -DDISPLAYBUFFER in DFLAGS 4 | # ${RELEASENAME} is "sunos4.mc68020-multi" 5 | 6 | # This is to make the %$#@! Apollo cc happy 7 | OEXT = .o 8 | 9 | OPTFLAGS = -O2 10 | DISPOPTFLAGS = -O 11 | FPFLAGS = -f68881 12 | # DISPLAYBUFFER for Color Sparcstation code testing 13 | # NEWBITBLT for assembler version of bitblt. 14 | DFLAGS = -DKBINT -DOPDISP -DOS4 -DSUN3_OS4_IL -DOS4_TYPE4BUG -DDISPLAYBUFFER -DNEWBITBLT -DLOGINT -DSUNDISPLAY -DDISPLAYBUFFER 15 | LDFLAGS = -lsuntool -lsunwindow -lpixrect -lc -lm 16 | 17 | INLINE = $(SRCDIR)disp68K.il 18 | BITBLTFILE = $(OBJECTDIR)bitblt68K.o 19 | COLORFILES = $(OBJECTDIR)colorbltfns.o 20 | 21 | OBJECTDIR = ../$(RELEASENAME)/ 22 | 23 | default : $(OBJECTDIR)lde $(OBJECTDIR)ldeether 24 | 25 | $(OBJECTDIR)xc.o : $(SRCDIR)xc.c $(INCDIR)lispemul.h $(INCDIR)emulglobal.h \ 26 | $(INCDIR)address.h \ 27 | $(INCDIR)address68k.h $(INCDIR)stack.h $(INCDIR)lispglobal.h \ 28 | $(INCDIR)lisptypes.h $(INCDIR)lispmap.h $(INCDIR)cell.h \ 29 | $(INCDIR)initatoms.h $(INCDIR)gcdata.h \ 30 | $(INCDIR)arith.h $(INCDIR)stream.h \ 31 | $(INCDIR)tos1defs.h $(INCDIR)tosretmacro.h \ 32 | $(INCDIR)tosfuncall.h $(INCDIR)inlineC.h \ 33 | $(INCDIR)inline68K.h \ 34 | $(INCDIR)inlineSPARC.h $(INCDIR)fast_disp.h \ 35 | $(INCDIR)fastinline68K.h 36 | cc $(DISPRFLAGS) $(SRCDIR)xc.c $(INLINE) -o $(OBJECTDIR)xc.o 37 | 38 | 39 | -------------------------------------------------------------------------------- /bin/legacy/makefile-sunos4.1.mc68020-x: -------------------------------------------------------------------------------- 1 | # Options for sun4, mc68020 and X-Window 2 | 3 | XFILES = $(OBJECTDIR)XClose.o \ 4 | $(OBJECTDIR)Cursor.o \ 5 | $(OBJECTDIR)XWindow.o \ 6 | $(OBJECTDIR)DoRing.o \ 7 | $(OBJECTDIR)DoScroll.o \ 8 | $(OBJECTDIR)XEvent.o \ 9 | $(OBJECTDIR)XGravity.o \ 10 | $(OBJECTDIR)XInit.o \ 11 | $(OBJECTDIR)InitXevent.o \ 12 | $(OBJECTDIR)XKbdMouse.o \ 13 | $(OBJECTDIR)LispWindow.o \ 14 | $(OBJECTDIR)LispXbitblt.o \ 15 | $(OBJECTDIR)XKeyboard.o \ 16 | $(OBJECTDIR)MakeXicon.o \ 17 | $(OBJECTDIR)OpenDisplay.o \ 18 | $(OBJECTDIR)ReadXoption.o \ 19 | $(OBJECTDIR)XReconfig.o \ 20 | $(OBJECTDIR)XScroll.o \ 21 | $(OBJECTDIR)Scrollbar.o \ 22 | $(OBJECTDIR)XCursor.o \ 23 | $(OBJECTDIR)XMouse.o \ 24 | $(OBJECTDIR)Subwindows.o \ 25 | $(OBJECTDIR)VideoColor.o \ 26 | $(OBJECTDIR)XWindowMgr.o 27 | 28 | XFLAGS = -DXWINDOW 29 | 30 | # This is to make the %$#@! Apollo cc happy 31 | OEXT = .o 32 | 33 | OPTFLAGS = -O2 34 | DISPOPTFLAGS = -O 35 | FPFLAGS = -f68881 36 | # DISPLAYBUFFER for Color Sparcstation code testing 37 | # [I remove DISPLAYBUFFER option . 38 | # You may run 'makeright x'. -osamu '90/02/27] 39 | # NEWBITBLT for assembler version of bitblt. 40 | DFLAGS = -DOPDISP -DOS4 -DSUN3_OS4_IL -DOS4_TYPE4BUG -DNEWBITBLT -DLOGINT $(XFLAGS) 41 | LDFLAGS = -lX11 -lpixrect -lc -lm 42 | 43 | INLINE = $(SRCDIR)disp68K.il 44 | BITBLTFILE = $(OBJECTDIR)bitblt68K.o 45 | 46 | OBJECTDIR = ../sunos4.mc68020-x/ 47 | BYTESWAPFILES = $(OBJECTDIR)byteswap.o 48 | 49 | default : $(OBJECTDIR)lde $(OBJECTDIR)ldeether 50 | 51 | $(OBJECTDIR)xc.o : $(SRCDIR)xc.c $(INCDIR)lispemul.h $(INCDIR)emulglobal.h \ 52 | $(INCDIR)address.h \ 53 | $(INCDIR)address68k.h $(INCDIR)stack.h $(INCDIR)lispglobal.h \ 54 | $(INCDIR)lisptypes.h $(INCDIR)lispmap.h $(INCDIR)cell.h \ 55 | $(INCDIR)initatoms.h $(INCDIR)gcdata.h \ 56 | $(INCDIR)arith.h $(INCDIR)stream.h \ 57 | $(INCDIR)tos1defs.h $(INCDIR)tosretmacro.h \ 58 | $(INCDIR)tosfuncall.h $(INCDIR)inlineC.h \ 59 | $(INCDIR)inline68K.h \ 60 | $(INCDIR)inlineSPARC.h $(INCDIR)fast_disp.h \ 61 | $(INCDIR)fastinline68K.h 62 | cc $(DISPRFLAGS) $(SRCDIR)xc.c $(INLINE) -o $(OBJECTDIR)xc.o 63 | 64 | -------------------------------------------------------------------------------- /bin/legacy/makefile-sunos4.i386: -------------------------------------------------------------------------------- 1 | # Options for i386SUN 2 | # This is to make the %$#@! Apollo cc happy 3 | OEXT = .o 4 | 5 | #For debugging 6 | OPTFLAGS = -g 7 | FPFLAGS = 8 | DFLAGS = -DKBINT -DFLTINT -DNOASM -DOS4 -DI386 -DCHECK -DLOGINT -DSUNDISPLAY 9 | LDFLAGS = -lsuntool -lsunwindow -lpixrect -lc -lm 10 | INLINE = $(SRCDIR)disp386i.il 11 | 12 | OBJECTDIR = ../sunos4.i386/ 13 | BYTESWAPFILES = $(OBJECTDIR)byteswap.o 14 | COLORFILES = $(OBJECTDIR)colorbltfns.o 15 | 16 | default : $(OBJECTDIR)lde $(OBJECTDIR)ldeether 17 | 18 | # Special rules to create xc.c on 386i 19 | 20 | #run cpp to expand macros 21 | $(OBJECTDIR)xc.i: $(SRCDIR)xc.c $(INCDIR)lispemul.h $(INCDIR)emulglobal.h $(INCDIR)address.h \ 22 | $(INCDIR)address68k.h $(INCDIR)stack.h $(INCDIR)lispglobal.h \ 23 | $(INCDIR)lisptypes.h $(INCDIR)lispmap.h $(INCDIR)cell.h \ 24 | $(INCDIR)initatoms.h $(INCDIR)gcdata.h \ 25 | $(INCDIR)arith.h $(INCDIR)stream.h $(INCDIR)dbprint.h\ 26 | $(INCDIR)tos1defs.h $(INCDIR)tosretmacro.h \ 27 | $(INCDIR)tosfuncallmacro.h $(INCDIR)inlineC.h \ 28 | $(INCDIR)n_op_inlineC.h $(SRCDIR)disp386i.il \ 29 | $(INCDIR)dummy_entries.h \ 30 | $(INCDIR)inline386i.h $(INCDIR)fast_disp.h \ 31 | $(INCDIR)fastinline68K.h 32 | cc -c -O -Qproduce .s $(DFLAGS) -I$(INCDIR) $(SRCDIR)xc.c -o $(OBJECTDIR)xc.s 33 | 34 | #run c compiler to produce first pass assembly 35 | #$(OBJECTDIR)xc.s1: $(OBJECTDIR)xc.i 36 | # rm -f $(OBJECTDIR)xc.s1 37 | # /lib/ccom - $(FPFLAGS) <$(OBJECTDIR)xc.i >$(OBJECTDIR)xc.s1 38 | 39 | $(OBJECTDIR)xc.s2: $(OBJECTDIR)xc.s $(INLINE) 40 | rm -f $(OBJECTDIR)xc.s2 41 | /usr/lib/inline -i $(INLINE) < $(OBJECTDIR)xc.s > $(OBJECTDIR)xc.s2 42 | 43 | $(OBJECTDIR)xc.o: $(OBJECTDIR)xc.s2 44 | /bin/as -o $(OBJECTDIR)xc.o -O1 $(OBJECTDIR)xc.s2 45 | -------------------------------------------------------------------------------- /bin/legacy/makefile-sunos4.i386-multi: -------------------------------------------------------------------------------- 1 | # Options for sun4 and mc68020 2 | 3 | # This is to make the %$#@! Apollo cc happy 4 | OEXT = .o 5 | 6 | OPTFLAGS = -O -traditional 7 | DISPOPTFLAGS = -O -traditional 8 | FPFLAGS = 9 | DFLAGS = -DKBINT -DOS4 -DI386 -DCHECK -DLOGINT -DDISPLAYBUFFER -DSUNDISPLAY -DNEWBITBLT -DOPDISP 10 | LDFLAGS = -lsuntool -lsunwindow -lpixrect -lc -lm 11 | INLINE = $(SRCDIR)disp386i.il 12 | BITBLTFILE=$(OBJECTDIR)bitblt386i.o 13 | CC=gcc 14 | AS=/users/sybalsky/gcc/gas/gas-1.35/a386 15 | 16 | OBJECTDIR = ../sunos4.i386-multi/ 17 | BYTESWAPFILES = $(OBJECTDIR)byteswap.o 18 | COLORFILES = $(OBJECTDIR)colorbltfns.o 19 | 20 | default : $(OBJECTDIR)lde $(OBJECTDIR)ldeether 21 | 22 | # Special rules to create xc.c on 386i 23 | 24 | #run cpp to expand macros 25 | $(OBJECTDIR)xc.s: $(SRCDIR)xc.c $(INCDIR)lispemul.h $(INCDIR)emulglobal.h $(INCDIR)address.h \ 26 | $(INCDIR)address68k.h $(INCDIR)stack.h $(INCDIR)lispglobal.h \ 27 | $(INCDIR)lisptypes.h $(INCDIR)lispmap.h $(INCDIR)cell.h \ 28 | $(INCDIR)initatoms.h $(INCDIR)gcdata.h \ 29 | $(INCDIR)arith.h $(INCDIR)stream.h $(INCDIR)dbprint.h\ 30 | $(INCDIR)tos1defs.h $(INCDIR)tosretmacro.h \ 31 | $(INCDIR)tosfuncall.h $(INCDIR)inlineC.h \ 32 | $(SRCDIR)disp386i.il \ 33 | $(INCDIR)inline386i.h $(INCDIR)fast_disp.h \ 34 | $(INCDIR)fastinline68K.h 35 | cc -c -O -Qproduce .s $(DFLAGS) -I$(INCDIR) $(SRCDIR)xc.c -o $(OBJECTDIR)xc.s 36 | 37 | #run c compiler to produce first pass assembly 38 | #$(OBJECTDIR)xc.s1: $(OBJECTDIR)xc.i 39 | # rm -f $(OBJECTDIR)xc.s1 40 | # /lib/ccom - $(FPFLAGS) <$(OBJECTDIR)xc.i >$(OBJECTDIR)xc.s1 41 | 42 | $(OBJECTDIR)xc.s2: $(OBJECTDIR)xc.s $(INLINE) 43 | rm -f $(OBJECTDIR)xc.s2 44 | /usr/lib/inline -i $(INLINE) < $(OBJECTDIR)xc.s > $(OBJECTDIR)xc.s2 45 | 46 | $(OBJECTDIR)xc.o: $(OBJECTDIR)xc.s2 47 | $(AS) -o $(OBJECTDIR)xc.o -O1 $(OBJECTDIR)xc.s2 48 | 49 | -------------------------------------------------------------------------------- /bin/legacy/makefile-sunos4.mc68020: -------------------------------------------------------------------------------- 1 | # Options for sun4 and mc68020 2 | 3 | # This is to make the %$#@! Apollo cc happy 4 | OEXT = .o 5 | 6 | OPTFLAGS = -O2 7 | DISPOPTFLAGS = -O 8 | FPFLAGS = -f68881 9 | # DISPLAYBUFFER for Color Sparcstation code testing 10 | # [I remove DISPLAYBUFFER option . 11 | # You may run 'makeright multi'. -osamu '90/02/07] 12 | # NEWBITBLT for assembler version of bitblt. 13 | DFLAGS = -DKBINT -DOPDISP -DOS4 -DSUN3_OS4_IL -DOS4_TYPE4BUG -DNEWBITBLT -DLOGINT -DSUNDISPLAY 14 | LDFLAGS = -lsuntool -lsunwindow -lpixrect -lc -lm 15 | 16 | INLINE = $(SRCDIR)disp68K.il 17 | BITBLTFILE = $(OBJECTDIR)bitblt68K.o 18 | COLORFILES = $(OBJECTDIR)colorbltfns.o 19 | 20 | OBJECTDIR = ../sunos4.mc68020/ 21 | 22 | default : $(OBJECTDIR)lde $(OBJECTDIR)ldeether 23 | 24 | $(OBJECTDIR)xc.o : $(SRCDIR)xc.c $(INCDIR)lispemul.h $(INCDIR)emulglobal.h \ 25 | $(INCDIR)address.h \ 26 | $(INCDIR)address68k.h $(INCDIR)stack.h $(INCDIR)lispglobal.h \ 27 | $(INCDIR)lisptypes.h $(INCDIR)lispmap.h $(INCDIR)cell.h \ 28 | $(INCDIR)initatoms.h $(INCDIR)gcdata.h \ 29 | $(INCDIR)arith.h $(INCDIR)stream.h \ 30 | $(INCDIR)tos1defs.h $(INCDIR)tosretmacro.h \ 31 | $(INCDIR)tosfuncall.h $(INCDIR)inlineC.h \ 32 | $(INCDIR)inline68K.h \ 33 | $(INCDIR)inlineSPARC.h $(INCDIR)fast_disp.h \ 34 | $(INCDIR)fastinline68K.h 35 | cc $(DISPRFLAGS) $(SRCDIR)xc.c $(INLINE) -o $(OBJECTDIR)xc.o 36 | 37 | -------------------------------------------------------------------------------- /bin/legacy/makefile-sunos4.mc68020-multi: -------------------------------------------------------------------------------- 1 | # makefile-sunos4.mc68020-multi 2 | # Options for SunOS4 and mc68020 for CG3 or CG6 3 | # Add -DDISPLAYBUFFER in DFLAGS 4 | # ${RELEASENAME} is "sunos4.mc68020-multi" 5 | 6 | # This is to make the %$#@! Apollo cc happy 7 | OEXT = .o 8 | 9 | OPTFLAGS = -O2 10 | DISPOPTFLAGS = -O 11 | FPFLAGS = -f68881 12 | # DISPLAYBUFFER for Color Sparcstation code testing 13 | # NEWBITBLT for assembler version of bitblt. 14 | DFLAGS = -DKBINT -DOPDISP -DOS4 -DSUN3_OS4_IL -DOS4_TYPE4BUG -DDISPLAYBUFFER -DNEWBITBLT -DLOGINT -DSUNDISPLAY -DDISPLAYBUFFER 15 | LDFLAGS = -lsuntool -lsunwindow -lpixrect -lc -lm 16 | 17 | INLINE = $(SRCDIR)disp68K.il 18 | BITBLTFILE = $(OBJECTDIR)bitblt68K.o 19 | COLORFILES = $(OBJECTDIR)colorbltfns.o 20 | 21 | OBJECTDIR = ../$(RELEASENAME)/ 22 | 23 | default : $(OBJECTDIR)lde $(OBJECTDIR)ldeether 24 | 25 | $(OBJECTDIR)xc.o : $(SRCDIR)xc.c $(INCDIR)lispemul.h $(INCDIR)emulglobal.h \ 26 | $(INCDIR)address.h \ 27 | $(INCDIR)address68k.h $(INCDIR)stack.h $(INCDIR)lispglobal.h \ 28 | $(INCDIR)lisptypes.h $(INCDIR)lispmap.h $(INCDIR)cell.h \ 29 | $(INCDIR)initatoms.h $(INCDIR)gcdata.h \ 30 | $(INCDIR)arith.h $(INCDIR)stream.h \ 31 | $(INCDIR)tos1defs.h $(INCDIR)tosretmacro.h \ 32 | $(INCDIR)tosfuncall.h $(INCDIR)inlineC.h \ 33 | $(INCDIR)inline68K.h \ 34 | $(INCDIR)inlineSPARC.h $(INCDIR)fast_disp.h \ 35 | $(INCDIR)fastinline68K.h 36 | cc $(DISPRFLAGS) $(SRCDIR)xc.c $(INLINE) -o $(OBJECTDIR)xc.o 37 | 38 | 39 | -------------------------------------------------------------------------------- /bin/legacy/makefile-sunos4.mc68020-x: -------------------------------------------------------------------------------- 1 | # Options for sun4, mc68020 and X-Window 2 | 3 | XFILES = $(OBJECTDIR)XClose.o \ 4 | $(OBJECTDIR)Cursor.o \ 5 | $(OBJECTDIR)XWindow.o \ 6 | $(OBJECTDIR)DoRing.o \ 7 | $(OBJECTDIR)DoScroll.o \ 8 | $(OBJECTDIR)XEvent.o \ 9 | $(OBJECTDIR)XGravity.o \ 10 | $(OBJECTDIR)XInit.o \ 11 | $(OBJECTDIR)InitXevent.o \ 12 | $(OBJECTDIR)XKbdMouse.o \ 13 | $(OBJECTDIR)LispWindow.o \ 14 | $(OBJECTDIR)LispXbitblt.o \ 15 | $(OBJECTDIR)XKeyboard.o \ 16 | $(OBJECTDIR)MakeXicon.o \ 17 | $(OBJECTDIR)OpenDisplay.o \ 18 | $(OBJECTDIR)ReadXoption.o \ 19 | $(OBJECTDIR)XReconfig.o \ 20 | $(OBJECTDIR)XScroll.o \ 21 | $(OBJECTDIR)Scrollbar.o \ 22 | $(OBJECTDIR)XCursor.o \ 23 | $(OBJECTDIR)XMouse.o \ 24 | $(OBJECTDIR)Subwindows.o \ 25 | $(OBJECTDIR)VideoColor.o \ 26 | $(OBJECTDIR)XWindowMgr.o 27 | 28 | XFLAGS = -DXWINDOW 29 | 30 | # This is to make the %$#@! Apollo cc happy 31 | OEXT = .o 32 | 33 | OPTFLAGS = -O2 34 | DISPOPTFLAGS = -O 35 | FPFLAGS = -f68881 36 | # DISPLAYBUFFER for Color Sparcstation code testing 37 | # [I remove DISPLAYBUFFER option . 38 | # You may run 'makeright x'. -osamu '90/02/27] 39 | # NEWBITBLT for assembler version of bitblt. 40 | DFLAGS = -DOPDISP -DOS4 -DSUN3_OS4_IL -DOS4_TYPE4BUG -DNEWBITBLT -DLOGINT $(XFLAGS) 41 | LDFLAGS = -lX11 -lpixrect -lc -lm 42 | LDELDFLAGS = -Bstatic -lX11 -lpixrect -Bdynamic -lc -lm 43 | 44 | INLINE = $(SRCDIR)disp68K.il 45 | BITBLTFILE = $(OBJECTDIR)bitblt68K.o 46 | 47 | OBJECTDIR = ../sunos4.mc68020-x/ 48 | BYTESWAPFILES = $(OBJECTDIR)byteswap.o 49 | 50 | default : $(OBJECTDIR)lde $(OBJECTDIR)ldeether 51 | 52 | $(OBJECTDIR)xc.o : $(SRCDIR)xc.c $(INCDIR)lispemul.h $(INCDIR)emulglobal.h \ 53 | $(INCDIR)address.h \ 54 | $(INCDIR)address68k.h $(INCDIR)stack.h $(INCDIR)lispglobal.h \ 55 | $(INCDIR)lisptypes.h $(INCDIR)lispmap.h $(INCDIR)cell.h \ 56 | $(INCDIR)initatoms.h $(INCDIR)gcdata.h \ 57 | $(INCDIR)arith.h $(INCDIR)stream.h \ 58 | $(INCDIR)tos1defs.h $(INCDIR)tosretmacro.h \ 59 | $(INCDIR)tosfuncall.h $(INCDIR)inlineC.h \ 60 | $(INCDIR)inline68K.h \ 61 | $(INCDIR)inlineSPARC.h $(INCDIR)fast_disp.h \ 62 | $(INCDIR)fastinline68K.h 63 | cc $(DISPRFLAGS) $(SRCDIR)xc.c $(INLINE) -o $(OBJECTDIR)xc.o 64 | 65 | -------------------------------------------------------------------------------- /bin/legacy/makefile-sunos4.sparc-color: -------------------------------------------------------------------------------- 1 | # Options for SunOS4 and SPARC 2 | 3 | # This is to make the %$#@! Apollo cc happy 4 | OEXT = .o 5 | # OPTFLAGS is normally -O2. 6 | OPTFLAGS = -g 7 | FPFLAGS = 8 | # For COLOR, Add COLOR, remove OLD_CURSOR 9 | DFLAGS = -DKBINT -DOS4 -DSPARCDISP -DSUN4_OS4_IL -DOS4_TYPE4BUG -DFLTINT -DCOLOR -DNEWBITBLT -DSUNDISPLAY -DLOGINT 10 | LDFLAGS = -lsuntool -lsunwindow -lpixrect -lc -lm 11 | 12 | #-Dsparc? 13 | INLINE = $(SRCDIR)dispSPARC.il 14 | BITBLTFILE = $(OBJECTDIR)bitbltSPARC.o 15 | 16 | OBJECTDIR = ../$(RELEASENAME)/ 17 | COLORFILES = $(OBJECTDIR)colorbltfns.o 18 | 19 | default : $(OBJECTDIR)lde $(OBJECTDIR)Cldeether 20 | 21 | # Special rules to create xc.c on Sun4 22 | 23 | #run cpp to expand macros 24 | $(OBJECTDIR)xc.i: $(SRCDIR)xc.c $(INCDIR)lispemul.h $(INCDIR)emulglobal.h $(INCDIR)address.h \ 25 | $(INCDIR)address68k.h $(INCDIR)stack.h $(INCDIR)lispglobal.h \ 26 | $(INCDIR)lisptypes.h $(INCDIR)lispmap.h $(INCDIR)cell.h \ 27 | $(INCDIR)initatoms.h $(INCDIR)gcdata.h \ 28 | $(INCDIR)arith.h $(INCDIR)stream.h \ 29 | $(INCDIR)tos1defs.h $(INCDIR)tosretmacro.h \ 30 | $(INCDIR)tosfuncall.h $(INCDIR)inlineC.h \ 31 | $(INCDIR)inline68K.h 32 | cc -Qproduce .i $(DFLAGS) -I$(INCDIR) $(SRCDIR)xc.c -o $(OBJECTDIR)xc.i 33 | 34 | #run c compiler to produce first pass assembly 35 | $(OBJECTDIR)xc.s1: $(OBJECTDIR)xc.i 36 | rm -f $(OBJECTDIR)xc.s1 37 | /lib/ccom - $(FPFLAGS) <$(OBJECTDIR)xc.i >$(OBJECTDIR)xc.s1 38 | 39 | #generate C program to remove dispatch loop, optimize 40 | $(OBJECTDIR)disphack.c: $(SRCDIR)disphack.lex 41 | rm -f $(OBJECTDIR)disphack.c 42 | lex -t $(SRCDIR)disphack.lex > $(OBJECTDIR)disphack.c 43 | 44 | #uses this program to find dispatch 45 | $(OBJECTDIR)find-disp.c: $(SRCDIR)find-disp.lex 46 | rm -f $(OBJECTDIR)find-disp.c 47 | lex -t $(SRCDIR)find-disp.lex > $(OBJECTDIR)find-disp.c 48 | 49 | $(OBJECTDIR)find-disp: $(OBJECTDIR)find-disp.c 50 | cc -o $(OBJECTDIR)find-disp $(OBJECTDIR)find-disp.c -ll 51 | 52 | $(OBJECTDIR)dispatch-label.c: $(OBJECTDIR)find-disp $(OBJECTDIR)xc.s1 53 | rm -f $(OBJECTDIR)dispatch-label.c 54 | $(OBJECTDIR)find-disp < $(OBJECTDIR)xc.s1 >$(OBJECTDIR)dispatch-label.c 55 | 56 | $(OBJECTDIR)disphack: $(OBJECTDIR)disphack.c $(OBJECTDIR)dispatch-label.c 57 | cc -o $(OBJECTDIR)disphack $(OBJECTDIR)dispatch-label.c $(OBJECTDIR)disphack.c -ll 58 | rm -f $(OBJECTDIR)dispatch-label.o $(OBJECTDIR)disphack.o 59 | 60 | $(OBJECTDIR)xc.s2: $(OBJECTDIR)xc.s1 $(OBJECTDIR)disphack 61 | rm -f $(OBJECTDIR)xc.s2 62 | $(OBJECTDIR)disphack < $(OBJECTDIR)xc.s1 >$(OBJECTDIR)xc.s2 63 | 64 | $(OBJECTDIR)xc.s3: $(OBJECTDIR)xc.s2 $(INLINE) 65 | rm -f $(OBJECTDIR)xc.s3 66 | /usr/lib/inline -i $(INLINE) < $(OBJECTDIR)xc.s2 > $(OBJECTDIR)xc.s3 67 | 68 | $(OBJECTDIR)xc.o: $(OBJECTDIR)xc.s3 69 | /bin/as -o $(OBJECTDIR)xc.o -O1 $(OBJECTDIR)xc.s3 70 | -------------------------------------------------------------------------------- /bin/machinetype: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | ######################################################################### 3 | # # 4 | # M A C H I N E T Y P E # 5 | # # 6 | # Compute the hardware architecture we're running on. # 7 | # # 8 | # (C) Copyright 2001 Venue. All Rights Reserved # 9 | # # 10 | ######################################################################### 11 | 12 | SCRIPTPATH="$( cd "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P )" 13 | os=${LDEARCH:-`$SCRIPTPATH/config.guess`} 14 | # o/s switch block 15 | case "$os" in 16 | m68k-*) echo m68k ;; 17 | sparc-*) echo sparc ;; 18 | alpha-*) echo alpha ;; 19 | i*86-*-*) echo 386 ;; 20 | armv7l-*-*) echo armv7l ;; 21 | aarch64-*-*) echo aarch64 ;; 22 | x86_64-apple-darwin15*) echo 386 ;; 23 | x86_64-*) echo x86_64 ;; 24 | powerpc-*) echo ppc ;; 25 | amd64-*) echo x86_64 ;; 26 | esac 27 | 28 | ### Don't leave the variables set. 29 | unset os 30 | -------------------------------------------------------------------------------- /bin/makefile-cygwin.x86_64-sdl: -------------------------------------------------------------------------------- 1 | # Options for Linux, Intel x86_64 and X-Window 2 | 3 | CC = gcc -m64 $(GCC_CFLAGS) -I/usr/local/include 4 | #CC = clang -m64 $(CLANG_CFLAGS) 5 | 6 | XFILES = $(OBJECTDIR)sdl.o 7 | 8 | # 9 | # For SDL version 2 10 | # -DSDL=2 in XFLAGS and -lSDL2 in LDFLAGS 11 | # For SDL version 3 12 | # -DSDL=3 in XFLAGS and -lSDL3 in LDFLAGS 13 | # 14 | XFLAGS = -DSDL=2 15 | 16 | # OPTFLAGS is normally -O2. 17 | OPTFLAGS = -O2 -g3 18 | DFLAGS = $(XFLAGS) -DRELEASE=$(RELEASE) 19 | 20 | LDFLAGS = -lm -L/usr/local/lib -lSDL2 21 | # 22 | LDELDFLAGS = 23 | 24 | OBJECTDIR = ../$(RELEASENAME)/ 25 | 26 | default : ../$(OSARCHNAME)/lde ../$(OSARCHNAME)/ldesdl 27 | -------------------------------------------------------------------------------- /bin/makefile-cygwin.x86_64-x: -------------------------------------------------------------------------------- 1 | # Options for Linux, Intel x86_64 and X-Window 2 | 3 | #CC = gcc -m64 $(GCC_CFLAGS) 4 | CC = clang -m64 $(CLANG_CFLAGS) 5 | 6 | XFILES = $(OBJECTDIR)xmkicon.o \ 7 | $(OBJECTDIR)xbbt.o \ 8 | $(OBJECTDIR)dspif.o \ 9 | $(OBJECTDIR)xinit.o \ 10 | $(OBJECTDIR)xscroll.o \ 11 | $(OBJECTDIR)xcursor.o \ 12 | $(OBJECTDIR)xlspwin.o \ 13 | $(OBJECTDIR)xrdopt.o \ 14 | $(OBJECTDIR)xwinman.o 15 | 16 | 17 | XFLAGS = -DXWINDOW 18 | 19 | # OPTFLAGS is normally -O2. 20 | OPTFLAGS = -O2 -g3 21 | DFLAGS = $(XFLAGS) -DRELEASE=$(RELEASE) 22 | 23 | LDFLAGS = -L/usr/X11/lib -lX11 -lc -lm 24 | LDELDFLAGS = -L/usr/X11/lib -lX11 -lc -lm 25 | 26 | OBJECTDIR = ../$(RELEASENAME)/ 27 | 28 | default : ../$(OSARCHNAME)/lde ../$(OSARCHNAME)/ldex 29 | -------------------------------------------------------------------------------- /bin/makefile-darwin.386-x: -------------------------------------------------------------------------------- 1 | # Options for MacOS, x86 processor, X windows 2 | 3 | CC = clang -m32 $(CLANG_CFLAGS) 4 | 5 | XFILES = $(OBJECTDIR)xmkicon.o \ 6 | $(OBJECTDIR)xbbt.o \ 7 | $(OBJECTDIR)dspif.o \ 8 | $(OBJECTDIR)xinit.o \ 9 | $(OBJECTDIR)xscroll.o \ 10 | $(OBJECTDIR)xcursor.o \ 11 | $(OBJECTDIR)xlspwin.o \ 12 | $(OBJECTDIR)xrdopt.o \ 13 | $(OBJECTDIR)xwinman.o 14 | 15 | 16 | XFLAGS = -I/opt/X11/include -DXWINDOW 17 | 18 | # OPTFLAGS is normally -O2. 19 | OPTFLAGS = -O2 -g 20 | DEBUGFLAGS = # -DDEBUG -DOPTRACE 21 | DFLAGS = $(DEBUGFLAGS) $(XFLAGS) \ 22 | -DRELEASE=$(RELEASE) # -DSTACKCHECK -DFSBCHECK -DPCTRACE 23 | 24 | LDFLAGS = -L/opt/X11/lib -lX11 -lm 25 | LDELDFLAGS = -L/opt/X11/lib -lX11 -lm 26 | 27 | OBJECTDIR = ../$(RELEASENAME)/ 28 | 29 | default : ../$(OSARCHNAME)/lde ../$(OSARCHNAME)/ldex 30 | -------------------------------------------------------------------------------- /bin/makefile-darwin.aarch64-sdl: -------------------------------------------------------------------------------- 1 | # Options for MacOS, arm64 (aka aarch64) processor, SDL 2 | 3 | CC = clang -target aarch64-apple-darwin $(CLANG_CFLAGS) 4 | 5 | XFILES = $(OBJECTDIR)sdl.o 6 | 7 | # 8 | # For SDL version 2 9 | # -DSDL=2 in SDLFLAGS and -framework SDL2 in LDFLAGS 10 | # For SDL version 3 11 | # -DSDL=3 in SDLFLAGS and -framework SDL3 in LDFLAGS 12 | # 13 | 14 | SDLFLAGS = -DSDL=2 -F /Library/Frameworks 15 | 16 | # OPTFLAGS is normally -O2. 17 | OPTFLAGS = -O2 -g 18 | DEBUGFLAGS = # -DDEBUG -DOPTRACE 19 | DFLAGS = $(DEBUGFLAGS) $(SDLFLAGS) -DRELEASE=$(RELEASE) 20 | 21 | LDFLAGS = -rpath /Library/Frameworks -F /Library/Frameworks -framework SDL2 22 | LDELDFLAGS = 23 | 24 | OBJECTDIR = ../$(RELEASENAME)/ 25 | 26 | default : ../$(OSARCHNAME)/lde ../$(OSARCHNAME)/ldesdl 27 | -------------------------------------------------------------------------------- /bin/makefile-darwin.aarch64-x: -------------------------------------------------------------------------------- 1 | # Options for MacOS, arm64 (aka aarch64) processor, X windows 2 | 3 | CC = clang -target aarch64-apple-darwin $(CLANG_CFLAGS) 4 | 5 | XFILES = $(OBJECTDIR)xmkicon.o \ 6 | $(OBJECTDIR)xbbt.o \ 7 | $(OBJECTDIR)dspif.o \ 8 | $(OBJECTDIR)xinit.o \ 9 | $(OBJECTDIR)xscroll.o \ 10 | $(OBJECTDIR)xcursor.o \ 11 | $(OBJECTDIR)xlspwin.o \ 12 | $(OBJECTDIR)xrdopt.o \ 13 | $(OBJECTDIR)xwinman.o 14 | 15 | 16 | XFLAGS = -I/opt/X11/include -DXWINDOW 17 | 18 | # OPTFLAGS is normally -O2. 19 | OPTFLAGS = -O2 20 | DEBUGFLAGS = # -DDEBUG -DOPTRACE 21 | DFLAGS = $(DEBUGFLAGS) $(XFLAGS) -DRELEASE=$(RELEASE) 22 | 23 | LDFLAGS = -L/opt/X11/lib -lX11 -lm 24 | LDELDFLAGS = -L/opt/X11/lib -lX11 -lm 25 | 26 | OBJECTDIR = ../$(RELEASENAME)/ 27 | 28 | default : ../$(OSARCHNAME)/lde ../$(OSARCHNAME)/ldex 29 | -------------------------------------------------------------------------------- /bin/makefile-darwin.ppc-x: -------------------------------------------------------------------------------- 1 | # Options for MacOS, x86 processor, X windows 2 | 3 | CC = cc $(GCC_CFLAGS) 4 | 5 | XFILES = $(OBJECTDIR)xmkicon.o \ 6 | $(OBJECTDIR)xbbt.o \ 7 | $(OBJECTDIR)dspif.o \ 8 | $(OBJECTDIR)xinit.o \ 9 | $(OBJECTDIR)xscroll.o \ 10 | $(OBJECTDIR)xcursor.o \ 11 | $(OBJECTDIR)xlspwin.o \ 12 | $(OBJECTDIR)xrdopt.o \ 13 | $(OBJECTDIR)xwinman.o 14 | 15 | 16 | XFLAGS = -I/usr/X11/include -DXWINDOW 17 | 18 | # OPTFLAGS is normally -O2. 19 | OPTFLAGS = -O2 -g 20 | DEBUGFLAGS = # -DDEBUG -DOPTRACE 21 | DFLAGS = $(DEBUGFLAGS) $(XFLAGS) \ 22 | -DRELEASE=$(RELEASE) 23 | 24 | LDFLAGS = -L/usr/X11/lib -lX11 -lm 25 | LDELDFLAGS = -L/usr/X11/lib -lX11 -lm 26 | 27 | OBJECTDIR = ../$(RELEASENAME)/ 28 | 29 | default : ../$(OSARCHNAME)/lde ../$(OSARCHNAME)/ldex 30 | -------------------------------------------------------------------------------- /bin/makefile-darwin.x86_64-sdl: -------------------------------------------------------------------------------- 1 | # Options for MacOS, x86 processor, SDL 2 | 3 | CC = clang -m64 -target x86_64-apple-darwin $(CLANG_CFLAGS) 4 | 5 | # 6 | # For SDL version 2 7 | # -DSDL=2 in SDLFLAGS and -framework SDL2 in LDFLAGS 8 | # For SDL version 3 9 | # -DSDL=3 in SDLFLAGS and -framework SDL3 in LDFLAGS 10 | # 11 | XFILES = $(OBJECTDIR)sdl.o 12 | 13 | SDLFLAGS = -DSDL=2 -F /Library/Frameworks 14 | 15 | # OPTFLAGS is normally -O2. 16 | OPTFLAGS = -O2 -g 17 | DEBUGFLAGS = # -DDEBUG -DOPTRACE 18 | DFLAGS = $(DEBUGFLAGS) $(SDLFLAGS) -DRELEASE=$(RELEASE) 19 | 20 | LDFLAGS = -rpath /Library/Frameworks -F /Library/Frameworks -framework SDL2 21 | LDELDFLAGS = 22 | 23 | OBJECTDIR = ../$(RELEASENAME)/ 24 | 25 | default : ../$(OSARCHNAME)/lde ../$(OSARCHNAME)/ldesdl 26 | -------------------------------------------------------------------------------- /bin/makefile-darwin.x86_64-x: -------------------------------------------------------------------------------- 1 | # Options for MacOS, x86 processor, X windows 2 | 3 | CC = clang -target x86_64-apple-darwin $(CLANG_CFLAGS) 4 | 5 | XFILES = $(OBJECTDIR)xmkicon.o \ 6 | $(OBJECTDIR)xbbt.o \ 7 | $(OBJECTDIR)dspif.o \ 8 | $(OBJECTDIR)xinit.o \ 9 | $(OBJECTDIR)xscroll.o \ 10 | $(OBJECTDIR)xcursor.o \ 11 | $(OBJECTDIR)xlspwin.o \ 12 | $(OBJECTDIR)xrdopt.o \ 13 | $(OBJECTDIR)xwinman.o 14 | 15 | 16 | XFLAGS = -I/opt/X11/include -DXWINDOW 17 | 18 | # OPTFLAGS is normally -O2. 19 | OPTFLAGS = -O1 -g 20 | DEBUGFLAGS = # -DDEBUG -DOPTRACE 21 | DFLAGS = $(DEBUGFLAGS) $(XFLAGS) -DRELEASE=$(RELEASE) 22 | 23 | LDFLAGS = -L/opt/X11/lib -lX11 -lm 24 | LDELDFLAGS = -L/opt/X11/lib -lX11 -lm 25 | 26 | OBJECTDIR = ../$(RELEASENAME)/ 27 | 28 | default : ../$(OSARCHNAME)/lde ../$(OSARCHNAME)/ldex 29 | 30 | -------------------------------------------------------------------------------- /bin/makefile-emscripten.wasm-wasm: -------------------------------------------------------------------------------- 1 | # Options for Emscripten, WASM and SDL 2 | 3 | CC = emcc $(CLANG_CFLAGS) 4 | 5 | XFILES = $(OBJECTDIR)sdl.o 6 | 7 | # 8 | # For SDL version 2 9 | # -DSDL=2 and -sUSE_SDL=2 in XFLAGS and -sUSE_SDL=2 in LDFLAGS 10 | # For SDL version 3 11 | # -DSDL=3 and -sUSE_SDL=3 in XFLAGS and -sUSE_SDL=3 in LDFLAGS 12 | # 13 | XFLAGS = -DSDL=2 -sUSE_SDL=2 14 | 15 | # OPTFLAGS is normally -O2. 16 | OPTFLAGS = -O2 17 | DFLAGS = $(XFLAGS) -DRELEASE=$(RELEASE) -DMAIKO_ENABLE_NETHUB 18 | 19 | MEDLEY?=../../medley 20 | SYSOUT?=$(MEDLEY)/loadups/full.sysout 21 | 22 | LD = emcc 23 | LDFLAGS = -sUSE_SDL=2 -sASYNCIFY -sALLOW_MEMORY_GROWTH -sEXIT_RUNTIME=1 \ 24 | --preload-file $(SYSOUT)@medley/loadups/full.sysout \ 25 | --preload-file $(MEDLEY)/loadups/whereis.hash@medley/loadups/whereis.hash \ 26 | --preload-file $(MEDLEY)/greetfiles/MEDLEYDIR-INIT.LCOM@usr/local/lde/site-init.lisp \ 27 | --preload-file $(MEDLEY)/docs/@medley/docs \ 28 | --preload-file $(MEDLEY)/doctools/@medley/doctools \ 29 | --preload-file $(MEDLEY)/greetfiles/@medley/greetfiles \ 30 | --preload-file $(MEDLEY)/internal/@medley/internal \ 31 | --preload-file $(MEDLEY)/sources/@medley/sources \ 32 | --preload-file $(MEDLEY)/library/@medley/library \ 33 | --preload-file $(MEDLEY)/lispusers/@medley/lispusers \ 34 | --preload-file $(MEDLEY)/fonts/@medley/fonts 35 | 36 | LDELDFLAGS = 37 | 38 | OBJECTDIR = ../$(RELEASENAME)/ 39 | 40 | default : ../$(OSARCHNAME)/ldesdl.js 41 | -------------------------------------------------------------------------------- /bin/makefile-emscripten.wasm_nl-wasm_nl: -------------------------------------------------------------------------------- 1 | # Options for Emscripten, WASM and SDL 2 | 3 | CC = emcc $(CLANG_CFLAGS) 4 | 5 | XFILES = $(OBJECTDIR)sdl.o 6 | 7 | # 8 | # For SDL version 2 9 | # -DSDL=2 and -sUSE_SDL=2 in XFLAGS and -sUSE_SDL=2 in LDFLAGS 10 | # For SDL version 3 11 | # -DSDL=3 and -sUSE_SDL=3 in XFLAGS and -sUSE_SDL=3 in LDFLAGS 12 | # 13 | XFLAGS = -DSDL=2 -sUSE_SDL=2 14 | 15 | # OPTFLAGS is normally -O2. 16 | OPTFLAGS = -O2 17 | DFLAGS = $(XFLAGS) -DRELEASE=$(RELEASE) -DMAIKO_ENABLE_NETHUB 18 | 19 | MEDLEY?=../../medley 20 | SYSOUT?=$(MEDLEY)/loadups/full.sysout 21 | 22 | LD = emcc 23 | LDFLAGS = -sUSE_SDL=2 -sASYNCIFY -sALLOW_MEMORY_GROWTH -sEXIT_RUNTIME=1 -sFORCE_FILESYSTEM -sLZ4 24 | 25 | LDELDFLAGS = 26 | 27 | OBJECTDIR = ../$(RELEASENAME)/ 28 | 29 | default : ../$(OSARCHNAME)/ldesdl.js 30 | -------------------------------------------------------------------------------- /bin/makefile-freebsd.386-sdl: -------------------------------------------------------------------------------- 1 | # Options for FreeBSD, Intel 386/486 and SDL 2 | 3 | CC = clang -m32 $(CLANG_CFLAGS) 4 | 5 | XFILES = $(OBJECTDIR)sdl.o 6 | 7 | # 8 | # For SDL version 2 9 | # -DSDL=2 in SDLFLAGS and -lSDL2 in LDFLAGS 10 | # For SDL version 3 11 | # -DSDL=3 in SDLFLAGS and -lSDL3 in LDFLAGS 12 | # 13 | SDLFLAGS = -DSDL=2 -I/usr/local/include 14 | 15 | # OPTFLAGS is normally -O2. 16 | OPTFLAGS = -O2 -g 17 | DFLAGS = $(SDLFLAGS) -DRELEASE=$(RELEASE) 18 | 19 | LDFLAGS = -L/usr/local/lib -lSDL2 -lm 20 | LDELDFLAGS = 21 | 22 | OBJECTDIR = ../$(RELEASENAME)/ 23 | 24 | default : ../$(OSARCHNAME)/lde ../$(OSARCHNAME)/ldesdl 25 | -------------------------------------------------------------------------------- /bin/makefile-freebsd.386-x: -------------------------------------------------------------------------------- 1 | # Options for FreeBSD, Intel 386/486 and X Windows 2 | 3 | CC = clang -m32 $(CLANG_CFLAGS) 4 | 5 | XFILES = $(OBJECTDIR)xmkicon.o \ 6 | $(OBJECTDIR)xbbt.o \ 7 | $(OBJECTDIR)dspif.o \ 8 | $(OBJECTDIR)xinit.o \ 9 | $(OBJECTDIR)xscroll.o \ 10 | $(OBJECTDIR)xcursor.o \ 11 | $(OBJECTDIR)xlspwin.o \ 12 | $(OBJECTDIR)xrdopt.o \ 13 | $(OBJECTDIR)xwinman.o 14 | 15 | 16 | XFLAGS = -I/usr/local/include -DXWINDOW 17 | 18 | # OPTFLAGS is normally -O2. 19 | OPTFLAGS = -O2 -g 20 | DFLAGS = $(XFLAGS) -DRELEASE=$(RELEASE) 21 | 22 | LDFLAGS = -L/usr/local/lib -lX11 -lc -lm 23 | LDELDFLAGS = -L/usr/local/lib -lX11 -lc -lm 24 | 25 | OBJECTDIR = ../$(RELEASENAME)/ 26 | 27 | default : ../$(OSARCHNAME)/lde ../$(OSARCHNAME)/ldex 28 | -------------------------------------------------------------------------------- /bin/makefile-freebsd.aarch64-sdl: -------------------------------------------------------------------------------- 1 | # Options for FreeBSD, ARM64 and SDL 2 | 3 | CC = clang -m64 $(CLANG_CFLAGS) 4 | 5 | XFILES = $(OBJECTDIR)sdl.o 6 | 7 | # 8 | # For SDL version 2 9 | # -DSDL=2 in SDLFLAGS and -lSDL2 in LDFLAGS 10 | # For SDL version 3 11 | # -DSDL=3 in SDLFLAGS and -lSDL3 in LDFLAGS 12 | # 13 | SDLFLAGS = -DSDL=2 -I/usr/local/include 14 | 15 | # OPTFLAGS is normally -O2. 16 | OPTFLAGS = -O2 -g 17 | DFLAGS = $(SDLFLAGS) -DRELEASE=$(RELEASE) 18 | 19 | LDFLAGS = -L/usr/local/lib -lSDL2 -lm 20 | LDELDFLAGS = 21 | 22 | OBJECTDIR = ../$(RELEASENAME)/ 23 | 24 | default : ../$(OSARCHNAME)/lde ../$(OSARCHNAME)/ldesdl 25 | -------------------------------------------------------------------------------- /bin/makefile-freebsd.aarch64-x: -------------------------------------------------------------------------------- 1 | # Options for FreeBSD, ARMv7 and X-Windows 2 | 3 | CC = clang -m64 $(CLANG_CFLAGS) 4 | 5 | XFILES = $(OBJECTDIR)xmkicon.o \ 6 | $(OBJECTDIR)xbbt.o \ 7 | $(OBJECTDIR)dspif.o \ 8 | $(OBJECTDIR)xinit.o \ 9 | $(OBJECTDIR)xscroll.o \ 10 | $(OBJECTDIR)xcursor.o \ 11 | $(OBJECTDIR)xlspwin.o \ 12 | $(OBJECTDIR)xrdopt.o \ 13 | $(OBJECTDIR)xwinman.o 14 | 15 | 16 | XFLAGS = -I/usr/local/include -DXWINDOW 17 | 18 | # OPTFLAGS is normally -O2. 19 | OPTFLAGS = -O2 -g 20 | DFLAGS = $(XFLAGS) -DRELEASE=$(RELEASE) 21 | 22 | LDFLAGS = -L/usr/local/lib -lX11 -lc -lm 23 | LDELDFLAGS = -L/usr/local/lib -lX11 -lc -lm 24 | 25 | OBJECTDIR = ../$(RELEASENAME)/ 26 | 27 | default : ../$(OSARCHNAME)/lde ../$(OSARCHNAME)/ldex 28 | -------------------------------------------------------------------------------- /bin/makefile-freebsd.x86_64-sdl: -------------------------------------------------------------------------------- 1 | # Options for FreeBSD, Intel x86_64 and X-Windows 2 | 3 | CC = clang -m64 $(CLANG_CFLAGS) 4 | 5 | XFILES = $(OBJECTDIR)sdl.o 6 | 7 | # 8 | # For SDL version 2 9 | # -DSDL=2 in SDLFLAGS and -lSDL2 in LDFLAGS 10 | # For SDL version 3 11 | # -DSDL=3 in SDLFLAGS and -lSDL3 in LDFLAGS 12 | # 13 | SDLFLAGS = -DSDL=2 -I/usr/local/include 14 | 15 | # OPTFLAGS is normally -O2. 16 | OPTFLAGS = -O2 -g 17 | DFLAGS = $(SDLFLAGS) -DRELEASE=$(RELEASE) 18 | 19 | LDFLAGS = -L/usr/local/lib -lSDL2 -lm 20 | LDELDFLAGS = 21 | 22 | OBJECTDIR = ../$(RELEASENAME)/ 23 | 24 | default : ../$(OSARCHNAME)/lde ../$(OSARCHNAME)/ldesdl 25 | -------------------------------------------------------------------------------- /bin/makefile-freebsd.x86_64-x: -------------------------------------------------------------------------------- 1 | # Options for FreeBSD, Intel x86_64 and X-Windows 2 | 3 | CC = clang -m64 $(CLANG_CFLAGS) 4 | 5 | XFILES = $(OBJECTDIR)xmkicon.o \ 6 | $(OBJECTDIR)xbbt.o \ 7 | $(OBJECTDIR)dspif.o \ 8 | $(OBJECTDIR)xinit.o \ 9 | $(OBJECTDIR)xscroll.o \ 10 | $(OBJECTDIR)xcursor.o \ 11 | $(OBJECTDIR)xlspwin.o \ 12 | $(OBJECTDIR)xrdopt.o \ 13 | $(OBJECTDIR)xwinman.o 14 | 15 | 16 | XFLAGS = -I/usr/local/include -DXWINDOW 17 | 18 | # OPTFLAGS is normally -O2. 19 | OPTFLAGS = -O2 -g 20 | DFLAGS = $(XFLAGS) -DRELEASE=$(RELEASE) 21 | 22 | LDFLAGS = -L/usr/local/lib -lX11 -lc -lm 23 | LDELDFLAGS = -L/usr/local/lib -lX11 -lc -lm 24 | 25 | OBJECTDIR = ../$(RELEASENAME)/ 26 | 27 | default : ../$(OSARCHNAME)/lde ../$(OSARCHNAME)/ldex 28 | -------------------------------------------------------------------------------- /bin/makefile-haiku.x86_64-sdl: -------------------------------------------------------------------------------- 1 | # Options for Haiku, Intel x86_64 and SDL 2 | 3 | CC = gcc -m64 $(GCC_CFLAGS) 4 | # CC = clang -m64 $(CLANG_CFLAGS) 5 | 6 | XFILES = $(OBJECTDIR)sdl.o 7 | 8 | # 9 | # For SDL version 2 10 | # -DSDL=2 in XFLAGS and -lSDL2 in LDFLAGS 11 | # For SDL version 3 12 | # -DSDL=3 in XFLAGS and -lSDL3 in LDFLAGS 13 | # 14 | XFLAGS = -DSDL=2 15 | 16 | # OPTFLAGS is normally -O2. 17 | OPTFLAGS = -O2 -g3 18 | DFLAGS = $(XFLAGS) -DRELEASE=$(RELEASE) 19 | 20 | LDFLAGS = -lSDL2 -lnetwork 21 | LDELDFLAGS = -lnetwork -lbsd 22 | 23 | OBJECTDIR = ../$(RELEASENAME)/ 24 | 25 | default : ../$(OSARCHNAME)/lde ../$(OSARCHNAME)/ldesdl 26 | -------------------------------------------------------------------------------- /bin/makefile-header: -------------------------------------------------------------------------------- 1 | # Default values for Maiko makefile variables 2 | # These get overridden by OS and hardware-specific stuff 3 | # in sub-makefiles 4 | 5 | SRCDIR = ../src/ 6 | INCDIR = ../inc/ 7 | INCLUDEDIR = ../include/ 8 | LIBDIR = ../lib 9 | BINDIR = ./ 10 | RANLIB = ranlib 11 | AR = ar rcv 12 | RM ?= rm -f 13 | 14 | # Compiler flags 15 | CLANG_CFLAGS = -std=gnu99 -fno-strict-aliasing 16 | GCC_CFLAGS = -std=gnu99 -fno-strict-aliasing 17 | DEVSTUDIO_CFLAGS = -std=gnu99 -fno-strict-aliasing 18 | 19 | DLPIFILES = 20 | 21 | # for files needed by X windows version 22 | XFILES = 23 | 24 | # for files needed by color (actually files NOT needed by X) 25 | COLORFILES = 26 | 27 | # Flags to include inthe linking of various S/W 28 | # LDFLAGS - in emulator itself (e.g., ldesingle) 29 | # LDELDFLAGS - in "lde" unix-comm forker. 30 | # LDEETHERLDFLAGS - in "ldeether" ethernet kick-start 31 | LDFLAGS = 32 | LDELDFLAGS = 33 | LDEETHERLDFLAGS = 34 | 35 | # OSARCHDIR is the os/architecture dir, where executables all go. 36 | OSARCHDIR = ../$(OSARCHNAME)/ 37 | -------------------------------------------------------------------------------- /bin/makefile-init-darwin.386: -------------------------------------------------------------------------------- 1 | # Options for MacOS, x86 processor, X windows, for INIT processing 2 | 3 | CC = clang -m32 $(CLANG_CFLAGS) 4 | 5 | XFILES = $(OBJECTDIR)xmkicon.o \ 6 | $(OBJECTDIR)xbbt.o \ 7 | $(OBJECTDIR)dspif.o \ 8 | $(OBJECTDIR)xinit.o \ 9 | $(OBJECTDIR)xscroll.o \ 10 | $(OBJECTDIR)xcursor.o \ 11 | $(OBJECTDIR)xlspwin.o \ 12 | $(OBJECTDIR)xrdopt.o \ 13 | $(OBJECTDIR)xwinman.o 14 | 15 | 16 | XFLAGS = -I/opt/X11/include -DXWINDOW 17 | 18 | # OPTFLAGS is normally -O2, for INIT we want unoptimized in case we need to debug it 19 | OPTFLAGS = -O0 -g 20 | DEBUGFLAGS = 21 | DFLAGS = $(DEBUGFLAGS) $(XFLAGS) -DRELEASE=$(RELEASE) -DNOVERSION -DINIT 22 | 23 | LDFLAGS = -L/usr/X11/lib -lX11 -lm 24 | LDELDFLAGS = -L/usr/X11/lib -lX11 -lm 25 | 26 | OBJECTDIR = ../$(RELEASENAME)/ 27 | 28 | default : ../$(OSARCHNAME)/ldeinit 29 | -------------------------------------------------------------------------------- /bin/makefile-init-darwin.aarch64: -------------------------------------------------------------------------------- 1 | # Options for MacOS, aarch64 processor, X windows, for INIT processing 2 | 3 | CC = clang -target aarch64-apple-darwin $(CLANG_CFLAGS) 4 | 5 | XFILES = $(OBJECTDIR)xmkicon.o \ 6 | $(OBJECTDIR)xbbt.o \ 7 | $(OBJECTDIR)dspif.o \ 8 | $(OBJECTDIR)xinit.o \ 9 | $(OBJECTDIR)xscroll.o \ 10 | $(OBJECTDIR)xcursor.o \ 11 | $(OBJECTDIR)xlspwin.o \ 12 | $(OBJECTDIR)xrdopt.o \ 13 | $(OBJECTDIR)xwinman.o 14 | 15 | 16 | XFLAGS = -I/opt/X11/include -DXWINDOW 17 | 18 | # OPTFLAGS is normally -O2. 19 | OPTFLAGS = -O0 -g3 20 | DEBUGFLAGS = # -DDEBUG -DOPTRACE 21 | DFLAGS = $(DEBUGFLAGS) $(XFLAGS) -DRELEASE=$(RELEASE) -DNOVERSION -DINIT 22 | 23 | LDFLAGS = -L/opt/X11/lib -lX11 -lm 24 | LDELDFLAGS = -L/opt/X11/lib -lX11 -lm 25 | 26 | OBJECTDIR = ../$(RELEASENAME)/ 27 | 28 | default : ../$(OSARCHNAME)/ldeinit 29 | -------------------------------------------------------------------------------- /bin/makefile-init-darwin.x86_64: -------------------------------------------------------------------------------- 1 | # Options for MacOS, x86_64 processor, X windows, for INIT processing 2 | 3 | CC = clang -m64 -target x86_64-apple-darwin $(CLANG_CFLAGS) 4 | 5 | XFILES = $(OBJECTDIR)xmkicon.o \ 6 | $(OBJECTDIR)xbbt.o \ 7 | $(OBJECTDIR)dspif.o \ 8 | $(OBJECTDIR)xinit.o \ 9 | $(OBJECTDIR)xscroll.o \ 10 | $(OBJECTDIR)xcursor.o \ 11 | $(OBJECTDIR)xlspwin.o \ 12 | $(OBJECTDIR)xrdopt.o \ 13 | $(OBJECTDIR)xwinman.o 14 | 15 | 16 | XFLAGS = -I/opt/X11/include -DXWINDOW 17 | 18 | # OPTFLAGS is normally -O2. 19 | OPTFLAGS = -O0 -g 20 | DEBUGFLAGS = # -DDEBUG -DOPTRACE 21 | DFLAGS = $(DEBUGFLAGS) $(XFLAGS) -DRELEASE=$(RELEASE) -DNOVERSION -DINIT 22 | 23 | LDFLAGS = -L/opt/X11/lib -lX11 -lm 24 | LDELDFLAGS = -L/opt/X11/lib -lX11 -lm 25 | 26 | OBJECTDIR = ../$(RELEASENAME)/ 27 | 28 | default : ../$(OSARCHNAME)/ldeinit 29 | -------------------------------------------------------------------------------- /bin/makefile-init-freebsd.386: -------------------------------------------------------------------------------- 1 | # Options for FreeBSD, Intel 386/486 and X Windows 2 | 3 | CC = clang -m32 $(CLANG_CFLAGS) 4 | 5 | XFILES = $(OBJECTDIR)xmkicon.o \ 6 | $(OBJECTDIR)xbbt.o \ 7 | $(OBJECTDIR)dspif.o \ 8 | $(OBJECTDIR)xinit.o \ 9 | $(OBJECTDIR)xscroll.o \ 10 | $(OBJECTDIR)xcursor.o \ 11 | $(OBJECTDIR)xlspwin.o \ 12 | $(OBJECTDIR)xrdopt.o \ 13 | $(OBJECTDIR)xwinman.o 14 | 15 | 16 | XFLAGS = -I/usr/local/include -DXWINDOW 17 | 18 | # OPTFLAGS is normally -O0 for init 19 | OPTFLAGS = -O0 -g 20 | DFLAGS = $(XFLAGS) -DRELEASE=$(RELEASE) -DNOVERSION -DINIT 21 | 22 | LDFLAGS = -L/usr/local/lib -lX11 -lc -lm 23 | LDELDFLAGS = -L/usr/local/lib -lX11 -lc -lm 24 | 25 | OBJECTDIR = ../$(RELEASENAME)/ 26 | 27 | default : ../$(OSARCHNAME)/ldeinit 28 | -------------------------------------------------------------------------------- /bin/makefile-init-freebsd.aarch64: -------------------------------------------------------------------------------- 1 | # Options for FreeBSD, ARMv7 and X-Windows 2 | 3 | CC = clang -m64 $(CLANG_CFLAGS) 4 | 5 | XFILES = $(OBJECTDIR)xmkicon.o \ 6 | $(OBJECTDIR)xbbt.o \ 7 | $(OBJECTDIR)dspif.o \ 8 | $(OBJECTDIR)xinit.o \ 9 | $(OBJECTDIR)xscroll.o \ 10 | $(OBJECTDIR)xcursor.o \ 11 | $(OBJECTDIR)xlspwin.o \ 12 | $(OBJECTDIR)xrdopt.o \ 13 | $(OBJECTDIR)xwinman.o 14 | 15 | 16 | XFLAGS = -I/usr/local/include -DXWINDOW 17 | 18 | # OPTFLAGS is normally -O0 for init 19 | OPTFLAGS = -O0 -g 20 | DFLAGS = $(XFLAGS) -DRELEASE=$(RELEASE) -DNOVERSION -DINIT 21 | 22 | LDFLAGS = -L/usr/local/lib -lX11 -lc -lm 23 | LDELDFLAGS = -L/usr/local/lib -lX11 -lc -lm 24 | 25 | OBJECTDIR = ../$(RELEASENAME)/ 26 | 27 | default : ../$(OSARCHNAME)/ldeinit 28 | -------------------------------------------------------------------------------- /bin/makefile-init-freebsd.x86_64: -------------------------------------------------------------------------------- 1 | # Options for FreeBSD, Intel x86_64 and X-Windows 2 | 3 | CC = clang -m64 $(CLANG_CFLAGS) 4 | 5 | XFILES = $(OBJECTDIR)xmkicon.o \ 6 | $(OBJECTDIR)xbbt.o \ 7 | $(OBJECTDIR)dspif.o \ 8 | $(OBJECTDIR)xinit.o \ 9 | $(OBJECTDIR)xscroll.o \ 10 | $(OBJECTDIR)xcursor.o \ 11 | $(OBJECTDIR)xlspwin.o \ 12 | $(OBJECTDIR)xrdopt.o \ 13 | $(OBJECTDIR)xwinman.o 14 | 15 | 16 | XFLAGS = -I/usr/local/include -DXWINDOW 17 | 18 | # OPTFLAGS is normally -O0 for init 19 | OPTFLAGS = -O0 -g 20 | DFLAGS = $(XFLAGS) -DRELEASE=$(RELEASE) -DNOVERSION -DINIT 21 | 22 | LDFLAGS = -L/usr/local/lib -lX11 -lc -lm 23 | LDELDFLAGS = -L/usr/local/lib -lX11 -lc -lm 24 | 25 | OBJECTDIR = ../$(RELEASENAME)/ 26 | 27 | default : ../$(OSARCHNAME)/ldeinit 28 | -------------------------------------------------------------------------------- /bin/makefile-init-linux.aarch64: -------------------------------------------------------------------------------- 1 | # Options for Linux, aarch64 processor, X windows, for INIT processing 2 | 3 | CC = gcc $(GCC_CFLAGS) 4 | #CC = clang $(CLANG_CFLAGS) 5 | 6 | XFILES = $(OBJECTDIR)xmkicon.o \ 7 | $(OBJECTDIR)xbbt.o \ 8 | $(OBJECTDIR)dspif.o \ 9 | $(OBJECTDIR)xinit.o \ 10 | $(OBJECTDIR)xscroll.o \ 11 | $(OBJECTDIR)xcursor.o \ 12 | $(OBJECTDIR)xlspwin.o \ 13 | $(OBJECTDIR)xrdopt.o \ 14 | $(OBJECTDIR)xwinman.o 15 | 16 | 17 | XFLAGS = -DXWINDOW 18 | 19 | # OPTFLAGS is normally -O2, for INIT we want unoptimized in case we need to debug it 20 | OPTFLAGS = -O0 -g 21 | DEBUGFLAGS = 22 | DFLAGS = $(DEBUGFLAGS) $(XFLAGS) -DRELEASE=$(RELEASE) -DNOVERSION -DINIT 23 | 24 | LDFLAGS = -L/usr/X11/lib -lX11 -lc -lm 25 | LDELDFLAGS = -L/usr/X11/lib -lX11 -lc -lm 26 | 27 | OBJECTDIR = ../$(RELEASENAME)/ 28 | 29 | default : ../$(OSARCHNAME)/ldeinit 30 | -------------------------------------------------------------------------------- /bin/makefile-init-linux.x86_64: -------------------------------------------------------------------------------- 1 | # Options for Linux, x86 processor, X windows, for INIT processing 2 | 3 | CC = gcc $(GCC_CFLAGS) 4 | #CC = clang $(CLANG_CFLAGS) 5 | 6 | XFILES = $(OBJECTDIR)xmkicon.o \ 7 | $(OBJECTDIR)xbbt.o \ 8 | $(OBJECTDIR)dspif.o \ 9 | $(OBJECTDIR)xinit.o \ 10 | $(OBJECTDIR)xscroll.o \ 11 | $(OBJECTDIR)xcursor.o \ 12 | $(OBJECTDIR)xlspwin.o \ 13 | $(OBJECTDIR)xrdopt.o \ 14 | $(OBJECTDIR)xwinman.o 15 | 16 | 17 | XFLAGS = -DXWINDOW 18 | 19 | # OPTFLAGS is normally -O2, for INIT we want unoptimized in case we need to debug it 20 | OPTFLAGS = -O0 -g 21 | DEBUGFLAGS = 22 | DFLAGS = $(DEBUGFLAGS) $(XFLAGS) -DRELEASE=$(RELEASE) -DNOVERSION -DINIT 23 | 24 | LDFLAGS = -L/usr/X11/lib -lX11 -lc -lm 25 | LDELDFLAGS = -L/usr/X11/lib -lX11 -lc -lm 26 | 27 | OBJECTDIR = ../$(RELEASENAME)/ 28 | 29 | default : ../$(OSARCHNAME)/ldeinit 30 | -------------------------------------------------------------------------------- /bin/makefile-init-openbsd.x86_64: -------------------------------------------------------------------------------- 1 | # Options for OpenBSD, Intel x86_64 and X-Window 2 | 3 | CC = clang -m64 $(CLANG_CFLAGS) 4 | 5 | XFILES = $(OBJECTDIR)xmkicon.o \ 6 | $(OBJECTDIR)xbbt.o \ 7 | $(OBJECTDIR)dspif.o \ 8 | $(OBJECTDIR)xinit.o \ 9 | $(OBJECTDIR)xscroll.o \ 10 | $(OBJECTDIR)xcursor.o \ 11 | $(OBJECTDIR)xlspwin.o \ 12 | $(OBJECTDIR)xrdopt.o \ 13 | $(OBJECTDIR)xwinman.o 14 | 15 | 16 | XFLAGS = -I/usr/X11R6/include -DXWINDOW 17 | 18 | # OPTFLAGS is normally -O2. 19 | OPTFLAGS = -O2 -g3 20 | DFLAGS = $(XFLAGS) -DRELEASE=$(RELEASE) -DNOVERSION -DINIT 21 | 22 | LDFLAGS = -L/usr/X11R6/lib -lX11 -lc -lm 23 | LDELDFLAGS = -L/usr/X11R6/lib -lX11 -lc -lm 24 | 25 | OBJECTDIR = ../$(RELEASENAME)/ 26 | 27 | default : ../$(OSARCHNAME)/ldeinit 28 | -------------------------------------------------------------------------------- /bin/makefile-init-sunos5.sparc: -------------------------------------------------------------------------------- 1 | #************************************************************************/ 2 | #* */ 3 | #* Makefile for MAKEINIT processing. */ 4 | #* */ 5 | #* $Id: makefile-init.sparc,v 1.4 2001/12/26 22:17:08 sybalsky Exp $ */ 6 | #* */ 7 | #************************************************************************/ 8 | 9 | 10 | 11 | 12 | #************************************************************************/ 13 | #* */ 14 | #* (C) Copyright 1991,8 Venue. All Rights Reserved. */ 15 | #* Manufactured in the United States of America. */ 16 | #* */ 17 | #************************************************************************/ 18 | 19 | # Options for SPARC under Solaris-2 operating system, X windows. 20 | 21 | CC = cc -m32 $(DEVSTUDIO_CFLAGS) 22 | 23 | XFILES = $(OBJECTDIR)xmkicon.o \ 24 | $(OBJECTDIR)xbbt.o \ 25 | $(OBJECTDIR)dspif.o \ 26 | $(OBJECTDIR)xinit.o \ 27 | $(OBJECTDIR)xscroll.o \ 28 | $(OBJECTDIR)xcursor.o \ 29 | $(OBJECTDIR)xlspwin.o \ 30 | $(OBJECTDIR)xrdopt.o \ 31 | $(OBJECTDIR)xwinman.o 32 | 33 | XFLAGS = -DXWINDOW 34 | 35 | # OPTFLAGS is normally -g for MAKEINIT, as it needs debugging often. 36 | OPTFLAGS = -g3 -O0 37 | 38 | # Set any debugging options in DEBUGFLAGS. E.g., to enable stack 39 | # checking, use -DSTACKCHECK; to enable the fn-call-time stack 40 | # check, use -DFNSTKCHECK. 41 | 42 | DEBUGFLAGS = # -DSTACKCHECK -DFNSTKCHECK 43 | 44 | MACHINEFLAGS = -DOS5 -DUSE_DLPI 45 | 46 | # The LDEINIT wants to have NOVERSION set, so we don't hang up on 47 | # any change-over in versions. 48 | 49 | DFLAGS = -DINIT \ 50 | $(XFLAGS) \ 51 | $(DEBUGFLAGS) \ 52 | $(MACHINEFLAGS) \ 53 | -DNOVERSION -DRELEASE=$(RELEASE) 54 | 55 | 56 | LDFLAGS = -lX11 -lc -lm -lsocket -lnsl 57 | LDELDFLAGS = -lX11 -lc -lm -lsocket -lnsl 58 | LDEETHERLDFLAGS = -lc -lm -lsocket -lnsl 59 | 60 | DLPIFILES = $(OBJECTDIR)dlpi.o 61 | 62 | OBJECTDIR = ../$(RELEASENAME)/ 63 | 64 | default : ../$(OSARCHNAME)/ldeinit 65 | -------------------------------------------------------------------------------- /bin/makefile-linux.386-sdl: -------------------------------------------------------------------------------- 1 | # Options for Linux, Intel 386/486 and SDL 2 | 3 | CC = gcc -m32 $(GCC_CFLAGS) 4 | # CC = clang $(CLANG_CFLAGS) 5 | 6 | XFILES = $(OBJECTDIR)sdl.o 7 | 8 | # 9 | # For SDL version 2 10 | # -DSDL=2 in XFLAGS and -lSDL2 in LDFLAGS 11 | # For SDL version 3 12 | # -DSDL=3 in XFLAGS and -lSDL3 in LDFLAGS 13 | # 14 | XFLAGS = -DSDL=2 15 | 16 | # OPTFLAGS is normally -O2. 17 | OPTFLAGS = -O2 -g3 18 | DFLAGS = $(XFLAGS) -DRELEASE=$(RELEASE) 19 | 20 | LDFLAGS = -lm -lSDL2 21 | LDELDFLAGS = 22 | 23 | OBJECTDIR = ../$(RELEASENAME)/ 24 | 25 | default : ../$(OSARCHNAME)/lde ../$(OSARCHNAME)/ldesdl 26 | -------------------------------------------------------------------------------- /bin/makefile-linux.386-x: -------------------------------------------------------------------------------- 1 | # Options for Linux, Intel 386/486 and X-Window 2 | 3 | CC = gcc -m32 $(GCC_CFLAGS) 4 | # CC = clang -m32 $(CLANG_CFLAGS) 5 | 6 | XFILES = $(OBJECTDIR)xmkicon.o \ 7 | $(OBJECTDIR)xbbt.o \ 8 | $(OBJECTDIR)dspif.o \ 9 | $(OBJECTDIR)xinit.o \ 10 | $(OBJECTDIR)xscroll.o \ 11 | $(OBJECTDIR)xcursor.o \ 12 | $(OBJECTDIR)xlspwin.o \ 13 | $(OBJECTDIR)xrdopt.o \ 14 | $(OBJECTDIR)xwinman.o 15 | 16 | XFLAGS = -DXWINDOW 17 | 18 | # OPTFLAGS is normally -O2. 19 | OPTFLAGS = -O2 -g3 20 | DFLAGS = $(XFLAGS) -DRELEASE=$(RELEASE) 21 | 22 | LDFLAGS = -L/usr/X11/lib -lX11 -lc -lm 23 | LDELDFLAGS = -L/usr/X11/lib -lX11 -lc -lm 24 | 25 | OBJECTDIR = ../$(RELEASENAME)/ 26 | 27 | default : ../$(OSARCHNAME)/lde ../$(OSARCHNAME)/ldex 28 | -------------------------------------------------------------------------------- /bin/makefile-linux.aarch64-sdl: -------------------------------------------------------------------------------- 1 | # Options for Linux, ARM64 and SDL 2 | 3 | CC = gcc $(GCC_CFLAGS) 4 | #CC = clang $(CLANG_CFLAGS) 5 | 6 | XFILES = $(OBJECTDIR)sdl.o 7 | 8 | # 9 | # For SDL version 2 10 | # -DSDL=2 in SDLFLAGS and -lSDL2 in LDFLAGS 11 | # For SDL version 3 12 | # -DSDL=3 in SDLFLAGS and -lSDL3 in LDFLAGS 13 | # 14 | SDLFLAGS = -DSDL=2 15 | 16 | # OPTFLAGS is normally -O2. 17 | OPTFLAGS = -O2 -g3 18 | DFLAGS = $(SDLFLAGS) -DRELEASE=$(RELEASE) 19 | 20 | LDFLAGS = -lSDL2 -lm 21 | LDELDFLAGS = 22 | 23 | OBJECTDIR = ../$(RELEASENAME)/ 24 | 25 | default : ../$(OSARCHNAME)/lde ../$(OSARCHNAME)/ldesdl 26 | -------------------------------------------------------------------------------- /bin/makefile-linux.aarch64-x: -------------------------------------------------------------------------------- 1 | # Options for Linux, aarch64 and X-Window 2 | 3 | CC = gcc $(GCC_CFLAGS) 4 | #CC = clang $(CLANG_CFLAGS) 5 | 6 | XFILES = $(OBJECTDIR)xmkicon.o \ 7 | $(OBJECTDIR)xbbt.o \ 8 | $(OBJECTDIR)dspif.o \ 9 | $(OBJECTDIR)xinit.o \ 10 | $(OBJECTDIR)xscroll.o \ 11 | $(OBJECTDIR)xcursor.o \ 12 | $(OBJECTDIR)xlspwin.o \ 13 | $(OBJECTDIR)xrdopt.o \ 14 | $(OBJECTDIR)xwinman.o 15 | 16 | XFLAGS = -DXWINDOW 17 | 18 | # OPTFLAGS is normally -O2. 19 | OPTFLAGS = -O2 -g3 20 | DFLAGS = $(XFLAGS) -DRELEASE=$(RELEASE) 21 | 22 | LDFLAGS = -L/usr/X11/lib -lX11 -lc -lm 23 | LDELDFLAGS = -L/usr/X11/lib -lX11 -lc -lm 24 | 25 | OBJECTDIR = ../$(RELEASENAME)/ 26 | 27 | default : ../$(OSARCHNAME)/lde ../$(OSARCHNAME)/ldex 28 | -------------------------------------------------------------------------------- /bin/makefile-linux.armv7l-sdl: -------------------------------------------------------------------------------- 1 | # Options for Linux, ARMv7 and SDL 2 | 3 | CC = gcc $(GCC_CFLAGS) 4 | #CC = clang $(CLANG_CFLAGS) 5 | 6 | XFILES = $(OBJECTDIR)sdl.o 7 | 8 | # 9 | # For SDL version 2 10 | # -DSDL=2 in XFLAGS and -lSDL2 in LDFLAGS 11 | # For SDL version 3 12 | # -DSDL=3 in XFLAGS and -lSDL3 in LDFLAGS 13 | # 14 | XFLAGS = -DSDL=2 15 | 16 | # OPTFLAGS is normally -O2. 17 | OPTFLAGS = -O2 -g3 18 | DFLAGS = $(XFLAGS) -DRELEASE=$(RELEASE) 19 | 20 | LDFLAGS = -lm -lSDL2 21 | LDELDFLAGS = 22 | 23 | OBJECTDIR = ../$(RELEASENAME)/ 24 | 25 | default : ../$(OSARCHNAME)/lde ../$(OSARCHNAME)/ldesdl 26 | -------------------------------------------------------------------------------- /bin/makefile-linux.armv7l-x: -------------------------------------------------------------------------------- 1 | # Options for Linux, ARMv7 and X-Window 2 | 3 | CC = gcc $(GCC_CFLAGS) 4 | #CC = clang $(CLANG_CFLAGS) 5 | 6 | XFILES = $(OBJECTDIR)xmkicon.o \ 7 | $(OBJECTDIR)xbbt.o \ 8 | $(OBJECTDIR)dspif.o \ 9 | $(OBJECTDIR)xinit.o \ 10 | $(OBJECTDIR)xscroll.o \ 11 | $(OBJECTDIR)xcursor.o \ 12 | $(OBJECTDIR)xlspwin.o \ 13 | $(OBJECTDIR)xrdopt.o \ 14 | $(OBJECTDIR)xwinman.o 15 | 16 | XFLAGS = -DXWINDOW 17 | 18 | # OPTFLAGS is normally -O2. 19 | OPTFLAGS = -O2 -g3 20 | DFLAGS = $(XFLAGS) -DRELEASE=$(RELEASE) 21 | 22 | LDFLAGS = -L/usr/X11/lib -lX11 -lc -lm 23 | LDELDFLAGS = -L/usr/X11/lib -lX11 -lc -lm 24 | 25 | OBJECTDIR = ../$(RELEASENAME)/ 26 | 27 | default : ../$(OSARCHNAME)/lde ../$(OSARCHNAME)/ldex 28 | -------------------------------------------------------------------------------- /bin/makefile-linux.x86_64-sdl: -------------------------------------------------------------------------------- 1 | # Options for Linux, Intel x86_64 and SDL 2 | 3 | CC = gcc -m64 $(GCC_CFLAGS) 4 | # CC = clang -m64 $(CLANG_CFLAGS) 5 | 6 | XFILES = $(OBJECTDIR)sdl.o 7 | 8 | # 9 | # For SDL version 2 10 | # -DSDL=2 in XFLAGS and -lSDL2 in LDFLAGS 11 | # For SDL version 3 12 | # -DSDL=3 in XFLAGS and -lSDL3 in LDFLAGS 13 | # 14 | XFLAGS = -DSDL=2 15 | 16 | # OPTFLAGS is normally -O2. 17 | OPTFLAGS = -O2 -g3 18 | DFLAGS = $(XFLAGS) -DRELEASE=$(RELEASE) 19 | 20 | LDFLAGS = -lm -lSDL2 21 | LDELDFLAGS = 22 | 23 | OBJECTDIR = ../$(RELEASENAME)/ 24 | 25 | default : ../$(OSARCHNAME)/lde ../$(OSARCHNAME)/ldesdl 26 | -------------------------------------------------------------------------------- /bin/makefile-linux.x86_64-x: -------------------------------------------------------------------------------- 1 | # Options for Linux, Intel x86_64 and X-Window 2 | 3 | CC = gcc -m64 $(GCC_CFLAGS) 4 | # CC = clang -m64 $(CLANG_CFLAGS) 5 | 6 | XFILES = $(OBJECTDIR)xmkicon.o \ 7 | $(OBJECTDIR)xbbt.o \ 8 | $(OBJECTDIR)dspif.o \ 9 | $(OBJECTDIR)xinit.o \ 10 | $(OBJECTDIR)xscroll.o \ 11 | $(OBJECTDIR)xcursor.o \ 12 | $(OBJECTDIR)xlspwin.o \ 13 | $(OBJECTDIR)xrdopt.o \ 14 | $(OBJECTDIR)xwinman.o 15 | 16 | 17 | XFLAGS = -DXWINDOW 18 | 19 | # OPTFLAGS is normally -O2. 20 | OPTFLAGS = -O2 -g3 21 | DFLAGS = $(XFLAGS) -DRELEASE=$(RELEASE) 22 | 23 | LDFLAGS = -L/usr/X11/lib -lX11 -lc -lm 24 | LDELDFLAGS = -L/usr/X11/lib -lX11 -lc -lm 25 | 26 | OBJECTDIR = ../$(RELEASENAME)/ 27 | 28 | default : ../$(OSARCHNAME)/lde ../$(OSARCHNAME)/ldex 29 | -------------------------------------------------------------------------------- /bin/makefile-openbsd.x86_64-x: -------------------------------------------------------------------------------- 1 | # Options for OpenBSD, Intel x86_64 and X-Window 2 | 3 | CC = clang -m64 $(CLANG_CFLAGS) 4 | 5 | XFILES = $(OBJECTDIR)xmkicon.o \ 6 | $(OBJECTDIR)xbbt.o \ 7 | $(OBJECTDIR)dspif.o \ 8 | $(OBJECTDIR)xinit.o \ 9 | $(OBJECTDIR)xscroll.o \ 10 | $(OBJECTDIR)xcursor.o \ 11 | $(OBJECTDIR)xlspwin.o \ 12 | $(OBJECTDIR)xrdopt.o \ 13 | $(OBJECTDIR)xwinman.o 14 | 15 | 16 | XFLAGS = -I/usr/X11R6/include -DXWINDOW 17 | 18 | # OPTFLAGS is normally -O2. 19 | OPTFLAGS = -O2 -g3 20 | DFLAGS = $(XFLAGS) -DRELEASE=$(RELEASE) 21 | 22 | LDFLAGS = -L/usr/X11R6/lib -lX11 -lc -lm 23 | LDELDFLAGS = -L/usr/X11R6/lib -lX11 -lc -lm 24 | 25 | OBJECTDIR = ../$(RELEASENAME)/ 26 | 27 | default : ../$(OSARCHNAME)/lde ../$(OSARCHNAME)/ldex 28 | -------------------------------------------------------------------------------- /bin/makefile-sunos5.386-x: -------------------------------------------------------------------------------- 1 | # Options for SOlaris 2.x, INTEL x86 and X-Window 2 | 3 | 4 | 5 | #************************************************************************/ 6 | #* */ 7 | #* (C) Copyright 1989, 1990, 1990, 1991, 1992, 1993, 1994, 1996 Venue. */ 8 | #* All Rights Reserved. */ 9 | #* Manufactured in the United States of America. */ 10 | #* */ 11 | #************************************************************************/ 12 | 13 | CC = clang -m32 $(CLANG_CFLAGS) 14 | 15 | XFILES = $(OBJECTDIR)xmkicon.o \ 16 | $(OBJECTDIR)xbbt.o \ 17 | $(OBJECTDIR)dspif.o \ 18 | $(OBJECTDIR)xinit.o \ 19 | $(OBJECTDIR)xscroll.o \ 20 | $(OBJECTDIR)xcursor.o \ 21 | $(OBJECTDIR)xlspwin.o \ 22 | $(OBJECTDIR)xrdopt.o \ 23 | $(OBJECTDIR)xwinman.o 24 | 25 | XFLAGS = -DXWINDOW 26 | 27 | # OPTFLAGS is normally -O2. 28 | OPTFLAGS = -O2 -g 29 | 30 | # Set any debugging options in DEBUGFLAGS. E.g., to enable stack 31 | # checking, use -DSTACKCHECK; to enable the fn-call-time stack 32 | # check, use -DFNSTKCHECK. 33 | 34 | DEBUGFLAGS = # -DSTACKCHECK -DFNSTKCHECK 35 | 36 | DFLAGS = $(XFLAGS) \ 37 | $(DEBUGFLAGS) \ 38 | -DOS5 \ 39 | -DRELEASE=$(RELEASE) 40 | 41 | LDFLAGS = -L/usr/X11/lib -lX11 -lc -lm -lsocket -lnsl 42 | LDELDFLAGS = -L/usr/X11/lib -lX11 -lc -lm -lsocket -lnsl 43 | LDEETHERLDFLAGS = -lc -lm -lsocket -lnsl 44 | 45 | DLPIFILES = # $(OBJECTDIR)dlpi.o 46 | 47 | OBJECTDIR = ../$(RELEASENAME)/ 48 | 49 | default: ../$(OSARCHNAME)/lde ../$(OSARCHNAME)/ldeether ../$(OSARCHNAME)/ldex 50 | -------------------------------------------------------------------------------- /bin/makefile-sunos5.i386-x: -------------------------------------------------------------------------------- 1 | # Options for SOlaris 2.x, INTEL x86 and X-Window 2 | 3 | 4 | 5 | #************************************************************************/ 6 | #* */ 7 | #* (C) Copyright 1989, 1990, 1990, 1991, 1992, 1993, 1994, 1996 Venue. */ 8 | #* All Rights Reserved. */ 9 | #* Manufactured in the United States of America. */ 10 | #* */ 11 | #************************************************************************/ 12 | 13 | CC = gcc 14 | 15 | XFILES = $(OBJECTDIR)xmkicon.o \ 16 | $(OBJECTDIR)xbbt.o \ 17 | $(OBJECTDIR)dspif.o \ 18 | $(OBJECTDIR)xinit.o \ 19 | $(OBJECTDIR)xscroll.o \ 20 | $(OBJECTDIR)xcursor.o \ 21 | $(OBJECTDIR)xlspwin.o \ 22 | $(OBJECTDIR)xrdopt.o \ 23 | $(OBJECTDIR)xwinman.o 24 | 25 | XFLAGS = -DXWINDOW 26 | 27 | # OPTFLAGS is normally -O2. 28 | OPTFLAGS = -O2 -g3 29 | 30 | # Set any debugging options in DEBUGFLAGS. E.g., to enable stack 31 | # checking, use -DSTACKCHECK; to enable the fn-call-time stack 32 | # check, use -DFNSTKCHECK. 33 | 34 | DEBUGFLAGS = # -DSTACKCHECK -DFNSTKCHECK 35 | 36 | DFLAGS = $(XFLAGS) \ 37 | $(DEBUGFLAGS) \ 38 | -DOS5 -DUSE_DLPI \ 39 | -I$(OPENWINHOME)/include \ 40 | -DRELEASE=210 41 | 42 | LDFLAGS = -R$(OPENWINHOME)/lib -L$(OPENWINHOME)/lib -lX11 -lc -lm -lsocket -lnsl 43 | LDELDFLAGS = -R$(OPENWINHOME)/lib -L$(OPENWINHOME)/lib -lX11 -lc -lm -lsocket -lnsl 44 | LDEETHERLDFLAGS = -lc -lm -lsocket -lnsl 45 | 46 | DLPIFILES = $(OBJECTDIR)dlpi.o 47 | 48 | OBJECTDIR = ../$(RELEASENAME)/ 49 | 50 | default: ../$(OSARCHNAME)/lde ../$(OSARCHNAME)/ldeether ../$(OSARCHNAME)/ldex 51 | -------------------------------------------------------------------------------- /bin/makefile-sunos5.sparc-x: -------------------------------------------------------------------------------- 1 | # Options for SOlaris 2.x, SPARC and X-Window 2 | 3 | # $Id: makefile-sunos5.sparc-x,v 1.7 2001/12/26 22:17:10 sybalsky Exp $ # 4 | 5 | #************************************************************************/ 6 | #* */ 7 | #* (C) Copyright 1989, 1990, 1990, 1991, */ 8 | #* 1992, 1993, 1994, 1996, */ 9 | #* 1999 */ 10 | #* Venue. All Rights Reserved. */ 11 | #* Manufactured in the United States of America. */ 12 | #* */ 13 | #************************************************************************/ 14 | 15 | # Setup for using gcc 16 | # CC = gcc $(GCC_CFLAGS) 17 | # Setup for using Solaris Developer Studio 12.6 cc 18 | # CC = cc -m32 $(DEVSTUDIO_CFLAGS) 19 | 20 | CC = cc -m32 $(DEVSTUDIO_CFLAGS) 21 | 22 | XFILES = $(OBJECTDIR)xmkicon.o \ 23 | $(OBJECTDIR)xbbt.o \ 24 | $(OBJECTDIR)dspif.o \ 25 | $(OBJECTDIR)xinit.o \ 26 | $(OBJECTDIR)xscroll.o \ 27 | $(OBJECTDIR)xcursor.o \ 28 | $(OBJECTDIR)xlspwin.o \ 29 | $(OBJECTDIR)xrdopt.o \ 30 | $(OBJECTDIR)xwinman.o 31 | 32 | XFLAGS = -DXWINDOW 33 | 34 | # OPTFLAGS is normally -O2. 35 | OPTFLAGS = -O2 -g3 36 | 37 | # Set any debugging options in DEBUGFLAGS. E.g., to enable stack 38 | # checking, use -DSTACKCHECK; to enable the fn-call-time stack 39 | # check, use -DFNSTKCHECK. 40 | 41 | DEBUGFLAGS = # -DSTACKCHECK -DFNSTKCHECK 42 | 43 | MACHINEFLAGS = -DOS5 -DUSE_DLPI 44 | 45 | DFLAGS = $(XFLAGS) \ 46 | $(DEBUGFLAGS) \ 47 | $(MACHINEFLAGS) \ 48 | -DRELEASE=$(RELEASE) 49 | 50 | LDFLAGS = -lX11 -lc -lm -lsocket -lnsl 51 | LDELDFLAGS = -lX11 -lc -lm -lsocket -lnsl 52 | LDEETHERLDFLAGS = -lc -lm -lsocket -lnsl 53 | 54 | DLPIFILES = $(OBJECTDIR)dlpi.o 55 | 56 | OBJECTDIR = ../$(RELEASENAME)/ 57 | 58 | default: ../$(OSARCHNAME)/lde ../$(OSARCHNAME)/ldeether ../$(OSARCHNAME)/ldex 59 | -------------------------------------------------------------------------------- /bin/makefile-sunos5.x86_64-x: -------------------------------------------------------------------------------- 1 | # Options for SOlaris 2.x, INTEL x86 and X-Window 2 | 3 | 4 | 5 | #************************************************************************/ 6 | #* */ 7 | #* (C) Copyright 1989, 1990, 1990, 1991, 1992, 1993, 1994, 1996 Venue. */ 8 | #* All Rights Reserved. */ 9 | #* Manufactured in the United States of America. */ 10 | #* */ 11 | #************************************************************************/ 12 | 13 | CC = clang $(CLANG_CFLAGS) 14 | 15 | XFILES = $(OBJECTDIR)xmkicon.o \ 16 | $(OBJECTDIR)xbbt.o \ 17 | $(OBJECTDIR)dspif.o \ 18 | $(OBJECTDIR)xinit.o \ 19 | $(OBJECTDIR)xscroll.o \ 20 | $(OBJECTDIR)xcursor.o \ 21 | $(OBJECTDIR)xlspwin.o \ 22 | $(OBJECTDIR)xrdopt.o \ 23 | $(OBJECTDIR)xwinman.o 24 | 25 | XFLAGS = -DXWINDOW 26 | 27 | # OPTFLAGS is normally -O2. 28 | OPTFLAGS = -O2 -g 29 | 30 | # Set any debugging options in DEBUGFLAGS. E.g., to enable stack 31 | # checking, use -DSTACKCHECK; to enable the fn-call-time stack 32 | # check, use -DFNSTKCHECK. 33 | 34 | DEBUGFLAGS = # -DSTACKCHECK -DFNSTKCHECK 35 | 36 | DFLAGS = $(XFLAGS) \ 37 | $(DEBUGFLAGS) \ 38 | -DOS5 \ 39 | -DUSE_DLPI \ 40 | -DRELEASE=$(RELEASE) 41 | 42 | LDFLAGS = -L/usr/X11/lib -lX11 -lc -lm -lsocket -lnsl 43 | LDELDFLAGS = -L/usr/X11/lib -lX11 -lc -lm -lsocket -lnsl 44 | LDEETHERLDFLAGS = -lc -lm -lsocket -lnsl 45 | 46 | DLPIFILES = $(OBJECTDIR)dlpi.o 47 | 48 | OBJECTDIR = ../$(RELEASENAME)/ 49 | 50 | default: ../$(OSARCHNAME)/lde ../$(OSARCHNAME)/ldeether ../$(OSARCHNAME)/ldex 51 | -------------------------------------------------------------------------------- /bin/makeinitlde: -------------------------------------------------------------------------------- 1 | # Start a csh 2 | # Building an init needs several flags turned on and it is 3 | # best to build an entire new LDE. 4 | 5 | # to run this script, enter 'makeinitlde -e' from the shell 6 | 7 | set architecture = `mach` 8 | set osversion = `osversion` 9 | set releasename = ${osversion}.${architecture} 10 | 11 | set initname = init.${architecture} 12 | setenv OPTFLAGS '-DINIT -g' 13 | 14 | # now do the make, including the right stuff, but putting 15 | # it all into init.mach 16 | 17 | (echo RELEASENAME = ${initname}; cat makefile-header makefile-${releasename} makefile-tail) | make -f - $* 18 | -------------------------------------------------------------------------------- /bin/mkvdate: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | if command -v "git" >/dev/null 2>&1; then 3 | MAIKO_REV="$(git status --porcelain)" 4 | if [ $? -eq 0 ]; then 5 | if [ ! -z "$(git status --porcelain)" ]; then 6 | MAIKO_REV="$(git rev-parse --short HEAD)-dirty" 7 | else 8 | MAIKO_REV="$(git rev-parse --short HEAD)" 9 | fi 10 | else 11 | MAIKO_REV="none" 12 | fi 13 | else 14 | MAIKO_REV = "none" 15 | fi 16 | cat < 18 | extern const time_t MDate; 19 | const time_t MDate = $(date +%s); 20 | extern const char *MaikoGitVersion; 21 | const char *MaikoGitVersion = "maiko git version: $MAIKO_REV"; 22 | EOF 23 | -------------------------------------------------------------------------------- /bin/osversion: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | SCRIPTPATH="$( cd "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P )" 3 | os=${LDEARCH:-`$SCRIPTPATH/config.guess`} 4 | case "$os" in 5 | m68k-*-amigaos) echo amigaos ;; 6 | sparc-sun-sunos*) echo sunos4 ;; 7 | sparc-sun-solaris1*) echo sunos4 ;; 8 | *-*-solaris2*) echo sunos5 ;; 9 | alpha-dec-osf1) echo osf1 ;; 10 | *-apple-darwin*) echo darwin ;; 11 | *-*-linux*) echo linux ;; 12 | *-*-openbsd*) echo openbsd ;; 13 | *-*-freebsd*) echo freebsd ;; 14 | *-*-cygwin*) echo cygwin ;; 15 | *-*-haiku*) echo haiku ;; 16 | esac 17 | ### Don't leave the variable set. 18 | unset os 19 | -------------------------------------------------------------------------------- /bin/release-one: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # Make and release maiko for one os / arch 3 | # Hopefully to be replaced by GitHub Action 4 | 5 | if [ ! -x ../../maiko/bin/machinetype ] ; then 6 | echo ERROR: Must be run from maiko/bin 7 | exit 1 8 | fi 9 | 10 | tag=$1 11 | if [ -z "$tag" ] ; then 12 | tag=maiko-`date +%y%m%d` 13 | fi 14 | 15 | export PATH=.:"$PATH" 16 | osarch=`osversion`.`machinetype` 17 | 18 | 19 | ./makeright x 20 | ./makeright init 21 | 22 | cd ../.. 23 | mkdir -p maiko/build 24 | echo making $tag-$osarch.tgz 25 | 26 | tar cfz maiko/build/$tag-$osarch.tgz \ 27 | maiko/bin/osversion \ 28 | maiko/bin/machinetype \ 29 | maiko/bin/config.guess \ 30 | maiko/bin/config.sub \ 31 | maiko/$osarch/lde* 32 | 33 | if ! command -v gh >/dev/null ; then 34 | echo 35 | echo The GitHub Command Line Interface, gh 36 | echo does not seem to be installed. 37 | echo Please upload maiko/build/$tag-$osarch.tgz 38 | echo to https://github.com/Interlisp/maiko/releases $tag 39 | exit 0 40 | fi 41 | 42 | echo uploading 43 | cd maiko 44 | gh release upload --clobber $tag build/$tag-$osarch.tgz 45 | -------------------------------------------------------------------------------- /bin/start-release: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # This script is just a placeholder until we get GitHub 3 | # Actions to do releases 4 | 5 | # Start Maiko release from maiko/bin 6 | # startrelease [tag] 7 | # tag defaults to maiko-YYMMDD 8 | 9 | tag=$1 10 | if [ -z "$tag" ] ; then 11 | tag=maiko-`date +%y%m%d` 12 | fi 13 | 14 | if ! command -v gh >/dev/null ; then 15 | echo "It seems like 'gh', the GitHub Command Line Interface is" 16 | echo "not installed. You can start a release using the" 17 | echo "web interface at" 18 | echo "https://github.com/Interlisp/maiko/releases/new" 19 | echo "Make up a tag (or use $tag)" 20 | echo "and run './release-one tag' (or manually upload if" 21 | echo "no 'gh' is installed) on every os/machine you want" 22 | echo "this release to work for" 23 | exit 0 24 | fi 25 | 26 | # Now for the only thing this script is actually doing 27 | 28 | gh release create $tag -p -t $tag -n "See release notes in medley repo" 29 | 30 | 31 | echo "Now run " 32 | echo ./release-one $tag 33 | echo "in maiko/bin on every os/machine you want this release" 34 | echo "to work for. When done, edit the release in your" 35 | echo "browser and uncheck the prerelease box " 36 | 37 | -------------------------------------------------------------------------------- /bin/test.vm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Interlisp/maiko/9343f58b17a26bc93fee5adf1254138a77ea890d/bin/test.vm -------------------------------------------------------------------------------- /bin/u2dnames.sed: -------------------------------------------------------------------------------- 1 | s/Cldeether/Cldeetr/g 2 | s/MakeXicon/Xmkicon/g 3 | s/Scrollbar/Xscrolb/g 4 | s/XKbdMouse/Xkbdmus/g 5 | s/XKeyboard/Xkbd/g 6 | s/XReconfig/Xreconf/g 7 | s/Xdefaults/Xdeflt/g 8 | s/asmbitblt/asmbbt/g 9 | s/bitblt68K/bbt68k/g 10 | s/bitbltsub/bbtsub/g 11 | s/devconfig/devconf/g 12 | s/directory/dir/g 13 | s/disp386i/dsp386/g 14 | s/fast_disp/fast_dsp/g 15 | s/gcreccell/gcrcell/g 16 | s/gcreclaim/gcr/g 17 | s/initatoms/initatms/g 18 | s/inline68K/inln68k/g 19 | s/inlinePS2/inlnPS2/g 20 | s/keytester/keytst/g 21 | s/keytestno/keytstno/g 22 | s/lisptypes/lsptypes/g 23 | s/lldisplay/lldsp/g 24 | s/localfile/locfile/g 25 | s/lowlevel1/lowlev1/g 26 | s/lowlevel2/lowlev2/g 27 | s/makevdate/mkvdate/g 28 | s/miscstats/miscstat/g 29 | s/osmessage/osmsg/g 30 | s/osmessage/osmsg/g 31 | s/setsysout/setsout/g 32 | s/usersubrs/usrsubr/g 33 | s/InitXevent/Xinit/g 34 | s/LispWindow/Xlspwin/g 35 | s/Subwindows/Xsubwin/g 36 | s/VideoColor/Xcolor/g 37 | s/XCursorDef/Xcursdef/g 38 | s/XWindowMgr/Xwinman/g 39 | s/address68k/adr68k/g 40 | s/bitblt386i/bbt386i/g 41 | s/chardevice/chardev/g 42 | s/createcell/mkcell/g 43 | s/debugtools/dbgtool/g 44 | s/dispSPARC/dspSPARC/g 45 | s/disphack/dsphack/g 46 | s/emulglobal/emlglob/g 47 | s/gcarrayops/gcarray/g 48 | s/hardreturn/hardrtn/g 49 | s/hdw_config/hdw_conf/g 50 | s/initsysout/initsout/g 51 | s/inline386i/inln386i/g 52 | s/inlineMIPS/inlnMIPS/g 53 | s/lispglobal/lspglob/g 54 | s/listhandle/lsthandl/g 55 | s/loadsysout/ldsout/g 56 | s/syscallmsg/perrno/g 57 | s/testsysout/tstsout/g 58 | s/tosfuncall/tosfns/g 59 | s/unix\-utils/uutils/g 60 | s/waitcursor/CHANGEMEcurs/g 61 | s/LispXbitblt/Xbbt/g 62 | s/OpenDisplay/Xopnedsp/g 63 | s/ReadXoption/Xrdopt/g 64 | s/bitbltSPARC/bbtSPARC/g 65 | s/byteswapfns/byteswap/g 66 | s/colorbltfns/rawcolor/g 67 | s/displaydata/dspdata/g 68 | s/find\-disp/find\-dsp/g 69 | s/gchoverflow/gcpunt/g 70 | s/initdisplay/initdsp/g 71 | s/inlineSPARC/inlnSPARC/g 72 | s/newmakeatom/mkatom/g 73 | s/systematoms/sysatms/g 74 | s/testdisplay/testdsp/g 75 | s/tosretmacro/tosret/g 76 | s/EventHandler/Xevent/g 77 | s/fastinline68K/inln68k\+/g 78 | s/nativeincludes/native/g 79 | -------------------------------------------------------------------------------- /bin/unix2dos.sed: -------------------------------------------------------------------------------- 1 | s/Cldeether\.c/Cldeetr\.c/g 2 | s/MakeXicon\.c/Xmkicon\.c/g 3 | s/Scrollbar\.c/Xscrolb\.c/g 4 | s/XKbdMouse\.c/Xkbdmus\.c/g 5 | s/XKeyboard\.c/Xkbd\.c/g 6 | s/XReconfig\.c/Xreconf\.c/g 7 | s/Xdefaults\.h/Xdeflt\.h/g 8 | s/asmbitblt\.c/asmbbt\.c/g 9 | s/bitblt68K\.s/bbt68k\.s/g 10 | s/bitbltsub\.c/bbtsub\.c/g 11 | s/devconfig\.h/devconf\.h/g 12 | s/directory\.c/dir\.c/g 13 | s/disp386i\.il/dsp386\.il/g 14 | s/fast_disp\.h/fast_dsp\.h/g 15 | s/gcreccell\.c/gcrcell\.c/g 16 | s/gcreclaim\.c/gcr\.c/g 17 | s/initatoms\.h/initatms\.h/g 18 | s/inline68K\.h/inln68k\.h/g 19 | s/inlinePS2\.h/inlnPS2\.h/g 20 | s/keytester\.c/keytst\.c/g 21 | s/keytestno\.c/CHANGEMEkey\.c/g 22 | s/lisptypes\.h/lsptypes\.h/g 23 | s/lldisplay\.h/lldsp\.h/g 24 | s/localfile\.h/locfile\.h/g 25 | s/lowlevel1\.c/lowlev1\.c/g 26 | s/lowlevel2\.c/lowlev2\.c/g 27 | s/makevdate\.c/mkvdate\.c/g 28 | s/miscstats\.h/miscstat\.h/g 29 | s/osmessage\.c/osmsg\.c/g 30 | s/osmessage\.h/osmsg\.h/g 31 | s/setsysout\.c/setsout\.c/g 32 | s/usersubrs\.c/usrsubr\.c/g 33 | s/InitXevent\.c/Xinit\.c/g 34 | s/LispWindow\.c/Xlspwin\.c/g 35 | s/Subwindows\.c/Xsubwin\.c/g 36 | s/VideoColor\.c/Xcolor\.c/g 37 | s/XCursorDef\.h/Xcursdef\.h/g 38 | s/XWindowMgr\.c/Xwinman\.c/g 39 | s/address68k\.h/adr68k\.h/g 40 | s/bitblt386i\.s/bbt386i\.h/g 41 | s/chardevice\.c/chardev\.c/g 42 | s/createcell\.c/mkcell\.c/g 43 | s/debugtools\.c/dbgtool\.c/g 44 | s/dispSPARC\.il/dspSPACR\.il/g 45 | s/disphack\.lex/dsphack\.lex/g 46 | s/emulglobal\.h/emlglob\.h/g 47 | s/gcarrayops\.c/gcarray\.c/g 48 | s/hardreturn\.c/hardrtn\.c/g 49 | s/hdw_config\.h/hdw_conf\.h/g 50 | s/initsysout\.c/initsout\.c/g 51 | s/inline386i\.h/inln386i\.h/g 52 | s/inlineMIPS\.h/inlnMIPS\.h/g 53 | s/lispglobal\.h/lspglob\.h/g 54 | s/listhandle\.c/lsthandl\.c/g 55 | s/loadsysout\.c/ldsout\.c/g 56 | s/syscallmsg\.c/perrno\.c/g 57 | s/testsysout\.c/tstsout\.c/g 58 | s/tosfuncall\.h/tosfns\.h/g 59 | s/unix\-utils\.c/uutils\.c/g 60 | s/waitcursor\.h/CHANGEMEcurs\.h/g 61 | s/LispXbitblt\.c/Xbbt\.c/g 62 | s/OpenDisplay\.c/Xopnedsp\.c/g 63 | s/ReadXoption\.c/Xrdopt\.c/g 64 | s/bitbltSPARC\.s/bbtSPARC\.s/g 65 | s/byteswapfns\.c/byteswap\.c/g 66 | s/colorbltfns\.c/rawcolor\.c/g 67 | s/displaydata\.h/dspdata\.h/g 68 | s/find\-disp\.lex/find\-dsp\.lex/g 69 | s/gchoverflow\.c/gcpunt\.c/g 70 | s/initdisplay\.c/initdsp\.c/g 71 | s/inlineSPARC\.h/inlnSPARC\.h/g 72 | s/newmakeatom\.c/mkatom\.c/g 73 | s/systematoms\.h/sysatms\.h/g 74 | s/testdisplay\.c/testdsp\.c/g 75 | s/tosretmacro\.h/tosret\.h/g 76 | s/EventHandler\.c/Xevent\.c/g 77 | s/fastinline68K\.h/inln68k\+\.h/g 78 | s/nativeincludes\.h/native\.h/g 79 | -------------------------------------------------------------------------------- /docs/NEWCDRCODING.md: -------------------------------------------------------------------------------- 1 | # CDR CODING in cons cells 2 | 3 | The cdr-code is a 4-bit field of a 32-bit cons cell. 4 | It is treated as an on-page indicator bit and a 3-bit scaled offset. 5 | 6 | Certain combinations are treated specially. 7 | 8 | 9 | | on-page | offset | interpretation | 10 | |---------|---------|---------------------------------------------------------------------------| 11 | | 1 | 0 | CDR is NIL | 12 | | 1 | 1 - 7 | CDR is at 2*offset (counted in 32-bit cells) on same page | 13 | | 0 | 0 | CDR is indirect, CDR(car) | 14 | | 0 | 1 - 7 | CDR is not a cons cell but is in the car of cell at 2*offset on same page | 15 | -------------------------------------------------------------------------------- /inc/address.h: -------------------------------------------------------------------------------- 1 | #ifndef ADDRESS_H 2 | #define ADDRESS_H 1 3 | /* $Id: address.h,v 1.2 1999/01/03 02:05:51 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */ 4 | 5 | 6 | 7 | 8 | /************************************************************************/ 9 | /* */ 10 | /* (C) Copyright 1989-92 Venue. All Rights Reserved. */ 11 | /* Manufactured in the United States of America. */ 12 | /* */ 13 | /************************************************************************/ 14 | 15 | /**********************************************************************/ 16 | /* 17 | File Name : address.h 18 | 19 | Address Manipulate Macros(for LISP pointer) 20 | 21 | Date : December 8, 1986 22 | Edited by : Takeshi Shimizu 23 | Changed : Dec.22.86 (take) 24 | Changed : Jan.14.87(take) 25 | Changed : Apr.20.87(mitani) 26 | Sep.02.87 take 27 | (add parenthesises) 28 | */ 29 | /**********************************************************************/ 30 | 31 | /* NOTE: These MACRO should be used for the pointers in LISP SYSOUT */ 32 | #define LLSH(datum, n) ((datum) << (n)) 33 | #define LRSH(datum, n) ((datum) >> (n)) 34 | 35 | #define HILOC(ptr) (LRSH(((unsigned int)(ptr) & SEGMASK),16)) 36 | #define LOLOC(ptr) ((unsigned int)(ptr) & 0x0ffff) 37 | 38 | #define VAG2(hi,lo) (LispPTR)(LLSH((hi),16) | (lo)) 39 | 40 | 41 | /* NOTE: argument off must be WORD offset */ 42 | #define ADDBASE(ptr,off) ((UNSIGNED)(ptr) + (off)) 43 | #define GETBASE(ptr,off) (GETWORD(((DLword *)(ptr)) + (off))) 44 | 45 | 46 | 47 | /* Following MACRO defs. is related with POINTER which is defined as ACCESSFNS in Interlisp(LLNEW) */ 48 | #ifdef BIGVM 49 | #define POINTER_PAGE(datum) (((unsigned int)(datum) & 0x0fffff00) >> 8 ) 50 | #define POINTER_SEGMENT(datum) HILOC(datum) 51 | #define POINTER_PAGEBASE(datum) ((datum) & 0x0fffff00) 52 | #else 53 | #define POINTER_PAGE(datum) (((unsigned int)(datum) & 0x0ffff00) >> 8 ) 54 | #define POINTER_SEGMENT(datum) HILOC(datum) 55 | #define POINTER_PAGEBASE(datum) ((datum) & 0x0ffff00) 56 | #endif /* BIGVM */ 57 | #endif /* ADDRESS_H */ 58 | -------------------------------------------------------------------------------- /inc/allocmdsdefs.h: -------------------------------------------------------------------------------- 1 | #ifndef ALLOCMDSDEFS_H 2 | #define ALLOCMDSDEFS_H 1 3 | #include "lispemul.h" /* for LispPTR, DLword */ 4 | LispPTR initmdspage(LispPTR *base, DLword size, LispPTR prev); 5 | LispPTR *alloc_mdspage(short int type); 6 | #endif 7 | -------------------------------------------------------------------------------- /inc/arithopsdefs.h: -------------------------------------------------------------------------------- 1 | #ifndef ARITHOPSDEFS_H 2 | #define ARITHOPSDEFS_H 1 3 | #include "lispemul.h" /* for LispPTR */ 4 | LispPTR N_OP_plus2(LispPTR tosm1, LispPTR tos); 5 | LispPTR N_OP_iplus2(LispPTR tosm1, LispPTR tos); 6 | LispPTR N_OP_difference(LispPTR tosm1, LispPTR tos); 7 | LispPTR N_OP_idifference(LispPTR tosm1, LispPTR tos); 8 | LispPTR N_OP_logxor(LispPTR tosm1, LispPTR tos); 9 | LispPTR N_OP_logand(LispPTR tosm1, LispPTR tos); 10 | LispPTR N_OP_logor(LispPTR tosm1, LispPTR tos); 11 | LispPTR N_OP_greaterp(LispPTR tosm1, LispPTR tos); 12 | LispPTR N_OP_igreaterp(LispPTR tosm1, LispPTR tos); 13 | LispPTR N_OP_iplusn(LispPTR tos, int n); 14 | LispPTR N_OP_idifferencen(LispPTR tos, int n); 15 | LispPTR N_OP_makenumber(LispPTR tosm1, LispPTR tos); 16 | LispPTR N_OP_boxiplus(LispPTR a, LispPTR tos); 17 | LispPTR N_OP_boxidiff(LispPTR a, LispPTR tos); 18 | LispPTR N_OP_times2(LispPTR tosm1, LispPTR tos); 19 | LispPTR N_OP_itimes2(LispPTR tosm1, LispPTR tos); 20 | LispPTR N_OP_quot(LispPTR tosm1, LispPTR tos); 21 | LispPTR N_OP_iquot(LispPTR tosm1, LispPTR tos); 22 | LispPTR N_OP_iremainder(LispPTR tosm1, LispPTR tos); 23 | #endif 24 | -------------------------------------------------------------------------------- /inc/arrayopsdefs.h: -------------------------------------------------------------------------------- 1 | #ifndef ARRAYOPSDEFS_H 2 | #define ARRAYOPSDEFS_H 1 3 | #include "lispemul.h" /* for LispPTR */ 4 | LispPTR N_OP_misc3(LispPTR baseL, LispPTR typenumber, LispPTR inx, int alpha); 5 | LispPTR N_OP_misc4(LispPTR data, LispPTR base, LispPTR typenumber, LispPTR inx, int alpha); 6 | LispPTR N_OP_aref1(LispPTR arrayarg, LispPTR inx); 7 | LispPTR N_OP_aset1(LispPTR data, LispPTR arrayarg, LispPTR inx); 8 | LispPTR N_OP_aref2(LispPTR arrayarg, LispPTR inx0, LispPTR inx1); 9 | LispPTR N_OP_aset2(LispPTR data, LispPTR arrayarg, LispPTR inx0, LispPTR inx1); 10 | #endif 11 | -------------------------------------------------------------------------------- /inc/bbtsubdefs.h: -------------------------------------------------------------------------------- 1 | #ifndef BBTSUBDEFS_H 2 | #define BBTSUBDEFS_H 1 3 | 4 | /********************************************************/ 5 | /* */ 6 | /* Don Charnley's bitblt code */ 7 | /* */ 8 | /********************************************************/ 9 | #include "lispemul.h" /* for LispPTR, DLword */ 10 | 11 | void bitbltsub(LispPTR *argv); 12 | LispPTR n_new_cursorin(DLword *baseaddr, int dx, int dy, int w, int h); 13 | LispPTR bitblt_bitmap(LispPTR *args); 14 | LispPTR bitshade_bitmap(LispPTR *args); 15 | void bltchar(LispPTR *args); 16 | void newbltchar(LispPTR *args); 17 | void ccfuncall(unsigned int atom_index, int argnum, int bytenum); 18 | void tedit_bltchar(LispPTR *args); 19 | 20 | #endif 21 | -------------------------------------------------------------------------------- /inc/bindefs.h: -------------------------------------------------------------------------------- 1 | #ifndef BINDEFS_H 2 | #define BINDEFS_H 1 3 | #include "lispemul.h" /* for LispPTR */ 4 | LispPTR N_OP_bin(LispPTR tos); 5 | #endif 6 | -------------------------------------------------------------------------------- /inc/bindsdefs.h: -------------------------------------------------------------------------------- 1 | #ifndef BINDSDEFS_H 2 | #define BINDSDEFS_H 1 3 | #include "lispemul.h" /* for LispPTR */ 4 | LispPTR *N_OP_bind(LispPTR *stack_pointer, LispPTR tos, unsigned byte1, unsigned byte2); 5 | LispPTR *N_OP_unbind(LispPTR *stack_pointer); 6 | LispPTR *N_OP_dunbind(LispPTR *stack_pointer, LispPTR tos); 7 | #endif 8 | -------------------------------------------------------------------------------- /inc/bitbltdefs.h: -------------------------------------------------------------------------------- 1 | #ifndef BITBLTDEFS_H 2 | #define BITBLTDEFS_H 1 3 | #include "lispemul.h" /* for LispPTR, DLword */ 4 | LispPTR N_OP_pilotbitblt(LispPTR pilot_bt_tbl, LispPTR tos); 5 | int cursorin(DLword addrhi, DLword addrlo, int w, int h, int backward); 6 | #endif 7 | 8 | -------------------------------------------------------------------------------- /inc/bltdefs.h: -------------------------------------------------------------------------------- 1 | #ifndef BLTDEFS_H 2 | #define BLTDEFS_H 1 3 | #include "lispemul.h" /* for LispPTR */ 4 | LispPTR N_OP_blt(LispPTR destptr, LispPTR sourceptr, LispPTR wordcount); 5 | #endif 6 | 7 | -------------------------------------------------------------------------------- /inc/byteswapdefs.h: -------------------------------------------------------------------------------- 1 | #ifndef BYTESWAPDEFS_H 2 | #define BYTESWAPDEFS_H 1 3 | 4 | /****************************************************************/ 5 | /* */ 6 | /* swap halves of a single 4-byte word */ 7 | /* */ 8 | /****************************************************************/ 9 | static inline unsigned int swapx(unsigned int word) { 10 | return (((word >> 16) & 0xffff) | ((word & 0xffff) << 16)); 11 | } 12 | 13 | void word_swap_page(void *page, unsigned longwordcount); 14 | void bit_reverse_region(unsigned short *top, int width, int height, int rasterwidth); 15 | #ifdef RESWAPPEDCODESTREAM 16 | unsigned int byte_swap_code_block(unsigned int *base); 17 | #endif 18 | #endif 19 | -------------------------------------------------------------------------------- /inc/car-cdrdefs.h: -------------------------------------------------------------------------------- 1 | #ifndef CAR_CDRDEFS_H 2 | #define CAR_CDRDEFS_H 1 3 | #include "cell.h" /* for ConsCell */ 4 | #include "lispemul.h" /* for LispPTR */ 5 | LispPTR car(LispPTR datum); 6 | LispPTR cdr(LispPTR datum); 7 | LispPTR rplaca(LispPTR x, LispPTR y); 8 | LispPTR rplacd(LispPTR x, LispPTR y); 9 | LispPTR N_OP_car(LispPTR tos); 10 | LispPTR N_OP_cdr(LispPTR tos); 11 | LispPTR N_OP_rplaca(LispPTR tosm1, LispPTR tos); 12 | LispPTR N_OP_rplacd(LispPTR tosm1, LispPTR tos); 13 | ConsCell *find_close_prior_cell(struct conspage *page, LispPTR oldcell); 14 | #endif 15 | -------------------------------------------------------------------------------- /inc/chardevdefs.h: -------------------------------------------------------------------------------- 1 | #ifndef CHARDEVDEFS_H 2 | #define CHARDEVDEFS_H 1 3 | #include "lispemul.h" /* for LispPTR */ 4 | LispPTR CHAR_openfile(LispPTR *args); 5 | LispPTR CHAR_closefile(LispPTR *args); 6 | LispPTR CHAR_ioctl(LispPTR *args); 7 | LispPTR CHAR_bin(int id, LispPTR errn); 8 | LispPTR CHAR_bout(int id, LispPTR ch, LispPTR errn); 9 | LispPTR CHAR_bins(LispPTR *args); 10 | LispPTR CHAR_bouts(LispPTR *args); 11 | #endif 12 | -------------------------------------------------------------------------------- /inc/commondefs.h: -------------------------------------------------------------------------------- 1 | #ifndef COMMONDEFS_H 2 | #define COMMONDEFS_H 1 3 | void stab(void); 4 | void warn(const char *s); 5 | int error(const char *s); 6 | #endif 7 | -------------------------------------------------------------------------------- /inc/conspagedefs.h: -------------------------------------------------------------------------------- 1 | #ifndef CONSPAGEDEFS_H 2 | #define CONSPAGEDEFS_H 1 3 | #include "lispemul.h" /* for LispPTR */ 4 | struct conspage *next_conspage(void); 5 | LispPTR N_OP_cons(LispPTR cons_car, LispPTR cons_cdr); 6 | LispPTR cons(LispPTR cons_car, LispPTR cons_cdr); 7 | #endif 8 | -------------------------------------------------------------------------------- /inc/copyright: -------------------------------------------------------------------------------- 1 | 2 | 3 | /************************************************************************/ 4 | /* */ 5 | /* (C) Copyright 1989-92 Venue. All Rights Reserved. */ 6 | /* Manufactured in the United States of America. */ 7 | /* */ 8 | /************************************************************************/ 9 | -------------------------------------------------------------------------------- /inc/cr: -------------------------------------------------------------------------------- 1 | 2 | 3 | /************************************************************************/ 4 | /* */ 5 | /* (C) Copyright 1989-1999 Venue. All Rights Reserved. */ 6 | /* Manufactured in the United States of America. */ 7 | /* */ 8 | /* The contents of this file are proprietary information */ 9 | /* belonging to Venue, and are provided to you under license. */ 10 | /* They may not be further distributed or disclosed to third */ 11 | /* parties without the specific permission of Venue. */ 12 | /* */ 13 | /************************************************************************/ 14 | -------------------------------------------------------------------------------- /inc/dbgtooldefs.h: -------------------------------------------------------------------------------- 1 | #ifndef DBGTOOLDEFS_H 2 | #define DBGTOOLDEFS_H 1 3 | #include "lispemul.h" /* for LispPTR, DLword */ 4 | #include "stack.h" /* frameex1, fnhead, FX */ 5 | LispPTR get_ivar_name(struct frameex1 *fx_addr68k, DLword offset, int *localivar); 6 | LispPTR get_pvar_name(struct frameex1 *fx_addr68k, DLword offset); 7 | LispPTR get_fn_fvar_name(struct fnhead *fnobj, DLword offset); 8 | LispPTR get_fvar_name(struct frameex1 *fx_addr68k, DLword offset); 9 | void bt(void); 10 | void bt1(FX *startFX); 11 | void btvv(void); 12 | int sf(struct frameex1 *fx_addr68k); 13 | void sff(LispPTR laddr); 14 | void nt(LispPTR index); 15 | void nt1(LispPTR *start, int size, char *str); 16 | void ntheader(struct fnhead *fnobj); 17 | void nts(struct frameex1 *fxp); 18 | #endif 19 | -------------------------------------------------------------------------------- /inc/devconf.h: -------------------------------------------------------------------------------- 1 | #ifndef DEVCONF_H 2 | #define DEVCONF_H 1 3 | /* $Id: devconf.h,v 1.2 1999/01/03 02:05:56 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */ 4 | /**********************************************************/ 5 | /* 6 | devconf.h 7 | 8 | Device Configurations assignments 9 | for IFPAGE->devconfig 10 | 11 | LSB(0)~3 -> KBD 12 | 4~7 -> DISPLAY, 13 | 8~10 -> CPU 14 | 15 | [CPU] [DSP] [KB] 16 | !!!!!! !!! !!!! !!! LSB> 17 | 18 | By Takeshi 19 | */ 20 | /**********************************************************/ 21 | 22 | 23 | 24 | /************************************************************************/ 25 | /* */ 26 | /* Copyright 1989, 1990 Venue, Fuji Xerox Co., Ltd, Xerox Corp. */ 27 | /* */ 28 | /* This file is work-product resulting from the Xerox/Venue */ 29 | /* Agreement dated 18-August-1989 for support of Medley. */ 30 | /* */ 31 | /************************************************************************/ 32 | 33 | 34 | 35 | 36 | /* MAIKO(sun3,sun4)*/ 37 | /* KBD */ 38 | #define SUN_KEYTYPE_MASK 7 39 | #define SUN_TYPE3_KBD 0x0 40 | #define SUN_TYPE4_KBD 0x1 41 | 42 | /* DISPLAY */ 43 | #define SUN_DISPTYPE_MASK 0x78 44 | #define SUN2BW (2<<3) 45 | #define SUN2COLOR (3<<3) 46 | #define SUN4COLOR (8<<3) 47 | #define SUNMEMCOLOR (7<<3) 48 | 49 | /* CPUTYPE NOT IMPLEMENTED */ 50 | 51 | /* useful macros */ 52 | #define SUN_GETKEYTYPE (InterfacePage->devconfig & SUN_KEYTYPE_MASK) 53 | #define SUN_GETDISPTYPE (InterfacePage->devconfig & SUN_DISPTYPE_MASK) 54 | #endif /* DEVCONF_H */ 55 | -------------------------------------------------------------------------------- /inc/display.h: -------------------------------------------------------------------------------- 1 | #ifndef DISPLAY_H 2 | #define DISPLAY_H 1 3 | 4 | /* $Id: display.h,v 1.2 1999/01/03 02:05:57 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */ 5 | 6 | /************************************************************************/ 7 | /* */ 8 | /* (C) Copyright 1989-94 Venue. All Rights Reserved. */ 9 | /* Manufactured in the United States of America. */ 10 | /* */ 11 | /************************************************************************/ 12 | #include "lispemul.h" /* for DLword */ 13 | 14 | #define BCPLDISPLAY stdout 15 | 16 | #define CURSORWIDTH 16 17 | #define CURSORHEIGHT 16 18 | 19 | /* Max address for HI-RES DISPLAY */ 20 | /* Osamu '90/02/08 21 | * Change into variable for efficiency 22 | #define DISP_MAX_Address (DisplayRegion68k + 1600*1280/8) 23 | */ 24 | extern DLword *DISP_MAX_Address; 25 | 26 | /* Is the bitmap in the display region? */ 27 | 28 | #define IN_DISPLAY_BANK(hiaddr) (((hiaddr)==DISPLAY_HI)|((hiaddr)==(DISPLAY_HI+1))) 29 | 30 | #define DLWORD_PERLINE (displaywidth/16) 31 | #define HARD_CURSORWIDTH 16 32 | #define HARD_CURSORHEIGHT 16 33 | #define COLOR_BITSPER_PIXEL 8 34 | #define MONO_SCREEN 0 35 | #define COLOR_SCREEN 1 36 | #define COLOR_MAX_Address (ColorDisplayRegion68k + 1152 * 900) 37 | 38 | /* Replicate a 4-bit pattern to fill a word */ 39 | #define Expand4Bit(BITS) \ 40 | ((BITS) | ((BITS) << 4) | ((BITS) << 8) | ((BITS) << 12)) 41 | 42 | #ifdef XWINDOW 43 | #define DISPLAYBUFFER 44 | #endif /* XWINDOW */ 45 | 46 | #ifdef SDL 47 | #define DISPLAYBUFFER 48 | #endif /* SDL */ 49 | 50 | #ifdef DOS 51 | #define DISPLAYBUFFER 52 | #endif /* DOS */ 53 | 54 | #ifdef DISPLAYBUFFER 55 | /************************************************************************/ 56 | /* */ 57 | /* i n _ d i s p l a y _ s e g m e n t */ 58 | /* */ 59 | /* Returns T if the base address for this bitblt is in the */ 60 | /* display segment. */ 61 | /* */ 62 | /************************************************************************/ 63 | /* Osamu '90/02/08 64 | * This definition is moved from initdsp.c 65 | * Changed into a macro for efficiency. 66 | * Also DISP_MAX_Address is changed to a variable 67 | * to avoid doing the same calculation every time it is used. 68 | *********************************************************************/ 69 | extern DLword *DisplayRegion68k; 70 | 71 | #define in_display_segment(baseaddr) \ 72 | (((DisplayRegion68k <= (baseaddr)) && \ 73 | ((baseaddr) <= DISP_MAX_Address)) ? T : NIL ) 74 | #endif 75 | 76 | #ifdef XWINDOW 77 | #undef DISPLAYBUFFER 78 | #endif /* XWINDOW */ 79 | 80 | #endif 81 | -------------------------------------------------------------------------------- /inc/dlpidefs.h: -------------------------------------------------------------------------------- 1 | #ifndef DLPIDEFS_H 2 | #define DLPIDEFS_H 1 3 | #include /* for u_char, u_long */ 4 | int setup_dlpi_dev(char *device); 5 | void flush_dlpi(int fd); 6 | int dlpi_devtype(int fd); 7 | int dlunitdatareq(int fd, u_char *addrp, int addrlen, u_long minpri, u_long maxpri, u_char *datap, int datalen); 8 | #endif 9 | -------------------------------------------------------------------------------- /inc/drawdefs.h: -------------------------------------------------------------------------------- 1 | #ifndef DRAWDEFS_H 2 | #define DRAWDEFS_H 1 3 | #include "lispemul.h" /* for LispPTR */ 4 | int N_OP_drawline(LispPTR ptr, int curbit, int xsize, int width, int ysize, int op, int delta, int numx, int numy); 5 | #endif 6 | -------------------------------------------------------------------------------- /inc/dskdefs.h: -------------------------------------------------------------------------------- 1 | #ifndef DSKDEFS_H 2 | #define DSKDEFS_H 1 3 | #include "lispemul.h" /* for LispPTR */ 4 | #ifdef DOS 5 | void separate_host(char *lfname, char *host, char *drive); 6 | #else 7 | void separate_host(char *lfname, char *host); 8 | #endif 9 | LispPTR COM_openfile(LispPTR *args); 10 | LispPTR COM_closefile(LispPTR *args); 11 | LispPTR DSK_getfilename(LispPTR *args); 12 | LispPTR DSK_deletefile(LispPTR *args); 13 | LispPTR DSK_renamefile(LispPTR *args); 14 | LispPTR DSK_directorynamep(LispPTR *args); 15 | LispPTR COM_getfileinfo(LispPTR *args); 16 | LispPTR COM_setfileinfo(LispPTR *args); 17 | LispPTR COM_readpage(LispPTR *args); 18 | LispPTR COM_writepage(LispPTR *args); 19 | LispPTR COM_truncatefile(LispPTR *args); 20 | LispPTR COM_changedir(LispPTR *args); 21 | LispPTR COM_getfreeblock(LispPTR *args); 22 | void separate_version(char *name, char *ver, int checkp); 23 | int unpack_filename(char *file, char *dir, char *name, char *ver, int checkp); 24 | int true_name(char *path); 25 | #endif 26 | -------------------------------------------------------------------------------- /inc/dspifdefs.h: -------------------------------------------------------------------------------- 1 | #ifndef DSPIFDEFS_H 2 | #define DSPIFDEFS_H 1 3 | #include "devif.h" 4 | void make_dsp_instance(DspInterface dsp, char *lispbitmap, int width_hint, int height_hint, int depth_hint); 5 | unsigned long GenericReturnT(void *d); 6 | void GenericReturnVoid(void *d); 7 | void GenericPanic(void *d); 8 | void describedsp(DspInterface dsp); 9 | #endif 10 | -------------------------------------------------------------------------------- /inc/dspsubrsdefs.h: -------------------------------------------------------------------------------- 1 | #ifndef DSPSUBRSDEFS_H 2 | #define DSPSUBRSDEFS_H 1 3 | #include "lispemul.h" /* for LispPTR */ 4 | void DSP_dspbout(LispPTR *args); 5 | void DSP_showdisplay(LispPTR *args); 6 | LispPTR DSP_VideoColor(LispPTR *args); 7 | void DSP_Cursor(LispPTR *args, int argnum); 8 | void DSP_SetMousePos(LispPTR *args); 9 | LispPTR DSP_ScreenWidth(LispPTR *args); 10 | LispPTR DSP_ScreenHight(LispPTR *args); 11 | void flip_cursor(void); 12 | #endif 13 | -------------------------------------------------------------------------------- /inc/emlglob.h: -------------------------------------------------------------------------------- 1 | #ifndef EMLGLOB_H 2 | #define EMLGLOB_H 1 3 | /* $Id: emlglob.h,v 1.2 1999/01/03 02:05:58 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */ 4 | 5 | /* 6 | * Copyright (C) 1987 by Fuji Xerox Co., Ltd. All rights reserved. 7 | * 8 | * Author : Takeshi Shimizu 9 | * Hiroshi Hayata 10 | 11 | */ 12 | /**********************************************************************/ 13 | /* 14 | File Name : emlglob.h 15 | 16 | Gloval variables for LispEmulator(external declared) 17 | 18 | Date : December 10, 1986 19 | Edited by : Takeshi Shimizu 20 | Changed by : H. Hayata (11-Feb-87) 21 | Changed : 5-Mar-87(take) 22 | 24-Apr-87 take 23 | 02-Jul-87 take 24 | 25 | */ 26 | /**********************************************************************/ 27 | 28 | 29 | 30 | /************************************************************************/ 31 | /* */ 32 | /* Copyright 1989, 1990 Venue, Fuji Xerox Co., Ltd, Xerox Corp. */ 33 | /* */ 34 | /* This file is work-product resulting from the Xerox/Venue */ 35 | /* Agreement dated 18-August-1989 for support of Medley. */ 36 | /* */ 37 | /************************************************************************/ 38 | 39 | #endif /* EMLGLOB_H */ 40 | -------------------------------------------------------------------------------- /inc/eqfdefs.h: -------------------------------------------------------------------------------- 1 | #ifndef EQFDEFS_H 2 | #define EQFDEFS_H 1 3 | #include "lispemul.h" /* for LispPTR */ 4 | LispPTR N_OP_clequal(LispPTR arg1, LispPTR arg2); 5 | LispPTR N_OP_eqlop(LispPTR arg1, LispPTR arg2); 6 | LispPTR N_OP_equal(LispPTR arg1, LispPTR arg2); 7 | LispPTR N_OP_eqq(LispPTR arg1, LispPTR arg2); 8 | #endif 9 | -------------------------------------------------------------------------------- /inc/etherdefs.h: -------------------------------------------------------------------------------- 1 | #ifndef ETHERDEFS_H 2 | #define ETHERDEFS_H 1 3 | #include "lispemul.h" /* for LispPTR */ 4 | LispPTR ether_suspend(LispPTR args[]); 5 | LispPTR ether_resume(LispPTR args[]); 6 | LispPTR ether_ctrlr(LispPTR args[]); 7 | LispPTR ether_reset(LispPTR args[]); 8 | LispPTR get_packet(void); 9 | LispPTR ether_get(LispPTR args[]); 10 | LispPTR ether_send(LispPTR args[]); 11 | LispPTR ether_setfilter(LispPTR args[]); 12 | int *ether_debug(void); 13 | LispPTR check_ether(void); 14 | void init_ifpage_ether(void); 15 | void init_ether(void); 16 | LispPTR check_sum(LispPTR *args); 17 | 18 | void setNethubHost(char* host); 19 | void setNethubPort(int port); 20 | void setNethubMac(int m0, int m1, int m2, int m3, int m4, int m5); 21 | void setNethubLogLevel(int ll); 22 | void connectToHub(void); 23 | #endif 24 | -------------------------------------------------------------------------------- /inc/fast_dsp.h: -------------------------------------------------------------------------------- 1 | #ifndef FAST_DSP_H 2 | #define FAST_DSP_H 1 3 | /* $Id: fast_dsp.h,v 1.2 1999/01/03 02:05:59 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */ 4 | 5 | /* These are the Macros Used to generate fast dispatch inline code. 6 | */ 7 | 8 | 9 | /************************************************************************/ 10 | /* */ 11 | /* (C) Copyright 1989, 1990, 1991 Venue. All Rights Reserved. */ 12 | /* Manufactured in the United States of America. */ 13 | /* */ 14 | /************************************************************************/ 15 | 16 | /************************************************************************/ 17 | /* */ 18 | /* F A S T O P C O D E D I S P A T C H M A C R O S */ 19 | /* */ 20 | /* These macros generate better opcode-dispatch code than the */ 21 | /* native compiler will. The difference may be only one or */ 22 | /* two instructions, but in the inner loop, that's a LOT. */ 23 | /* */ 24 | /* To add a new architecture, you must define 5 macros: */ 25 | /* */ 26 | /* nextop0 - for single-byte opcodes */ 27 | /* nextop1 - skip a byte and grab an opcode */ 28 | /* nextop2 - skip 2 bytes and grab an opcode */ 29 | /* nextop3 - skip 3 bytes and grab an opcode */ 30 | /* nextop4 - skip 4 bytes and grab an opcode */ 31 | /* */ 32 | /* (These macros are already defined naively, so undef them.) */ 33 | /* */ 34 | /* For existing implementations, these often expand out to */ 35 | /* calls to inline functions. */ 36 | /* */ 37 | /* */ 38 | /* */ 39 | /************************************************************************/ 40 | 41 | 42 | #ifdef OPDISP /* Only do any of this if OPDISP is set. */ 43 | 44 | /* We only need to redefine nextop0 as the others build upon it. */ 45 | #undef nextop0 46 | 47 | #define nextop0 goto *optable[Get_BYTE_PCMAC0] 48 | 49 | #endif /* OPDISP */ 50 | 51 | #endif /* FAST_DSP_H */ 52 | -------------------------------------------------------------------------------- /inc/findkeydefs.h: -------------------------------------------------------------------------------- 1 | #ifndef FINDKEYDEFS_H 2 | #define FINDKEYDEFS_H 1 3 | #include "lispemul.h" /* for LispPTR */ 4 | LispPTR N_OP_findkey(LispPTR tos, int byte); 5 | #endif 6 | -------------------------------------------------------------------------------- /inc/foreigndefs.h: -------------------------------------------------------------------------------- 1 | #ifndef FOREIGNDEFS_H 2 | #define FOREIGNDEFS_H 1 3 | #include "lispemul.h" /* for LispPTR */ 4 | LispPTR call_c_fn(LispPTR *args); 5 | LispPTR smashing_c_fn(LispPTR *args); 6 | int Mdld_link(LispPTR *args); 7 | int Mdld_unlink_by_file(LispPTR *args); 8 | int Mdld_unlink_by_symbol(LispPTR *args); 9 | unsigned long Mdld_get_symbol(LispPTR *args); 10 | unsigned long Mdld_get_func(LispPTR *args); 11 | int Mdld_function_executable_p(LispPTR *args); 12 | int Mdld_list_undefined_sym(void); 13 | int c_malloc(LispPTR *args); 14 | int c_free(LispPTR *args); 15 | int put_c_basebyte(LispPTR *args); 16 | int get_c_basebyte(LispPTR *args); 17 | #endif /* FOREIGNDEFS_H */ 18 | -------------------------------------------------------------------------------- /inc/fpdefs.h: -------------------------------------------------------------------------------- 1 | #ifndef FPDEFS_H 2 | #define FPDEFS_H 1 3 | #include "lispemul.h" /* for LispPTR */ 4 | LispPTR N_OP_fplus2(LispPTR parg1, LispPTR parg2); 5 | LispPTR N_OP_fdifference(LispPTR parg1, LispPTR parg2); 6 | LispPTR N_OP_ftimes2(LispPTR parg1, LispPTR parg2); 7 | LispPTR N_OP_fquotient(LispPTR parg1, LispPTR parg2); 8 | LispPTR N_OP_fgreaterp(LispPTR parg1, LispPTR parg2); 9 | #endif 10 | -------------------------------------------------------------------------------- /inc/fvardefs.h: -------------------------------------------------------------------------------- 1 | #ifndef FVARDEFS_H 2 | #define FVARDEFS_H 1 3 | #include "lispemul.h" /* for LispPTR, DLword */ 4 | #include "stack.h" /* for fnhead, frameex1 */ 5 | LispPTR N_OP_fvarn(int n); 6 | LispPTR N_OP_stkscan(LispPTR tos); 7 | LispPTR N_OP_fvar_(LispPTR tos, int n); 8 | void nnewframe(struct frameex1 *newpfra2, DLword *achain, int name); 9 | void nfvlookup(struct frameex1 *apframe1, DLword *achain, struct fnhead *apfnhead1); 10 | LispPTR native_newframe(int slot); 11 | #endif 12 | -------------------------------------------------------------------------------- /inc/gc2defs.h: -------------------------------------------------------------------------------- 1 | #ifndef GC2DEFS_H 2 | #define GC2DEFS_H 1 3 | void OP_gcscan1(void); 4 | void OP_gcscan2(void); 5 | #endif 6 | -------------------------------------------------------------------------------- /inc/gcarraydefs.h: -------------------------------------------------------------------------------- 1 | #ifndef GCARRAYDEFS_H 2 | #define GCARRAYDEFS_H 1 3 | #include "lispemul.h" /* for LispPTR, DLword */ 4 | LispPTR aref1(LispPTR array, int index); 5 | LispPTR find_symbol(const char *char_base, DLword offset, DLword length, LispPTR hashtbl, DLword fatp, DLword lispp); 6 | LispPTR get_package_atom(const char *char_base, DLword charlen, const char *packname, DLword packlen, int externalp); 7 | LispPTR with_symbol(LispPTR char_base, LispPTR offset, LispPTR charlen, LispPTR fatp, LispPTR hashtbl, LispPTR result); 8 | #endif 9 | -------------------------------------------------------------------------------- /inc/gccodedefs.h: -------------------------------------------------------------------------------- 1 | #ifndef GCCODEDEFS_H 2 | #define GCCODEDEFS_H 1 3 | #include "lispemul.h" /* for LispPTR */ 4 | LispPTR reclaimcodeblock(LispPTR codebase); 5 | int code_block_size(long unsigned int codeblock68k); 6 | #endif 7 | -------------------------------------------------------------------------------- /inc/gcdefs.h: -------------------------------------------------------------------------------- 1 | #ifndef GCDEFS_H 2 | #define GCDEFS_H 1 3 | void OP_gcref(void); 4 | #endif 5 | -------------------------------------------------------------------------------- /inc/gcfinaldefs.h: -------------------------------------------------------------------------------- 1 | #ifndef GCFINALDEFS_H 2 | #define GCFINALDEFS_H 1 3 | #include "lispemul.h" /* for LispPTR, DLword */ 4 | void printarrayblock(LispPTR base); 5 | int integerlength(unsigned int n); 6 | LispPTR findptrsbuffer(LispPTR ptr); 7 | LispPTR releasingvmempage(LispPTR ptr); 8 | LispPTR checkarrayblock(LispPTR base, LispPTR free, LispPTR onfreelist); 9 | LispPTR deleteblock(LispPTR base); 10 | LispPTR linkblock(LispPTR base); 11 | LispPTR makefreearrayblock(LispPTR block, DLword length); 12 | LispPTR arrayblockmerger(LispPTR base, LispPTR nbase); 13 | LispPTR mergebackward(LispPTR base); 14 | LispPTR mergeforward(LispPTR base); 15 | LispPTR reclaimarrayblock(LispPTR ptr); 16 | LispPTR reclaimstackp(LispPTR ptr); 17 | #endif 18 | 19 | 20 | -------------------------------------------------------------------------------- /inc/gchtfinddefs.h: -------------------------------------------------------------------------------- 1 | #ifndef GCHTFINDDEFS_H 2 | #define GCHTFINDDEFS_H 1 3 | #include "lispemul.h" /* for LispPTR, DLword */ 4 | #include "gcdata.h" /* for GCENTRY */ 5 | void enter_big_reference_count(LispPTR ptr); 6 | void modify_big_reference_count(GCENTRY *entry, DLword casep, LispPTR ptr); 7 | LispPTR htfind(LispPTR ptr, int casep); 8 | LispPTR rec_htfind(LispPTR ptr, int casep); 9 | #endif 10 | -------------------------------------------------------------------------------- /inc/gcmain3defs.h: -------------------------------------------------------------------------------- 1 | #ifndef GCMAIN3DEFS_H 2 | #define GCMAIN3DEFS_H 1 3 | #include "lispemul.h" /* for LispPTR */ 4 | LispPTR gcmapscan(void); 5 | LispPTR gcmapscan(void); 6 | LispPTR gcmapunscan(void); 7 | LispPTR gcscanstack(void); 8 | #endif 9 | -------------------------------------------------------------------------------- /inc/gcoflowdefs.h: -------------------------------------------------------------------------------- 1 | #ifndef GCOFLOWDEFS_H 2 | #define GCOFLOWDEFS_H 1 3 | #include "lispemul.h" /* for DLword */ 4 | DLword gc_handleoverflow(DLword arg); 5 | DLword gcmaptable(DLword arg); 6 | #endif 7 | -------------------------------------------------------------------------------- /inc/gcrcelldefs.h: -------------------------------------------------------------------------------- 1 | #ifndef GCRCELLDEFS_H 2 | #define GCRCELLDEFS_H 1 3 | #include "lispemul.h" /* for LispPTR */ 4 | void freelistcell(LispPTR cell); 5 | LispPTR gcreccell(LispPTR cell); 6 | void freelistcell(LispPTR cell); 7 | #endif 8 | -------------------------------------------------------------------------------- /inc/gcrdefs.h: -------------------------------------------------------------------------------- 1 | #ifndef GCRDEFS_H 2 | #define GCRDEFS_H 1 3 | void gcarrangementstack(void); 4 | void dogc01(void); 5 | void doreclaim(void); 6 | void disablegc1(int noerror); 7 | #endif 8 | -------------------------------------------------------------------------------- /inc/gcscandefs.h: -------------------------------------------------------------------------------- 1 | #ifndef GCSCANDEFS_H 2 | #define GCSCANDEFS_H 1 3 | int gcscan1(int probe); 4 | int gcscan2(int probe); 5 | #endif 6 | -------------------------------------------------------------------------------- /inc/gvar2defs.h: -------------------------------------------------------------------------------- 1 | #ifndef GVAR2DEFS_H 2 | #define GVAR2DEFS_H 1 3 | #include "lispemul.h" /* for LispPTR */ 4 | LispPTR N_OP_gvar_(LispPTR tos, unsigned int atom_index); 5 | LispPTR N_OP_rplptr(LispPTR tos_m_1, LispPTR tos, unsigned int alpha); 6 | #endif 7 | -------------------------------------------------------------------------------- /inc/hardrtndefs.h: -------------------------------------------------------------------------------- 1 | #ifndef HARDRTNDEFS_H 2 | #define HARDRTNDEFS_H 1 3 | #include "stack.h" /* for FX */ 4 | int slowreturn(void); 5 | void incusecount68k(FX *fx68k); 6 | #endif 7 | -------------------------------------------------------------------------------- /inc/inetdefs.h: -------------------------------------------------------------------------------- 1 | #ifndef INETDEFS_H 2 | #define INETDEFS_H 1 3 | #include "lispemul.h" /* for LispPTR */ 4 | LispPTR subr_TCP_ops(int op, LispPTR nameConn, LispPTR proto, LispPTR length, LispPTR bufaddr, LispPTR maxlen); 5 | #endif 6 | -------------------------------------------------------------------------------- /inc/initatms.h: -------------------------------------------------------------------------------- 1 | #ifndef INITATMS_H 2 | #define INITATMS_H 1 3 | /* $Id: initatms.h,v 1.2 1999/01/03 02:06:02 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */ 4 | 5 | 6 | /************************************************************************/ 7 | /* */ 8 | /* Copyright 1989, 1990 Venue, Fuji Xerox Co., Ltd, Xerox Corp. */ 9 | /* */ 10 | /* This file is work-product resulting from the Xerox/Venue */ 11 | /* Agreement dated 18-August-1989 for support of Medley. */ 12 | /* */ 13 | /************************************************************************/ 14 | 15 | 16 | /* 17 | * 18 | * Author : Takeshi Shimizu 19 | * Hiroshi Hayata 20 | */ 21 | /*********************************************************/ 22 | /* 23 | File : initatms.h 24 | System ATOMs 25 | 26 | last changed : 5-Mar-87 (take) 27 | 12-Aug-87 take 28 | ** MERGED AT AIS 29 | 30 | */ 31 | /*********************************************************/ 32 | 33 | #define ATOM_EVALFORM 248 34 | #define ATOM_GCHANDLEOVERFLOW 249 35 | #define ATOM_INTERPRETER 256 36 | 37 | #define ATOM_SMALLP 257 38 | #define ATOM_FIXP 258 39 | #define ATOM_FLOATP 259 40 | #define ATOM_LITATOM 260 41 | #define ATOM_LISTP 261 42 | #define ATOM_ARRAYP 262 43 | #define ATOM_STRINGP 263 44 | #define ATOM_STACKP 264 45 | #define ATOM_CHARACTER 265 46 | #define ATOM_VMEMPAGEP 266 47 | #endif /* INITATMS_H */ 48 | -------------------------------------------------------------------------------- /inc/initdspdefs.h: -------------------------------------------------------------------------------- 1 | #ifndef INITDSPDEFS_H 2 | #define INITDSPDEFS_H 1 3 | #include "lispemul.h" /* for DLword */ 4 | #include "version.h" /* for UNSIGNED */ 5 | void init_cursor(void); 6 | void set_cursor(void); 7 | void clear_display(void); 8 | void init_display2(DLword *display_addr, unsigned display_max); 9 | void display_before_exit(void); 10 | void flush_display_buffer(void); 11 | void flush_display_region(int x, int y, int w, int h); 12 | void byte_swapped_displayregion(int x, int y, int w, int h); 13 | void flush_display_lineregion(UNSIGNED x, DLword *ybase, int w, int h); 14 | void flush_display_ptrregion(DLword *ybase, UNSIGNED bitoffset, int w, int h); 15 | #endif 16 | -------------------------------------------------------------------------------- /inc/initkbddefs.h: -------------------------------------------------------------------------------- 1 | #ifndef INITKBDDEFS_H 2 | #define INITKBDDEFS_H 1 3 | void set_kbd_iopointers(void); 4 | void keyboardtype(int fd); 5 | void init_keyboard(int flg); 6 | void device_before_exit(void); 7 | void set_kbd_iopointers(void); 8 | void keyboardtype(int fd); 9 | #endif 10 | -------------------------------------------------------------------------------- /inc/initsoutdefs.h: -------------------------------------------------------------------------------- 1 | #ifndef INITSOUTDEFS_H 2 | #define INITSOUTDEFS_H 1 3 | #include "lispemul.h" /* for LispPTR */ 4 | LispPTR *fixp_value(LispPTR *ptr); 5 | void init_ifpage(unsigned sysout_size); 6 | void init_iopage(void); 7 | void build_lisp_map(void); 8 | void init_for_keyhandle(void); 9 | void init_for_bltchar(void); 10 | void init_for_bitblt(void); 11 | #endif 12 | -------------------------------------------------------------------------------- /inc/intcalldefs.h: -------------------------------------------------------------------------------- 1 | #ifndef INTCALLDEFS_H 2 | #define INTCALLDEFS_H 1 3 | void cause_interruptcall(unsigned int atom_index); 4 | #endif 5 | -------------------------------------------------------------------------------- /inc/kbdif.h: -------------------------------------------------------------------------------- 1 | #ifndef KBDIF_H 2 | #define KBDIF_H 1 3 | /* $Id: kbdif.h,v 1.2 1999/01/03 02:06:06 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */ 4 | 5 | /************************************************************************/ 6 | /* */ 7 | /* (C) Copyright 1990, 1990, 1991, 1992, 1993, 1994, 1995 Venue. */ 8 | /* All Rights Reserved. */ 9 | /* Manufactured in the United States of America. */ 10 | /* */ 11 | /************************************************************************/ 12 | #include /* for u_char */ 13 | 14 | /* The Keyboard structure. */ 15 | 16 | typedef struct { 17 | u_char KeyMap[0x80]; 18 | #ifdef DOS 19 | u_char lastbyte; 20 | void (*prev_handler)(); 21 | #endif /* DOS */ 22 | void (* sync_device)(); /* Make reality and emulator coincide with each other */ 23 | void (* enter_device)(); 24 | void (* exit_device)(); 25 | void (* device_event)(); 26 | void (* before_raid)(); 27 | void (* after_raid)(); 28 | int lispkeycode; 29 | #ifdef DOS 30 | int device_active; 31 | int device_locked; 32 | #endif /* DOS */ 33 | } KbdInterfaceRec, *KbdInterface; 34 | #endif /* KBDIF_H */ 35 | -------------------------------------------------------------------------------- /inc/kbdsubrsdefs.h: -------------------------------------------------------------------------------- 1 | #ifndef KBDSUBRSDEFS_H 2 | #define KBDSUBRSDEFS_H 1 3 | #include "lispemul.h" /* for LispPTR */ 4 | void KB_enable(LispPTR *args); 5 | void KB_beep(LispPTR *args); 6 | void KB_setmp(LispPTR *args); 7 | void KB_setled(LispPTR *args); 8 | #endif 9 | -------------------------------------------------------------------------------- /inc/keyeventdefs.h: -------------------------------------------------------------------------------- 1 | #ifndef KEYEVENTDEFS_H 2 | #define KEYEVENTDEFS_H 1 3 | #include 4 | void process_io_events(void); 5 | void kb_trans(u_short keycode, u_short upflg); 6 | void taking_mouse_down(void); 7 | void taking_mouse_up(int newx, int newy); 8 | void copy_cursor(int newx, int newy); 9 | void cursor_hidden_bitmap(int x, int y); 10 | #endif 11 | -------------------------------------------------------------------------------- /inc/kprintdefs.h: -------------------------------------------------------------------------------- 1 | #ifndef KPRINTDEFS_H 2 | #define KPRINTDEFS_H 1 3 | #include "lispemul.h" /* for LispPTR */ 4 | void prindatum(LispPTR x); 5 | LispPTR print(LispPTR x); 6 | void print_NEWstring(LispPTR x); 7 | void print_fixp(LispPTR x); 8 | void print_floatp(LispPTR x); 9 | void print_string(LispPTR x); 10 | #endif 11 | -------------------------------------------------------------------------------- /inc/ldeXdefs.h: -------------------------------------------------------------------------------- 1 | #ifndef LDEXDEFS_H 2 | #define LDEXDEFS_H 1 3 | 4 | /* $Id: ldeXdefs.h,v 1.2 1999/01/03 02:06:07 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */ 5 | 6 | /* * * * * X defs for all files in Medley * * * * */ 7 | 8 | /************************************************************************/ 9 | /* */ 10 | /* (C) Copyright 1989-92 Venue. All Rights Reserved. */ 11 | /* Manufactured in the United States of America. */ 12 | /* */ 13 | /************************************************************************/ 14 | 15 | #ifdef LOCK_X_UPDATES 16 | #define XLOCK do { XLocked++; } while (0) 17 | #define XUNLOCK(dsp) \ 18 | do { \ 19 | if (XLocked == 1 && XNeedSignal) \ 20 | { \ 21 | XNeedSignal = 0; \ 22 | getXsignaldata(dsp); \ 23 | }; \ 24 | XLocked--; \ 25 | } while (0) 26 | #else 27 | #define XLOCK 28 | #define XUNLOCK 29 | #endif /* LOCK_X_UPDATES */ 30 | 31 | #include 32 | extern volatile sig_atomic_t XLocked; 33 | extern volatile sig_atomic_t XNeedSignal; 34 | 35 | #endif 36 | 37 | -------------------------------------------------------------------------------- /inc/ldsoutdefs.h: -------------------------------------------------------------------------------- 1 | #ifndef LDSOUTDEFS_H 2 | #define LDSOUTDEFS_H 1 3 | unsigned sysout_loader(const char * sysout_file_name, unsigned sys_size); 4 | #endif 5 | -------------------------------------------------------------------------------- /inc/lineblt8defs.h: -------------------------------------------------------------------------------- 1 | #ifndef LINEBLT8DEFS_H 2 | #define LINEBLT8DEFS_H 1 3 | #include /* for u_char */ 4 | #include "lispemul.h" /* for LispPTR, DLword */ 5 | void lineBlt8(DLword *srcbase, int offset, u_char *destl, int width, 6 | u_char color0, u_char color1, LispPTR sourcetype, LispPTR operation); 7 | #endif 8 | -------------------------------------------------------------------------------- /inc/lisp2cdefs.h: -------------------------------------------------------------------------------- 1 | #ifndef LISP2CDEFS_H 2 | #define LISP2CDEFS_H 1 3 | #include "lispemul.h" /* for LispPTR */ 4 | int LispStringP(LispPTR object); 5 | int LispStringSimpleLength(LispPTR lispstring); 6 | void LispStringToCStr(LispPTR lispstring, char *cstring); 7 | int LispIntToCInt(LispPTR lispint); 8 | LispPTR CIntToLispInt(int cint); 9 | #endif 10 | -------------------------------------------------------------------------------- /inc/lispver1.h: -------------------------------------------------------------------------------- 1 | #ifndef LISPVER1_H 2 | #define LISPVER1_H 1 3 | /* $Id: lispver1.h,v 1.2 1999/01/03 02:06:08 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */ 4 | 5 | /* DOS version of LispVersionToUnixVersion */ 6 | #define LispVersionToUnixVersion(pathname, ver) \ 7 | do { \ 8 | \ 9 | char *cp; \ 10 | char *vp; \ 11 | char ver_buf[VERSIONLEN]; \ 12 | \ 13 | cp = pathname; \ 14 | vp = NULL; \ 15 | while (*cp) \ 16 | { \ 17 | switch (*cp) \ 18 | { \ 19 | \ 20 | case ';': \ 21 | *cp = 0; \ 22 | cp++; \ 23 | vp = cp; \ 24 | break; \ 25 | \ 26 | case '\'': \ 27 | if (*(cp + 1) != 0) cp += 2; \ 28 | else cp++; \ 29 | break; \ 30 | \ 31 | default: \ 32 | cp++; \ 33 | break; \ 34 | } \ 35 | } \ 36 | \ 37 | if (vp) \ 38 | { \ 39 | NumericStringP(vp, YES, NO); \ 40 | NO: *vp = 0; \ 41 | YES: \ 42 | if ((*vp)) ver = strtol(vp, (char **)NULL, 10); \ 43 | else ver = -1; \ 44 | } \ 45 | else ver = -1; \ 46 | } while (0) 47 | #endif /* LISPVER1_H */ 48 | -------------------------------------------------------------------------------- /inc/lispver2.h: -------------------------------------------------------------------------------- 1 | #ifndef LISPVER2_H 2 | #define LISPVER2_H 1 3 | /* $Id: lispver2.h,v 1.2 1999/01/03 02:06:09 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */ 4 | 5 | /* non-DOS version of LispVersionToUnixVersion */ 6 | 7 | #define LispVersionToUnixVersion(pathname) do { \ 8 | \ 9 | char *lv_cp; \ 10 | char *lv_vp; \ 11 | unsigned lv_ver; \ 12 | char lv_ver_buf[VERSIONLEN]; \ 13 | \ 14 | lv_cp = pathname; \ 15 | lv_vp = NULL; \ 16 | while (*lv_cp) { \ 17 | switch (*lv_cp) { \ 18 | \ 19 | case ';': \ 20 | lv_vp = lv_cp; \ 21 | lv_cp++; \ 22 | break; \ 23 | \ 24 | case '\'': \ 25 | if (*(lv_cp + 1) != 0) lv_cp += 2; \ 26 | else lv_cp++; \ 27 | break; \ 28 | \ 29 | default: \ 30 | lv_cp++; \ 31 | break; \ 32 | } \ 33 | } \ 34 | \ 35 | if (lv_vp != NULL) { \ 36 | /* \ 37 | * A semicolon which is not quoted has been found. \ 38 | */ \ 39 | if (*(lv_vp + 1) == 0) { \ 40 | /* \ 41 | * The empty version field. \ 42 | * This is regarded as a versionless file. \ 43 | */ \ 44 | *lv_vp = 0; \ 45 | } else { \ 46 | NumericStringP((lv_vp + 1), YES, NO); \ 47 | YES: \ 48 | /* \ 49 | * Convert the remaining field to digit. \ 50 | */ \ 51 | lv_ver = strtoul(lv_vp + 1, (char **)NULL, 10); \ 52 | if (lv_ver == 0) { \ 53 | /* versionless */ \ 54 | *lv_vp = 0; \ 55 | } else { \ 56 | sprintf(lv_ver_buf, ".~%u~", lv_ver); \ 57 | *lv_vp = 0; \ 58 | strcat(pathname, lv_ver_buf); \ 59 | } \ 60 | goto CONT; \ 61 | \ 62 | NO: \ 63 | strcpy(lv_ver_buf, lv_vp + 1); \ 64 | strcat(lv_ver_buf, "~"); \ 65 | *lv_vp++ = '.'; \ 66 | *lv_vp++ = '~'; \ 67 | *lv_vp = 0; \ 68 | strcat(pathname, lv_ver_buf); \ 69 | CONT: \ 70 | lv_vp--; /* Just for label */ \ 71 | } \ 72 | } \ 73 | } while (0) 74 | #endif /* LISPVER2_H */ 75 | -------------------------------------------------------------------------------- /inc/llcolordefs.h: -------------------------------------------------------------------------------- 1 | #ifndef LLCOLORDEFS_H 2 | #define LLCOLORDEFS_H 1 3 | #include "lispemul.h" /* for LispPTR */ 4 | LispPTR cgfour_init_color_display(LispPTR color_bitmapbase); 5 | LispPTR cgfour_change_screen_mode(LispPTR which_screen); 6 | LispPTR cgfour_set_colormap(LispPTR args[]); 7 | #endif 8 | -------------------------------------------------------------------------------- /inc/llstkdefs.h: -------------------------------------------------------------------------------- 1 | #ifndef LLSTKDEFS_H 2 | #define LLSTKDEFS_H 1 3 | #include "lispemul.h" /* for DLword */ 4 | #include "stack.h" /* for FX, StackWord, Bframe */ 5 | int do_stackoverflow(int incallp); 6 | DLword *freestackblock(DLword n, StackWord *start68k, int align); 7 | void decusecount68k(FX *frame68k); 8 | void flip_cursorbar(int n); 9 | void blt(DLword *dest68k, DLword *source68k, int nw); 10 | void stack_check(StackWord *start68k); 11 | void walk_stack(StackWord *start68k); 12 | int quick_stack_check(void); 13 | void check_FX(FX *fx68k); 14 | void check_BF(Bframe *bf68k); 15 | int check_stack_rooms(FX *fx68k); 16 | #endif 17 | -------------------------------------------------------------------------------- /inc/loopsopsdefs.h: -------------------------------------------------------------------------------- 1 | #ifndef LOOPSOPSDEFS_H 2 | #define LOOPSOPSDEFS_H 1 3 | #include "lispemul.h" /* for LispPTR */ 4 | LispPTR lcfuncall(unsigned int atom_index, int argnum, int bytenum); 5 | LispPTR LCinit(void); 6 | LispPTR LCFetchMethod(LispPTR class, LispPTR selector); 7 | LispPTR LCFetchMethodOrHelp(LispPTR object, LispPTR selector); 8 | LispPTR LCFindVarIndex(LispPTR iv, LispPTR object); 9 | LispPTR LCGetIVValue(LispPTR object, LispPTR iv); 10 | LispPTR LCPutIVValue(LispPTR object, LispPTR iv, LispPTR val); 11 | LispPTR lcfuncall(unsigned int atom_index, int argnum, int bytenum); 12 | #endif 13 | -------------------------------------------------------------------------------- /inc/lowlev1defs.h: -------------------------------------------------------------------------------- 1 | #ifndef LOWLEV1DEFS_H 2 | #define LOWLEV1DEFS_H 1 3 | #include "lispemul.h" /* for LispPTR */ 4 | LispPTR N_OP_putbitsnfd(LispPTR base, LispPTR data, int word_offset, int beta); 5 | LispPTR N_OP_getbitsnfd(int base_addr, int word_offset, int beta); 6 | LispPTR N_OP_putbasen(LispPTR base, LispPTR tos, int n); 7 | LispPTR N_OP_putbaseptrn(LispPTR base, LispPTR tos, int n); 8 | #endif 9 | -------------------------------------------------------------------------------- /inc/lowlev2defs.h: -------------------------------------------------------------------------------- 1 | #ifndef LOWLEV2DEFS_H 2 | #define LOWLEV2DEFS_H 1 3 | #include "lispemul.h" /* for LispPTR */ 4 | LispPTR N_OP_addbase(LispPTR base, LispPTR offset); 5 | LispPTR N_OP_getbasebyte(LispPTR base_addr, LispPTR byteoffset); 6 | LispPTR N_OP_putbasebyte(LispPTR base_addr, LispPTR byteoffset, LispPTR tos); 7 | #endif 8 | -------------------------------------------------------------------------------- /inc/lpglob.h: -------------------------------------------------------------------------------- 1 | #ifndef LPGLOB_H 2 | #define LPGLOB_H 1 3 | /* $Id: lpglob.h,v 1.2 1999/01/03 02:06:13 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */ 4 | 5 | /* Globals */ 6 | extern lprec *Lp; /* extern pointer to active problem */ 7 | extern int Rows; 8 | extern int Columns; 9 | extern int Sum; 10 | extern int Non_zeros; 11 | extern int Level; 12 | extern matrec *Mat; 13 | extern int *Col_no; 14 | extern int *Col_end; 15 | extern int *Row_end; 16 | extern REAL *Orig_rh; 17 | extern REAL *Rh; 18 | extern REAL *Rhs; 19 | extern short *Must_be_int; 20 | extern REAL *Orig_upbo; 21 | extern REAL *Orig_lowbo; 22 | extern REAL *Upbo; 23 | extern REAL *Lowbo; 24 | extern int *Bas; 25 | extern short *Basis; 26 | extern short *Lower; 27 | extern int Eta_alloc; 28 | extern int Eta_size; 29 | extern int Num_inv; 30 | extern REAL *Eta_value; 31 | extern int *Eta_row_nr; 32 | extern int *Eta_col_end; 33 | extern REAL *Solution; 34 | extern REAL *Best_solution; 35 | extern REAL Infinite; 36 | extern REAL Epsilon; 37 | extern REAL Epsb; 38 | extern REAL Epsd; 39 | extern REAL Epsel; 40 | 41 | extern REAL TREJ; 42 | extern REAL TINV; 43 | 44 | extern short Maximise; 45 | extern short Floor_first; 46 | extern REAL Extrad; 47 | 48 | extern int Warn_count; 49 | 50 | extern short just_inverted; 51 | extern short status; 52 | extern short do_iter; 53 | extern short do_invert; 54 | 55 | 56 | /* Globals for parser */ 57 | extern FILE *yyin; 58 | extern FILE *lpfilename; 59 | extern short Molve_dual; 60 | extern short Maximise; 61 | extern short *relat; 62 | extern int Verbose; 63 | extern int yylineno; 64 | extern int yyleng; 65 | extern int Lin_term_count; 66 | extern int Sign; 67 | extern constraint_name *First_constraint_name; 68 | /* I hate #ifdefs, but there seems to be no "standard" way to do this */ 69 | #if defined(_AIX) 70 | /* for AIX, and possibly others */ 71 | extern unsigned char yytext[]; 72 | #else 73 | /* For other computers */ 74 | extern char yytext[]; 75 | #endif 76 | 77 | extern hashelem *Hash_tab[]; 78 | extern rside *First_rside; 79 | extern short Ignore_decl; 80 | 81 | extern tmp_store_struct tmp_store; 82 | #endif /* LPGLOB_H */ 83 | -------------------------------------------------------------------------------- /inc/lpglobl.h: -------------------------------------------------------------------------------- 1 | #ifndef LPGLOBL_H 2 | #define LPGLOBL_H 1 3 | /* $Id: lpglobl.h,v 1.2 1999/01/03 02:06:14 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */ 4 | 5 | 6 | 7 | /************************************************************************/ 8 | /* */ 9 | /* (C) Copyright 1989, 1990, 1990, 1991, 1992, 1993, 1994, 1995 Venue. */ 10 | /* All Rights Reserved. */ 11 | /* Manufactured in the United States of America. */ 12 | /* */ 13 | /************************************************************************/ 14 | 15 | /* function declarations */ 16 | #include "lpproto.h" 17 | 18 | /* global variables */ 19 | extern int Rows, Columns, Nonnuls, Sum; 20 | extern double Extrad; 21 | extern double *Pcol; /* [Rows+1] */ 22 | extern nstring Probname; 23 | extern int Totnum, Classnr, Linenr; 24 | extern short Bounds, Ranges, Verbose, Debug, Show_results, Print_duals; 25 | extern unsigned Cur_eta_size; 26 | extern double *Eta_value; 27 | extern int *Eta_rownr; 28 | extern constraint_name *First_constraint_name; 29 | 30 | extern matrec *Mat; 31 | extern double *Upbo, *Lowbo; 32 | extern nstring *Names; 33 | extern int *Cend; 34 | extern double *Rh; 35 | extern short *Relat; 36 | 37 | extern short *Chsign; 38 | extern int *Endetacol; 39 | extern int *Rend, *Bas; 40 | extern double *Rhs; 41 | extern int *Colno; 42 | extern short *Basis, *Lower; 43 | extern short Maximise; 44 | 45 | extern double *Solution, *Best_solution, *Orig_rh, *Orig_upbo, *Orig_lowbo; 46 | extern short *Must_be_int; 47 | extern short Having_ints; 48 | extern matrec *Orig_mat; 49 | extern int Level; 50 | extern short Floorfirst; 51 | 52 | extern intrec *First_int; 53 | 54 | /* external variables for yy_trans and the yacc parser */ 55 | extern int yylineno; 56 | extern int yyleng; 57 | extern int Lin_term_count; 58 | extern int Sign; 59 | 60 | /* For other computers */ 61 | extern char yytext[]; 62 | 63 | /*extern hashelem *Hash_tab[HASH_SIZE];*/ 64 | extern rside *First_rside; 65 | extern short Ignore_decl; 66 | 67 | extern tmp_store_struct tmp_store; 68 | 69 | extern int SolveCount; 70 | extern jmp_buf LP_jmpbuf; 71 | 72 | 73 | #endif /* LPGLOBL_H */ 74 | -------------------------------------------------------------------------------- /inc/lppatch.h: -------------------------------------------------------------------------------- 1 | #ifndef LPPATCH_H 2 | #define LPPATCH_H 1 3 | /* $Id: lppatch.h,v 1.2 1999/01/03 02:06:15 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */ 4 | #define PATCHLEVEL "1.5" 5 | #endif /* LPPATCH_H */ 6 | -------------------------------------------------------------------------------- /inc/lpproto.h: -------------------------------------------------------------------------------- 1 | #ifndef LPPROTO_H 2 | #define LPPROTO_H 1 3 | /* $Id: lpproto.h,v 1.2 1999/01/03 02:06:15 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */ 4 | /* dual.c */ 5 | void rowdual(int *rownr); 6 | short coldual(int rownr, int *colnr, short minit, REAL *prow, REAL *drow); 7 | 8 | /* lp.c */ 9 | int yyparse(void); 10 | 11 | /* read.c */ 12 | void yyerror(char *string); 13 | void check_decl(char *str); 14 | void add_int_var(char *name); 15 | void init_read(void); 16 | void null_tmp_store(void); 17 | void store_re_op(void); 18 | void rhs_store(REAL value); 19 | void var_store(char *var, int row, REAL value); 20 | int store_bounds(void); 21 | void add_constraint_name(char *name, int row); 22 | void readinput(int *cend, REAL *rh, short *relat, REAL *lowbo, REAL *upbo, matrec *mat, nstring *names); 23 | 24 | /* tran.c */ 25 | void ftran(int start, int end, REAL *pcol); 26 | void btran(int numc, REAL *row); 27 | 28 | /* main.c */ 29 | 30 | /* solve.c */ 31 | int solve(REAL *upbo, REAL *lowbo, short *sbasis, short *slower, int *sbas, 32 | sstate *t); 33 | 34 | /* write.c */ 35 | void print_solution(FILE *stream, REAL *sol, REAL *duals); 36 | void debug_print_solution(REAL *sol); 37 | void debug_print_bounds(REAL *upbo, REAL *lowbo); 38 | void debug_print(char *format, ...); 39 | #endif /* LPPROTO_H */ 40 | -------------------------------------------------------------------------------- /inc/lsthandldefs.h: -------------------------------------------------------------------------------- 1 | #ifndef LSTHANDLDEFS_H 2 | #define LSTHANDLDEFS_H 1 3 | #include "lispemul.h" /* for LispPTR */ 4 | LispPTR N_OP_fmemb(LispPTR item, LispPTR tos); 5 | LispPTR fmemb(LispPTR item, LispPTR list); 6 | LispPTR N_OP_listget(LispPTR plist, LispPTR tos); 7 | #endif 8 | -------------------------------------------------------------------------------- /inc/maindefs.h: -------------------------------------------------------------------------------- 1 | #ifndef MAINDEFS_H 2 | #define MAINDEFS_H 1 3 | void start_lisp(void); 4 | void print_info_lines(void); 5 | #endif 6 | -------------------------------------------------------------------------------- /inc/medleyfp.h: -------------------------------------------------------------------------------- 1 | #ifndef MEDLEYFP_H 2 | #define MEDLEYFP_H 1 3 | /* $Id: medleyfp.h,v 1.2 1999/01/03 02:06:16 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */ 4 | 5 | 6 | /************************************************************************/ 7 | /* */ 8 | /* (C) Copyright 1989-94 Venue. All Rights Reserved. */ 9 | /* Manufactured in the United States of America. */ 10 | /* */ 11 | /************************************************************************/ 12 | 13 | /************************************************************************/ 14 | /* */ 15 | /* */ 16 | /* */ 17 | /* */ 18 | /* */ 19 | /************************************************************************/ 20 | 21 | /* -------------------------------------------------- 22 | FPCLEAR - clear status as necessary 23 | FPTEST(result) - check result or status 24 | 25 | Sun 4 compiler w. -O2 moves too much code around 26 | to use FLTINT. 27 | -------------------------------------------------- */ 28 | 29 | #ifdef FLTINT 30 | #include 31 | extern volatile sig_atomic_t FP_error; 32 | 33 | /* Note that a compiler may very likely move code around the arithmetic 34 | operation, causing this test (set by an interrupt handler) to be 35 | incorrect. For example, the Sun SPARC compiler with -O2 makes 36 | this test incorrect. 37 | */ 38 | 39 | #define FPCLEAR FP_error = 0; 40 | #define FPTEST(result) FP_error 41 | 42 | #elif defined(DOS) 43 | #include 44 | #define FPCLEAR do {} while (0) 45 | #define FPTEST(result) (_getrealerror() & ( I87_ZERO_DIVIDE | I87_OVERFLOW | I87_UNDERFLOW)) 46 | 47 | #else 48 | #include 49 | #define FPCLEAR do {} while (0) 50 | #define FPTEST(result) (!isfinite(result)) 51 | 52 | #endif /* FLTINT */ 53 | #endif /* MEDLEYFP_H */ 54 | -------------------------------------------------------------------------------- /inc/misc7defs.h: -------------------------------------------------------------------------------- 1 | #ifndef MISC7DEFS_H 2 | #define MISC7DEFS_H 1 3 | #include "lispemul.h" /* for LispPTR */ 4 | LispPTR N_OP_misc7(LispPTR arg1, LispPTR arg2, LispPTR arg3, LispPTR arg4, LispPTR arg5, LispPTR arg6, LispPTR arg7, int alpha); 5 | #endif 6 | -------------------------------------------------------------------------------- /inc/miscndefs.h: -------------------------------------------------------------------------------- 1 | #ifndef MISCNDEFS_H 2 | #define MISCNDEFS_H 1 3 | int OP_miscn(int misc_index, int arg_count); 4 | #endif 5 | -------------------------------------------------------------------------------- /inc/miscstat.h: -------------------------------------------------------------------------------- 1 | #ifndef MISCSTAT_H 2 | #define MISCSTAT_H 1 3 | /* $Id: miscstat.h,v 1.2 1999/01/03 02:06:17 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */ 4 | 5 | /* 6 | * Copyright (C) 1987 by Fuji Xerox Co., Ltd. All rights reserved. 7 | * 8 | * by : Yasuhiko Kiuchi 9 | */ 10 | 11 | 12 | /************************************************************************/ 13 | /* */ 14 | /* Copyright 1989, 1990 Venue, Fuji Xerox Co., Ltd, Xerox Corp. */ 15 | /* */ 16 | /* This file is work-product resulting from the Xerox/Venue */ 17 | /* Agreement dated 18-August-1989 for support of Medley. */ 18 | /* */ 19 | /************************************************************************/ 20 | 21 | 22 | typedef struct misc 23 | { 24 | int starttime; 25 | int totaltime; 26 | int swapwaittime; 27 | int pagefaults; 28 | int swapwrites; 29 | int diskiotime; 30 | int diskops; 31 | int keyboardwaittime; 32 | int gctime; 33 | int netiotime; 34 | int netioops; 35 | int swaptemp0; 36 | int swaptemp1; 37 | unsigned int rclksecond; 38 | unsigned int secondsclock; 39 | unsigned int millisecondsclock; 40 | unsigned int baseclock; 41 | unsigned int rclktemp0; 42 | unsigned int secondstmp; 43 | unsigned int millisecondstmp; 44 | unsigned int basetmp; 45 | int excesstimetmp; 46 | int clocktemp0; 47 | int disktemp0; 48 | int disktemp1; 49 | int teleraidtemp1; 50 | int teleraidtemp2; 51 | int teleraidtemp3; 52 | int lastuseraction; 53 | int dlmousetimer; 54 | int dlmousetemp; 55 | } MISCSTATS; 56 | #endif /* MISCSTAT_H */ 57 | -------------------------------------------------------------------------------- /inc/mkatomdefs.h: -------------------------------------------------------------------------------- 1 | #ifndef MKATOMDEFS_H 2 | #define MKATOMDEFS_H 1 3 | #include "lispemul.h" /* for LispPTR, DLword */ 4 | DLword compute_hash(const char *char_base, DLword offset, DLword length); 5 | DLword compute_lisp_hash(const char *char_base, DLword offset, DLword length, DLword fatp); 6 | LispPTR compare_chars(const char *char1, const char *char2, DLword length); 7 | LispPTR compare_lisp_chars(const char *char1, const char *char2, DLword length, DLword fat1, DLword fat2); 8 | LispPTR make_atom(const char *char_base, DLword offset, DLword length); 9 | #endif 10 | -------------------------------------------------------------------------------- /inc/mkcelldefs.h: -------------------------------------------------------------------------------- 1 | #ifndef MKCELLDEFS_H 2 | #define MKCELLDEFS_H 1 3 | #include "lispemul.h" /* for LispPTR, DLword */ 4 | LispPTR N_OP_createcell(LispPTR tos); 5 | void *createcell68k(unsigned int type); 6 | #endif 7 | -------------------------------------------------------------------------------- /inc/mvsdefs.h: -------------------------------------------------------------------------------- 1 | #ifndef MVSDEFS_H 2 | #define MVSDEFS_H 1 3 | #include "lispemul.h" /* for LispPTR */ 4 | #include "stack.h" /* for FX2 */ 5 | LispPTR make_value_list(int argcount, LispPTR *argarray); 6 | void simulate_unbind(FX2 *frame, int unbind_count, FX2 *returner); 7 | LispPTR values(int arg_count, LispPTR *args); 8 | LispPTR values_list(int arg_count, LispPTR *args); 9 | #endif 10 | -------------------------------------------------------------------------------- /inc/nfsfh.h: -------------------------------------------------------------------------------- 1 | #ifndef NFSFH_H 2 | #define NFSFH_H 1 3 | /* $Id: nfsfh.h,v 1.2 1999/01/03 02:06:18 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */ 4 | /* 5 | * 6 | * nfsfh.h - NFS file handle definitions (for portable use) 7 | * 8 | * Jeffrey C. Mogul 9 | * Digital Equipment Corporation 10 | * Western Research Laboratory 11 | * 12 | * $Log: nfsfh.h,v $ 13 | * Revision 1.2 1999/01/03 02:06:18 sybalsky 14 | * Add ID comments / static to files for CVS use 15 | * 16 | * Revision 1.1.1.1 1998/12/17 05:03:18 sybalsky 17 | * Import of Medley 3.5 emulator 18 | * 19 | * Revision 1.1 93/10/01 16:09:01 mogul 20 | * Initial revision 21 | * 22 | */ 23 | 24 | /* 25 | * Internal representation of dev_t, because different NFS servers 26 | * that we might be spying upon use different external representations. 27 | */ 28 | typedef struct { 29 | u_long Minor; /* upper case to avoid clashing with macro names */ 30 | u_long Major; 31 | } my_devt; 32 | 33 | #define dev_eq(a,b) ((a.Minor == b.Minor) && (a.Major == b.Major)) 34 | 35 | /* 36 | * Many file servers now use a large file system ID. This is 37 | * our internal representation of that. 38 | */ 39 | typedef struct { 40 | my_devt fsid_dev; 41 | u_long fsid_code; 42 | } my_fsid; 43 | 44 | #define fsid_eq(a,b) ((a.fsid_code == b.fsid_code) &&\ 45 | dev_eq(a.fsid_dev, b.fsid_dev)) 46 | #endif /* NFSFH_H */ 47 | -------------------------------------------------------------------------------- /inc/osmsgdefs.h: -------------------------------------------------------------------------------- 1 | #ifndef OSMSGDEFS_H 2 | #define OSMSGDEFS_H 1 3 | #include "lispemul.h" /* for LispPTR */ 4 | void mess_init(void); 5 | void mess_reset(void); 6 | LispPTR mess_read(LispPTR *args); 7 | LispPTR mess_readp(void); 8 | LispPTR flush_pty(void); 9 | #endif 10 | -------------------------------------------------------------------------------- /inc/osmsgprint.h: -------------------------------------------------------------------------------- 1 | #ifndef OSMSGPRINT_H 2 | #define OSMSGPRINT_H 1 3 | /* $Id: osmsg.h,v 1.2 1999/01/03 02:06:20 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */ 4 | 5 | 6 | /************************************************* 7 | This is OSMESSAGE stuff. 8 | 9 | Print a console message. 10 | *************************************************/ 11 | 12 | /************************************************************************/ 13 | /* */ 14 | /* (C) Copyright 1989-98 Venue. All Rights Reserved. */ 15 | /* Manufactured in the United States of America. */ 16 | /* */ 17 | /************************************************************************/ 18 | #include "osmsgdefs.h" // for flush_pty 19 | 20 | #define OSMESSAGE_PRINT(print_exp) \ 21 | do { \ 22 | flush_pty(); \ 23 | print_exp; \ 24 | } while (0) 25 | 26 | #endif /* OSMSGPRINT_H */ 27 | -------------------------------------------------------------------------------- /inc/perrnodefs.h: -------------------------------------------------------------------------------- 1 | #ifndef PERRNODEFS_H 2 | #define PERRNODEFS_H 1 3 | void perrorn(char *s, int n); 4 | void err_mess(char *from, int no); 5 | #endif 6 | -------------------------------------------------------------------------------- /inc/picture.h: -------------------------------------------------------------------------------- 1 | #ifndef PICTURE_H 2 | #define PICTURE_H 1 3 | /* $Id: picture.h,v 1.2 1999/01/03 02:06:20 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */ 4 | 5 | /************************************************************************/ 6 | /* */ 7 | /* (C) Copyright 1989-98 Venue. All Rights Reserved. */ 8 | /* Manufactured in the United States of America. */ 9 | /* */ 10 | /************************************************************************/ 11 | #include "lispemul.h" /* for LispPTR, DLword */ 12 | 13 | typedef struct _picture{ 14 | DLword width; 15 | DLword height; 16 | DLword bitsperpixel; 17 | DLword nil; 18 | unsigned int storage; 19 | LispPTR userdata; 20 | } LispPicture; 21 | #endif /* PICTURE_H */ 22 | -------------------------------------------------------------------------------- /inc/print.h: -------------------------------------------------------------------------------- 1 | #ifndef PRINT_H 2 | #define PRINT_H 1 3 | /* $Id: print.h,v 1.2 1999/01/03 02:06:21 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */ 4 | 5 | 6 | 7 | /************************************************************************/ 8 | /* */ 9 | /* (C) Copyright 1989-96 Venue. All Rights Reserved. */ 10 | /* Manufactured in the United States of America. */ 11 | /* */ 12 | /************************************************************************/ 13 | 14 | /************************************************************************/ 15 | /* */ 16 | /* Syntax-class & character defns for PRINT code in C. */ 17 | /* */ 18 | /* */ 19 | /* */ 20 | /************************************************************************/ 21 | 22 | 23 | /************************************************************************/ 24 | /* */ 25 | /* Copyright 1989, 1990 Venue, Fuji Xerox Co., Ltd, Xerox Corp. */ 26 | /* */ 27 | /* This file is work-product resulting from the Xerox/Venue */ 28 | /* Agreement dated 18-August-1989 for support of Medley. */ 29 | /* */ 30 | /************************************************************************/ 31 | 32 | 33 | 34 | #define LEFT_PAREN 40 35 | #define RIGHT_PAREN 41 36 | #define SPACE 32 37 | #define PERCENT 37 38 | #define DOTCODE 46 39 | #define DOUBLEQUOTE 34 40 | #define ATOMINDEXDOT 48 41 | 42 | #endif /* PRINT_H */ 43 | -------------------------------------------------------------------------------- /inc/rawcolordefs.h: -------------------------------------------------------------------------------- 1 | #ifndef RAWCOLORDEFS_H 2 | #define RAWCOLORDEFS_H 1 3 | #include "lispemul.h" /* for LispPTR */ 4 | void C_slowbltchar(LispPTR *args); 5 | LispPTR Colorize_Bitmap(LispPTR args[]); 6 | void Draw_8BppColorLine(LispPTR *args); 7 | void Uncolorize_Bitmap(LispPTR args[]); 8 | #endif 9 | -------------------------------------------------------------------------------- /inc/rawrs232c.h: -------------------------------------------------------------------------------- 1 | #ifndef RAWRS232C_H 2 | #define RAWRS232C_H 1 3 | /* $Id: rawrs232c.h,v 1.2 1999/01/03 02:06:22 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */ 4 | 5 | /************************************************************************/ 6 | /* */ 7 | /* (C) Copyright 1989-96 Venue. All Rights Reserved. */ 8 | /* Manufactured in the United States of America. */ 9 | /* */ 10 | /************************************************************************/ 11 | #include "lispemul.h" /* for LispPTR */ 12 | 13 | typedef struct raw232cparam { 14 | LispPTR BauRate; 15 | LispPTR BitsPerChar; 16 | LispPTR Parity; 17 | LispPTR LocalLine; 18 | LispPTR NoOfStopBits; 19 | LispPTR FlowCnt; 20 | LispPTR InEOL; 21 | LispPTR OutEOL; 22 | LispPTR InputMaxBell; 23 | LispPTR Canon; 24 | LispPTR Echo; 25 | LispPTR ModemStatusLine; 26 | LispPTR RTSCTSCnt; 27 | } RawRSParam; 28 | 29 | 30 | #define RAW_RS_NONE 1 31 | #define RAW_RS_ODD 2 32 | #define RAW_RS_EVEN 3 33 | #define RAW_RS_XON 2 34 | #define RAW_RS_CR 1 35 | #define RAW_RS_LF 2 36 | #define RAW_RS_CRLF 3 37 | 38 | #endif /* RAWRS232C_H */ 39 | -------------------------------------------------------------------------------- /inc/returndefs.h: -------------------------------------------------------------------------------- 1 | #ifndef RETURNDEFS_H 2 | #define RETURNDEFS_H 1 3 | #include "lispemul.h" /* for DLword */ 4 | void OP_contextsw(void); 5 | void contextsw(DLword fxnum, DLword bytenum, DLword flags); 6 | #endif 7 | -------------------------------------------------------------------------------- /inc/rpcdefs.h: -------------------------------------------------------------------------------- 1 | #ifndef RPCDEFS_H 2 | #define RPCDEFS_H 1 3 | #include "lispemul.h" /* for LispPTR */ 4 | LispPTR rpc(LispPTR *args); 5 | #endif 6 | -------------------------------------------------------------------------------- /inc/rplconsdefs.h: -------------------------------------------------------------------------------- 1 | #ifndef RPLCONSDEFS_H 2 | #define RPLCONSDEFS_H 1 3 | #include "lispemul.h" /* for LispPTR */ 4 | LispPTR N_OP_rplcons(LispPTR list, LispPTR item); 5 | #endif 6 | -------------------------------------------------------------------------------- /inc/sdldefs.h: -------------------------------------------------------------------------------- 1 | #ifndef SDLDEFS_H 2 | #define SDLDEFS_H 1 3 | 4 | void sdl_notify_damage(int x, int y, int w, int h); 5 | void sdl_setCursor(int hot_x, int hot_y); 6 | void sdl_bitblt_to_screen(int x, int y, int w, int h); 7 | void sdl_set_invert(int flag); 8 | void sdl_setMousePosition(int x, int y); 9 | void process_SDLevents(); 10 | int init_SDL(char *windowtitle, int w, int h, int s); 11 | #endif 12 | -------------------------------------------------------------------------------- /inc/shiftdefs.h: -------------------------------------------------------------------------------- 1 | #ifndef SHIFTDEFS_H 2 | #define SHIFTDEFS_H 1 3 | #include "lispemul.h" /* for LispPTR */ 4 | LispPTR N_OP_llsh1(LispPTR a); 5 | LispPTR N_OP_llsh8(LispPTR a); 6 | LispPTR N_OP_lrsh1(LispPTR a); 7 | LispPTR N_OP_lrsh8(LispPTR a); 8 | LispPTR N_OP_lsh(LispPTR a, LispPTR b); 9 | #endif 10 | -------------------------------------------------------------------------------- /inc/storagedefs.h: -------------------------------------------------------------------------------- 1 | #ifndef STORAGEDEFS_H 2 | #define STORAGEDEFS_H 1 3 | #include "lispemul.h" /* for LispPTR */ 4 | void checkfor_storagefull(unsigned int npages); 5 | LispPTR newpage(LispPTR base); 6 | void init_storage(void); 7 | #endif 8 | -------------------------------------------------------------------------------- /inc/subr0374defs.h: -------------------------------------------------------------------------------- 1 | #ifndef SUBR0374DEFS_H 2 | #define SUBR0374DEFS_H 1 3 | #include "lispemul.h" /* for LispPTR */ 4 | LispPTR subr_k_trace(LispPTR *args); 5 | #endif 6 | -------------------------------------------------------------------------------- /inc/subrdefs.h: -------------------------------------------------------------------------------- 1 | #ifndef SUBRDEFS_H 2 | #define SUBRDEFS_H 1 3 | void OP_subrcall(int subr_no, int argnum); 4 | #endif 5 | -------------------------------------------------------------------------------- /inc/sxhashdefs.h: -------------------------------------------------------------------------------- 1 | #ifndef SXHASHDEFS_H 2 | #define SXHASHDEFS_H 1 3 | #include "lispemul.h" /* for LispPTR */ 4 | LispPTR SX_hash(LispPTR object); 5 | LispPTR STRING_EQUAL_HASHBITS(LispPTR object); 6 | LispPTR STRING_HASHBITS(LispPTR object); 7 | #endif 8 | -------------------------------------------------------------------------------- /inc/testtooldefs.h: -------------------------------------------------------------------------------- 1 | #ifndef TESTTOOLDEFS_H 2 | #define TESTTOOLDEFS_H 1 3 | #include "lispemul.h" /* for LispPTR, DLword, DLbyte */ 4 | #include "cell.h" /* for conspage */ 5 | #include "stack.h" /* for frameex1, FX, Bframe, fnhead */ 6 | void print_package_name(int index); 7 | void print_atomname(LispPTR index); 8 | int find_package_from_name(const char *packname, int len); 9 | void print_package_name(int index); 10 | void dump_dtd(void); 11 | void check_type_68k(int type, LispPTR *ptr); 12 | int type_num(LispPTR lispptr); 13 | void dump_conspage(struct conspage *base, int linking); 14 | void trace_listpDTD(void); 15 | void a68k(LispPTR lispptr); 16 | void laddr(DLword *addr68k); 17 | void dump_fnbody(LispPTR fnblockaddr); 18 | void dump_fnobj(LispPTR index); 19 | int print_opcode(int pc, DLbyte *addr, struct fnhead *fnobj); 20 | void doko(void); 21 | void dumpl(LispPTR laddr); 22 | void dumps(LispPTR laddr); 23 | void printPC(void); 24 | void dump_bf(Bframe *bf); 25 | void dump_fx(struct frameex1 *fx_addr68k); 26 | void dump_stackframe(struct frameex1 *fx_addr68k); 27 | void dump_CSTK(int before); 28 | void btv(void); 29 | int get_framename(struct frameex1 *fx_addr68k); 30 | FX *get_nextFX(FX *fx); 31 | LispPTR MAKEATOM(char *string); 32 | LispPTR *MakeAtom68k(char *string); 33 | void GETTOPVAL(char *string); 34 | void all_stack_dump(DLword start, DLword end, DLword silent); 35 | void dtd_chain(DLword type); 36 | void check_dtd_chain(DLword type); 37 | void Trace_FNCall(int numargs, int atomindex, int arg1, LispPTR *tos); 38 | void Trace_APPLY(int atomindex); 39 | #endif 40 | -------------------------------------------------------------------------------- /inc/timeout.h: -------------------------------------------------------------------------------- 1 | #ifndef TIMEOUT_H 2 | #define TIMEOUT_H 1 3 | /* $Id: timeout.h,v 1.2 1999/01/03 02:06:27 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */ 4 | 5 | /************************************************************************/ 6 | /* */ 7 | /* (C) Copyright 1989-98 Venue. All Rights Reserved. */ 8 | /* Manufactured in the United States of America. */ 9 | /* */ 10 | /************************************************************************/ 11 | #include /* for jmp_buf */ 12 | #include /* for alarm */ 13 | 14 | extern jmp_buf jmpbuf; 15 | 16 | /*** TIMEOUT_TIME is changeable by UNIX env var LDEFILETIMEOUT. 17 | #define TIMEOUT_TIME 10 **/ 18 | 19 | extern unsigned int TIMEOUT_TIME; 20 | 21 | #define SETJMP(x) \ 22 | do { \ 23 | if(setjmp(jmpbuf) != 0) return(x); \ 24 | } while (0) 25 | 26 | #define TIMEOUT(exp) \ 27 | do { \ 28 | alarm(TIMEOUT_TIME); \ 29 | INTRSAFE(exp); \ 30 | alarm(0); \ 31 | } while (0) 32 | 33 | #define TIMEOUT0(exp) \ 34 | do { \ 35 | alarm(TIMEOUT_TIME); \ 36 | INTRSAFE0(exp); \ 37 | alarm(0); \ 38 | } while (0) 39 | 40 | #define S_TOUT(exp) \ 41 | alarm(TIMEOUT_TIME), \ 42 | (exp), \ 43 | alarm(0) 44 | 45 | #define ERRSETJMP(rval) \ 46 | do { \ 47 | if(setjmp(jmpbuf) != 0) \ 48 | { \ 49 | *Lisp_errno = 100; \ 50 | return(rval); \ 51 | } \ 52 | } while (0) 53 | 54 | 55 | /************************************************************************/ 56 | /* */ 57 | /* INTRSAFE */ 58 | /* */ 59 | /* Put a check for EINTR around a system call, and keep executing */ 60 | /* the call until we don't get that error any more. */ 61 | /* */ 62 | /************************************************************************/ 63 | 64 | #define INTRSAFE(exp) \ 65 | do {errno = 0; } while ((exp) == -1 && errno == EINTR) 66 | 67 | #define INTRSAFE0(exp) \ 68 | do {errno = 0; } while ((exp) == NULL && errno == EINTR) 69 | #endif /* TIMEOUT_H */ 70 | -------------------------------------------------------------------------------- /inc/timerdefs.h: -------------------------------------------------------------------------------- 1 | #ifndef TIMERDEFS_H 2 | #define TIMERDEFS_H 1 3 | #include "lispemul.h" /* for LispPTR */ 4 | void update_miscstats(void); 5 | void init_miscstats(void); 6 | LispPTR subr_gettime(LispPTR args[]); 7 | void subr_settime(LispPTR args[]); 8 | void subr_copytimestats(LispPTR args[]); 9 | LispPTR N_OP_rclk(LispPTR tos); 10 | void update_timer(void); 11 | void int_io_open(int fd); 12 | void int_io_close(int fd); 13 | void int_block(void); 14 | void int_unblock(void); 15 | void int_init(void); 16 | #endif 17 | -------------------------------------------------------------------------------- /inc/tosret.h: -------------------------------------------------------------------------------- 1 | #ifndef TOSRET_H 2 | #define TOSRET_H 1 3 | /* $Id: tosret.h,v 1.2 1999/01/03 02:06:28 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */ 4 | 5 | 6 | 7 | 8 | /************************************************************************/ 9 | /* */ 10 | /* (C) Copyright 1989, 1990, 1998 Venue. All Rights Reserved. */ 11 | /* Manufactured in the United States of America. */ 12 | /* */ 13 | /************************************************************************/ 14 | 15 | #include "kprintdefs.h" // for prindatum 16 | 17 | /************************************************************************/ 18 | /* */ 19 | /* t o s r e t m a c r o . h */ 20 | /* */ 21 | /* Implements RETURN for the inner evaluation loop. */ 22 | /* */ 23 | /************************************************************************/ 24 | 25 | #define OPRETURN { \ 26 | struct frameex2 *returnFX ; \ 27 | int alink; \ 28 | FNCHECKER(struct frameex2 *old_bce_fx = (struct frameex2 *) BCE_CURRENTFX); \ 29 | alink = ((struct frameex2 *) BCE_CURRENTFX)->alink; \ 30 | FNTPRINT(("RETURN = 0x%x, ", TOPOFSTACK)); \ 31 | FNTRACER(prindatum(TOPOFSTACK); printf("\n"); fflush(stdout);) \ 32 | if (alink & 1) { EXT; if(slowreturn()) goto stackoverflow_help; RET; \ 33 | Irq_Stk_Check = STK_END_COMPUTE(EndSTKP,FuncObj); \ 34 | if (((UNSIGNED)(CSTKPTR) >= Irq_Stk_Check) || (Irq_Stk_End <= 0)) \ 35 | { goto check_interrupt; } \ 36 | Irq_Stk_End = (UNSIGNED) EndSTKP; \ 37 | goto retxit; \ 38 | }; \ 39 | CSTKPTRL = (LispPTR *) IVAR; \ 40 | returnFX = (struct frameex2 *) \ 41 | ((DLword *) \ 42 | (PVARL = (DLword *) NativeAligned2FromStackOffset(alink)) \ 43 | - FRAMESIZE); \ 44 | IVARL = (DLword *) \ 45 | NativeAligned2FromStackOffset(GETWORD((DLword *)returnFX -1));\ 46 | /* Get PC from Returnee's pc slot in FX */ \ 47 | PCMACL = returnFX->pc + (ByteCode *) \ 48 | (FuncObj = (struct fnhead *) \ 49 | NativeAligned4FromLAddr(SWAP_FNHEAD(returnFX->fnheader) & POINTERMASK)) + 1;\ 50 | Irq_Stk_Check = STK_END_COMPUTE(EndSTKP,FuncObj); \ 51 | FNCHECKER(if (quick_stack_check()) printf("In RETURN.\n")); \ 52 | if (((UNSIGNED)(CSTKPTR) >= Irq_Stk_Check) || (Irq_Stk_End <= 0)) \ 53 | { goto check_interrupt; } \ 54 | Irq_Stk_End = (UNSIGNED) EndSTKP; \ 55 | retxit: {} \ 56 | } /* OPRETURN end */ 57 | 58 | #endif /* TOSRET_H */ 59 | -------------------------------------------------------------------------------- /inc/ttydefs.h: -------------------------------------------------------------------------------- 1 | #ifndef TTYDEFS_H 2 | #define TTYDEFS_H 1 3 | void tty_init(void); 4 | void tty_open(void); 5 | void tty_close(void); 6 | void tty_get(void); 7 | void tty_put(void); 8 | void tty_setbaudrate(void); 9 | void tty_setparam(void); 10 | void tty_breakon(void); 11 | void tty_breakoff(void); 12 | void tty_cmd(void); 13 | void tty_debug(const char *name); 14 | #endif 15 | -------------------------------------------------------------------------------- /inc/typeofdefs.h: -------------------------------------------------------------------------------- 1 | #ifndef TYPEOFDEFS_H 2 | #define TYPEOFDEFS_H 1 3 | #include "lispemul.h" /* for LispPTR */ 4 | LispPTR N_OP_dtest(LispPTR tos, int atom_index); 5 | LispPTR N_OP_instancep(LispPTR tos, int atom_index); 6 | #endif 7 | -------------------------------------------------------------------------------- /inc/ubf1defs.h: -------------------------------------------------------------------------------- 1 | #ifndef UBF1DEFS_H 2 | #define UBF1DEFS_H 1 3 | #include "lispemul.h" /* for LispPTR */ 4 | LispPTR N_OP_ubfloat1(LispPTR arg, int alpha); 5 | #endif 6 | -------------------------------------------------------------------------------- /inc/ubf2defs.h: -------------------------------------------------------------------------------- 1 | #ifndef UBF2DEFS_H 2 | #define UBF2DEFS_H 1 3 | #include "lispemul.h" /* for LispPTR */ 4 | LispPTR N_OP_ubfloat2(int a2, int a1, int alpha); 5 | #endif 6 | -------------------------------------------------------------------------------- /inc/ubf3defs.h: -------------------------------------------------------------------------------- 1 | #ifndef UBF3DEFS_H 2 | #define UBF3DEFS_H 1 3 | #include "lispemul.h" /* for LispPTR */ 4 | LispPTR N_OP_ubfloat3(int arg3, LispPTR arg2, LispPTR arg1, int alpha); 5 | #endif 6 | -------------------------------------------------------------------------------- /inc/ufsdefs.h: -------------------------------------------------------------------------------- 1 | #ifndef UFSDEFS_H 2 | #define UFSDEFS_H 1 3 | #include "lispemul.h" /* for LispPTR */ 4 | LispPTR UFS_getfilename(LispPTR *args); 5 | LispPTR UFS_deletefile(LispPTR *args); 6 | LispPTR UFS_renamefile(LispPTR *args); 7 | LispPTR UFS_directorynamep(LispPTR *args); 8 | #ifdef DOS 9 | int unixpathname(char *src, char *dst, int versionp, int genp, char *drive, int *extlenptr, char *rawname); 10 | #else 11 | int unixpathname(char *src, char *dst, int versionp, int genp); 12 | #endif 13 | int lisppathname(char *fullname, char *lispname, int dirp, int versionp); 14 | int quote_fname(char *file); 15 | int quote_fname_ufs(char *file); 16 | int quote_dname(char *dir); 17 | #ifdef DOS 18 | init_host_filesystem(void); 19 | exit_host_filesystem(void); 20 | #endif 21 | #endif 22 | -------------------------------------------------------------------------------- /inc/unixcommdefs.h: -------------------------------------------------------------------------------- 1 | #ifndef UNIXCOMMDEFS_H 2 | #define UNIXCOMMDEFS_H 1 3 | #include "lispemul.h" /* for LispPTR */ 4 | int find_process_slot(int pid); 5 | void wait_for_comm_processes(void); 6 | char *build_socket_pathname(int desc); 7 | void close_unix_descriptors(void); 8 | int FindUnixPipes(void); 9 | void WriteLispStringToPipe(LispPTR lispstr); 10 | LispPTR Unix_handlecomm(LispPTR *args); 11 | void WriteLispStringToPipe(LispPTR lispstr); 12 | #endif 13 | -------------------------------------------------------------------------------- /inc/unixfork.h: -------------------------------------------------------------------------------- 1 | #ifndef UNIXFORK_H 2 | #define UNIXFORK_H 1 3 | int fork_Unix(void); 4 | #endif /* UNIXFORK_H */ 5 | -------------------------------------------------------------------------------- /inc/unwinddefs.h: -------------------------------------------------------------------------------- 1 | #ifndef UNWINDDEFS_H 2 | #define UNWINDDEFS_H 1 3 | #include "lispemul.h" /* for LispPTR */ 4 | LispPTR *N_OP_unwind(LispPTR *cstkptr, LispPTR tos, int n, int keep); 5 | #endif 6 | -------------------------------------------------------------------------------- /inc/uraiddefs.h: -------------------------------------------------------------------------------- 1 | #ifndef URAIDDEFS_H 2 | #define URAIDDEFS_H 1 3 | #include "lispemul.h" /* for LispPTR, DLword */ 4 | LispPTR parse_atomstring(char *string); 5 | void uraid_commclear(void); 6 | void copy_region(const DLword *src, DLword *dst, int width, int h); 7 | struct dtd *uGetDTD(unsigned int typenum); 8 | unsigned int uGetTN(unsigned int address); 9 | LispPTR uraid_commands(void); 10 | int device_before_raid(void); 11 | int device_after_raid(void); 12 | #endif 13 | -------------------------------------------------------------------------------- /inc/uraidextdefs.h: -------------------------------------------------------------------------------- 1 | #ifndef URAIDEXTDEFS_H 2 | #define URAIDEXTDEFS_H 1 3 | 4 | #include "stack.h" /* for FX */ 5 | #include "lispemul.h" /* for LispPTR */ 6 | 7 | #define URMAXFXNUM 2000 8 | #define URMAXCOMM 512 9 | #define URSCAN_ALINK 0 10 | #define URSCAN_CLINK 1 11 | 12 | extern FX *URaid_FXarray[URMAXFXNUM]; 13 | extern char URaid_arg1[URMAXCOMM / 2]; 14 | extern char URaid_arg2[URMAXCOMM / 2]; 15 | extern char URaid_comm[2]; 16 | extern char URaid_inputstring[URMAXCOMM]; 17 | extern const char *URaid_errmess; 18 | extern int URaid_ArrMAXIndex; 19 | extern int URaid_argnum; 20 | extern int URaid_currentFX; 21 | extern int URaid_scanlink; 22 | extern LispPTR Uraid_mess; 23 | #endif 24 | -------------------------------------------------------------------------------- /inc/usrsubrdefs.h: -------------------------------------------------------------------------------- 1 | #ifndef USRSUBRDEFS_H 2 | #define USRSUBRDEFS_H 1 3 | int UserSubr(int user_subr_index, int num_args, unsigned *args); 4 | #endif 5 | -------------------------------------------------------------------------------- /inc/uutilsdefs.h: -------------------------------------------------------------------------------- 1 | #ifndef UUTILSDEFS_H 2 | #define UUTILSDEFS_H 1 3 | #include "lispemul.h" /* for LispPTR */ 4 | LispPTR check_unix_password(LispPTR *args); 5 | LispPTR unix_username(LispPTR *args); 6 | LispPTR unix_getparm(LispPTR *args); 7 | LispPTR unix_getenv(LispPTR *args); 8 | LispPTR unix_fullname(LispPTR *args); 9 | LispPTR suspend_lisp(void); 10 | #endif 11 | -------------------------------------------------------------------------------- /inc/vars3defs.h: -------------------------------------------------------------------------------- 1 | #ifndef VARS3DEFS_H 2 | #define VARS3DEFS_H 1 3 | #include "cell.h" /* for cadr_cell */ 4 | #include "lispemul.h" /* for LispPTR */ 5 | struct cadr_cell cadr(LispPTR cell_adr); 6 | LispPTR N_OP_arg0(LispPTR tos); 7 | LispPTR N_OP_assoc(LispPTR key, LispPTR list); 8 | #endif 9 | -------------------------------------------------------------------------------- /inc/vmemsavedefs.h: -------------------------------------------------------------------------------- 1 | #ifndef VMEMSAVEDEFS_H 2 | #define VMEMSAVEDEFS_H 1 3 | #include "lispemul.h" /* for LispPTR, DLword */ 4 | int lispstringP(LispPTR Lisp); 5 | LispPTR vmem_save(char *sysout_file_name); 6 | LispPTR vmem_save0(LispPTR *args); 7 | void lisp_finish(int exit_status); 8 | #endif 9 | -------------------------------------------------------------------------------- /inc/xbbtdefs.h: -------------------------------------------------------------------------------- 1 | #ifndef XBBTDEFS_H 2 | #define XBBTDEFS_H 1 3 | #include "devif.h" /* for DspInterface */ 4 | #include "lispemul.h" /* for DLword */ 5 | unsigned long clipping_Xbitblt(DspInterface dsp, DLword *dummy, int x, int y, int w, int h); 6 | #endif 7 | -------------------------------------------------------------------------------- /inc/xcdefs.h: -------------------------------------------------------------------------------- 1 | #ifndef XCDEFS_H 2 | #define XCDEFS_H 1 3 | void dispatch(void); 4 | void do_brk(void); 5 | #endif 6 | -------------------------------------------------------------------------------- /inc/xcursordefs.h: -------------------------------------------------------------------------------- 1 | #ifndef XCURSORDEFS_H 2 | #define XCURSORDEFS_H 1 3 | #include /* for Cursor, Window */ 4 | #include /* for uint8_t */ 5 | #include "devif.h" /* for DspInterface */ 6 | void Init_XCursor(void); 7 | void Set_XCursor(int x, int y); 8 | void init_Xcursor(DspInterface dsp); 9 | void set_Xcursor(DspInterface dsp, const uint8_t *bitmap, int hotspot_x, int hotspot_y, Cursor *return_cursor, int from_lisp); 10 | #endif 11 | -------------------------------------------------------------------------------- /inc/xdefs.h: -------------------------------------------------------------------------------- 1 | /* $Id: xdefs.h,v 1.4 2001/12/26 22:17:01 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */ 2 | 3 | 4 | 5 | /************************************************************************/ 6 | /* */ 7 | /* (C) Copyright 1989-2001 Venue. All Rights Reserved. */ 8 | /* Manufactured in the United States of America. */ 9 | /* */ 10 | /************************************************************************/ 11 | #ifndef XDEFS_H 12 | #define XDEFS_H 1 13 | 14 | #define DEF_WIN_X 20 15 | #define DEF_WIN_Y 20 16 | #define DEF_WIN_WIDTH 565 17 | #define DEF_WIN_HEIGHT 430 18 | #define WIN_MIN_WIDTH 150 19 | #define WIN_MIN_HEIGHT 100 20 | #define DEF_BDRWIDE 2 21 | #define SCROLL_WIDTH 18 22 | #define WINDOW_NAME "Medley Interlisp" 23 | #define ICON_NAME "Medley" 24 | 25 | 26 | #define WIN_MAX_WIDTH 2048 27 | #define WIN_MAX_HEIGHT 2048 28 | #define SCROLL_PITCH 30 29 | 30 | 31 | #ifdef LOCK_X_UPDATES 32 | 33 | #include 34 | #include 35 | #include "xwinmandefs.h" 36 | 37 | /* this is !0 if we're locked; it should be 0 or larger always */ 38 | extern volatile sig_atomic_t XLocked; 39 | extern volatile sig_atomic_t XNeedSignal; 40 | 41 | #define XLOCK do { XLocked++; } while (0) 42 | #define XUNLOCK(dsp) \ 43 | do { \ 44 | if (XLocked == 1 && XNeedSignal) \ 45 | { \ 46 | XNeedSignal = 0; \ 47 | getXsignaldata(dsp); \ 48 | }; \ 49 | XLocked--; \ 50 | } while (0) 51 | #else 52 | #define XLOCK do {} while (0) 53 | #define XUNLOCK(dsp) do {} while (0) 54 | #endif /* LOCK_X_UPDATES */ 55 | 56 | #endif /* XDEFS_H */ 57 | -------------------------------------------------------------------------------- /inc/xinitdefs.h: -------------------------------------------------------------------------------- 1 | #ifndef XINITDEFS_H 2 | #define XINITDEFS_H 1 3 | #include "devif.h" /* for DspInterface */ 4 | #include "lispemul.h" /* for LispPTR */ 5 | void init_Xevent(DspInterface dsp); 6 | void lisp_Xexit(DspInterface dsp); 7 | void Xevent_before_raid(DspInterface dsp); 8 | void Xevent_after_raid(DspInterface dsp); 9 | void Open_Display(DspInterface dsp); 10 | DspInterface X_init(DspInterface dsp, LispPTR lispbitmap, unsigned width_hint, unsigned height_hint, unsigned depth_hint); 11 | #endif 12 | -------------------------------------------------------------------------------- /inc/xlspwindefs.h: -------------------------------------------------------------------------------- 1 | #ifndef XLSPWINDEFS_H 2 | #define XLSPWINDEFS_H 1 3 | #include "devif.h" 4 | void Create_LispWindow(DspInterface dsp); 5 | void lisp_Xvideocolor(int flag); 6 | void set_Xmouseposition(int x, int y); 7 | void DoRing(void); 8 | #endif 9 | -------------------------------------------------------------------------------- /inc/xmkicondefs.h: -------------------------------------------------------------------------------- 1 | #ifndef XMKICONDEFS_H 2 | #define XMKICONDEFS_H 1 3 | #include /* for Pixmap */ 4 | #include "devif.h" /* for DspInterface */ 5 | Pixmap make_Xicon(DspInterface dsp); 6 | #endif 7 | -------------------------------------------------------------------------------- /inc/xrdoptdefs.h: -------------------------------------------------------------------------------- 1 | #ifndef XRDOPTDEFS_H 2 | #define XRDOPTDEFS_H 1 3 | void print_Xusage(const char *prog); 4 | void read_Xoption(int *argc, char *argv[]); 5 | #endif 6 | -------------------------------------------------------------------------------- /inc/xscrolldefs.h: -------------------------------------------------------------------------------- 1 | #ifndef XSCROLLDEFS_H 2 | #define XSCROLLDEFS_H 1 3 | #include "devif.h" /* for DspInterface */ 4 | void Scroll(DspInterface dsp, int newX, int newY); 5 | void JumpScrollVer(DspInterface dsp, int y); 6 | void JumpScrollHor(DspInterface dsp, int x); 7 | void ScrollLeft(DspInterface dsp); 8 | void ScrollRight(DspInterface dsp); 9 | void ScrollUp(DspInterface dsp); 10 | void ScrollDown(DspInterface dsp); 11 | #endif 12 | -------------------------------------------------------------------------------- /inc/xwinmandefs.h: -------------------------------------------------------------------------------- 1 | #ifndef XWINMANDEFS_H 2 | #define XWINMANDEFS_H 1 3 | #include /* for Window */ 4 | #include /* for XButtonEvent */ 5 | #include "devif.h" /* for DspInterface */ 6 | void Set_BitGravity(XButtonEvent *event, DspInterface dsp, Window window, int grav); 7 | void enable_Xkeyboard(DspInterface dsp); 8 | void disable_Xkeyboard(DspInterface dsp); 9 | void beep_Xkeyboard(DspInterface dsp); 10 | void process_Xevents(DspInterface dsp); 11 | #endif 12 | -------------------------------------------------------------------------------- /inc/z2defs.h: -------------------------------------------------------------------------------- 1 | #ifndef Z2DEFS_H 2 | #define Z2DEFS_H 1 3 | #include "lispemul.h" /* for LispPTR */ 4 | LispPTR N_OP_classoc(LispPTR key, LispPTR list); 5 | LispPTR N_OP_clfmemb(LispPTR item, LispPTR list); 6 | LispPTR N_OP_restlist(LispPTR tail, int last, int skip); 7 | #endif 8 | -------------------------------------------------------------------------------- /include/README: -------------------------------------------------------------------------------- 1 | This directory contains header files that are generated by the build 2 | process itself. E.g., if DLD creates include files for outside use, 3 | they'd go here. 4 | 5 | This directory is not CVS controlled, apart from this file. 6 | 7 | 21 April 2000 8 | -------------------------------------------------------------------------------- /src/asmbbt.c: -------------------------------------------------------------------------------- 1 | /* $Id: asmbbt.c,v 1.3 1999/05/31 23:35:23 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved 2 | */ 3 | 4 | /************************************************************************/ 5 | /* */ 6 | /* File: asmbbt.c */ 7 | /* */ 8 | /* Dummy C-function "bitblt", used to compile the bitblt code */ 9 | /* for hand-optimization. */ 10 | /* */ 11 | /* */ 12 | /* */ 13 | /* */ 14 | /************************************************************************/ 15 | 16 | /************************************************************************/ 17 | /* */ 18 | /* (C) Copyright 1989-95 Venue. All Rights Reserved. */ 19 | /* Manufactured in the United States of America. */ 20 | /* */ 21 | /************************************************************************/ 22 | 23 | #include "version.h" 24 | 25 | #include "lispemul.h" 26 | #include "bb.h" 27 | 28 | void bitblt(DLword *srcbase, DLword *dstbase, int sx, int dx, int w, int h, int srcbpl, int dstbpl, 29 | int backwardflg, int src_comp, int op, int gray, int num_gray, int curr_gray_line) { 30 | new_bitblt_code; 31 | } 32 | -------------------------------------------------------------------------------- /src/atom.c: -------------------------------------------------------------------------------- 1 | /* $Id: atom.c,v 1.3 1999/05/31 23:35:23 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */ 2 | 3 | /************************************************************************/ 4 | /* */ 5 | /* (C) Copyright 1989-95 Venue. All Rights Reserved. */ 6 | /* Manufactured in the United States of America. */ 7 | /* */ 8 | /************************************************************************/ 9 | 10 | #include "version.h" 11 | 12 | /**********************************************************************/ 13 | /* 14 | File Name : atom.c 15 | 16 | Desc : implement opcode ATOMCELL.N 17 | 18 | Date : Apr 13, 1987 19 | Edited by : Naoyuki Mitani 20 | 21 | Including : OP_atomcellN 22 | 23 | */ 24 | /**********************************************************************/ 25 | 26 | #include "lispemul.h" 27 | #include "lispmap.h" 28 | #include "emlglob.h" 29 | 30 | #ifndef BIGATOMS 31 | N_OP_atomcellN(int tos, int n) 32 | { 33 | if ((tos & 0xffff0000) != 0) ERROR_EXIT(tos); 34 | 35 | tos = (tos << 1); 36 | 37 | switch (n) { 38 | case D_DEFSHI: return (DEFS_OFFSET + tos); 39 | case D_VALSHI: return (VALS_OFFSET + tos); 40 | case D_PLISHI: return (PLIS_OFFSET + tos); 41 | case D_PNHI: return (PNP_OFFSET + tos); 42 | default: ERROR_EXIT(tos); 43 | } 44 | } 45 | 46 | #else 47 | N_OP_atomcellN(int tos, int n) { 48 | if ((tos & 0xffff0000) == 0) { /* XeroxLisp traditional symbol */ 49 | tos = (tos << 1); 50 | switch (n) { 51 | case D_DEFSHI: return (DEFS_OFFSET + tos); 52 | case D_VALSHI: return (VALS_OFFSET + tos); 53 | case D_PLISHI: return (PLIS_OFFSET + tos); 54 | case D_PNHI: return (PNP_OFFSET + tos); 55 | default: ERROR_EXIT(tos); 56 | } 57 | } else { /* New Symbol */ 58 | switch (n) { 59 | case D_DEFSHI: return (NEWATOM_DEFN_OFFSET + tos); 60 | case D_VALSHI: return (NEWATOM_VALUE_OFFSET + tos); 61 | case D_PLISHI: return (NEWATOM_PLIST_OFFSET + tos); 62 | case D_PNHI: return (NEWATOM_PNAME_OFFSET + tos); 63 | default: ERROR_EXIT(tos); 64 | } 65 | } 66 | } 67 | 68 | #endif 69 | -------------------------------------------------------------------------------- /src/bin.c: -------------------------------------------------------------------------------- 1 | /* $Id: bin.c,v 1.3 1999/05/31 23:35:24 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */ 2 | 3 | /************************************************************************/ 4 | /* */ 5 | /* (C) Copyright 1989-95 Venue. All Rights Reserved. */ 6 | /* Manufactured in the United States of America. */ 7 | /* */ 8 | /************************************************************************/ 9 | 10 | /***********************************************************************/ 11 | /* 12 | File Name : bin.c 13 | 14 | Desc : 15 | 16 | Date : Jul. 22, 1987 17 | Edited by : Takeshi Shimizu 18 | Changed : 19 | 20 | Including : OP_bin 21 | 22 | 23 | */ 24 | /**********************************************************************/ 25 | #include "version.h" 26 | #include "adr68k.h" // for NativeAligned2FromLAddr, NativeAligned4FromLAddr 27 | #include "bindefs.h" // for N_OP_bin 28 | #include "emlglob.h" 29 | #include "lispmap.h" // for S_POSITIVE 30 | #include "lspglob.h" 31 | #include "lsptypes.h" // for state, ERROR_EXIT, GetTypeNumber, Get_BYTE 32 | #include "stream.h" // for Stream 33 | 34 | LispPTR N_OP_bin(LispPTR tos) { 35 | Stream *stream68k; /* stream instance on TOS */ 36 | char *buff68k; /* pointer to BUFF */ 37 | 38 | if (GetTypeNumber(tos) == TYPE_STREAM) { 39 | stream68k = (Stream *)NativeAligned4FromLAddr(tos); 40 | 41 | if (!stream68k->BINABLE) ERROR_EXIT(tos); 42 | 43 | if (stream68k->COFFSET >= stream68k->CBUFSIZE) ERROR_EXIT(tos); 44 | 45 | /* get BUFFER instance */ 46 | buff68k = (char *)NativeAligned2FromLAddr(stream68k->CBUFPTR); 47 | 48 | /* get BYTE data and set it to TOS */ 49 | return (S_POSITIVE | (Get_BYTE(buff68k + (stream68k->COFFSET)++))); 50 | } else 51 | ERROR_EXIT(tos); 52 | } 53 | -------------------------------------------------------------------------------- /src/blt.c: -------------------------------------------------------------------------------- 1 | /* $Id: blt.c,v 1.3 1999/05/31 23:35:24 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */ 2 | 3 | /************************************************************************/ 4 | /* */ 5 | /* (C) Copyright 1989-95 Venue. All Rights Reserved. */ 6 | /* Manufactured in the United States of America. */ 7 | /* */ 8 | /************************************************************************/ 9 | 10 | #include "version.h" 11 | 12 | /* 13 | * 14 | * Author : Takeshi Shimizu 15 | * 16 | */ 17 | /******************************************************************/ 18 | /* 19 | File Name : blt.c 20 | Including : OP_blt 21 | 22 | Created : jul 9, 1987 by T.Shimizu 23 | */ 24 | /******************************************************************/ 25 | 26 | #include "lispemul.h" 27 | #include "address.h" 28 | #include "adr68k.h" 29 | #include "lsptypes.h" 30 | #include "lispmap.h" 31 | #include "stack.h" 32 | #include "emlglob.h" 33 | #include "lspglob.h" 34 | #include "cell.h" 35 | 36 | #include "bltdefs.h" 37 | 38 | /* 39 | N_OP_blt takes 3 arguments. 40 | STK-1 has destination's pointer. 41 | STK has source's pointer. 42 | TOS has number of words to be translated. 43 | */ 44 | 45 | LispPTR N_OP_blt(LispPTR destptr, LispPTR sourceptr, LispPTR wordcount) { 46 | DLword *source68k; 47 | DLword *dest68k; 48 | int nw; 49 | 50 | if ((wordcount & SEGMASK) != S_POSITIVE) ERROR_EXIT(wordcount); 51 | nw = wordcount & 0xffff; 52 | 53 | source68k = NativeAligned2FromLAddr(sourceptr) + nw; 54 | dest68k = NativeAligned2FromLAddr(destptr) + nw; 55 | 56 | while (nw) { 57 | (GETWORD(--dest68k)) = GETWORD(--source68k); 58 | nw--; 59 | } 60 | 61 | return (wordcount); 62 | } /* end N_OP_blt */ 63 | -------------------------------------------------------------------------------- /src/box: -------------------------------------------------------------------------------- 1 | 2 | 3 | /************************************************************************/ 4 | /* */ 5 | /* */ 6 | /************************************************************************/ 7 | -------------------------------------------------------------------------------- /src/cr: -------------------------------------------------------------------------------- 1 | 2 | 3 | /************************************************************************/ 4 | /* */ 5 | /* (C) Copyright 1989-96 Venue. All Rights Reserved. */ 6 | /* Manufactured in the United States of America. */ 7 | /* */ 8 | /************************************************************************/ 9 | -------------------------------------------------------------------------------- /src/doscomm.c: -------------------------------------------------------------------------------- 1 | /* $Id: doscomm.c,v 1.3 1999/05/31 23:35:27 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved 2 | */ 3 | 4 | /************************************************************************/ 5 | /* */ 6 | /* (C) Copyright 1989, 1990, 1990, 1991, 1992, 1993, 1994, 1995 Venue. */ 7 | /* All Rights Reserved. */ 8 | /* Manufactured in the United States of America. */ 9 | /* */ 10 | /************************************************************************/ 11 | 12 | #include "version.h" 13 | 14 | DOS_handlecomm(int args) {} 15 | -------------------------------------------------------------------------------- /src/findkey.c: -------------------------------------------------------------------------------- 1 | /* $Id: findkey.c,v 1.3 1999/05/31 23:35:28 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved 2 | */ 3 | 4 | /************************************************************************/ 5 | /* */ 6 | /* (C) Copyright 1989-95 Venue. All Rights Reserved. */ 7 | /* Manufactured in the United States of America. */ 8 | /* */ 9 | /************************************************************************/ 10 | 11 | #include "version.h" 12 | 13 | #include 14 | #include "lispemul.h" 15 | #include "lispmap.h" 16 | #include "emlglob.h" 17 | #include "stack.h" 18 | #include "lspglob.h" 19 | #include "adr68k.h" 20 | #include "testtooldefs.h" 21 | #include "findkeydefs.h" 22 | 23 | /***********************************************************************/ 24 | /* 25 | File Name : findkey.c 26 | 27 | Desc : 28 | 29 | Date : Mar. 29 88 30 | Edited by : Bob Krivacic 31 | Including : N_OP_findkey 32 | 33 | 34 | */ 35 | /**********************************************************************/ 36 | 37 | LispPTR N_OP_findkey(LispPTR tos, int byte) { 38 | LispPTR *ptr; 39 | DLword *find_end; 40 | DLword arg_nth; 41 | 42 | #ifdef TRACE 43 | printPC(); 44 | printf("TRACE : N_OP_findkey \n"); 45 | #endif 46 | 47 | if (CURRENTFX->alink & 1) { /* slow case */ 48 | find_end = NativeAligned2FromStackOffset(CURRENTFX->blink - 4); 49 | } else { /* Fast cae */ 50 | find_end = ((DLword *)CURRENTFX) - 2 - 4; 51 | } 52 | 53 | arg_nth = byte + 1; 54 | 55 | for (ptr = (LispPTR *)(IVar + ((byte * 2) - 2)); (UNSIGNED)find_end >= (UNSIGNED)ptr; 56 | ptr += 2, arg_nth += 2) { 57 | if (*ptr == tos) { /* KEY founded */ 58 | return (S_POSITIVE | arg_nth); 59 | } 60 | } /* for end */ 61 | 62 | /* No matched */ 63 | 64 | return (NIL_PTR); 65 | 66 | } /* end N_OP_findkey() */ 67 | -------------------------------------------------------------------------------- /src/gc.c: -------------------------------------------------------------------------------- 1 | /* $Id: gc.c,v 1.3 1999/05/31 23:35:29 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */ 2 | 3 | /************************************************************************/ 4 | /* */ 5 | /* (C) Copyright 1989-95 Venue. All Rights Reserved. */ 6 | /* Manufactured in the United States of America. */ 7 | /* */ 8 | /************************************************************************/ 9 | 10 | #include "version.h" 11 | 12 | #include // for printf 13 | #include "emlglob.h" 14 | #include "gcdata.h" // for GCLOOKUPV 15 | #include "gchtfinddefs.h" // for htfind, rec_htfind 16 | #include "gcdefs.h" // for OP_gcref 17 | #include "lspglob.h" 18 | #include "lsptypes.h" // for state, ByteCode, PC, TopOfStack, Get_code_... 19 | #include "testtooldefs.h" // for printPC 20 | 21 | /************************************************************ 22 | 23 | entry OP_gcref OPCODE[025] 24 | 25 | 1. alpha is ADDREF or DELREF, STKREF. 26 | TopOfStack is argued slot address. 27 | 2. call gclookup with alpha and TopOfStack. 28 | 3. if stk=0 and refcnt=0 of entry of HashMainTable, 29 | TopOfStack left alone. 30 | else replace TopOfStack with 0. 31 | 4. increment PC by 2. 32 | 33 | ***********************************************************/ 34 | 35 | void OP_gcref(void) { 36 | #ifdef TRACE 37 | printPC(); 38 | printf("TRACE:OP_gcref()\n"); 39 | #endif 40 | GCLOOKUPV(TopOfStack, Get_code_BYTE(PC + 1), TopOfStack); 41 | PC += 2; 42 | return; 43 | } 44 | -------------------------------------------------------------------------------- /src/gc2.c: -------------------------------------------------------------------------------- 1 | /* $Id: gc2.c,v 1.3 1999/05/31 23:35:30 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */ 2 | 3 | /************************************************************************/ 4 | /* */ 5 | /* (C) Copyright 1989-95 Venue. All Rights Reserved. */ 6 | /* Manufactured in the United States of America. */ 7 | /* */ 8 | /************************************************************************/ 9 | 10 | #include "version.h" 11 | 12 | /**********************************************************************/ 13 | /* 14 | File Name: gc2.c 15 | Desc: implement opcode SCAN1,SCAN2,GCRECLAIMCELL 16 | 17 | 18 | Including : OP_scan1 19 | OP_scan2 20 | OP_gcreccell 21 | 22 | */ 23 | /**********************************************************************/ 24 | 25 | #include // for printf 26 | #include "address.h" // for LOLOC 27 | #include "emlglob.h" 28 | #include "gc2defs.h" // for OP_gcscan1, OP_gcscan2 29 | #include "gcscandefs.h" // for gcscan1, gcscan2 30 | #include "lispemul.h" // for state, TopOfStack, NIL, PC, SEGMASK 31 | #include "lispmap.h" // for S_POSITIVE 32 | #include "lspglob.h" 33 | #include "lsptypes.h" 34 | #include "testtooldefs.h" // for printPC 35 | 36 | /**********************************************************************/ 37 | /* 38 | Func Name : OP_gcscan1 39 | */ 40 | /**********************************************************************/ 41 | 42 | void OP_gcscan1(void) { 43 | int scan; 44 | #ifdef TRACE 45 | printPC(); 46 | printf("TRACE: OP_gcscan1()\n"); 47 | #endif 48 | if ((TopOfStack & SEGMASK) == S_POSITIVE) { 49 | scan = gcscan1(LOLOC(TopOfStack)); 50 | TopOfStack = (scan == -1) ? NIL : scan | S_POSITIVE; 51 | } else { 52 | printf("OP_gcscan1: not a number\n"); 53 | } 54 | PC++; 55 | } /* OP_gcscan1 end */ 56 | 57 | /**********************************************************************/ 58 | /* 59 | Func Name : OP_gcscan2 60 | */ 61 | /**********************************************************************/ 62 | 63 | void OP_gcscan2(void) { 64 | int scan; 65 | #ifdef TRACE 66 | printPC(); 67 | printf("TRACE: OP_gcscan2()\n"); 68 | #endif 69 | if ((TopOfStack & SEGMASK) == S_POSITIVE) { 70 | scan = gcscan2(LOLOC(TopOfStack)); 71 | TopOfStack = (scan == -1) ? NIL : scan | S_POSITIVE; 72 | } 73 | PC++; 74 | } /* OP_gcscan2 end */ 75 | -------------------------------------------------------------------------------- /src/kbdif.c: -------------------------------------------------------------------------------- 1 | /* $Id: kbdif.c,v 1.3 1999/05/31 23:35:35 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */ 2 | 3 | /************************************************************************/ 4 | /* */ 5 | /* (C) Copyright 1989, 1990, 1990, 1991, 1992, 1993, 1994, 1995 Venue. */ 6 | /* All Rights Reserved. */ 7 | /* Manufactured in the United States of America. */ 8 | /* */ 9 | /************************************************************************/ 10 | 11 | #include "version.h" 12 | 13 | /* * K Y E B O A R D I N T E R F A C E * */ 14 | 15 | #include "lispemul.h" 16 | #include "dbprint.h" 17 | #include "devif.h" 18 | #include "dspifdefs.h" 19 | 20 | KbdInterfaceRec curkbd; 21 | KbdInterface currentkbd = &curkbd; 22 | 23 | #ifdef DOS 24 | extern void Kbd_event(void); 25 | extern void EnterDosKbd(void); 26 | extern void ExitDosKbd(void); 27 | #endif /* DOS */ 28 | 29 | void make_kbd_instance(KbdInterface kbd) { 30 | #ifdef DOS 31 | kbd->device_event = &Kbd_event; /* */ 32 | kbd->device.enter = &EnterDosKbd; 33 | kbd->device.exit = &ExitDosKbd; 34 | kbd->device.before_raid = &ExitDosKbd; 35 | kbd->device.after_raid = &EnterDosKbd; 36 | kbd->device.active = FALSE; 37 | #elif XWINDOW 38 | #endif /* DOS or XWINDOW */ 39 | } 40 | -------------------------------------------------------------------------------- /src/lde.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 |
13 | 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /src/lptran.c: -------------------------------------------------------------------------------- 1 | /* $Id: lptran.c,v 1.2 1999/01/03 02:07:20 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved 2 | */ 3 | 4 | /************************************************************************/ 5 | /* */ 6 | /* (C) Copyright 1989-95 Venue. All Rights Reserved. */ 7 | /* Manufactured in the United States of America. */ 8 | /* */ 9 | /************************************************************************/ 10 | 11 | #include "version.h" 12 | 13 | #include "lpdefs.h" 14 | #include "lpglobl.h" 15 | 16 | #ifdef alliant 17 | #pragma global safe(Eta_rownr, Eta_value) 18 | #pragma global assoc 19 | #endif 20 | 21 | void ftran(int start, int end, double *pcol) 22 | { 23 | int i, j; 24 | int k, r; 25 | double theta; 26 | 27 | #ifdef alliant 28 | #pragma safe(pcol, Endetacol) 29 | #pragma routine permutation(Eta_rownr) 30 | #endif 31 | 32 | if (Verbose) printf("ftran\n"); 33 | for (i = start; i <= end; i++) { 34 | k = Endetacol[i] - 1; 35 | r = Eta_rownr[k]; 36 | theta = pcol[r]; 37 | if (theta != 0) 38 | for (j = Endetacol[i - 1]; j < k; j++) 39 | pcol[Eta_rownr[j]] += theta * Eta_value[j]; /* cpu expensive line */ 40 | pcol[r] *= Eta_value[k]; 41 | } 42 | 43 | #ifdef alliant 44 | #pragma loop novector 45 | #endif 46 | 47 | for (i = 0; i <= Rows; i++) 48 | if (abs(pcol[i]) < EPSEL) pcol[i] = 0; 49 | } /* ftran */ 50 | 51 | void btran(int numc, double *row) 52 | { 53 | int i, j, k; 54 | double f; 55 | 56 | #ifdef alliant 57 | #pragma safe(row, Endetacol) 58 | #endif 59 | 60 | if (Verbose) printf("btran\n"); 61 | for (i = numc; i >= 1; i--) { 62 | f = 0; 63 | k = Endetacol[i]; 64 | for (j = Endetacol[i - 1]; j < k; j++) f += row[Eta_rownr[j]] * Eta_value[j]; 65 | if (abs(f) < EPSEL) 66 | row[Eta_rownr[k - 1]] = 0; 67 | else 68 | row[Eta_rownr[k - 1]] = f; 69 | } 70 | } /* btran */ 71 | -------------------------------------------------------------------------------- /src/lpwrite.c: -------------------------------------------------------------------------------- 1 | /* $Id: lpwrite.c,v 1.2 1999/01/03 02:07:20 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved 2 | */ 3 | 4 | /************************************************************************/ 5 | /* */ 6 | /* (C) Copyright 1989-95 Venue. All Rights Reserved. */ 7 | /* Manufactured in the United States of America. */ 8 | /* */ 9 | /************************************************************************/ 10 | 11 | #include "version.h" 12 | 13 | #include "lpdefs.h" 14 | #include "lpglobl.h" 15 | #include 16 | 17 | /* this is the ansi version ... */ 18 | 19 | void print_solution(FILE *stream, double *sol) 20 | { 21 | int i; 22 | 23 | fprintf(stream, "Value of objective function: %16.5g\n", sol[0]); 24 | 25 | /* print normal variables */ 26 | for (i = Rows + 1; i <= Sum; i++) 27 | if (0 != sol[i]) fprintf(stream, "%-10s%16.5g\n", Names[i], sol[i]); 28 | 29 | /* print dual variables */ 30 | if (Verbose || Print_duals) { 31 | fprintf(stream, "\nValues of the dual variables:\n"); 32 | for (i = 1; i <= Rows; i++) 33 | if (0 != sol[i]) fprintf(stream, "%-10s%16.5g\n", Names[i], sol[i]); 34 | } 35 | } /* print_solution */ 36 | 37 | void print_indent(void) 38 | { 39 | int i; 40 | 41 | fprintf(stderr, "%2d", Level); 42 | for (i = Level; i > 0; i--) fprintf(stderr, "--"); 43 | fprintf(stderr, "> "); 44 | } /* print_indent */ 45 | 46 | void debug_print_solution(double *sol) 47 | { 48 | int i; 49 | 50 | if (Debug) 51 | for (i = 0; i <= Sum; i++) { 52 | print_indent(); 53 | if (sol[i] != 0) fprintf(stderr, "%-10s%16.5g\n", Names[i], sol[i]); 54 | } 55 | } /* debug_print_solution */ 56 | 57 | void debug_print_bounds(double *upbo, double *lowbo) 58 | { 59 | int i; 60 | 61 | if (Debug) 62 | for (i = Rows + 1; i <= Sum; i++) { 63 | if (lowbo[i] != 0) { 64 | print_indent(); 65 | fprintf(stderr, "%s > %10.3g\n", Names[i], lowbo[i]); 66 | } 67 | if (upbo[i] != INFINITE) { 68 | print_indent(); 69 | fprintf(stderr, "%s < %10.3g\n", Names[i], upbo[i]); 70 | } 71 | } 72 | } /* debug_print_bounds */ 73 | 74 | void debug_print(char *format, ...) { 75 | va_list ap; 76 | 77 | if (Debug) { 78 | va_start(ap, format); 79 | print_indent(); 80 | vfprintf(stderr, format, ap); 81 | fputc('\n', stderr); 82 | va_end(ap); 83 | } 84 | } /* debug_print */ 85 | -------------------------------------------------------------------------------- /src/mkvdate.c: -------------------------------------------------------------------------------- 1 | /* $Id: mkvdate.c,v 1.5 2001/12/26 22:17:03 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved 2 | */ 3 | 4 | /************************************************************************/ 5 | /* */ 6 | /* (C) Copyright 1989-95 Venue. All Rights Reserved. */ 7 | /* Manufactured in the United States of America. */ 8 | /* */ 9 | /************************************************************************/ 10 | 11 | #include "version.h" 12 | 13 | /************************************************************************/ 14 | /* */ 15 | /* m a k e v d a t e . c */ 16 | /* */ 17 | /* Make the version number to place in the emulator. That number */ 18 | /* will be smashed into the running sysout at the field */ 19 | /* InterfacePage->rversion. The version number is the number */ 20 | /* of whole days since 12:00 13-Oct-87 (Takeshi's birthday). */ 21 | /* */ 22 | /* This program prints a single line, with seconds since Unix */ 23 | /* epoch, which is converted to days since Takeshi's birthday in */ 24 | /* initsout.c: */ 25 | /* */ 26 | /* time_t MDate = */ 27 | /* */ 28 | /* That output is redirected to create the file vdate.c, which */ 29 | /* is then compiled as part of the emulator MAKE. */ 30 | /* */ 31 | /************************************************************************/ 32 | 33 | #include 34 | #include 35 | 36 | #ifndef DOS 37 | #include 38 | #endif /* DOS */ 39 | 40 | #ifdef DOS 41 | int main(void) { 42 | long dtime; 43 | time(&dtime); 44 | printf("extern const long MDate;\n", dtime); 45 | printf("const long MDate = %ld;\n", dtime); 46 | return (0); 47 | } 48 | #else 49 | /* Version for every other Unix */ 50 | int main(void) { 51 | struct timeval time; 52 | 53 | /* On some Unix platforms, time_t is an int and on 54 | * others, it is a long. We'll store it as a time_t, 55 | * but print it as a long so that we can avoid format 56 | * warnings about differing sized types. 57 | */ 58 | gettimeofday(&time, NULL); 59 | printf("#include \n"); 60 | printf("extern const time_t MDate;\n"); 61 | printf("const time_t MDate = %ld;\n", (long)time.tv_sec); 62 | return (0); 63 | } 64 | 65 | #endif /* DOS */ 66 | -------------------------------------------------------------------------------- /src/perrno.c: -------------------------------------------------------------------------------- 1 | /* $Id: perrno.c,v 1.4 2001/12/26 22:17:04 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved 2 | */ 3 | 4 | /************************************************************************/ 5 | /* */ 6 | /* (C) Copyright 1989-95 Venue. All Rights Reserved. */ 7 | /* Manufactured in the United States of America. */ 8 | /* */ 9 | /************************************************************************/ 10 | 11 | #include "version.h" 12 | 13 | #include // for errno 14 | #include // for fprintf, perror, stderr, NULL 15 | #include // for strerror 16 | #include "osmsgprint.h" // for OSMESSAGE_PRINT 17 | #include "perrnodefs.h" // for err_mess, perrorn 18 | 19 | /************************************************************************/ 20 | /* */ 21 | /* p e r r o r n */ 22 | /* */ 23 | /* Print the error message to go with a given error number. */ 24 | /* */ 25 | /************************************************************************/ 26 | 27 | void perrorn(char *s, int n) { 28 | if (s != NULL && *s != '\0') { (void)fprintf(stderr, "%s: ", s); } 29 | (void)fprintf(stderr, "%s\n", strerror(n)); 30 | } 31 | 32 | /************************************************************************/ 33 | /* */ 34 | /* e r r _ m e s s */ 35 | /* */ 36 | /* Print an error message and call 'perror' to get the */ 37 | /* canonical error explanation. Called by emulator I/O code. */ 38 | /* */ 39 | /************************************************************************/ 40 | 41 | void err_mess(char *from, int no) { 42 | int save_errno = errno; /* Save errno around OSMESSAGE_PRINT */ 43 | 44 | OSMESSAGE_PRINT({ 45 | (void)fprintf(stderr, "System call error: %s errno=%d ", from, no); 46 | perror(""); 47 | }); 48 | 49 | errno = save_errno; 50 | } 51 | -------------------------------------------------------------------------------- /src/rplcons.c: -------------------------------------------------------------------------------- 1 | /* $Id: rplcons.c,v 1.3 1999/05/31 23:35:41 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved 2 | */ 3 | 4 | /************************************************************************/ 5 | /* */ 6 | /* (C) Copyright 1989-95 Venue. All Rights Reserved. */ 7 | /* Manufactured in the United States of America. */ 8 | /* */ 9 | /************************************************************************/ 10 | 11 | #include "version.h" 12 | 13 | /***********************************************************************/ 14 | /* 15 | File Name : rplcons.c 16 | 17 | Desc : rplcons 18 | 19 | Including : rplcons 20 | OP_rplcons 21 | 22 | */ 23 | /**********************************************************************/ 24 | 25 | #include "car-cdrdefs.h" // for N_OP_rplacd 26 | #include "conspagedefs.h" // for cons 27 | #include "emlglob.h" 28 | #include "lispemul.h" // for LispPTR, state, ERROR_EXIT, NIL_PTR 29 | #include "lspglob.h" 30 | #include "lsptypes.h" // for Listp 31 | #include "rplconsdefs.h" // for N_OP_rplcons 32 | #ifndef NEWCDRCODING 33 | #include "gcdata.h" 34 | #include "gchtfinddefs.h" // for htfind, rec_htfind 35 | #include "address.h" 36 | #endif 37 | 38 | /***************************************************/ 39 | 40 | LispPTR N_OP_rplcons(LispPTR list, LispPTR item) { 41 | #ifndef NEWCDRCODING 42 | struct conspage *conspage; 43 | ConsCell *new_cell; 44 | ConsCell *list68k; 45 | LispPTR page; 46 | #endif 47 | 48 | if (!Listp(list)) ERROR_EXIT(item); 49 | 50 | /* There are some rest Cell and "list" must be ONPAGE cdr_coded */ 51 | #ifndef NEWCDRCODING 52 | page = POINTER_PAGE(list); 53 | list68k = (ConsCell *)NativeAligned4FromLAddr(list); 54 | 55 | if ((GetCONSCount(page) != 0) && (list68k->cdr_code > CDR_MAXINDIRECT)) { 56 | GCLOOKUP(item, ADDREF); 57 | GCLOOKUP(cdr(list), DELREF); 58 | 59 | conspage = (struct conspage *)NativeAligned4FromLPage(page); 60 | new_cell = (ConsCell *)GetNewCell_68k(conspage); 61 | 62 | conspage->count--; 63 | conspage->next_cell = ((freecons *)new_cell)->next_free; 64 | 65 | new_cell->car_field = item; 66 | new_cell->cdr_code = CDR_NIL; 67 | 68 | ListpDTD->dtd_cnt0++; 69 | 70 | list68k->cdr_code = CDR_ONPAGE | ((LAddrFromNative(new_cell) & 0xff) >> 1); 71 | 72 | return (LAddrFromNative(new_cell)); 73 | 74 | } else 75 | #endif /* ndef NEWCDRCODING */ 76 | { 77 | N_OP_rplacd(list, item = cons(item, NIL_PTR)); 78 | return (item); 79 | } 80 | } 81 | -------------------------------------------------------------------------------- /src/subr0374.c: -------------------------------------------------------------------------------- 1 | /* $Id: subr0374.c,v 1.3 1999/05/31 23:35:43 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved 2 | */ 3 | 4 | /************************************************************************/ 5 | /* */ 6 | /* (C) Copyright 1989-95 Venue. All Rights Reserved. */ 7 | /* Manufactured in the United States of America. */ 8 | /* */ 9 | /************************************************************************/ 10 | 11 | #include "version.h" 12 | 13 | /* 14 | * This doesn't appear to be used anywhere. 15 | * Adjusted result to be LispPTR and return value to NIL instead of 16 | * being an int/return 0. 17 | * 18 | * NBriggs, May 2017 19 | */ 20 | 21 | /********************************************************/ 22 | /* 23 | subr_k_trace() 24 | 25 | subr----0130 for maiko trace 26 | first argument is base address of 27 | error message in Lisp. 28 | second argument is length of message. 29 | */ 30 | /********************************************************/ 31 | 32 | #include 33 | #include "lispemul.h" 34 | #include "adr68k.h" 35 | #include "lspglob.h" 36 | 37 | #include "subr0374defs.h" 38 | 39 | LispPTR subr_k_trace(LispPTR *args) { 40 | int len; 41 | char *base; 42 | 43 | len = 0xFFFF & args[1]; 44 | base = (char *)NativeAligned2FromLAddr(args[0]); 45 | while (len-- > 0) putc(*base++, stderr); 46 | putc('\n', stderr); 47 | return (NIL); 48 | } 49 | -------------------------------------------------------------------------------- /src/typeof.c: -------------------------------------------------------------------------------- 1 | /* $Id: typeof.c,v 1.3 1999/05/31 23:35:44 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved 2 | */ 3 | 4 | /************************************************************************/ 5 | /* */ 6 | /* (C) Copyright 1989-95 Venue. All Rights Reserved. */ 7 | /* Manufactured in the United States of America. */ 8 | /* */ 9 | /************************************************************************/ 10 | 11 | #include "version.h" 12 | 13 | /****************************************************************/ 14 | /* LISTP(3Q),NTYPEX(4Q),TYPEP(5Q),DTEST(6Q) ,INSTANCEP(303Q) */ 15 | /****************************************************************/ 16 | /* 17 | changed : Jan. 13 1987 take 18 | changed : Feb. 05 1987 take 19 | changed : Jul. 24 1987 take 20 | 21 | */ 22 | 23 | #include "lispemul.h" // for LispPTR, ATOM_T, NIL_PTR 24 | #include "lspglob.h" 25 | #include "lsptypes.h" // for dtd, GetDTD, GetTypeNumber 26 | #include "typeofdefs.h" // for N_OP_instancep 27 | 28 | /************************************************************************/ 29 | /* */ 30 | /* N _ O P _ i n s t a n c e p */ 31 | /* */ 32 | /* Returns T if tos has type named by atom_index, else NIL. */ 33 | /* */ 34 | /************************************************************************/ 35 | 36 | LispPTR N_OP_instancep(LispPTR tos, int atom_index) { 37 | struct dtd *dtd68k; 38 | 39 | for (dtd68k = (struct dtd *)GetDTD(GetTypeNumber(tos)); 40 | #ifdef BIGVM 41 | atom_index != dtd68k->dtd_name; 42 | #else 43 | atom_index != dtd68k->dtd_namelo + (dtd68k->dtd_namehi << 16); 44 | #endif /* BIGVM */ 45 | dtd68k = (struct dtd *)GetDTD(dtd68k->dtd_supertype)) { 46 | if (dtd68k->dtd_supertype == 0) { return (NIL_PTR); } 47 | } 48 | return (ATOM_T); 49 | 50 | } /* N_OP_instancep END */ 51 | -------------------------------------------------------------------------------- /src/ubf1.c: -------------------------------------------------------------------------------- 1 | /* $Id: ubf1.c,v 1.3 1999/05/31 23:35:44 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */ 2 | 3 | /************************************************************************/ 4 | /* */ 5 | /* (C) Copyright 1989-95 Venue. All Rights Reserved. */ 6 | /* Manufactured in the United States of America. */ 7 | /* */ 8 | /************************************************************************/ 9 | 10 | #include "version.h" 11 | 12 | #include "adr68k.h" // for LAddrFromNative 13 | #include "arith.h" // for N_ARITH_SWITCH 14 | #include "lispemul.h" // for state, ERROR_EXIT, DLword, LispPTR 15 | #include "lspglob.h" 16 | #include "lsptypes.h" // for TYPE_FLOATP 17 | #include "mkcelldefs.h" // for createcell68k 18 | #include "my.h" // for N_MakeFloat 19 | #include "ubf1defs.h" // for N_OP_ubfloat1 20 | 21 | /************************************************************ 22 | OP_ubfloat1 -- op 355 == UBFLOAT1 23 | 355/0 BOX 24 | 355/1 UNBOX 25 | 355/2 ABS 26 | 355/3 NEGATE 27 | 355/4 UFIX 28 | ***********************************************************/ 29 | 30 | LispPTR N_OP_ubfloat1(LispPTR arg, int alpha) { 31 | switch (alpha) { 32 | case 0: /* box */ 33 | { 34 | LispPTR *wordp; 35 | wordp = createcell68k(TYPE_FLOATP); 36 | *wordp = arg; 37 | return (LAddrFromNative(wordp)); 38 | } 39 | case 1: /* unbox */ 40 | { 41 | float dest; 42 | LispPTR ret; 43 | N_MakeFloat(arg, dest, arg); 44 | ret = *(LispPTR *)&dest; 45 | return (ret); 46 | } 47 | case 2: /* abs */ return (0x7FFFFFFF & arg); 48 | case 3: /* neg */ return (0x80000000 ^ arg); 49 | case 4: /* ufix */ 50 | { 51 | float temp; 52 | int val; 53 | temp = *(float *)&arg; 54 | if ((temp > ((float)0x7fffffff)) || (temp < ((float)0x80000000))) ERROR_EXIT(arg); 55 | val = (int)temp; 56 | N_ARITH_SWITCH(val); 57 | } 58 | default: ERROR_EXIT(arg); 59 | } /* end switch */ 60 | } /* end N_OP_ubfloat1() */ 61 | 62 | /* end module */ 63 | -------------------------------------------------------------------------------- /src/ubf2.c: -------------------------------------------------------------------------------- 1 | /* $Id: ubf2.c,v 1.3 1999/05/31 23:35:44 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */ 2 | /* ubf2.c 3 | */ 4 | 5 | /************************************************************************/ 6 | /* */ 7 | /* (C) Copyright 1989-95 Venue. All Rights Reserved. */ 8 | /* Manufactured in the United States of America. */ 9 | /* */ 10 | /************************************************************************/ 11 | 12 | #include "version.h" 13 | 14 | #include // for fmodf 15 | #include "lispemul.h" // for state, ERROR_EXIT, ATOM_T, LispPTR, NIL_PTR 16 | #include "medleyfp.h" // for FPCLEAR, FPTEST 17 | #include "ubf2defs.h" // for N_OP_ubfloat2 18 | 19 | /************************************************************ 20 | OP_ub2 -- op 354 == UBFLOAT2 21 | 354/0 ADD 22 | 354/1 SUB 23 | 354/2 ISUB 24 | 354/3 MULT 25 | 354/4 DIV 26 | 354/5 GREAT 27 | 354/6 MAX 28 | 354/7 MIN 29 | 354/8 REM 30 | 354/9 AREF 31 | ***********************************************************/ 32 | LispPTR N_OP_ubfloat2(int a2, int a1, int alpha) { 33 | float arg1, arg2; 34 | float ans; 35 | int ret; 36 | 37 | /* Unboxed floating point args (a1, a2) look like float, but */ 38 | /* can't be declared as such because all float args get passed */ 39 | /* as double. (That can be avoided in ansi C.) Instead, they */ 40 | /* are declared int and accessed as float through cast pointers. */ 41 | /* The return value is handled similarly. */ 42 | 43 | arg1 = *(float *)&a1; 44 | arg2 = *(float *)&a2; 45 | FPCLEAR; 46 | switch (alpha) { 47 | case 0: /* add */ ans = arg1 + arg2; break; 48 | case 1: /* sub */ ans = arg2 - arg1; break; 49 | case 2: /* isub */ ans = arg1 - arg2; break; 50 | case 3: /* mul */ ans = arg1 * arg2; break; 51 | case 4: /* div */ ans = arg2 / arg1; break; 52 | case 5: /* gt */ 53 | if (arg2 > arg1) 54 | return (ATOM_T); 55 | else 56 | return (NIL_PTR); 57 | case 6: /* max */ 58 | if (arg2 > arg1) 59 | return (a2); 60 | else 61 | return (a1); 62 | case 7: /* min */ 63 | if (arg2 > arg1) 64 | return (a1); 65 | else 66 | return (a2); 67 | case 8: /* rem */ ans = fmodf(arg2, arg1); break; 68 | default: ERROR_EXIT(a1); 69 | } /* end switch */ 70 | 71 | ret = *(int *)&ans; /* Convert it back to int for 32 bit storage */ 72 | if (FPTEST(ans)) ERROR_EXIT(a1); 73 | return (ret); 74 | 75 | } /* end N_OP_ub2() */ 76 | 77 | /* end module */ 78 | -------------------------------------------------------------------------------- /src/ubf3.c: -------------------------------------------------------------------------------- 1 | /* $Id: ubf3.c,v 1.3 1999/05/31 23:35:45 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */ 2 | /* ubf3.c 3 | */ 4 | 5 | /************************************************************************/ 6 | /* */ 7 | /* (C) Copyright 1989-95 Venue. All Rights Reserved. */ 8 | /* Manufactured in the United States of America. */ 9 | /* */ 10 | /************************************************************************/ 11 | 12 | #include "version.h" 13 | 14 | #include "adr68k.h" // for NativeAligned4FromLAddr 15 | #include "lispemul.h" // for state, ERROR_EXIT, LispPTR, SEGMASK 16 | #include "lispmap.h" // for S_POSITIVE 17 | #include "lspglob.h" 18 | #include "medleyfp.h" // for FPCLEAR, FPTEST 19 | #include "ubf3defs.h" // for N_OP_ubfloat3 20 | 21 | /************************************************************ 22 | N_OP_ubfloat3 -- op 062 23 | 062/0 POLY 24 | ***********************************************************/ 25 | 26 | LispPTR N_OP_ubfloat3(int arg3, LispPTR arg2, LispPTR arg1, int alpha) { 27 | float val; 28 | float ans; 29 | float *fptr; 30 | int degree; 31 | int ret; 32 | float flot; 33 | 34 | val = *(float *)&arg3; /* why? */ 35 | if (alpha) ERROR_EXIT(arg1); 36 | FPCLEAR; 37 | if ((arg1 & SEGMASK) != S_POSITIVE) ERROR_EXIT(arg1); 38 | degree = 0xFFFF & arg1; 39 | fptr = (float *)NativeAligned4FromLAddr(arg2); 40 | ans = *((float *)fptr); 41 | while (degree--) ans = (ans * val) + *((float *)(++fptr)); 42 | if (FPTEST(ans)) ERROR_EXIT(arg1); /* relies on contagion of inf, nan? */ 43 | flot = ans; 44 | ret = *(int *)&flot; /* why? */ 45 | return (ret); 46 | } /* end N_OP_ubfloat3() */ 47 | 48 | /* end module */ 49 | -------------------------------------------------------------------------------- /src/usrsubr.c: -------------------------------------------------------------------------------- 1 | /* $Id: usrsubr.c,v 1.3 1999/05/31 23:35:46 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved 2 | */ 3 | 4 | /************************************************************************/ 5 | /* */ 6 | /* (C) Copyright 1989-95 Venue. All Rights Reserved. */ 7 | /* Manufactured in the United States of America. */ 8 | /* */ 9 | /************************************************************************/ 10 | 11 | #include "version.h" 12 | 13 | #include 14 | 15 | #include "usrsubrdefs.h" 16 | 17 | /** User defined subrs here. Do NOT attempt to use this unless you FULLY 18 | understand the dependencies of the LDE architecture. **/ 19 | 20 | int UserSubr(int user_subr_index, int num_args, unsigned *args) { 21 | int result = 0; 22 | 23 | /* *** remove the printf when finished debugging your user subr *** */ 24 | 25 | printf("debug: case: 0x%x, args: 0x%x\n", user_subr_index, num_args); 26 | { 27 | int i; 28 | for (i = 0; i < num_args; i++) printf("debug: arg[%d]: 0x%x\n", i, args[i]); 29 | } 30 | 31 | switch (user_subr_index) { 32 | case 0: 33 | printf("sample UFN\n"); 34 | result = args[0]; 35 | break; 36 | default: 37 | return (-1); /* DO UFN */ 38 | } 39 | 40 | return (result); 41 | } 42 | --------------------------------------------------------------------------------