[comp.sys.amiga.tech] AmigaDOS Filing systems questions

a275@mindlink.UUCP (Travers Naran) (08/05/90)

I have a problem, I was looking at my AmigaDOS Tech Ref. Manual and studying
the Filing System. No where does it mention what format is the "Bitmap" or how
to get an updated Bitmap if you are altering the Disk block's directly (as in a
floppy optimizer). What is the format of the Bitmap or how can I get AmigaDOS
to update the Bitmap for me with a new file system structure on the disk?
--
-------------------------------------------------------------------
Travers "T'aran" Naran (I am male)
Simon Fraser University, Computing Science (Burnaby, B.C., Canada)
New Westminster, British Columbia, Canada, North America, etc...
Whovian, Prober, Treker, Quantum Leaper....
Mailing addresses:
   Usenet  Travers_Naran@mindlink.UUCP
or      uunet!van-bc!rsoft!mindlink!Travers_Naran
------------------------------------------------------------------

cmcmanis@stpeter.Eng.Sun.COM (Chuck McManis) (08/07/90)

In article <2730@mindlink.UUCP> a275@mindlink.UUCP (Travers Naran) writes:
>I have a problem, I was looking at my AmigaDOS Tech Ref. Manual and studying
>the Filing System. No where does it mention what format is the "Bitmap" or how
>to get an updated Bitmap if you are altering the Disk block's directly (as in a
>floppy optimizer). What is the format of the Bitmap or how can I get AmigaDOS
>to update the Bitmap for me with a new file system structure on the disk?

The format of the bitmap is documented in an AmigaMail article, contact
CATS for back issues. It turns out you don't need to know the format for
the bitmap because you can just mark it as "bad" in the rootblock when
you are done and after uninhibiting the drive the disk-validator will
run and write an updated bitmap on the disk for you. Simple as pie.



--
--Chuck McManis						    Sun Microsystems
uucp: {anywhere}!sun!cmcmanis   BIX: <none>   Internet: cmcmanis@Eng.Sun.COM
These opinions are my own and no one elses, but you knew that didn't you.
"I tell you this parrot is bleeding deceased!"

ewhac@well.sf.ca.us (Leo 'Bols Ewhac' Schwab) (08/09/90)

[ This has been redirected to comp.sys.amiga.tech. ]

In article <2729@mindlink.UUCP> a275@mindlink.UUCP (Travers Naran) writes:
>I have a problem, I was looking at my AmigaDOS Tech Ref. Manual and studying
>the Filing System. No where does it mention what format is the "Bitmap" [ ... ]
>What is the format of the Bitmap [ ... ] ?

	I don't know how to get tell AmigaDOS to update the bitmap short of
making it do a full re-validate.

	The following is a comment in a very old program I wrote called
'dm', which shows sector allocation on an OFS floppy.  I can send you the
whole program if you like, or you can dig it off one of the older Fish
Disks:
--------
	/*
	 * At this point, we now have the bitmap in the disk buffer.
	 * This is what the first longword in the bitmap represents:
	 *
	 *	333322222222221111111111
	 *	32109876543210987654321098765432	Sector #
	 *	--------------------------------
	 *	10100101001010010010010001010011	Longword
	 *	MSB			     LSB
	 *
	 * If the bit is set, the sector is free.
	 *
	 * Sectors 0 and 1 contain the boot block.  Thus, the DOS is not
	 * allowed to walk on them, and they are permanently allocated.
	 * However, the bitmap does not reflect this i.e. the bitmap starts
	 * at sector 2, which is indicated by bit 0, longword 1.  This means
	 * we have to offset everything by two.  Can you say "crock?"
	 *
	 * Actually, I suppose this is good, since it prevents some would-be
	 * smart person from un-allocating those sectors and messing things
	 * up badly.
	 *
	 * Bitmap starts at longword 1; longword 0 appears to be some kind
	 * of significant garbage (checksum?)
	 */
--------
	I was a lot younger back then...

_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
Leo L. Schwab -- The Guy in The Cape	INET: well!ewhac@ucbvax.Berkeley.EDU
 \_ -_		Recumbent Bikes:	UUCP: pacbell > !{well,unicom}!ewhac
O----^o	      The Only Way To Fly.	      hplabs / (pronounced "AE-wack")
	 "Because you never know who might want to sit in your lap."

new@ee.udel.edu (Darren New) (08/09/90)

In article <19479@well.sf.ca.us> ewhac@well.UUCP (Leo 'Bols Ewhac' Schwab) writes:
>	 * However, the bitmap does not reflect this i.e. the bitmap starts
>	 * at sector 2, which is indicated by bit 0, longword 1.  This means
>	 * we have to offset everything by two.  Can you say "crock?"

Actually, it works out quite nicely. It's not 2 sectors, but rather however
many sectors happen to be "reserved". For floppies, this is 2; for hard
drives, this can vary (altho most programs that worry about such things
die if it is not 2, so beware).           -- Darren

peterk@cbmger.UUCP (Peter Kittel GERMANY) (08/20/90)

In article <2729@mindlink.UUCP> a275@mindlink.UUCP (Travers Naran) writes:
>I have a problem, I was looking at my AmigaDOS Tech Ref. Manual and studying
>the Filing System. No where does it mention what format is the "Bitmap" [ ... ]
>	I don't know how to get tell AmigaDOS to update the bitmap short of
>making it do a full re-validate.

There is a brute force way to do this: Execute the CLI command DiskChange
on the drive, after you have set the BITMAP_VALID flag in the root block
to invalid. This causes AmigaDOS to newly read the disk's parameters, find
the bitmap invalid and start the validation process (yes, of the WHOLE
disk; I don't know about a way to only register the changes). You know
you can invoke CLI commands from C language and even from AmigaBasic
by use of the dos library function named Execute.

-- 
Best regards, Dr. Peter Kittel      //     E-Mail to 
Commodore Frankfurt, Germany      \X/      rutgers!cbmvax!cbmger!peterk