8-Bit Software

The BBC and Master Computer Public Domain Library

Disk And File Transfer:

OmniDisk


Last updated

 

On This Page You Will Find

Overview

Features

BBC Format Support

Downloads

Quick Start

Help!

Floppy Disk Access

Reading, writing and formatting floppy disks using non-DOS formats

Disk Image Access

Handling images of floppy disks

Editing Disk Images

Extracting, adding and deleting BBC files from disks and images

.inf Files

Support of BBC ‘.inf’ file archives

DFS Commands

‘*’ Commands for BBC DFS formats

DDOS Commands

‘*’ Commands for BBC DDOS formats

Technical Information

Advanced Commands

Other Formats

Compatibility

Copy Protection

Support

Support

Requests, and ports to other operating systems

 

 


OmniDisk Overview

OmniDisk is a generic floppy disk reader, writer and formatter for the IBM PC or compatible. It will read, write, and format floppy disks for formats not normally supported by DOS, Windows and Linux.

OmniDisk was written to archive aging floppies of any format, and to provide access to the data for certain known formats (e.g. BBC DFS and BBC DDOS). That way the archive could be easily used on the PC (perhaps with an emulator) as well as on the original hardware – in case the hardware ever died (hasn’t happened yet). This page is targeted at the BBC DFS, DDOS and ADFS formats, but OmniDisk itself will handle many, many others.

Features

·        Read, write, and format Single Density*, Double Density, and High Density disks.

·        Read, write, format and interpret Acorn BBC DFS, ADFS, DDOS disks.

·        Read, write, format and interpret images of disks (e.g. .DSD, .SSD files).

·        Read and write .inf files extracted from disk images, and put them onto, or remove them from, actual disks or disk images.

·        Implements all the Acorn '*' commands to use with the above for moving and converting images between PC and Acorn machines.

·        Automatic sensing of formats. Setting up a disk controller to read an ‘alien’ format is incredibly infuriating – just one parameter wrong and the disk is unreadable*. OmniDisk will auto-sense everything – see the SAMPLE command.

·        Read, write, and format CP/M disks.

·        Read, write, format and interpret PDOS disks.

·        Read, write, and format disks for formats it doesn't know (because it can analyse disks).

* Reports that “…most modern PCs do not support single density formats…” have been grossly exaggerated. Most modern PCs do support single density – I found only one (a Dell Latitude XPi P133ST laptop) which can’t do single density because of lack of hardware. Usually the problem arises in the software driving them, or the configuration of it. And yes, even modern laptops will still do single density (e.g. Dell Latitude C800). If you think you have a system which doesn’t do single density, try OmniDisk – and tell me the result!

BBC Format Support

OmniDisk contains enhanced support for BBC DFS, DDOS, and ADFS formats. Not only can it read and write the native disks, it can interpret the formats, so you can manipulate the files stored on disks and the files stored in disk images. Most file functions for the BBC formats are accessed via the (probably familiar) ‘*’ commands.

OmniDisk supports all three types of BBC archives currently kicking about:

·        Disk images (.img’s, .ssd’s, .dsd’s…)

·        Separate BBC files (.inf’s)

·        BBC floppy disks - double & single density, DFS, DDOS, ADFS.

You can access any of the above using DFS or DDOS ‘*’ commands just like on the BBC, and *COPY (and *BACKUP) will translate between them.

Apart from the DFS and DDOS ‘*’ commands, you still have access to over 110 commands for handling the underlying disk format. Command-line help is included (21 pages; *HELP also included for DFS/DDOS). If you don’t want to get your hands dirty, though, auto-sensing of hardware and disk formats is enabled by default.

The archive contains a FAQ and extra help for DFS (DFS.txt) and DDOS (DDOS.txt).

And it’s free.

Downloads

 

OmniDisk is available as an application or as a FreeDOS bootable floppy. OmniDisk runs best in a DOS environment, and this is the recommended way to try it, initially at least. A Command Prompt in Windows 95/98/98SE/Me does usually work fine, but is not recommended for an initial trial.

 

