RamFS

Introduction

RamFS is the RAM Filing System. It is a module that, together with FileSwitch and FileCore, provides a RAM-based filing system.

Most of the facilities that you will use with RamFS are in fact provided by FileCore and FileSwitch, and you should read the chapters on those modules (on FILESWITCH.HTML#24409 and FILECORE.HTML#29018 respectively) in conjunction with this one.

Overview

RamFS is a module that provides the hardware-dependent part of a RAM-based filing system. It uses FileCore, and so conforms to the standards for a module that does so; see the chapter entitled FILECORE.HTML#29018 for details.

It provides:

Except for the low-level entry points and routines (which are for the use of FileCore only) all of these are described below.

SWI calls

RamFS_DiscOpSWI &40780
Calls FileCore_DiscOp

See FILECORE.HTML#18072

See FILECORE.HTML#18072

Interrupts are undefined
Fast interrupts are enabled
Processor is in SVC mode
Not defined

This SWI calls FILECORE.HTML#18072, after first setting R8 to point to the FileCore instantiation private word for RamFS.

This call is functionally identical to FileCore_DiscOp.

RamFS_DrivesSWI &40782
Calls FileCore_Drives

See FILECORE.HTML#81021

See FILECORE.HTML#81021

Interrupts are undefined
Fast interrupts are enabled
Processor is in SVC mode
Not defined

This SWI calls FILECORE.HTML#81021, after first setting R8 to point to the FileCore instantiation private word for RamFS.

This call is functionally identical to FileCore_Drives.

RamFS_FreeSpaceSWI &40783
Calls FileCore_FreeSpace

See FILECORE.HTML#77584

See FILECORE.HTML#77584

Interrupts are undefined
Fast interrupts are enabled
Processor is in SVC mode
Not defined

This SWI calls FILECORE.HTML#77584, after first setting R8 to point to the FileCore instantiation private word for RamFS.

This call is functionally identical to FileCore_FreeSpace.

RamFS_DescribeDiscSWI &40785
Calls FileCore_DescribeDisc

See FILECORE.HTML#69090

See FileCore_DescribeDisc (FILECORE.HTML#77584)

Interrupts are undefined
Fast interrupts are enabled
Processor is in SVC mode
Not defined

This SWI calls FileCore_DescribeDisc (FILECORE.HTML#77584), after first setting R8 to point to the FileCore instantiation private word for RamFS.

This call is functionally identical to FileCore_DescribeDisc.

* Commands

*Configure RamFsSize
Sets the configured amount of memory reserved for the RAM filing system
*Configure RamFsSize mK|n
<m>-K - number of kilobytes of memory reserved
<n>-number of pages of memory reserved; n <= 127

*Configure RamFsSize sets the configured amount of memory reserved for the RAM Filing System to use (when the RAMFS module is present) after the next hard reset. The default value is 0, which disables the RAM filing system.

*Configure RamFSSize 128K

*Ram
Selects the RAM Filing System as the current filing system
*Ram
None

*Ram selects the RAM Filing System as the filing system for subsequent operations. Remember that it is not necessary to switch filing systems if you use the full pathnames of objects. For example, you can refer to NetFS objects (on a file server, say) when RamFS is the current filing system.

Memory must have previously been reserved for the RAM filing system; the simplest ways to do so are to use the command *Configure RamFSSize, or to use the Task Manager from the desktop.

*Ram