RISC OS Open
A fast and easily customised operating system for ARM devices
ROOL
Home | News | Software | Bugs | Bounties | Forum | Documents | Photos | Contact us
Account

FileCore Disc Descriptor

Programmer's Reference Manuals
» Part 4 – Using Filing Systems
» FileCore
» Technical Details
» FileCore Disc Descriptor

FileCore Disc Descriptor

File Disc Descriptor (small Disc1)

Offset Name Meaning
+0 Log2Secsize Log2 of sector size (Sector size = 2^x)
+1 Secspertrack Number of sectors per track
+2 Heads Number of disc heads, if interleaved otherwise -1 (1 for old directories)
+3 Density Disc density
+4 IDlen Length of id field of a map fragment (in bits)
+5 Log2Bpmp Log2 of number of bytes per map bits
+6 Skew Track to track sector skew for random access file allocation
+7 Bootoption Boot option (as in *Opt 4,n)
+8 Lowsector Lowest numbered sector + disc description flags
+9 Nzones Number of zones in the map
+A-B Zone_Spare Number of non-allocation bits between zones
+C-F Root Disc address of root directory
+10-13 Disc_Size Disc size in bytes
+14-15 Disc_Id Disc cycle ID
+16-1F Disc_Name Disc name (spaced to 10 chars, no terminator)
+20-23 Disctype Filetype given to disc
+24-3F   Reserved, must be 0

File Disc Descriptor (Large Disc2)

Offset Name Meaning
+0 Log2Secsize Log2 of sector size (Sector size = 2^x)
+1 Secspertrack Number of sectors per track
+2 Heads Number of disc heads, if interleaved otherwise -1 (1 for old directories)
+3 Density Disc density
+4 IDlen Length of id field of a map fragment (in bits)
+5 Log2Bpmp Log2 of number of bytes per map bits
+6 Skew Track to track sector skew for random access file allocation
+7 Bootoption Boot option (as in *Opt 4,n)
+8 Lowsector Lowest numbered sector + disc description flags
+9 Nzones Number of zones in the map
+A-B Zone_Spare Number of non-allocation bits between zones
+C-F Root Disc address of root directory
+10-13 Disc_Size Disc size in bytes
+14-15 Disc_Id Disc cycle ID
+16-1F Disc_Name Disc name (spaced to 10 chars, no terminator)
+20-23 Disctype Filetype given to disc
+24-27 Disc_size2 High word of disc size
+28 Share_size Share Size Information
+29 Big_flag Big Flag
+2A-3F   Reserved, must be 0

Disc Description Flags

Bits Meaning
0 – 5 Lowest numbered sector id on a track
6 Treat sides as a sequence (not interleaved), if set
7 Disc is 40 track, if set

Share Size Information

Bits Meaning
0 – 3 Log2 share size granularity (in sectors)
4 – 7 Reserved, must be zero

Big Flag

Bits Meaning
0 Identified as ‘Large’ disc, if set
1 – 7 Reserved, must be zero

Disc Densities

# Meaning
0 Hard disc
1 Single density (125 Kbps FM)
2 Double density (250 kbps FM)
3 Double density (300 kbps FM), i.e. higher rotation speed DD
4 Quad density (500 kbps FM)
8 Octal density (1000 kbps FM)

Notes

There are two different FileCore Disc descriptor formats. The earlier version only supports small hard discs, while the later version supports larger discs.

1 Small disc are returned on versions prior to RISC OS 3.60

2 Large discs are returned on RISC OS 3.60 and later

See also

  • Disc Cycle ID
  • FileCore
  • File Types
Created on December 5, 2009 18:57:38 by Alan Robertson (52)? (127.0.0.1)
Edit | Views: Print | Source | Linked from: Disc Cycle ID, FileCore_DescribeDisc, FileCore Technical Details, FileCore_DiscOp, FileCore_DiscOp64, FileCore_FloppyStructure, Defect Lists, FileCore_LayoutStructure, FileCore_MiscOp 0, Service_IdentifyDisc

Search the Wiki

Commercial use

For commercial enquiries, please contact the owners of RISC OS, Castle Technology Ltd.

ROOL Store

The official C/C++ Development kit and more here.

Donate! Why?

Help ROOL make things happen – please consider donating!

Navigation

  • Home Page
  • All Pages
  • Recently Revised
  • Authors
  • Feeds
Site design © RISC OS Open Limited 2011 except where indicated
The RISC OS Open Instiki theme is based on Insitki's default layout

Valid XHTML 1.0  |  Valid CSS

Instiki 0.19.1(MML+)
This site runs on Rails

Hosted by Arachsys