home *** CD-ROM | disk | FTP | other *** search
- File : Device
- Date : 21-Feb-97
- Author : © A.Thoukydides, 1995, 1996, 1997
- Description : Description of the ARMEDIT.SYS DOS device driver.
-
-
- INTRODUCTION
-
- The ARMEDIT.SYS device driver allows RISC OS filesystems to be accessed like
- normal DOS drives. To use this driver it is necessary to load the ARMEdit
- module before starting the PC front-end.
-
-
- INSTALLING THE DRIVER
-
- Add a line like the following to the CONFIG.SYS file:
-
- DEVICE=ARMEDIT.SYS [-limit <size>] <path1> [<path2> [...]]
-
- where
-
- <size> - The maximum size of file, specified in bytes, to include
- in the device. The default of 10MB is used if no value is
- specified. Use a value of 0 to allow all objects to be
- included regardless of size.
-
- <path1> etc - The full RISC OS pathnames for the root of each emulated
- device. Currently up to four paths may be specified.
-
- The RISC OS pathnames may be prefixed by one or more of the following
- characters:
-
- \ - Image files are treated as directories. This allows archives
- to be accessed via a suitable RISC OS dearchiver, e.g.
- SparkFS or ArcFS.
-
- # - Disables canonicalisation of the pathname. This allows
- multiple discs to be used in removable drives.
-
- If the driver is not in the root directory of the default drive then the full
- pathname should be inserted after the "=" sign.
-
- It may also be necessary to change the LASTDRIVE entry in the CONFIG.SYS
- file to support more drives.
-
-
- DIRECTORY LOGGING
-
- The device driver builds up a DOS image of the RISC OS filesystem being
- accessed. This has two side effects: Quite a lot of memory can be used, and
- changes made to the filesystem from RISC OS will not be seen by the PC.
-
- To overcome both these problems the command *ARMEdit_DevicesRelog should be
- used to clear unrequired parts of the disc log. This command does not take
- immediate effect - it waits until DOS informs the device driver that the
- disc may be changed. Hence, there should be no files open from the PC on
- the emulated device, and a simple operation should be performed (such as
- typing "DIR").
-
- Unexpected disc errors can be due one of a number of limitations being
- reached, such as RAM or number of FAT entries. If this happens, and repeating
- the operation does not complete the operation successfully, then try
- *ARMEdit_DeviceRelog to clear the logged data.
-
- If a Risc PC is being used, then the problem of a large amount of memory
- being used for the logged directories can be overcome by using my virtual
- memory manager Virtualise, available from Clares.
-
-
- FILENAME TRANSLATION
-
- To behave as a normal DOS device, all RISC OS filenames need to be translated
- ino the 8.3 character filenames. This is performed in a number of steps.
-
- Firstly, the three character file extension is chosen. If the original
- filename had a DOS extension (starting with a "/" character) then this is
- used. Otherwise, the RISC OS filetype is translated using the same DOS
- mappings as used by the PUTFILE and GETFILE commands. These mappings can
- be updated using *ARMEdit_DOSMap.
-
- The individual characters of the filename are then translated in a similar
- manner to DOSFS. Additionally, hard space characters (code 160) are converted
- to "_" and other top bit set characters to "@".
-
- Finally, any duplicate filenames are modified to allow access to all files
- with unique names.
-
-
- DRIVE LETTERS
-
- Drive letters are assigned to all block input/output devices configured for
- use. Examples of block devices are disc drives, CD-ROMs, scanners, and the
- ARMEDIT.SYS device driver. Drive letter after the C: (boot) drive may change
- when this device driver is installed.
-
- Drive letter changes can affect the access to a network, CD-ROM drives, and
- applications that reference existing drive letters. When drive letters
- change, the following items need to be checked:
-
- CONFIG.SYS and AUTOEXEC.BAT files need to reflect the new drive letters
- when loading device drivers.
-
- The PATH statement in the AUTOEXEC.BAT file may require changes to refer
- to the correct drives.
-
- Other batch files may reference the wrong drives.
-
- Windows .INI files and Windows groups should be updated with the new
- drive letter assignments, including the program icons.
-
- Rerun INSTALL or SETUP for application programs that do not allow the
- drive letter to be changed.
-
- Update any network login scripts as necessary.
-
- REMOUNT any compressed drives.
-
-
- PRESERVING PREVIOUS DRIVE MAPPINGS
-
- With PC-DOS (or versions of MS-DOS up to 5.0), the DOS ASSIGN command can be
- used to overcome the problem of drives changing name. As an example, if
- before using ARMEdit the CD-ROM drive was E: and a single ARMEdit device is
- added which shifts the CD-ROM to drive F: then the command
-
- ASSIGN E=F F=E
-
- will make the CD-ROM drive appear as drive E: and the ARMEdit device as drive
- F:. Similarly, if two ARMEdit devices are added then
-
- ASSIGN E=G F=E G=F
-
- will sort it out.
-
- There does not appear to be a good solution to the problem with MS-DOS 6,
- although the SUBST command can sometimes help.
-
- With PC DOS 7 and Windows 95's MS-DOS mode, the DYNALOAD command can be used
- to load the driver after the CD-ROM drive assigments have been performed by
- MSCDEX. The syntax to use is:
-
- DYNALOAD ARMEDIT.SYS <path1> [<path2> [...]]
-
- This may be either typed at the command line or included in the AUTOEXEC.BAT
- file. Prefixing the line by LOADHIGH will load the driver as if it had been
- loaded with DEVICEHIGH in the CONFIG.SYS file.
-
-
- OTHER POINTS TO NOTE
-
- The device driver does not currently support write operations. Any attempts
- to modify the drive from the PC simply modify a copy in RAM. This is intended
- mainly as a debugging aid, but may be extended to allow use as a RAM disc in
- future.
-
- Low level PC disc tools may not operate as expected on emulated devices. This
- is due to the way in which the directory structure of the device is
- dynamically constructed as it is accessed.
-
- If heavy use has been made of emulated devices then some operations, such as
- quitting the PC software, can take a surprisingly long time to complete. This
- is normal, and is due to the operation of the memory management.
-
- When used with Windows 95, the error:
-
- Windows was unable to identify the specified real mode driver which was
- loaded in your Config.sys file.
-
- If you no longer need this driver, remove it from your Config.sys file,
- Otherwise contact the manufacturer of this driver to see if a Windows
- (protected-mode) driver is available. Windows will not perform optimally
- until you have done one of these things.
-
- will be displayed. This is a consequence of the driver being written for DOS.
- Ignore this error - the driver will operate correctly.
-
-
- THINGS TO DO
-
- The following are changes that may be made to the ARMEdit device driver
- sometime in the future.
-
- Support write operations.
-
-
- VERSION HISTORY
-
- 0.00 (07-May-96) Original development version.
-
- 0.01 (27-May-96) Support for Acorn's software PC emulator included.
-
- 0.02 (13-Jun-96) PC emulator support code corrected.
-
- 1.02 (06-Aug-96) First official release version.
-
- 1.03 (21-Feb-97) Maximum object size to include may be specified.
- ARMEdit_DevicesRelog now accepts a "-now" switch.
- Added option to disable canonicalisation of path names.