%include "Moose:Mouse.Inc" %externalroutinespec L remove entry(%record(*)%name access, %string(255) filename) %externalroutinespec L delete file(%record(*)%name access, %string(255) filename) %externalroutinespec L create directory P(%record(*)%name access, %string(255) filename, %integer partition) %routine do nonstream %string(255) filename %integer op, x prompt("Op: "); read symbol(op) %until 'a' <= op <= 'z' %if op = 'd' %start ! Delete file prompt("Filename: "); read(filename) L delete file(nil, filename) %else %if op = 'z' ! Zap entry prompt("Filename: "); read(filename) L remove entry(nil, filename) %else %if op = 'c' ! Create directory prompt("Directory: "); read(filename) prompt("Partition: "); read(x) L create directory P(nil, filename, x) %finish %end %begin %string(31) in, out %integer x %on 3, 9 %start close input; close output open input(0, ":T"); select input(0) open output(0, ":T"); select output(0) printstring("%signal "); write(event_event, 0) space; write(event_sub, 0) space; write(event_extra, 0) space; printstring(event_message) newline -> do it %finish ! From AJS_M: create logical name ("DEFAULT",":r") create logical name ("bravo","21") create logical name ("charlie","27") create logical name ("vax", "114") create logical name ("FS_DEFAULT","bravo") do it: %cycle prompt("In: "); read(in) %if in = "*" %start do nonstream %else prompt("Out: "); read(out) open input(3, in); select input(3) open output(3, out); select output(3) %cycle read symbol(x); print symbol(x) %repeat %finish %repeat %end %of %program