mirror of
https://github.com/Interlisp/maiko.git
synced 2026-01-13 15:18:14 +00:00
Remove unused #define PERCENT_OF_SCREEN in MyWindow.h Move structures for dir.c to dirdefs.h where they are used Resolve S_CHAR vs S_CHARACTER in favor of S_CHARACTER and cleanup #defines Fix = vs == bug in FSDEBUG code in dir.c Eliminate duplicate/unused constant definitions in gcr.c Declare static internal function bytecmp in mkatom.c Update many source and include files to include headers for what they use
389 lines
8.3 KiB
C
Executable File
389 lines
8.3 KiB
C
Executable File
#ifndef LISPMAP_H
|
|
#define LISPMAP_H 1
|
|
|
|
/* $Id: lispmap.h,v 1.3 1999/01/03 02:06:08 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */
|
|
|
|
|
|
/************************************************************************/
|
|
/* */
|
|
/* (C) Copyright 1989-98 Venue. All Rights Reserved. */
|
|
/* Manufactured in the United States of America. */
|
|
/* */
|
|
/************************************************************************/
|
|
|
|
|
|
|
|
/*
|
|
File Name : lispmap.h(for TEST)
|
|
|
|
**************NOTE*****************
|
|
OLD DEFs are MOVED to lispmap.FULL
|
|
**************NOTE*****************
|
|
|
|
Global variables for LispSYSOUT
|
|
|
|
Date : December 18, 1986
|
|
Edited by : Takeshi Shimizu
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
/* Whole Lisp size */
|
|
#define LWORLD_SIZE 0x420000 /* byte */
|
|
|
|
/* 1 MDS entry size is 2(page) * 512 Byte */
|
|
#define MDSTT_SIZE (LWORLD_SIZE >> 10 )
|
|
|
|
/* if you want to use the ATOMSPACE for Dummy then it must be 0x10000 take */
|
|
#define MAP_SHIFT 0x0
|
|
|
|
/* Following constants mean LISP word offset. */
|
|
/* these correspond with lisp mem map */
|
|
/* for IOCBPAGE */
|
|
#define IOCBPAGE_OFFSET 256
|
|
#define IOCB_SIZE 1
|
|
|
|
|
|
#ifdef BIGBIGVM
|
|
|
|
/**********************************************/
|
|
/* */
|
|
/* BIG-BIG-VM sysout layout (256Mb sysout) */
|
|
/* */
|
|
/**********************************************/
|
|
|
|
/* for ATOMSPACE */
|
|
#define ATOM_HI 0
|
|
#define ATOM_OFFSET 0x00000
|
|
#define ATOM_SIZE 0x10000
|
|
|
|
/* for IOPAGE */
|
|
#define IOPAGE_OFFSET 0x0FF00
|
|
#define IOPAGE_SIZE 1
|
|
|
|
/* for STACKSPACE */
|
|
#define STK_HI 1
|
|
#define STK_OFFSET 0x10000
|
|
#define STK_SIZE 0x10000
|
|
|
|
/* for PLISTSPACE */
|
|
#define PLIS_HI 2 /* place holder, really -- keep the old value, even though it's inconsistent with the OFFSET, because it's known by LISP, and is used as a dispatch constant. */
|
|
#define PLIS_OFFSET 0x30000
|
|
#define PLIS_SIZE 0x10
|
|
|
|
|
|
|
|
#define FPTOVP_HI 4 /* again, inconsistent with OFFSET. */
|
|
#define FPTOVP_OFFSET 0x20000
|
|
#define FPTOVP_SIZE 0x100000
|
|
|
|
|
|
/*for PAGEMAP */
|
|
#define PAGEMAP_HI 5 /* Again, fake */
|
|
#define PAGEMAP_OFFSET 0x50000
|
|
#define PAGEMAP_SIZE 0x10000
|
|
|
|
/* for InterfacePage */
|
|
#define IFPAGE_HI 20
|
|
#define IFPAGE_OFFSET 0x140000
|
|
#define IFPAGE_SIZE 0x200
|
|
|
|
/* for PageMapTBL */
|
|
#define PAGEMAPTBL_OFFSET 0x140200
|
|
#define PAGEMAPTBL_SIZE 0x800
|
|
|
|
/* for MISCSTATS */
|
|
#define MISCSTATS_OFFSET 0x140A00
|
|
#define MISCSTATS_SIZE 0x200
|
|
|
|
/* for UFNTable */
|
|
#define UFNTBL_OFFSET 0x140C00
|
|
#define UFNTBL_SIZE 0x200
|
|
|
|
/* for DTDspace */
|
|
#define DTD_HI 20
|
|
#define DTD_OFFSET 0x141000
|
|
#define DTD_SIZE 0x1000
|
|
|
|
/* for LOCKEDPAGETBL */
|
|
#define LOCKEDPAGETBL_OFFSET 0x147000
|
|
#define LOCKEDPAGETBL_SIZE 0x1000
|
|
|
|
/* for MDSTT */
|
|
|
|
#define MDS_HI 24
|
|
#define MDS_OFFSET 0x180000
|
|
#define MDS_SIZE 0x40000
|
|
|
|
|
|
/* for AtomHashTable */
|
|
#define ATMHT_HI 21
|
|
#define ATMHT_OFFSET 0x150000
|
|
#define ATMHT_SIZE 0x10000
|
|
|
|
/* for PNPSPACE */
|
|
/* Now used to hold initial atoms */
|
|
#define PNP_HI 8 /* Fake */
|
|
#define PNP_OFFSET 0x80000
|
|
#define PNP_SIZE 0x20000
|
|
|
|
#define ATOMS_HI 44
|
|
#define ATOMS_OFFSET 0x2c0000
|
|
#define ATOMS_SIZE 0x20000
|
|
|
|
/* for DEFSPACE */
|
|
#define DEFS_HI 10 /* Fake */
|
|
#define DEFS_OFFSET 0xA0000
|
|
#define DEFS_SIZE 0x20000
|
|
|
|
/* for VALSPACE */
|
|
#define VALS_HI 12 /* Fake */
|
|
#define VALS_OFFSET 0xC0000
|
|
#define VALS_SIZE 0x20000
|
|
|
|
/* for Small Positive */
|
|
#define SPOS_HI 14 /* Fake */
|
|
#define S_POSITIVE 0xE0000
|
|
#define SPOS_SIZE 0x10000
|
|
|
|
/* for Small Negative */
|
|
#define SNEG_HI 15 /* Fake */
|
|
#define S_NEGATIVE 0xF0000
|
|
#define SNEG_SIZE 0x10000
|
|
|
|
/* for characters */
|
|
#define S_CHARACTER 0x70000
|
|
|
|
/* for HTMAIN */
|
|
#define HTMAIN_HI 22
|
|
#define HTMAIN_OFFSET 0x160000
|
|
#define HTMAIN_SIZE 0x10000
|
|
|
|
/* for HTOVERFLOW */
|
|
#define HTOVERFLOW_OFFSET 0x170000
|
|
#define HTOVERFLOW_SIZE 0x100
|
|
|
|
/* for HTBIGCOUNT */
|
|
#define HTBIG_HI 23
|
|
#define HTBIG_OFFSET 0x170100
|
|
#define HTBIG_SIZE 0x8000
|
|
|
|
/* for HTCOLL */
|
|
#define HTCOLL_HI 28
|
|
#define HTCOLL_OFFSET 0x1C0000
|
|
#define HTCOLL_SIZE 0x100000
|
|
|
|
|
|
/* DISPLAYREGION */
|
|
|
|
#define DISPLAY_HI 18
|
|
#define DISPLAY_OFFSET 0x120000
|
|
|
|
|
|
|
|
#define ARRAY_OFFSET 0x2e0000
|
|
|
|
|
|
/* #define MDS_BOTTOM_OFFSET 0x200000 NOT USED ANYWHERE 1/29/98 JDS */
|
|
|
|
#else
|
|
|
|
/* NOT BIG-BIG VM */
|
|
|
|
|
|
/* for ATOMSPACE */
|
|
#define ATOM_HI 0
|
|
#define ATOM_OFFSET 0x00000
|
|
#define ATOM_SIZE 0x10000
|
|
|
|
/* for IOPAGE */
|
|
#define IOPAGE_OFFSET 0x0FF00
|
|
#define IOPAGE_SIZE 1
|
|
|
|
/* for STACKSPACE */
|
|
#define STK_HI 1
|
|
#define STK_OFFSET 0x10000
|
|
#define STK_SIZE 0x10000
|
|
|
|
/* for PLISTSPACE */
|
|
#ifndef BIGVM
|
|
#define PLIS_HI 2
|
|
#define PLIS_OFFSET 0x20000
|
|
#define PLIS_SIZE 0x20000
|
|
#else
|
|
#define PLIS_HI 2 /* place holder, really -- keep the old value, even though it's inconsistent with the OFFSET, because it's known by LISP, and is used as a dispatch constant. */
|
|
#define PLIS_OFFSET 0x30000
|
|
#define PLIS_SIZE 0x10
|
|
#endif
|
|
|
|
#ifdef BIGVM
|
|
#define FPTOVP_HI 4 /* again, inconsistent with OFFSET. */
|
|
#define FPTOVP_OFFSET 0x20000
|
|
#define FPTOVP_SIZE 0x40000
|
|
#else
|
|
/* for FPTOVP */
|
|
#define FPTOVP_HI 4
|
|
#define FPTOVP_OFFSET 0x40000
|
|
#define FPTOVP_SIZE 0x10000
|
|
#endif /* BIGVM */
|
|
|
|
/*for PAGEMAP */
|
|
#define PAGEMAP_HI 5
|
|
#define PAGEMAP_OFFSET 0x50000
|
|
#define PAGEMAP_SIZE 0x10000
|
|
|
|
/* for InterfacePage */
|
|
#define IFPAGE_HI 6
|
|
#define IFPAGE_OFFSET 0x60000
|
|
#define IFPAGE_SIZE 0x200
|
|
|
|
/* for PageMapTBL */
|
|
#define PAGEMAPTBL_OFFSET 0x60200
|
|
#define PAGEMAPTBL_SIZE 0x800
|
|
|
|
/* for MISCSTATS */
|
|
#define MISCSTATS_OFFSET 0x60A00
|
|
#define MISCSTATS_SIZE 0x200
|
|
|
|
/* for UFNTable */
|
|
#define UFNTBL_OFFSET 0x60C00
|
|
#define UFNTBL_SIZE 0x200
|
|
|
|
/* for DTDspace */
|
|
#define DTD_HI 6
|
|
#define DTD_OFFSET 0x61000
|
|
#define DTD_SIZE 0x1000
|
|
|
|
/* for LOCKEDPAGETBL */
|
|
#define LOCKEDPAGETBL_OFFSET 0x67000
|
|
#define LOCKEDPAGETBL_SIZE 0x1000
|
|
|
|
/* for MDSTT */
|
|
#ifdef BIGVM
|
|
/* In BIGVM, MDS type table is at 19.,,0 for 1 segment */
|
|
#define MDS_HI 20
|
|
#define MDS_OFFSET 0x140000
|
|
#define MDS_SIZE 0x10000
|
|
#else
|
|
#define MDS_HI 6
|
|
#define MDS_OFFSET 0x68000
|
|
#define MDS_SIZE 0x8000
|
|
#endif /* BIGVM */
|
|
|
|
/* for AtomHashTable */
|
|
#define ATMHT_HI 7
|
|
#define ATMHT_OFFSET 0x70000
|
|
#define ATMHT_SIZE 0x10000
|
|
|
|
/* for PNPSPACE */
|
|
#define PNP_HI 8
|
|
#define PNP_OFFSET 0x80000
|
|
#define PNP_SIZE 0x20000
|
|
|
|
#define ATOMS_HI 8
|
|
#define ATOMS_OFFSET 0x80000
|
|
#define ATOMS_SIZE 0x20000
|
|
|
|
/* for DEFSPACE */
|
|
#define DEFS_HI 10
|
|
#define DEFS_OFFSET 0xA0000
|
|
#define DEFS_SIZE 0x20000
|
|
|
|
/* for VALSPACE */
|
|
#define VALS_HI 12
|
|
#define VALS_OFFSET 0xC0000
|
|
#define VALS_SIZE 0x20000
|
|
|
|
/* for Small Positive */
|
|
#define SPOS_HI 14
|
|
#define S_POSITIVE 0xE0000
|
|
#define SPOS_SIZE 0x10000
|
|
|
|
/* for Small Negative */
|
|
#define SNEG_HI 15
|
|
#define S_NEGATIVE 0xF0000
|
|
#define SNEG_SIZE 0x10000
|
|
|
|
/* for characters */
|
|
#define S_CHARACTER 0x70000
|
|
|
|
#ifdef BIGVM
|
|
/* for HTMAIN */
|
|
#define HTMAIN_HI 16
|
|
#define HTMAIN_OFFSET 0x100000
|
|
#define HTMAIN_SIZE 0x10000
|
|
|
|
/* for HTOVERFLOW */
|
|
#define HTOVERFLOW_OFFSET 0x110000
|
|
#define HTOVERFLOW_SIZE 0x100
|
|
|
|
/* for HTBIGCOUNT */
|
|
#define HTBIG_HI 16
|
|
#define HTBIG_OFFSET 0x110100
|
|
#define HTBIG_SIZE 0x8000
|
|
|
|
/* for HTCOLL */
|
|
#define HTCOLL_HI 10
|
|
#define HTCOLL_OFFSET 0xA0000
|
|
#define HTCOLL_SIZE 0x40000
|
|
#else
|
|
/* for HTMAIN */
|
|
#define HTMAIN_HI 16
|
|
#define HTMAIN_OFFSET 0x100000
|
|
#define HTMAIN_SIZE 0x8000
|
|
|
|
/* for HTOVERFLOW */
|
|
#define HTOVERFLOW_OFFSET 0x108000
|
|
#define HTOVERFLOW_SIZE 0x100
|
|
|
|
/* for HTBIGCOUNT */
|
|
#define HTBIG_HI 16
|
|
#define HTBIG_OFFSET 0x108100
|
|
#define HTBIG_SIZE 0x8000
|
|
|
|
/* for HTCOLL */
|
|
#define HTCOLL_HI 17
|
|
#define HTCOLL_OFFSET 0x110000
|
|
#define HTCOLL_SIZE 0x10000
|
|
#endif /* BIGVM */
|
|
|
|
|
|
/* DISPLAYREGION */
|
|
|
|
#define DISPLAY_HI 18
|
|
#define DISPLAY_OFFSET 0x120000
|
|
|
|
|
|
#ifdef MEDLEY
|
|
/* for ARRAYSPACE & MDS for PROT-LISP */
|
|
#define ARRAY_OFFSET 0x150000
|
|
#elif defined(BIGVM)
|
|
#define ARRAY_OFFSET 0x150000
|
|
#else
|
|
#define ARRAY_OFFSET 0x130000
|
|
#endif
|
|
|
|
/* #define MDS_BOTTOM_OFFSET 0x200000 NOT used anywhere JDS 1/29/98 */
|
|
|
|
#endif /* BIGBIGVM */
|
|
|
|
|
|
|
|
/* for PnCharSpace(use only PROT-LISP ) */
|
|
#define PNCHAR_HI 0x20
|
|
#define PNCHAR_OFFSET 0x200000
|
|
#define PNCHAR_SIZE 0x10000
|
|
|
|
|
|
/***** SEG definitions for AtomCellN *****/
|
|
/* following defs correspond with D machine memory layout */
|
|
/**** NOTE!! if D's layout changes, modify following defs */
|
|
#define D_PLISHI 2
|
|
#define D_PNHI 010
|
|
#define D_DEFSHI 012
|
|
#define D_VALSHI 014
|
|
|
|
#endif
|