[OpenBIOS] r577 - ofw/fs/fatfs
svn at openbios.org
svn at openbios.org
Fri Aug 24 01:34:38 CEST 2007
Author: wmb
Date: 2007-08-24 01:34:38 +0200 (Fri, 24 Aug 2007)
New Revision: 577
Modified:
ofw/fs/fatfs/partition.fth
Log:
Followup to r564 - Tighter heuristic for detecting the presence of a
partition map; the old one was treating boot code as partition info.
This new one also requires a couple of specific values (0 or 80) in the
bootable byte.
Modified: ofw/fs/fatfs/partition.fth
===================================================================
--- ofw/fs/fatfs/partition.fth 2007-08-23 23:31:44 UTC (rev 576)
+++ ofw/fs/fatfs/partition.fth 2007-08-23 23:34:38 UTC (rev 577)
@@ -17,8 +17,12 @@
\ using fdisk and mkdosfs under Linux. It is too easy to run mkdosfs on
\ the overall disk (not the partition).
: unpartitioned? ( -- flag )
- sector-buf h# 1fe + le-w@ h# aa55 <>
- sector-buf h# 1c6 + le-l@ 0= or
+ \ In partition maps, the status byte is 0 (not bootable) or 80 (bootable)
+ sector-buf h# 1be + c@ h# 7f and 0<> ( unpartitioned? )
+ \ and the end of the sector contains a signature
+ sector-buf h# 1fe + le-w@ h# aa55 <> or ( unpartitioned?' )
+ \ and the first partition entry has a non0 starting sector number
+ sector-buf h# 1c6 + le-l@ 0= or ( unpartitioned?' )
;
: ptable-bounds ( -- end start ) sector-buf h# 1be + h# 40 bounds ;
More information about the OpenBIOS
mailing list