mit-scheme.git
34 years agoMove the call to reset-gc-after-restore! from disk-save/kernel to
Guillermo J. Rozas [Mon, 30 Jul 1990 03:47:46 +0000 (03:47 +0000)]
Move the call to reset-gc-after-restore! from disk-save/kernel to
setup-image, since both disk-save and dump-world must take care of it.

34 years agoMake scmkit work again (under HP-UX 7.0) by invoking gld with the
Guillermo J. Rozas [Sat, 28 Jul 1990 21:45:22 +0000 (21:45 +0000)]
Make scmkit work again (under HP-UX 7.0) by invoking gld with the
-noinhibit-exec option.

34 years agoResurrect dmpwrld.c .
Guillermo J. Rozas [Sat, 28 Jul 1990 18:57:17 +0000 (18:57 +0000)]
Resurrect dmpwrld.c .
Install hooks in various places so that IO descriptors, etc. are OK
after resuming execution.

34 years agoResurrect dmpwrld.c .
Guillermo J. Rozas [Sat, 28 Jul 1990 18:56:49 +0000 (18:56 +0000)]
Resurrect dmpwrld.c .
Install hooks in various places so that IO descriptors, etc. are OK
after resuming execution.

34 years agoInitial revision
Guillermo J. Rozas [Fri, 27 Jul 1990 21:30:08 +0000 (21:30 +0000)]
Initial revision

34 years agoNew version of unexec from emacs 18.55 .
Guillermo J. Rozas [Fri, 27 Jul 1990 21:29:37 +0000 (21:29 +0000)]
New version of unexec from emacs 18.55 .

34 years agoFix pathnames after making altdorf the Switzerland server.
Guillermo J. Rozas [Fri, 27 Jul 1990 00:29:56 +0000 (00:29 +0000)]
Fix pathnames after making altdorf the Switzerland server.

34 years agoFix bug in zero-entry multi closures. The allocation was done incorrectly.
Guillermo J. Rozas [Thu, 26 Jul 1990 04:22:22 +0000 (04:22 +0000)]
Fix bug in zero-entry multi closures.  The allocation was done incorrectly.

34 years agoFix `graphics-clear' of X window to respect the clip rectangle.
Chris Hanson [Tue, 24 Jul 1990 22:17:12 +0000 (22:17 +0000)]
Fix `graphics-clear' of X window to respect the clip rectangle.

34 years agofixnum-pred-2->cc was renamed to fixnum-pred->cc. Remove left-over reference.
Guillermo J. Rozas [Mon, 23 Jul 1990 14:22:03 +0000 (14:22 +0000)]
fixnum-pred-2->cc was renamed to fixnum-pred->cc.  Remove left-over reference.

34 years agoMerge in Jmiller's changes for multi-closures.
Guillermo J. Rozas [Sun, 22 Jul 1990 20:33:20 +0000 (20:33 +0000)]
Merge in Jmiller's changes for multi-closures.

34 years agoUpdate to version match 68k compiler version 4.74.
Guillermo J. Rozas [Sun, 22 Jul 1990 18:56:39 +0000 (18:56 +0000)]
Update to version match 68k compiler version 4.74.
Multi closures.
Bit-wise fixnum operations.
Add out-of-line multiply and divide (quotient and remainder) routines
that use the floating-point co-processor.

34 years agoReplace uses of land and quotient with fix:and and fix:quotient,
Guillermo J. Rozas [Sun, 22 Jul 1990 18:52:45 +0000 (18:52 +0000)]
Replace uses of land and quotient with fix:and and fix:quotient,
respectively.
Note: Uses of fix:quotient should be replaced with uses of fix:lsh.