The FreeDOS bootable floppy version of OmniDisk is best if you have no DOS environment and don’t want to get your hands dirty trying to get DOS running. Note that Windows 2000 and Windows XP releases still contain DOS boot disks if you want to set up your own DOS environment – see “Getting to DOS” in FAQ.txt in the first download for an explanation.

 

Download OmniDisk here

 

Download the FreeDOS bootable floppy version of OmniDisk here.

 

The bootable FreeDOS version contains an application (DiskImg) to write the floppy image (OmniDisk.img) to a blank, formatted floppy disk. Insert the floppy disk into drive A or B, run up DiskImg, and choose Logical drive A or B (make sure the disk you expect starts turning and the details are as expected). Select the Drive ‘Write’ button and choose the file ‘OmniDisk.img’. The floppy will be written. Be careful with this program as it can directly access your hard disk and destroy its contents if you are not careful! Once the disk is written, reboot using this floppy – you may need to change the device boot order in your BIOS – try pressing F1, F2, F10 or Delete during a reboot if the floppy is ignored. Allow the system to run up then at the OmniDisk prompt try ‘SAMPLE’ to see it work…

 

The FAQ.txt file in the first download contains further information if you need it.

 

Quick Start

 

Depending on how your BBC data is stored, choose ‘Floppy Disk Access’, ‘Disk Image Access’, or ‘.inf Files’ from the sections below.

 

Help!

 

Type ‘*HELP’ for ‘*’ command help, ‘HELP’ for all command help, and add a command name to get the help entry for that command. There’s some text files (.txt) in the archive, too, with more help & examples.

 

Or, if you get really stuck, use the ‘Support’ contact at the bottom of this page or in the FAQ.txt file.

 


Floppy Disk Access

Use this if you want to use a BBC floppy disk in your PC.

 

Run up DOS from a boot floppy (but a Command Prompt in Windows 95/98/98SE/Me will do if forced). Not got a boot floppy? OmniDisk is available on a FreeDOS boot floppy here, which you can boot off instead.

 

Run ‘OmniDisk’ and insert your floppy disk.

 

Type:

*DRIVE n

where n= 0 for floppy A:, n = 1 for floppy B:.

 

If you know it’s a DFS or DDOS disk then type:

 

            *DISK

 

The program will test your hardware and analyse the disk - if this fails, or it’s not a DFS/DDOS disk, try ‘Problems’ below.

 

With a recognised disk, you can now use virtually all of the normal DFS ‘*’ commands - see DFS Commands - with some tweaks added for DOS access.

 

If you want to merely transfer the disk to, or restore from, a disk image use *BACKUP - for example:

 

            *BACKUP \images\dfs\Games1.img 0              (Floppy disk restored from disk image Games1.img)

            *BACKUP 0 \images\dfs\Games1.img              (Floppy disk backed-up to disk image Games1.img)

            *BACKUP * \images\dfs\GameDisk.img          (Both sides of disk backed-up to disk image GameDisk.img)

            *BACKUP \images\dfs\GameDisk.img *          (Both sides of disk restored from disk image GameDisk.img)

            *BACKUP * \images\dfs\GameDisk.img CHS (Both sides of disk backed-up to interleaved disk image)

            *BACKUP \images\dfs\GameDisk.img * CHS (Both sides of disk restored from interleaved disk image)

 

If you want to extract individual files from the disk, use *COPY - see ‘.inf Files’ below.

 

Problems

 

You can ‘force’ the interpretation of the disk to DFS using one of:

 

*DFS40                                   40-track disk in an 80-track drive

*DFS40 DBLSTEP OFF         40-track disk in a 40-track drive

            *DFS80                                   80-track disk in an 80-track drive

 

If you’d rather get the program to look at the disk, try first:

 

            SAMPLE

 

which will attempt to guess the format. If this is inconclusive, or you disagree, try:

 

SCAN                                                 then (if it finds something):

MAP                                                    and:

ANALYSE

 

