🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: net.lang.forth
Article #186

Re: Multi-user and files

#186
From: Tom Almy
Date: Mon, 13 May 1985 16:26
27 lines
2090 bytes
In article <161@vger.UUCP> valencia@vger.UUCP writes:
>
>	I've just finished writing a multi-tasking FORTH for the Z-80.
>Like so many before, I held off on the disk drivers until the system
>was more or less debugged. Then I came across what ends up being an
>interesting question in FORTH philosophy: exactly how DOES one do the
>FORTH memory buffering scheme? [...]
>					Andy Valencia


I have a Z80 multiuser Forth, based on NVSS F83 Forth.  This and every other
multitasking Forth I have seen (including polyFORTH) will only change tasks
when a word PAUSE is executed.  All I/O and disk accessing words contain
PAUSE, especially in any ready-wait loops.  Essentually this means that the
address returned by the BLOCK word is valid until the next I/O word.  It is
the task's responsibility to move any data to a private storage area if it
needs to do I/O without possibly loosing the data.  The word ">TYPE" is used
in the words LIST INDEX, and within the editor to make sure an entire line
of a screen gets printed before the buffer gets swapped out.  It is defined: 
  : >TYPE SWAP OVER PAD SWAP CMOVE  PAD SWAP TYPE ;
(it moves the data to PAD before typing). 

Two block buffers are adequate.  If operating under a DOS, such that the
block buffers are associated with files, there are additional complications
is different tasks can refer to different files.

Tom Almy
Technical Details
Message-ID: <505@tekchips.UUCP>
Path: arc1-ca.pugleaf.net!utzoo!watmath!clyde!cbosgd!cbdkc1!desoto!packard!hoxna!houxm!vax135!cornell!uw-beaver!tektronix!tekcrl!tekchips!toma
References: <161@vger.UUCP>

Show Full Headers
Complete Article Headers
Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Posting-Version: version B 2.10.2 (Tek) 9/28/84 based on 9/17/84; site tekchips.UUCP
Path: arc1-ca.pugleaf.net!utzoo!watmath!clyde!cbosgd!cbdkc1!desoto!packard!hoxna!houxm!vax135!cornell!uw-beaver!tektronix!tekcrl!tekchips!toma
From: toma@tekchips.UUCP (Tom Almy)
Newsgroups: net.lang.forth
Subject: Re: Multi-user and files
Message-ID: <505@tekchips.UUCP>
Date: Mon, 13-May-85 12:26:59 EDT
Article-I.D.: tekchips.505
Posted: Mon May 13 12:26:59 1985
Date-Received: Wed, 15-May-85 00:38:57 EDT
References: <161@vger.UUCP>
Reply-To: toma@tekchips.UUCP (Tom Almy)
Organization: Tektronix, Beaverton OR
Lines: 27
Keywords: multitasking