promotional, or sales literature without prior written consent from
MIT in each case. */
-/* $Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/microcode/bignum.h,v 5.2 1986/12/17 06:00:03 cph Exp $
+/* $Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/microcode/bignum.h,v 5.3 1986/12/17 06:34:23 cph Exp $
Head file for bignums. This is shared by bignum.c and generic.c. */
\f
#if ((USHORT_SIZE * 2) <= ULONG_SIZE)
#define bigdigit unsigned short
#define bigdouble long /* Should be unsigned */
-#define SHIFT (CHAR_SIZE*sizeof(bigdigit))
+#define SHIFT USHORT_SIZE
#define factor (sizeof(Pointer)/sizeof(bigdigit))
#else
#if ((CHAR_SIZE * 2) <= ULONG_SIZE)
-/* Hey EMACS, this is -*- C -*- code! */
-
-/****************************************************************
-* *
-* Copyright (c) 1986 *
-* Massachusetts Institute of Technology *
-* *
-* This material was developed by the Scheme project at the *
-* Massachusetts Institute of Technology, Department of *
-* Electrical Engineering and Computer Science. Permission to *
-* copy this software, to redistribute it, and to use it for any *
-* purpose is granted, subject to the following restrictions and *
-* understandings. *
-* *
-* 1. Any copy made of this software must include this copyright *
-* notice in full. *
-* *
-* 2. Users of this software agree to make their best efforts (a)*
-* to return to the MIT Scheme project any improvements or *
-* extensions that they make, so that these may be included in *
-* future releases; and (b) to inform MIT of noteworthy uses of *
-* this software. *
-* *
-* 3. All materials developed as a consequence of the use of *
-* this software shall duly acknowledge such use, in accordance *
-* with the usual standards of acknowledging credit in academic *
-* research. *
-* *
-* 4. MIT has made no warrantee or representation that the *
-* operation of this software will be error-free, and MIT is *
-* under no obligation to provide any services, by way of *
-* maintenance, update, or otherwise. *
-* *
-* 5. In conjunction with products arising from the use of this *
-* material, there shall be no use of the name of the *
-* Massachusetts Institute of Technology nor of any adaptation *
-* thereof in any advertising, promotional, or sales literature *
-* without prior written consent from MIT in each case. *
-* *
-****************************************************************/
-\f
-/* File: CONFIG.H
+/* -*-C-*-
+
+Copyright (c) 1986 Massachusetts Institute of Technology
+
+This material was developed by the Scheme project at the Massachusetts
+Institute of Technology, Department of Electrical Engineering and
+Computer Science. Permission to copy this software, to redistribute
+it, and to use it for any purpose is granted, subject to the following
+restrictions and understandings.
+
+1. Any copy made of this software must include this copyright notice
+in full.
+
+2. Users of this software agree to make their best efforts (a) to
+return to the MIT Scheme project any improvements or extensions that
+they make, so that these may be included in future releases; and (b)
+to inform MIT of noteworthy uses of this software.
+
+3. All materials developed as a consequence of the use of this
+software shall duly acknowledge such use, in accordance with the usual
+standards of acknowledging credit in academic research.
+
+4. MIT has made no warrantee or representation that the operation of
+this software will be error-free, and MIT is under no obligation to
+provide any services, by way of maintenance, update, or otherwise.
+
+5. In conjunction with products arising from the use of this material,
+there shall be no use of the name of the Massachusetts Institute of
+Technology nor of any adaptation thereof in any advertising,
+promotional, or sales literature without prior written consent from
+MIT in each case. */
+
+/* $Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/microcode/Attic/config.h,v 5.2 1986/12/17 06:34:57 cph Exp $
*
* This file contains the configuration information and the information
* given on the command line on Unix.
*
*/
-
+\f
/* Default pathnames. */
#ifndef DEFAULT_BAND_NAME
promotional, or sales literature without prior written consent from
MIT in each case. */
-/* File: object.h
+/* $Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/microcode/object.h,v 5.2 1986/12/17 06:35:06 cph Exp $
*
* This file contains definitions pertaining to the C view of
* Scheme pointers: widths of fields, extraction macros, pre-computed
*
*/
\f
-/* The C type Pointer is defined at the end of CONFIG.H */
+/* The C type Pointer is defined at the end of CONFIG.H
+ The definition of POINTER_LENGTH here assumes that Pointer is the same
+ as unsigned long. If that ever changes, this definition must also.
+ POINTER_LENGTH is defined this way to make it available to
+ the preprocessor. */
+#define POINTER_LENGTH ULONG_SIZE
#define TYPE_CODE_LENGTH 8 /* Not CHAR_SIZE!! */
#define MAX_TYPE_CODE 0xFF /* ((1<<TYPE_CODE_LENGTH) - 1) */
#ifndef b32 /* Safe versions */
-#define POINTER_LENGTH (CHAR_SIZE*sizeof(Pointer))
#define ADDRESS_LENGTH (POINTER_LENGTH-TYPE_CODE_LENGTH)
#define ADDRESS_MASK ((1<<ADDRESS_LENGTH) - 1)
#define TYPE_CODE_MASK (~ADDRESS_MASK)
#else /* 32 bit word versions */
-#define POINTER_LENGTH 32
#define ADDRESS_LENGTH 24
#define ADDRESS_MASK 0x00FFFFFF
#define TYPE_CODE_MASK 0xFF000000
promotional, or sales literature without prior written consent from
MIT in each case. */
-/* File: object.h
+/* $Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v8/src/microcode/object.h,v 5.2 1986/12/17 06:35:06 cph Exp $
*
* This file contains definitions pertaining to the C view of
* Scheme pointers: widths of fields, extraction macros, pre-computed
*
*/
\f
-/* The C type Pointer is defined at the end of CONFIG.H */
+/* The C type Pointer is defined at the end of CONFIG.H
+ The definition of POINTER_LENGTH here assumes that Pointer is the same
+ as unsigned long. If that ever changes, this definition must also.
+ POINTER_LENGTH is defined this way to make it available to
+ the preprocessor. */
+#define POINTER_LENGTH ULONG_SIZE
#define TYPE_CODE_LENGTH 8 /* Not CHAR_SIZE!! */
#define MAX_TYPE_CODE 0xFF /* ((1<<TYPE_CODE_LENGTH) - 1) */
#ifndef b32 /* Safe versions */
-#define POINTER_LENGTH (CHAR_SIZE*sizeof(Pointer))
#define ADDRESS_LENGTH (POINTER_LENGTH-TYPE_CODE_LENGTH)
#define ADDRESS_MASK ((1<<ADDRESS_LENGTH) - 1)
#define TYPE_CODE_MASK (~ADDRESS_MASK)
#else /* 32 bit word versions */
-#define POINTER_LENGTH 32
#define ADDRESS_LENGTH 24
#define ADDRESS_MASK 0x00FFFFFF
#define TYPE_CODE_MASK 0xFF000000