🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.sys.acorn.tech
Article #349

FileFS

#349
From: Pete McGarrigle
Date: Thu, 15 Oct 1992 11:43
53 lines
1737 bytes
-- FileFS Arc --

ON ERROR PROCerror

REM Rubbish program to demonstrate the Pipe Filing System
REM ) 1992 Peter McGarrigle
REM psmcgarr@uk.ac.pow.genvax

REM I'll be buggered if I know what PipeFS is for or what it
REM can legally be used for. Any hints Acorn? Anyone?

REM from various tests, files stored in PipeFS
REM seem to be analogous to named FIFO buffers, storage
REM comes from RMA by the looks of things.

REM As far as I can tell, pipe files are automatically
REM deleted when the last byte is read and the 'input' 
REM and 'output' files are both closed.

pipe$="Pipe:$.TestPipe"

REM show PipeFS in filer window
*Filer_OpenDir Pipe:$

DIM taskid% 4,block% 256
$taskid%="TASK"
SYS "Wimp_Initialise",300,!taskid%,"Pipes" TO version%

op%=OPENOUT(pipe$) : REM create pipe before use?
CLOSE#op%          : REM won't work if I don't!

op%=OPENOUT(pipe$)
IF op%=0 THEN ERROR 1,"Cannot Open Output Pipe"
ip%=OPENIN(pipe$)
IF ip%=0 THEN ERROR 1,"Cannot Open Input Pipe"

FOR I%=0 TO 1000
  SYS "Wimp_Poll",0,block%
  PRINT #op%,I%               : REM Put data into Pipe
  INPUT #ip%,N%               : REM Get same data out!
  IF N%<>I% THEN ERROR 1,"Error in Pipe Data"
NEXT
CLOSE#op%
CLOSE#ip%

SYS "Wimp_CloseDown"
END

DEF PROCerror
  *Pipe:Close
  PRINT REPORT$;" at line ";ERL
  END
ENDPROC
Technical Details
Message-ID: <Bw5v8E.6zo@csc.liv.ac.uk>
Path: arc1-ca.pugleaf.net!sparky!uunet!pipex!unipalm!uknet!mucs!lucs!scst83

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!sparky!uunet!pipex!unipalm!uknet!mucs!lucs!scst83
From: psmcgarr@uk.ac.pow.genvax (Pete McGarrigle)
Newsgroups: comp.sys.acorn.tech
Subject: FileFS
Message-ID: <Bw5v8E.6zo@csc.liv.ac.uk>
Date: 15 Oct 92 11:43:25 GMT
Sender: scst83@csc.liv.ac.uk (Mr. C.D. Smith)
Organization: Computer Science, Liverpool University
Lines: 53
Nntp-Posting-Host: rib.csc.liv.ac.uk