34 years agoFix minor bugs in disassembly (some instructions were missing the
Guillermo J. Rozas [Sun, 22 Jul 1990 18:51:48 +0000 (18:51 +0000)]
Fix minor bugs in disassembly (some instructions were missing the
completer).

34 years agoFix bug in compiler:disassemble by which only half of the variable
Guillermo J. Rozas [Sun, 22 Jul 1990 18:50:59 +0000 (18:50 +0000)]
Fix bug in compiler:disassemble by which only half of the variable
caches was being displayed.

34 years agoFix missing end-of-line back-slash in the documentation string for
Guillermo J. Rozas [Sun, 22 Jul 1990 06:42:25 +0000 (06:42 +0000)]
Fix missing end-of-line back-slash in the documentation string for
FILE-FILL-INPUT-BUFFER.

34 years agoFix unitialized variable bug in xw_wait_for_window_event.
Guillermo J. Rozas [Sun, 22 Jul 1990 06:40:36 +0000 (06:40 +0000)]
Fix unitialized variable bug in xw_wait_for_window_event.
Typo in the previous check-in.

34 years agoFix unitialized variable bug in xw_wait_for_window_event.
Guillermo J. Rozas [Sun, 22 Jul 1990 06:35:42 +0000 (06:35 +0000)]
Fix unitialized variable bug in xw_wait_for_window_event.

34 years agoImprove code sequence for constant second argument to
Guillermo J. Rozas [Fri, 20 Jul 1990 15:53:40 +0000 (15:53 +0000)]
Improve code sequence for constant second argument to
FIXNUM-REMAINDER.

34 years agoImprove copy-program, and move it to a separate file (prgcop) and
Guillermo J. Rozas [Fri, 20 Jul 1990 01:24:13 +0000 (01:24 +0000)]
Improve copy-program, and move it to a separate file (prgcop) and
package (runtime program-copier).

34 years agoAdd package definition for package (runtime program-copier).
Guillermo J. Rozas [Fri, 20 Jul 1990 01:21:23 +0000 (01:21 +0000)]
Add package definition for package (runtime program-copier).

34 years agoAdd initialization for package (runtime program-copier).
Guillermo J. Rozas [Fri, 20 Jul 1990 01:20:52 +0000 (01:20 +0000)]
Add initialization for package (runtime program-copier).

34 years agoInitial revision
Guillermo J. Rozas [Fri, 20 Jul 1990 01:12:33 +0000 (01:12 +0000)]
Initial revision

34 years agoRemove copy-program. It now lives in prgcop.scm .
Guillermo J. Rozas [Fri, 20 Jul 1990 01:12:03 +0000 (01:12 +0000)]
Remove copy-program.  It now lives in prgcop.scm .

34 years agoAdd fixnum-lsh to list of primitives that can be constant-folded.
Guillermo J. Rozas [Thu, 19 Jul 1990 21:44:33 +0000 (21:44 +0000)]
Add fixnum-lsh to list of primitives that can be constant-folded.

34 years agoTake word size into account. Shifts past fixnum size always return
Guillermo J. Rozas [Thu, 19 Jul 1990 19:11:32 +0000 (19:11 +0000)]
Take word size into account.  Shifts past fixnum size always return
0.

34 years agoAdd the NV condition to extract-deposit-condition.
Guillermo J. Rozas [Thu, 19 Jul 1990 04:03:55 +0000 (04:03 +0000)]
Add the NV condition to extract-deposit-condition.

34 years agoHandle EOF on the console input.
Chris Hanson [Wed, 18 Jul 1990 20:40:33 +0000 (20:40 +0000)]
Handle EOF on the console input.

34 years agoEnable io_burst mode. It speeds up small transfers significantly.
Guillermo J. Rozas [Mon, 16 Jul 1990 23:17:21 +0000 (23:17 +0000)]
Enable io_burst mode.  It speeds up small transfers significantly.

34 years agoNew treatment of X events.
Mark Friedman [Mon, 16 Jul 1990 22:07:38 +0000 (22:07 +0000)]
New treatment of X events.

There is now a global X event queue which can be accessed by scheme
primitives.

Added select() in ux.h

34 years agoAdded select().
Mark Friedman [Mon, 16 Jul 1990 21:06:52 +0000 (21:06 +0000)]
Added select().

34 years agoNew treatment of X events.
Mark Friedman [Mon, 16 Jul 1990 21:03:07 +0000 (21:03 +0000)]
New treatment of X events.

There is now a global X event queue which can be accessed by scheme
primitives.

34 years agoNew treatment of X events.
Mark Friedman [Mon, 16 Jul 1990 20:52:47 +0000 (20:52 +0000)]
New treatment of X events.

There is now a global X event queue which can be accessed by scheme
primitives.

34 years agoNew treatment of X events.
Mark Friedman [Mon, 16 Jul 1990 20:17:38 +0000 (20:17 +0000)]
New treatment of X events.

There is now a global X event queue which can be accessed by scheme
primitives.

34 years agoChange restart sequence so that bands dumped from Emacs will restore
Chris Hanson [Mon, 16 Jul 1990 17:12:56 +0000 (17:12 +0000)]
Change restart sequence so that bands dumped from Emacs will restore
correctly.

34 years agoAdd fixnum-lsh.
Guillermo J. Rozas [Sun, 15 Jul 1990 23:37:20 +0000 (23:37 +0000)]
Add fixnum-lsh.

34 years agoAdd fixnum-lsh.
Guillermo J. Rozas [Sun, 15 Jul 1990 22:59:25 +0000 (22:59 +0000)]
Add fixnum-lsh.

34 years agoAdd fix:lsh
Guillermo J. Rozas [Sun, 15 Jul 1990 22:57:43 +0000 (22:57 +0000)]
Add fix:lsh

34 years agoAdd fixnum-lsh.
Guillermo J. Rozas [Sun, 15 Jul 1990 22:52:05 +0000 (22:52 +0000)]
Add fixnum-lsh.

34 years agoAdd fixnum-lsh.
Guillermo J. Rozas [Sun, 15 Jul 1990 22:50:44 +0000 (22:50 +0000)]
Add fixnum-lsh.

34 years agoAdd io_timeout_ctl to gpio-open.
Guillermo J. Rozas [Fri, 13 Jul 1990 21:47:33 +0000 (21:47 +0000)]
Add io_timeout_ctl to gpio-open.

34 years agoFix bug in disassembler/write-linkage-section by which only
Guillermo J. Rozas [Thu, 12 Jul 1990 16:42:39 +0000 (16:42 +0000)]
Fix bug in disassembler/write-linkage-section by which only
even-numbered variable caches were being printed.

34 years agoAdded dynamic-state-let (in syntax.scm), which is like fluid-let
Mark Friedman [Tue, 3 Jul 1990 19:49:24 +0000 (19:49 +0000)]
Added dynamic-state-let (in syntax.scm), which is like fluid-let
except that it allows an arbitrary dynamic state space as an argument.

34 years agoAdded dynamic-state-let, which is like fluid-let except that it allows
Mark Friedman [Tue, 3 Jul 1990 19:47:57 +0000 (19:47 +0000)]
Added dynamic-state-let, which is like fluid-let except that it allows
an arbitrary dynamic state space as an argument.

34 years agoRename fixnum and flonum entries to use the microcode primitive name,
Guillermo J. Rozas [Thu, 28 Jun 1990 19:09:25 +0000 (19:09 +0000)]
Rename fixnum and flonum entries to use the microcode primitive name,
rather than the convenient name.

34 years agoFix trap_handler so that the saved_* parameters are set up correctly
Guillermo J. Rozas [Thu, 28 Jun 1990 18:24:36 +0000 (18:24 +0000)]
Fix trap_handler so that the saved_* parameters are set up correctly
before invoking trap_recover.  This fixes the bug by which all traps
were reported as "User microcode reset".

Add find_signal_code_name to generate a string for the signal code
using DECLARE_UX_SIGNAL_CODES defined in uxtrap.h .

Modify setup_trap_frame to use find_signal_code_name .

Fix find_block_address_in_area to not run into an infinite loop (it
was not incrementing the area pointer on most objects).

34 years agoAdd definition of DECLARE_UX_SIGNAL_CODES to allow better reporting of
Guillermo J. Rozas [Thu, 28 Jun 1990 18:20:53 +0000 (18:20 +0000)]
Add definition of DECLARE_UX_SIGNAL_CODES to allow better reporting of
hardware traps.

34 years agoFix dependencies for uxtrap.o .
Guillermo J. Rozas [Thu, 28 Jun 1990 18:20:16 +0000 (18:20 +0000)]
Fix dependencies for uxtrap.o .

34 years agoFix consistency test after the second phase of purify. It no longer
Guillermo J. Rozas [Thu, 28 Jun 1990 18:19:53 +0000 (18:19 +0000)]
Fix consistency test after the second phase of purify.  It no longer
depends on FLOATING_ALIGNMENT and only on whether constant space was
not overrun by the purification.

34 years agoChange find_constant_space_block to return the address of the first
Guillermo J. Rozas [Thu, 28 Jun 1990 18:18:11 +0000 (18:18 +0000)]
Change find_constant_space_block to return the address of the first
word of the block where the object is found, rather than the address
of the last word of the previous block.

Change impurify to never impurify flonums.

Remove extraneous conditionalization on FLOATING_ALIGNMENT.

34 years agoChange the definition of PLAUSIBLE_CC_BLOCK_P to handle two cases:
Guillermo J. Rozas [Thu, 28 Jun 1990 18:16:32 +0000 (18:16 +0000)]
Change the definition of PLAUSIBLE_CC_BLOCK_P to handle two cases:
expression blocks, and single procedure blocks generated when the
compiler compiles by procedures.

34 years agoDefine ENTRY_PREFIX_LENGTH for use in cmpgc.h .
Guillermo J. Rozas [Thu, 28 Jun 1990 18:15:30 +0000 (18:15 +0000)]
Define ENTRY_PREFIX_LENGTH for use in cmpgc.h .
This allows PLAUSIBLE_CC_BLOCK_P to answer true to blocks with single
procedures.

34 years agoBetter reporting of hardware traps.
Guillermo J. Rozas [Thu, 28 Jun 1990 18:10:05 +0000 (18:10 +0000)]
Better reporting of hardware traps.

34 years agoExport two more hardware trap utilities for the error handler.
Guillermo J. Rozas [Thu, 28 Jun 1990 18:09:44 +0000 (18:09 +0000)]
Export two more hardware trap utilities for the error handler.

34 years agoBetter reporting of hardware traps.
Guillermo J. Rozas [Thu, 28 Jun 1990 16:36:12 +0000 (16:36 +0000)]
Better reporting of hardware traps.

34 years agocompiled-entry/block is the identity on compiled code blocks.
Guillermo J. Rozas [Thu, 28 Jun 1990 16:35:56 +0000 (16:35 +0000)]
compiled-entry/block is the identity on compiled code blocks.

34 years agoBetter reporting of hardware traps.
Guillermo J. Rozas [Thu, 28 Jun 1990 16:35:40 +0000 (16:35 +0000)]
Better reporting of hardware traps.
compiled-entry/block is the identity on compiled code blocks.
Fixnum operations can now be constant folded by the syntaxer.

34 years agoAdd fixnum and flonum operations to the list of procedures that can be
Guillermo J. Rozas [Wed, 27 Jun 1990 14:07:17 +0000 (14:07 +0000)]
Add fixnum and flonum operations to the list of procedures that can be
constant-folded by the runtime system.

34 years agoAdd bit-wise boolean operations to the list of functions the compiler
Guillermo J. Rozas [Wed, 27 Jun 1990 14:06:35 +0000 (14:06 +0000)]
Add bit-wise boolean operations to the list of functions the compiler
can open-code and whose results can be shared.

Change the date.

34 years agoAdd bit-wise boolean operations to the list of functions the compiler
Guillermo J. Rozas [Wed, 27 Jun 1990 14:06:08 +0000 (14:06 +0000)]
Add bit-wise boolean operations to the list of functions the compiler
can open-code and whose results can be shared.

34 years agoAdd open coding for bit-wise boolean operations, and
Guillermo J. Rozas [Tue, 26 Jun 1990 22:16:41 +0000 (22:16 +0000)]
Add open coding for bit-wise boolean operations, and
primitive-object-ref/set! .

Enable the open coding of fixnum-quotient and fixnum-remainder.

Add optimizations for these operations when the second operand is a
power of 2 (tricky, see GLS's paper "Arithmetic shifting considered
harmful").

34 years agoAdd open coding for bit-wise boolean operations, and
Guillermo J. Rozas [Tue, 26 Jun 1990 22:07:13 +0000 (22:07 +0000)]
Add open coding for bit-wise boolean operations, and
primitive-object-ref/set! .

Enable the open coding of fixnum-quotient and fixnum-remainder.

Add optimizations for these operations when the second operand is a
power of 2 (tricky, see GLS's paper "Arithmetic shifting considered
harmful").

34 years agoAdd fixnum bit-wise operations.
Guillermo J. Rozas [Mon, 25 Jun 1990 18:54:16 +0000 (18:54 +0000)]
Add fixnum bit-wise operations.

34 years agoChange gpio-read-string and gpio-write-string to take position and
Guillermo J. Rozas [Mon, 25 Jun 1990 18:33:46 +0000 (18:33 +0000)]
Change gpio-read-string and gpio-write-string to take position and
count parameters, rather than just count parameters.  This speeds up
output when it is divided into chunks.

34 years agoAdd "rm -f" lines to the rules for scm6003, scmkit, and scmLYN to
Guillermo J. Rozas [Mon, 25 Jun 1990 18:29:04 +0000 (18:29 +0000)]
Add "rm -f" lines to the rules for scm6003, scmkit, and scmLYN to
guarantee the correct ownership on the file.

34 years agoAdd "rm -f" lines to the scheme and bchscheme rules to guarantee the
Guillermo J. Rozas [Mon, 25 Jun 1990 18:27:41 +0000 (18:27 +0000)]
Add "rm -f" lines to the scheme and bchscheme rules to guarantee the
correct ownership on the file.

34 years agoAdd bit-wise fixnum operations.
Guillermo J. Rozas [Mon, 25 Jun 1990 18:18:34 +0000 (18:18 +0000)]
Add bit-wise fixnum operations.

34 years agoIn `OS_file_remove_link', delete regular files no matter how many
Chris Hanson [Fri, 22 Jun 1990 01:44:14 +0000 (01:44 +0000)]
In `OS_file_remove_link', delete regular files no matter how many
links they have.

34 years agoImplement `check-and-clean-up-input-channel' in runtime system --
Chris Hanson [Fri, 22 Jun 1990 01:04:48 +0000 (01:04 +0000)]
Implement `check-and-clean-up-input-channel' in runtime system --
microcode no longer provides this service.

34 years agoUse new `get-decoded-time' primitive.
Chris Hanson [Thu, 21 Jun 1990 23:19:39 +0000 (23:19 +0000)]
Use new `get-decoded-time' primitive.

34 years agoForgot to convert elements of `get-decoded-time' to Scheme integers.
Chris Hanson [Thu, 21 Jun 1990 23:09:32 +0000 (23:09 +0000)]
Forgot to convert elements of `get-decoded-time' to Scheme integers.

34 years agoForgot to convert elements of `get-decoded-time' to Scheme integers.
Chris Hanson [Thu, 21 Jun 1990 23:06:44 +0000 (23:06 +0000)]
Forgot to convert elements of `get-decoded-time' to Scheme integers.

34 years agoChange console-input-port so that it always buffers the input.
Chris Hanson [Thu, 21 Jun 1990 22:11:52 +0000 (22:11 +0000)]
Change console-input-port so that it always buffers the input.
Because of this change there is no need to use the special terminal
input primitives -- these should be flushed from the microcode.
All buffered input channels now support the `interval' argument of the
`char-ready?' operation.

34 years agoAdd dependencies on OS_PRIM_SOURCES for all usrdef.* .
Guillermo J. Rozas [Thu, 21 Jun 1990 21:01:08 +0000 (21:01 +0000)]
Add dependencies on OS_PRIM_SOURCES for all usrdef.* .

34 years agoPatch to `Restore_History' from JMiller.
Chris Hanson [Thu, 21 Jun 1990 20:17:03 +0000 (20:17 +0000)]
Patch to `Restore_History' from JMiller.

34 years agoChange `OS_channel_read' and `OS_channel_write' to be interruptable,
Chris Hanson [Thu, 21 Jun 1990 20:02:06 +0000 (20:02 +0000)]
Change `OS_channel_read' and `OS_channel_write' to be interruptable,
so that any I/O can be interrupted by the user typing ^G.  Fix minor
thinko in `OS_channel_close' that caused the console I/O channels to
be marked as closed even though they were still open.

34 years ago.DEFAULT hack doesn't work very well, so disable it.
Chris Hanson [Thu, 21 Jun 1990 19:59:16 +0000 (19:59 +0000)]
.DEFAULT hack doesn't work very well, so disable it.

34 years agoFix bogus type declaration in Load_Data (FILE * -> SCHEME_OBJECT *).
Guillermo J. Rozas [Thu, 21 Jun 1990 03:50:30 +0000 (03:50 +0000)]
Fix bogus type declaration in Load_Data (FILE * -> SCHEME_OBJECT *).

34 years agoChanges to match runtime system 14.82.
Chris Hanson [Wed, 20 Jun 1990 23:02:09 +0000 (23:02 +0000)]
Changes to match runtime system 14.82.

34 years agoGenerate a .cref file when resyntaxing Edwin.
Chris Hanson [Wed, 20 Jun 1990 22:49:45 +0000 (22:49 +0000)]
Generate a .cref file when resyntaxing Edwin.

34 years agoGenerate a .cref file when resyntaxing Edwin.
Chris Hanson [Wed, 20 Jun 1990 22:42:25 +0000 (22:42 +0000)]
Generate a .cref file when resyntaxing Edwin.

34 years ago* Complete redesign of the operating-system interface. I/O is more
Chris Hanson [Wed, 20 Jun 1990 21:13:44 +0000 (21:13 +0000)]
* Complete redesign of the operating-system interface.  I/O is more
uniform and is able to take advantage of things like sockets, pipes,
ptys, etc.  All I/O buffering is moved into the runtime system for
better performance with Scheme compiler code.  Strong knowledge of
POSIX.1 should make porting to VMS easy once VMS supports POSIX.1.

* Change operating system conditionalizations to standard form
suggested by POSIX.1.

* Add FSF macros to support ANSI declarations.

* Add dynamic-stack package and obstacks.

* Provide higher-level utilities for parsing command line options.

* Instead of `Back_To_Eval', there is now a procedure
`abort_to_interpreter' which knows about everything that needs to be
cleaned up.

* Change names of some macros:

Pop STACK_POP
Push STACK_PUSH
Push_From STACK_LOCATIVE_PUSH
Pop_Into STACK_LOCATIVE_POP (similar)
Stack_Ref STACK_REF
Top_Of_Stack() STACK_REF(0)
Simulate_Popping STACK_LOC
Simulate_Pushing STACK_LOC (similar)
Stack_Distance STACK_LOCATIVE_DIFFERENCE (similar)
Pop_Primitive_Frame POP_PRIMITIVE_FRAME
Metering_Apply_Primitive PRIMITIVE_APPLY
Export_Regs_Before_Primitive EXPORT_REGS_BEFORE_PRIMITIVE
Import_Regs_After_Primitive IMPORT_REGS_AFTER_PRIMITIVE

* Sun assembler can't handle a constant used in "cmpaux-mc68k.m4", so
provide an option to rewrite that instruction as two instructions.

* Some compilers won't cast a function to an integer, so kludge around
it by mis-declaring the external function as an integer, taking it the
integer's address, and casting THAT to an integer.

* Move critical section code and termination code to their own files.

34 years ago* Changes to operating system interface to match those introduced in
Chris Hanson [Wed, 20 Jun 1990 20:37:44 +0000 (20:37 +0000)]
* Changes to operating system interface to match those introduced in
microcode version 11.33, which is required for this runtime system
version.

* The low-level channel abstraction has been changed -- it now
contains only a microcode channel descriptor and the channel type.
The microcode no longer knows the format of channels.

* Subprocess support has been temporarily removed.  New subprocess
support is being designed to accompany changes in the microcode.

* The file-copy primitive is now written in Scheme using lower-level
file system and I/O operations.

* Use `input-port/immediate-mode' and `input-port/normal-mode' to
switch terminal mode.  The operations `read-char-immediate' and
`peek-char-immediate' are now obsolete.  REP loops force the input
port into normal mode, while the debugger forces it into immediate
mode.

* I/O buffering for input files, output files, and the console output
is now done in Scheme.  The microcode provides no buffering.
These ports understand `buffer-size' and `set-buffer-size' operations
to control the amount of buffering.  A buffer size of 0 disables
buffering entirely.

* `read-start!' and `read-finish!' are now optional operations on
input ports.

* An input or output port will now report the set of operations that
it responds to.

34 years agoInitial revision
Chris Hanson [Wed, 20 Jun 1990 20:34:23 +0000 (20:34 +0000)]
Initial revision

34 years ago* Changes to operating system interface to match those introduced in
Chris Hanson [Wed, 20 Jun 1990 20:30:31 +0000 (20:30 +0000)]
* Changes to operating system interface to match those introduced in
microcode version 11.33, which is required for this runtime system
version.

* The low-level channel abstraction has been changed -- it now
contains only a microcode channel descriptor and the channel type.
The microcode no longer knows the format of channels.

* Subprocess support has been temporarily removed.  New subprocess
support is being designed to accompany changes in the microcode.

* The file-copy primitive is now written in Scheme using lower-level
file system and I/O operations.

* Use `input-port/immediate-mode' and `input-port/normal-mode' to
switch terminal mode.  The operations `read-char-immediate' and
`peek-char-immediate' are now obsolete.  REP loops force the input
port into normal mode, while the debugger forces it into immediate
mode.

* I/O buffering for input files, output files, and the console output
is now done in Scheme.  The microcode provides no buffering.
These ports understand `buffer-size' and `set-buffer-size' operations
to control the amount of buffering.  A buffer size of 0 disables
buffering entirely.

* `read-start!' and `read-finish!' are now optional operations on
input ports.

* An input or output port will now report the set of operations that
it responds to.

34 years ago* Complete redesign of the operating-system interface. I/O is more
Chris Hanson [Wed, 20 Jun 1990 20:00:58 +0000 (20:00 +0000)]
* Complete redesign of the operating-system interface.  I/O is more
uniform and is able to take advantage of things like sockets, pipes,
ptys, etc.  All I/O buffering is moved into the runtime system for
better performance with Scheme compiler code.  Strong knowledge of
POSIX.1 should make porting to VMS easy once VMS supports POSIX.1.

* Change operating system conditionalizations to standard form
suggested by POSIX.1.

* Add FSF macros to support ANSI declarations.

* Add dynamic-stack package and obstacks.

* Provide higher-level utilities for parsing command line options.

* Instead of `Back_To_Eval', there is now a procedure
`abort_to_interpreter' which knows about everything that needs to be
cleaned up.

* Change names of some macros:

Pop STACK_POP
Push STACK_PUSH
Push_From STACK_LOCATIVE_PUSH
Pop_Into STACK_LOCATIVE_POP (similar)
Stack_Ref STACK_REF
Top_Of_Stack() STACK_REF(0)
Simulate_Popping STACK_LOC
Simulate_Pushing STACK_LOC (similar)
Stack_Distance STACK_LOCATIVE_DIFFERENCE (similar)
Pop_Primitive_Frame POP_PRIMITIVE_FRAME
Metering_Apply_Primitive PRIMITIVE_APPLY
Export_Regs_Before_Primitive EXPORT_REGS_BEFORE_PRIMITIVE
Import_Regs_After_Primitive IMPORT_REGS_AFTER_PRIMITIVE

* Sun assembler can't handle a constant used in "cmpaux-mc68k.m4", so
provide an option to rewrite that instruction as two instructions.

* Some compilers won't cast a function to an integer, so kludge around
it by mis-declaring the external function as an integer, taking it the
integer's address, and casting THAT to an integer.

* Move critical section code and termination code to their own files.

34 years agoInitial revision
Chris Hanson [Wed, 20 Jun 1990 19:56:08 +0000 (19:56 +0000)]
Initial revision

34 years ago* Complete redesign of the operating-system interface. I/O is more
Chris Hanson [Wed, 20 Jun 1990 19:55:07 +0000 (19:55 +0000)]
* Complete redesign of the operating-system interface.  I/O is more
uniform and is able to take advantage of things like sockets, pipes,
ptys, etc.  All I/O buffering is moved into the runtime system for
better performance with Scheme compiler code.  Strong knowledge of
POSIX.1 should make porting to VMS easy once VMS supports POSIX.1.

* Change operating system conditionalizations to standard form
suggested by POSIX.1.

* Add FSF macros to support ANSI declarations.

* Add dynamic-stack package and obstacks.

* Provide higher-level utilities for parsing command line options.

* Instead of `Back_To_Eval', there is now a procedure
`abort_to_interpreter' which knows about everything that needs to be
cleaned up.

* Change names of some macros:

Pop STACK_POP
Push STACK_PUSH
Push_From STACK_LOCATIVE_PUSH
Pop_Into STACK_LOCATIVE_POP (similar)
Stack_Ref STACK_REF
Top_Of_Stack() STACK_REF(0)
Simulate_Popping STACK_LOC
Simulate_Pushing STACK_LOC (similar)
Stack_Distance STACK_LOCATIVE_DIFFERENCE (similar)
Pop_Primitive_Frame POP_PRIMITIVE_FRAME
Metering_Apply_Primitive PRIMITIVE_APPLY
Export_Regs_Before_Primitive EXPORT_REGS_BEFORE_PRIMITIVE
Import_Regs_After_Primitive IMPORT_REGS_AFTER_PRIMITIVE

* Sun assembler can't handle a constant used in "cmpaux-mc68k.m4", so
provide an option to rewrite that instruction as two instructions.

* Some compilers won't cast a function to an integer, so kludge around
it by mis-declaring the external function as an integer, taking it the
integer's address, and casting THAT to an integer.

* Move critical section code and termination code to their own files.

34 years ago* Complete redesign of the operating-system interface. I/O is more
Chris Hanson [Wed, 20 Jun 1990 19:39:44 +0000 (19:39 +0000)]
* Complete redesign of the operating-system interface.  I/O is more
uniform and is able to take advantage of things like sockets, pipes,
ptys, etc.  All I/O buffering is moved into the runtime system for
better performance with Scheme compiler code.  Strong knowledge of
POSIX.1 should make porting to VMS easy once VMS supports POSIX.1.

* Change operating system conditionalizations to standard form
suggested by POSIX.1.

* Add FSF macros to support ANSI declarations.

* Add dynamic-stack package and obstacks.

* Provide higher-level utilities for parsing command line options.

* Instead of `Back_To_Eval', there is now a procedure
`abort_to_interpreter' which knows about everything that needs to be
cleaned up.

* Change names of some macros:

Pop STACK_POP
Push STACK_PUSH
Push_From STACK_LOCATIVE_PUSH
Pop_Into STACK_LOCATIVE_POP (similar)
Stack_Ref STACK_REF
Top_Of_Stack() STACK_REF(0)
Simulate_Popping STACK_LOC
Simulate_Pushing STACK_LOC (similar)
Stack_Distance STACK_LOCATIVE_DIFFERENCE (similar)
Pop_Primitive_Frame POP_PRIMITIVE_FRAME
Metering_Apply_Primitive PRIMITIVE_APPLY
Export_Regs_Before_Primitive EXPORT_REGS_BEFORE_PRIMITIVE
Import_Regs_After_Primitive IMPORT_REGS_AFTER_PRIMITIVE

* Sun assembler can't handle a constant used in "cmpaux-mc68k.m4", so
provide an option to rewrite that instruction as two instructions.

* Some compilers won't cast a function to an integer, so kludge around
it by mis-declaring the external function as an integer, taking it the
integer's address, and casting THAT to an integer.

* Move critical section code and termination code to their own files.

34 years agoInitial revision
Chris Hanson [Wed, 20 Jun 1990 19:38:59 +0000 (19:38 +0000)]
Initial revision

34 years agoInitial revision
Chris Hanson [Wed, 20 Jun 1990 17:49:26 +0000 (17:49 +0000)]
Initial revision

34 years ago* Complete redesign of the operating-system interface. I/O is more
Chris Hanson [Wed, 20 Jun 1990 17:42:58 +0000 (17:42 +0000)]
* Complete redesign of the operating-system interface.  I/O is more
uniform and is able to take advantage of things like sockets, pipes,
ptys, etc.  All I/O buffering is moved into the runtime system for
better performance with Scheme compiler code.  Strong knowledge of
POSIX.1 should make porting to VMS easy once VMS supports POSIX.1.

* Change operating system conditionalizations to standard form
suggested by POSIX.1.

* Add FSF macros to support ANSI declarations.

* Add dynamic-stack package and obstacks.

* Provide higher-level utilities for parsing command line options.

* Instead of `Back_To_Eval', there is now a procedure
`abort_to_interpreter' which knows about everything that needs to be
cleaned up.

* Change names of some macros:

Pop STACK_POP
Push STACK_PUSH
Push_From STACK_LOCATIVE_PUSH
Pop_Into STACK_LOCATIVE_POP (similar)
Stack_Ref STACK_REF
Top_Of_Stack() STACK_REF(0)
Simulate_Popping STACK_LOC
Simulate_Pushing STACK_LOC (similar)
Stack_Distance STACK_LOCATIVE_DIFFERENCE (similar)
Pop_Primitive_Frame POP_PRIMITIVE_FRAME
Metering_Apply_Primitive PRIMITIVE_APPLY
Export_Regs_Before_Primitive EXPORT_REGS_BEFORE_PRIMITIVE
Import_Regs_After_Primitive IMPORT_REGS_AFTER_PRIMITIVE

* Sun assembler can't handle a constant used in "cmpaux-mc68k.m4", so
provide an option to rewrite that instruction as two instructions.

* Some compilers won't cast a function to an integer, so kludge around
it by mis-declaring the external function as an integer, taking it the
integer's address, and casting THAT to an integer.

* Move critical section code and termination code to their own files.

34 years agoFix a bug in bignum_destructive_scale_up by which the most significant
Guillermo J. Rozas [Thu, 14 Jun 1990 19:54:57 +0000 (19:54 +0000)]
Fix a bug in bignum_destructive_scale_up by which the most significant
digit of a bignum was not being scaled.

34 years agoFix more bugs in bit_string_to_bignum.
Guillermo J. Rozas [Thu, 14 Jun 1990 19:54:00 +0000 (19:54 +0000)]
Fix more bugs in bit_string_to_bignum.

34 years agoFix bug in bit_string_to_bignum by which the top digit was not masked
Guillermo J. Rozas [Thu, 14 Jun 1990 17:30:32 +0000 (17:30 +0000)]
Fix bug in bit_string_to_bignum by which the top digit was not masked
according to the number of valid bits.  Thus the result was larger
under certain conditions.

34 years agoNot all uses of lambda-list had been updated to pass four parameters
Guillermo J. Rozas [Thu, 14 Jun 1990 01:27:54 +0000 (01:27 +0000)]
Not all uses of lambda-list had been updated to pass four parameters
instead of three.

34 years agoAdd sequence-immediate-actions that does not flatten the structure.
Guillermo J. Rozas [Thu, 14 Jun 1990 00:02:47 +0000 (00:02 +0000)]
Add sequence-immediate-actions that does not flatten the structure.

34 years agoAdd a unsyntaxer:macroize? flag to the unsyntaxer to get a more
Guillermo J. Rozas [Thu, 14 Jun 1990 00:02:08 +0000 (00:02 +0000)]
Add a unsyntaxer:macroize? flag to the unsyntaxer to get a more
"truthfull" result.

34 years agoAdd a unsyntaxer:macroize? flag to get a more "truthfull" result.
Guillermo J. Rozas [Thu, 14 Jun 1990 00:01:49 +0000 (00:01 +0000)]
Add a unsyntaxer:macroize? flag to get a more "truthfull" result.

34 years agoAllow specification of arity for the INTEGRATE-PRIMITIVE-PROCEDURES
Guillermo J. Rozas [Wed, 13 Jun 1990 22:20:02 +0000 (22:20 +0000)]
Allow specification of arity for the INTEGRATE-PRIMITIVE-PROCEDURES
declaration.