::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:
class Os.Windows.Public public Gilda: Windows system calls
:
:...............................................................................
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:
method IS.VERB.REGISTERED: See if a verb is in the windows registry.
entry Verb string
exit Path string
:
:...............................................................................
:
method IS_DRIVE_REMOVED: See if a removable drive is out.
entry Drive byte :Drive letter; any case
exit Removed[0] byte : 1 the disk is not in the drive.
: 0 removable with no disk
:-1 no such drive
:-2 not a removable (fixed or ram) drive
:
:...............................................................................
:
method IS_DRIVE_FIXED: See if a drive is a hard drive.
entry Drive byte :Drive letter; any case
exit Fixed[0] Bit :Set if a fixed drive
:
:...............................................................................
:
function PATH.DRIVE: Get the drive in a path.
entry Path string :Path that may have a leading drive letter
exit Drive byte :Drive letter; upper case
:
:...............................................................................
:
method PATH.BASE: Get the drive in a path and return its size and free space.
entry Path string :Path that may have a leading drive letter
exit Base string, &Drive letter and colon; else empty
Size cell, &Size of the base drive
Free cell :Number of free bytes
:
:...............................................................................
method FORM.DRIVE.LONG: Format a Windows drive, server, or share.
entry Lead string, &"*:/", "//", or //server/; else not formed.
Tail string :Last component in the path.
exit Form string, &Drive description for di=l.
Formed Bit
:
:...............................................................................
:
method FORM_DRIVE_LONG: Format details about a drive.
entry Text[99] byte :Drive name
:
:...............................................................................
end