Note that this version of OmniDisk is customised for BBC formats; if the format isn’t DFS or DDOS you need to use the ‘Advanced Commands’ (or another version of OmniDisk with appropriate support - not all formats will fit in one copy).

 

[Back to Top of This Page]


Disk Image Access

If you have a disk image to explore or you want to create a new one, select the type of image (usually by looking at the file extension) from the sections below.

 

.ssd .0 .1 .adf .img

 

These have side 0 of the disk possibly followed by head 1. Use the *BACKUP or *IMAGE commands with an order of HCS, which is default - for example:

 

*IMAGE C:\BBC\Drive0.ssd HCS                  to use image Drive0.ssd instead of a real floppy disk

*CREATE

 

*BACKUP 0 C:\BBC\Drive0.ssd HCS            to image drive 0 only to file C:\BBC\Drive0.ssd; HCS is the default

*BACKUP * C:\BBC\BothDrvs.img                to image top & bottom of current drive to file BothDrvs.img

 

*BACKUP C:\BBC\Drive0.ssd 0                     to restore image file Drive0.ssd to drive 0

*BACKUP C:\BBC\BothDrvs.img *                to restore image file BothDrvs.img to top & bottom of current drive

 

.dsd and .adl

These have the two sides of the disk interleaved - use the same *BACKUP/*IMAGE commands but change the order from default to CHS - for example:

*IMAGE C:\BBC\DblDFS.dsd CHS               to use image DblDFS.dsd for drives 0 and 2

 

*ORDER CHS                                                then…

*BACKUP * DblDrv.adl                                 to image top & bottom of current drive interleaved to file DblDrv.adl

 

*BACKUP DblDrv.adl * CHS                         to restore image file DblDrv.adl to top & bottom of current drive

 

Choosing Type

 

*ORDER allows the display and setting of the order used for reading and writing the disk or image.

 

Advanced

 

Fine control over ordering, double-stepping, and reading sides/heads is available using non-‘*’ commands - type HELP for a list.

 

[Back to Top of This Page]


Editing Disk Images

Apart from just lifting and dropping complete disk images onto floppies, you can add files to it, remove files from it, or simply browse it with ‘*’ commands.

 

Choose the filing system - either:

            *DFS

or

            *DDOS

 

Use a disk image as a floppy by typing:

            *IMAGE C:\DFS\MyDisk.ssd                          (add CHS for a double-sided interleaved image)

or create a new blank disk:

            *CREATE C:\DFS\Blank.ssd                           for a single-sided 80-track image, or

            *CREATE C:\DFS\Blank.dsd 80 2 CHS          for a double-sided interleaved 80-track disk image

 

You now have access to all the usual DFS commands like *CAT plus the DOS-enhanced *COPY, *BACKUP etc. With the image file ‘hosting’ the floppy drive, you can convert to other formats using the ‘*’ commands.

 

To turn an interleaved image into a non-interleaved image, load the image with:

            *IMAGE Original.dsd CHS

then convert both sides using the non-interleaved order HCS:

            *BACKUP * New.img HCS

 

To turn an interleaved disk image into two single-sided images:

            *IMAGE Original.dsd CHS

            *BACKUP 0 Drive0.ssd HCS

            *BACKUP 2 Drive2.ssd HCS

 

*CAT, *DUMP, *TYPE, *OPT, *WIPE, among others, are all available when a disk image is open. *COPY will convert to and from .inf files (see below).

 

[Back to Top of This Page]


.inf Files

The *COPY command will allow you to copy .inf files to and from floppy disks and floppy disk images. You need to select a floppy disk or floppy disk image (*IMAGE or *DISK) before trying to copy files onto or from it (see above sections).

 

The ‘drive’ parameters for the original *COPY command can have DOS path names inserted instead; the files are copied to/from .inf files on the PC’s filestore.

 

Some examples:

            *COPY 0 \images\dfs\ *.*                                (All files from DFS drive 0 to DOS directory \images\dfs\)

            *COPY 0 \images\dfs\$DFSFile COMP]BB    (']' is illegal in DOS so the DOS filename is given explicitly)

            *COPY \images\dfs\$DFSFile 0 *.*                 (File COMP]BB will be restored from name in $DFSFile.inf)

            *COPY \images\dfs\ 2 CHAL*                        (All .inf files searched for DFS files $.CHAL*)

            *COPY \images\dfs\$C* 2 $.CHAL*              (All files matching $C*.inf searched for DFS files $.CHAL* and copied to drive 2)

 

[Back to Top of This Page]


BBC DFS commands

Standard DFS Commands

 

The following commands behave identically (or with minor amendments) to the DFS equivalent:

 

*DRIVE [<drive>]                                           or *DR.

*CAT [<drive>]                                               or *.

*INFO [<afsp>]

*ACCESS <afsp> [L]

*COMPACT <DFS drive>

*DELETE <fsp>

*DESTROY <afsp>

*DUMP <fsp>                                                 (Use *DUMPW for wide screen 80-column display)

*LIST <fsp>

*OPT 1,<extended file info>

*OPT 4,<boot type>

*RENAME <fsp> <entsp>

*TITLE ["]<title>["]

*TYPE <fsp>

*WIPE <afsp>

*FORMAT [<drive>]

*VERIFY [<drive>]

 

<afsp> defaults to '*.*'. The default directory is always '$'. There is no *ENABLE - be careful!

 

These commands are all valid both on physical DFS floppy disks or disk images (*IMAGE).

 

DOSsed DFS Commands

 

The following commands have been amended to the OmniDisk environment to allow for .inf archives and disk file images:

 

*DISK|*DISC|*D.

*HELP [<command>]

*CAT <DOS filespec>

*CAT <DOS directory>\

*INFO <DOS directory>\

*COPY <DFS drive> <DOS fsp> <DFS fsp>

*COPY <DOS afsp> <DFS drive> <DFS afsp>

*COPY <DOS fsp> <DFS drive> <DFS fsp>

*COPY <DFS drive> <DOS directory>\ <DFS afsp>

*COPY <DOS directory>\ <DFS drive> <DFS afsp>

*BACKUP <DFS drive>|* <DOS file> [<order>]

*BACKUP <DOS file> <DFS drive>|* [<order>]

 

e.g.       *HELP *CAT

            *CAT \images\dfs\                                (All files *.inf scanned in given directory)

            *CAT \images\dfs\$C*                         (All files $C*.inf scanned in given directory)

            *INFO \images\dfs\

            *COPY 0 \images\dfs\ *.*

            *COPY 0 \images\dfs\$DFSFile COMP]BB    (']' is illegal in DOS so the DOS filename is given explicitly)

            *COPY \images\dfs\$DFSFile 0 *.*     (File COMP]BB will be restored)

            *COPY \images\dfs\ 2 CHAL*            (All .inf files searched for DFS files $.CHAL*)

            *COPY \images\dfs\$C* 2 $.CHAL*  (All files matching $C*.inf searched for DFS files $.CHAL* and copied)

            *BACKUP 0 \images\dfs\Games1.img  (Drive backed-up to disk image Games1.img)

            *BACKUP \images\dfs\Games1.img 0  (Drive restored from disk image Games1.img)

            *BACKUP * \images\dfs\GameDisk.img          (Both sides of disk backed-up to disk image GameDisk.img)

            *BACKUP \images\dfs\GameDisk.img *          (Both sides of disk restored from disk image GameDisk.img)

 

Command DIR is also available to browse DOS filenames.

 

New DFS Commands

 

The following DFS-style commands are new to OmniDisk:

 

*DFS

*DUMPW <fsp>                                                         (Wide-screen version of *DUMP)

*IMAGE <DOS image file>                                         Use DOS image file rather than floppy drive

ORDER|*ORDER [CHS|HCS]

*CREATE <DOS image file> [<tracks> [<sides> [<order>]]]

*VERBOSE [ON | OFF]                                             (For diagnosis only)

 

Some DDOS commands are also available for use with DFS disks/images.

 

[Back to Top of This Page]


BBC DDOS commands

Extended DFS Commands

 

*CAT [<drive>[<volume>]]

*DRIVE [<drive>[<volume>]]

*COPY <DFS drive>...

*COMPACT [<drive>[<volume>]]

 

where a volume letter (A-H) can be appended to the normal DFS drive number (0-3). Without an explicit volume, the volume defaults to volume A.

 

All DFS filenames are extended to allow for a volume specification after the drive (e.g. :2B.$.!BOOT).

 

DDOS only Commands

 

The following commands are only available under DDOS:

 

DDOS|*DDOS

*VOLGEN [<drive> [<vol A sectors>|* [<vol B sectors>|*]...]]

 

*VOLGEN without parameters will display the volume map; changing the values will erase the contents of the specified drive.

 

These commands are all valid both on physical DDOS floppy disks or disk images (*IMAGE).

 

DFS-compatible Commands

 

The following DDOS commands are also available under DFS:

 

*STAT [<drive>[<volume>|*]]

        Displays size of volume(s) and space remaining.

*MAP [<drive>[<volume>|*]]

        Displays usage of DDOS volume(s)/DFS drive.

 

All DFS commands are available under DDOS.

 

[Back to Top of This Page]


Technical Information

Advanced Commands

 

These commands are not BBC-specific, and for manual diagnosis. Beware - they will write/format disks without prompting.

 

These may be put on the command line (in DOS) or typed interactively. This list is not updated for every release - check HELP in the copy of OmniDisk attached.

 

DRIVE [<drive no.>]

        Selects floppy drive (0-3).

SAMPLE [DISK|HEAD [<head>]]

        Part-SCAN disk/head format, ANALYSE, and USE. Affects CYLS.

SCAN|READID [TRACK|SIDE [<side>]|HEAD [<head>]|DISK]

        Scans current track/head/complete disk to map.

ANALYSE|ANALYZE [TRACK|SIDE [<side>]|HEAD [<head>]|DISK]

        Analyses all or part of the disk map (default DISK).

A|ANALYSIS

        Displays current disk analysis - can be USEd for navigation.

DOUBLESTEP|DBLSTEP [ON|OFF]

        Enables double-stepping. CYLS is adjusted. Auto-sensed by ANALYSE.

STATUS|S

        Summary of current settings.

H|HELP [command|page number...]

        Display help for command or page of help (0 to 13).

Q|QUIT

        Quits OmniDisk. Closes all IN, OUT, and Image files, and restores DOS.

DIR [<filespec>]

        Lists DOS files matching filespec. Use trailing '\' for directories.

OPENOUT <filename>

        Creates disk image file for writing to.

READ [DISK|HEAD [<head>]|SIDE [<head>]] [TO <file>]

        Reads disk (default)/track etc. to the given/currently OPENOUT file.

        Using TO detects the physical format automatically.

READ SECTOR|TRACK

        Reads current sector/track into buffer. Does NOT copy to OPENOUT file.

OPENIN <filename>

        Opens disk image file for reading from.

WRITE [DISK|HEAD [<head>]|SIDE [<head>]] [FROM <file>]

        Writes disk (default)/track etc. using the given/currently OPENIN file.

        Using FROM detects the physical format automatically.

WRITE SECTOR|TRACK

        Writes current sect/track from buffer. Does NOT read from OPENIN file.

DISPLAY [PORTS|CMDS|SCAN|MAP|STATUS|INTS] [ON|OFF]

        Display/set display options.

VERBOSE [ON|OFF]

        Enables/disables diagnostics display.

BASE [I/O address]

        Read/set (hex) base I/O address of FDC.

?[FDC offset]

        Reads from (hex) I/O address offset from base of FDC (or repeat last).

!FDC offset val0 val1...

        Writes values to (hex) I/O offset from base of FDC.

MOTOR [ON|OFF]

        Turns floppy drive motor on/off.

PORTS [ON|OFF]

        Turns display of all port accesses on/off.

INT

        Display interrupt status.

INTS

        Enable/disable use of FDC interrupts.

DMA [ON|OFF]

        Enables/disables use of DMA.

CMDS [ON|OFF]

        Turns command display on/off.

CMD [byte0 byte1 byte2...]

        Sends hex command sequence to FDC.

CYLINDER|SEEK|TRACK [<cylinder no.>]

        Moves the head to the requested physical cylinder number.

HEAD [<head>]

        Selects a physical head (0 or 1) to use for READing or SCANning.

SECTOR [<sector no.>]

        Selects a logical sector number for READ SECTOR.

STATUS|S

        Summary of current settings.

CYL[S] [<number of cylinders>]

        Sets the number of zero-based physical cylinders. Default 80.

CYL[S] [FROM <start cyl>] [TO <end cyl>]

        Limits the range of physical cylinders to use. Default FROM 0 TO 79.

SECTS [<number of sectors>]

        Sets the number of zero-based physical sectors.

SECTS [FROM <start sect>] [TO <end sect>]

        Defined the range of physical sectors to use.

MINSECT [<sector>]

        Minimum sector number.

MAXSECT [<sector>]

        Maximum sector number.

SIZE [<sector size>]

        Displays/sets sector size. Set automatically by AUTOSCAN ON.

DENSITY [SNG|SINGLE|DBL|DOUBLE|HI|HIGH|AUTO|MANUAL]

        Selects density to use. AUTO prompts SCAN before READ.

RATE [<rate>]

        Selects data transfer rate (0-3). Requires DENSITY MANUAL.

MFM [ON|OFF]

        Selects MFM/FM mode. Requires DENSITY MANUAL.

HEAD0ALIAS [<alias>]

        Sets the (byte) head alias to use for sectors on head 0.

HEAD1ALIAS [<alias>]

        Sets the (byte) head alias to use for sectors on head 1.

SRT [<step rate setting>]

        Displays/sets head Step Rate Time setting (0-15=16ms-1ms).

HUT [<head unload time>]

        Displays/sets Head Unload Time setting (1-15=16ms-240ms).

HLT [<head load time>]

        Displays/sets Head Load Time setting (1-127=2ms-254ms).

EOT [<new EOT>]

        Read/set fixed End-Of-Track (ignores SIZE).

EOT [AUTO [<new EOT0> <new EOT1>...]]

        Read/set End-Of-Track table. Indexed by SIZE.

GSL|GAP3 [<new length>]

        Read/set fixed Gap 3 Skip Length for sector reading (ignores SIZE).

GSL|GAP3 AUTO [<new length0> <new length1>...]

        Read/set Gap 3 Skip Length table for sector reading. Indexed by SIZE.

GPL|GAP3FORM [<new length>]

        Read/set fixed Gap 3 Length for FORMAT (ignores SIZE).

GPL|GAP3FORM [AUTO [<new length0> <new length1>...]]

        Read/set MFM Gap 3 Length table for FORMAT (FM calculated from MFM).

        Indexed by SIZE.

SC [<sector count>]

        Read/set fixed Sector Count for FORMAT (ignores SIZE).

SC [AUTO [<sector count0> <sector count1>...]]

        Read/set Sector Count table for FORMAT. Indexed by SIZE.

DOUBLESTEP|DBLSTEP [ON|OFF]

        Enables double-stepping. CYLS is adjusted. Auto-sensed by ANALYSE.

PAD [<pad byte>]

        Displays/sets hex padding byte.

MT [ON|OFF]

        Enables/disables use of Multi-Track READs.

RESET

        Resets FDC.

RESET MAP

        Clears disk map.

RESET ANALYSIS

        Resets analysis to default.

ACKINTS

        Acknowledge all pending interrupts.

VER

        Display uPD765 version.

SPECIFY

        Sends SPECIFY to FDC.

SIS

        Sense INTerrupt Status.

SDS

        Sense Drive Status.

RECALIB

        Performs an FDC recalibration (including SEEK to 00).

MAP ON|OFF

        Enables display of MAP construction during SCAN.

MAP [TRACK|SIDE [<side>]|HEAD [<head>]|DISK]

        Displays map of current track/head/disk.

SCAN|READID [TRACK|SIDE [<side>]|HEAD [<head>]|DISK]

        Scans current track/head/complete disk to map.

SAMPLES [<samples>]

        Number of samples to take while SCANning.

SAMPLE [DISK|HEAD [<head>]]

        Part-SCAN disk/head format, ANALYSE, and USE. Affects CYLS.

AUTOSCAN [ON|OFF]

        Enables automatic SCANning during READs.

ANALYSE|ANALYZE [TRACK|SIDE [<side>]|HEAD [<head>]|DISK]

        Analyses all or part of the disk map (default DISK).

USE [MAP|ANALYSIS|CURRENT|MANUAL]

        Uses map/analysis/manual settings for navigating physical disk.

USE IMAGE <image file> [ORDER CHS|HCS]

        Uses disk image file as if physical drive.

IMAGE [<image file>] [ORDER CHS|HCS]

        Uses disk image file of order specified as if physical drive.

A|ANALYSIS

        Displays current disk analysis - can be USEd for navigation.

FIX

        Fixes the format to the current analysis (= USE ANALYSIS).

UNFIX

        Releases the fixed format and reverts to USE of the MAP (= USE MAP).

SUPER SCAN

        Scans the disk beyond normal limits - for abnormal/copy-protected

        formats (affects CYLS).

SUPER SAMPLE

        Samples the disk beyond normal limits - for abnormal/copy-protected

        formats (affects CYLS).

OPENIN <filename>

        Opens disk image file for reading from.

OPENOUT <filename>

        Creates disk image file for writing to.

ORDER|*ORDER [CHS|HCS]

        Displays/sets sector order used for READing from/WRITEing to a disk.

BUF|BUFFER

        Displays current usage of sector/cylinder buffer.

D|DUMP [<from> [<to>]]|BUFFER

        Dumps sector buffer. All values in hex.

        BUFFER = Last sector/track/cylinder read.

E|EDIT <addr> <value>...

        Writes (hex) byte values to sector buffer starting at (hex) addr.

F|FILL <from> <to> <value>

        Fills (hex) address range of sector buffer with (hex) byte value.

LOAD SECTOR|TRACK|<from> <to>

        Reads a sector/track/portion of data from OPENIN file into buffer (all

        values in hex).

SAVE [<from> [<to>]]|BUFFER

        Saves part or whole buffer to OPENOUT file. All values in hex.

CLOSE

        Closes OPENIN and OPENOUT disk image files.

CLOSE IMAGE

        Closes disk image file in USE as physical drive.

READ [DISK|HEAD [<head>]|SIDE [<head>]] [TO <file>]

        Reads disk (default)/track etc. to the given/currently OPENOUT file.

        Using TO detects the physical format automatically.

READ SECTOR|TRACK

        Reads current sector/track into buffer. Does NOT copy to OPENOUT file.

READDEL [DISK|HEAD [<head>]|SIDE [<head>]] [TO <file>]

        Reads deleted data from disk (default)/track etc. to the current or

        given OPENOUT file. Using TO detects the physical format automatically.

READDEL SECTOR|TRACK

        Reads deleted data from current sector/track into buffer. Does NOT copy

        to OPENOUT file.

READDIAG [DISK|HEAD [<head>]|SIDE [<head>]] [TO <file>]

        Diagnostic read from disk (default)/track etc. to the current or given

        OPENOUT file. Using TO detects the physical format automatically.

READDIAG SECTOR|TRACK

        Diagnostic read from current sector/track into buffer. Does NOT copy to

        OPENOUT file.

WRITE [DISK|HEAD [<head>]|SIDE [<head>]] [FROM <file>]

        Writes disk (default)/track etc. using the given/currently OPENIN file.

        Using FROM detects the physical format automatically.

WRITE SECTOR|TRACK

        Writes current sect/track from buffer. Does NOT read from OPENIN file.

WRITEDEL [DISK|HEAD [<head>]|SIDE [<head>]] [FROM <file>]

        Writes deleted data to disk (default)/track etc. using the current or

        given OPENIN file. FROM detects the physical format automatically.

WRITEDEL SECTOR|TRACK

        Writes deleted data to current sect/track from buffer. Does NOT read

        from OPENIN file.

FORMAT [IMAGE <image file>] [DISK|HEAD [<head>]|SIDE [<head>]]

        Formats disk (default)/head/side etc. using the current configuration

        parameters. IMAGE destroys and creates a new image file.

FORMAT [IMAGE <image file>] TRACK [<C> <H> <R> <N>...]

        Formats track etc. using the ID bytes (hex sector sequence) given.

FORMAT [IMAGE <image file>] TEST [<from GPL> <to GPL>]

        Test-formats a disk using the GPL range specified (default 0 to 255).

INTERLEAVE [<n>]

        Displays/sets current sector interleave.

 

Other Formats

 

DOS180  Selects 180kB IBM PC format (without disk scan).

DOS360  Selects 360kB IBM PC format (without disk scan).

DOS720  Selects 720kB IBM PC format (without disk scan).

DOS800  Selects 800kB IBM PC format (without disk scan).

DOS1M2|DOS1.2

        Selects 1.2MB IBM PC format (without disk scan).

DOS1M44|DOS1.44

        Selects 1.44MB IBM PC format (without disk scan).

DOS2M88|DOS2.88

        Selects 2.88MB IBM PC format (without disk scan).

DFS[80|40]|*DFS[80|40]

        Selects Acorn (BBC) DFS format (without disk scan). Default 80-track.

DDOS|*DDOS

        Selects Slogger (BBC) DDOS format (without disk scan).

        All drive specifications have optional volume letter A-H (default set

        by *DRIVE).

ADFS_DE Selects Acorn ADFS D/D+/E/E+ 800kB format.

ADFS_F  Selects Acorn ADFS F/F+ 1600kB format.

ADFS|ADFS_L

        Selects Acorn ADFS L 640kB format.

CPM|CPM640|PDOS

        Selects 640kB CP/M / PDOS format.

 

The program is capable of recognising any format the hardware is capable of, although these are the ones it can put a name to. Try the SAMPLE (quick test) or SCAN (thorough) commands. If a format is missing, please send it to Support.

 

A less BBC-centric description of OmniDisk is available from http://www.shlock.co.uk/Utils.

Compatibility

The program is written for any PC with a uPD765-compatible controller (if you want to read/write real disks directly) - which is basically all of them with a built-in FDC. Auto-sensing usually removes the need to guess your system’s set-up.

For handling disk images (*IMAGE, USE IMAGE commands) it will work in all DOS and Windows (Command Prompt) environments.

For handling alien format disks (e.g. BBC), it will work in a Command Prompt under Windows 3.1/95/98/98SE, or under DOS (using a DOS boot disk). Support for floppy disks under Windows NT, Windows 2000, and Windows XP is being considered. Read the FAQ.txt for more information, especially if you are willing to be a beta-tester.

OmniDisk will not run under Linux, under dosemu. It just hangs. Although I haven’t tried it yet under root. If this is your platform of choice, complain to the support contacts and register your vote for Linux!

It is capable of reading and writing single-density (FM) disks, if your hardware allows it (1 out of 30 PCs tried so far failed).

Copy Protection

The underlying commands (non-‘*’-commands) allow nasty tricks and hacks - e.g. SCAN and MAP will allow you to examine mixed-format disks. All FDC commands - such as READ/WRITE/FORMAT - can be used on individual tracks or sectors.

[Back to Top of This Page]


Support

Support

Post to the BBC Mailing List with ‘OmniDisk’ in the subject - if that doesn’t work, contact the host of this page (who will have my e-mail address). The download also contains further contact details in the FAQ.txt.

Requests, and ports to other operating systems

Use the support contact – requests are welcome and are normally implemented.

Requests for porting to other environments (i.e. OS’es) are currently being sought. Don’t assume Windows XP and Linux are a given, either: I need to know what most people want, so currently every vote counts. Please e-mail any preference to the contact address given in the FAQ.txt of the download.

[Back to Top of This Page]