|| (C) Copyright 1979 Tripos Research Group
||     University of Cambridge
||     Computer Laboratory

|| Ethernet version, Network Development Group, RL

SECTION "mount"

GET "libhdr"

|| Mounts a logical disc
||
|| Form:        MOUNT <device> <args>

LET start() BE
$( LET argv = VEC 16
   LET cur.dir = currentdir
   LET res, res2 = ?, ?

   res := rditem(argv, 16)
   IF res=0 | argv%0<=1 | GETBYTE(ARGV, GETBYTE(ARGV, 0))\=':'
   THEN error("Bad args*N", 10, 120)

   argv%0 := argv%0-1

   currentdir := locatedir("SYS:H")
   res := callseg("SYS:L.MOUNT-ETHER", argv); res2 := result2
   freeobj(currentdir)
   currentdir := cur.dir

   IF res=0 THEN error("Can't find device *"%S*"*N", 20, res2, argv+17)
   IF res=1
   THEN error("", 20, res2)
$)

AND error(message, rc, res2, arg) BE
$( writef(message, arg)
   result2 := res2
   stop(rc)
$)