* Changes to operating system interface to match those introduced in
authorChris Hanson <org/chris-hanson/cph>
Wed, 20 Jun 1990 20:30:31 +0000 (20:30 +0000)
committerChris Hanson <org/chris-hanson/cph>
Wed, 20 Jun 1990 20:30:31 +0000 (20:30 +0000)
commit7bc7a47c1e71c7c427cad450e8f7f5ac8feabc71
treed629d30607159635eea70569a94984f5ea76d2d4
parentf3ad1fcd26b2c0144780ff9aedb64494acc34e9a
* 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.
17 files changed:
v7/src/runtime/dbgcmd.scm
v7/src/runtime/emacs.scm
v7/src/runtime/input.scm
v7/src/runtime/io.scm
v7/src/runtime/load.scm
v7/src/runtime/make.scm
v7/src/runtime/output.scm
v7/src/runtime/pathnm.scm
v7/src/runtime/rep.scm
v7/src/runtime/runtime.pkg
v7/src/runtime/sfile.scm
v7/src/runtime/uenvir.scm
v7/src/runtime/uerror.scm
v8/src/runtime/load.scm
v8/src/runtime/make.scm
v8/src/runtime/runtime.pkg
v8/src/runtime/uenvir.scm