/*
 * orig_fs.h
 *
 * Copyright 2002, Minoru Murashima. All rights reserved.
 * Distributed under the terms of the BSD License.
 */


#ifndef orig_fs_h
#define orig_fs_h


#ifndef ASM_FILE


enum{
	PT_TYPE_ORIG=0x9a,			/* Partition type number（仮） */
	SBLOCK_MAGIC=0xdddddddd,	/* superblock magic number（仮）、固定 */
	SBLOCK_SECTER=2,			/* スーパーブロック開始セクター、固定 */
	BLOCK_SIZE=4096,			/* ブロックサイズ、可変 */
};


/* Super block entry */
typedef struct{
	uint magic_number;		/* マウント時の確認用マジックナンバー */
	int secters;			/* block size/secter size */
	size_t all_blk;			/* All blocks */
	size_t useable_blk;		/* Useable blocks */
	uint root_blk;			/* root block number */
	uint empty_blk;			/* 現在の空きブロックインデックスブロック */
}SUPER_BLOCK;

/* 空きブロックリンク */
typedef struct{
	int current;		/* 空きブロック配列の現在配列値 */
	uint empty[0];		/* 空きブロック配列 */
}ENPTY_BLOCK;


extern void make_dir(void*,uint);


#endif


#endif
