From owner-FreeBSD-users-jp@jp.freebsd.org  Thu Apr  8 15:25:09 1999
Received: (from daemon@localhost)
	by jaz.jp.freebsd.org (8.9.2+3.1W/8.7.3) id PAA02095;
	Thu, 8 Apr 1999 15:25:09 +0900 (JST)
	(envelope-from owner-FreeBSD-users-jp@jp.FreeBSD.org)
Received: from mist.nintendo.co.jp (firewall-user@mist.nintendo.co.jp [202.214.242.34])
	by jaz.jp.freebsd.org (8.9.2+3.1W/8.7.3) with ESMTP id PAA02087
	for <FreeBSD-users-jp@jp.freebsd.org>; Thu, 8 Apr 1999 15:25:08 +0900 (JST)
	(envelope-from shirai@pon.nintendo.co.jp)
Received: by mist.nintendo.co.jp; id PAA20330; Thu, 8 Apr 1999 15:25:04 +0900 (JST)
Received: from unknown(172.16.1.9) by mist.nintendo.co.jp via smap (4.1)
	id xma020312; Thu, 8 Apr 99 15:24:15 +0900
Received: from pon.nintendo.co.jp (pon [172.16.1.1])
	by yellow.nintendo.co.jp (8.9.3/3.7W/1999030310) with SMTP id PAA01491
	for <FreeBSD-users-jp@jp.freebsd.org>; Thu, 8 Apr 1999 15:21:30 +0900 (JST)
Received: from pon (localhost) by pon.nintendo.co.jp (4.2/6.4J.6)
	id AA16431; Thu, 8 Apr 99 15:23:58 JST
Message-Id: <9904080624.AA16431@pon.nintendo.co.jp>
To: FreeBSD-users-jp@jp.freebsd.org
In-Reply-To: Your message of Thu, 08 Apr 1999 10:44:29 JST.
             <199904080143.KAA21603@casd4061.sk.sysd.mt.nec.co.jp> 
Date: Thu, 08 Apr 1999 15:23:57 +0900
From: Takashi SHIRAI <shirai@pon.nintendo.co.jp>
Reply-To: FreeBSD-users-jp@jp.freebsd.org
Precedence: list
X-Distribute: distribute version 2.1 (Alpha) patchlevel 24e+990405
X-Sequence: FreeBSD-users-jp 40987
Subject: [FreeBSD-users-jp 40987] Re: MELCO
 =?ISO-2022-JP?B?GyRCJE4bKEI=?= SCSI
 =?ISO-2022-JP?B?GyRCJVwhPCVJGyhC?=(IFC-USP)
 =?ISO-2022-JP?B?GyRCJEdANSQ3JCQbKEI=?=
 geometry =?ISO-2022-JP?B?GyRCJHI8aEZAJEckLSRKJCQbKEI=?=(Re:
 =?ISO-2022-JP?B?GyRCJTglKiVhJUglahsoQg==?=(QandA
 =?ISO-2022-JP?B?GyRCJEgbKEI=?= FAQ
 =?ISO-2022-JP?B?GyRCJEdMNz1iGyhC?= ?))
Errors-To: owner-FreeBSD-users-jp@jp.freebsd.org
Sender: owner-FreeBSD-users-jp@jp.freebsd.org
X-Originator: shirai@pon.nintendo.co.jp

$B!!#N#e#c#o$G$9!#(B

$B!!2?$+(B Subject $B$,@($$$3$H$K$J$C$F$k$s$G$9$,!";d$K$OFI$a$J$$(B
$B$b$N$G$3$N$^$^$K$7$H$-$^$9!#(B

$B!t!!$@$+$i(B MIME $B$C$F7y$$!#(B

In Message-Id <199904080143.KAA21603@casd4061.sk.sysd.mt.nec.co.jp> 
        t-hotani@sysd.mt.nec.co.jp $B$5$s(Bwrites:
> $B$3$s$K$A$O!"J]C+$G$9!#(B

>  >$B!!$^$?!"$8$c$"(B FAQ $B$NJ}$G>R2p$5$l$F$$$k(B PFDISK.EXE $B$r;H$C$F(B
>  >$B@5$7$$(B geometory $BCM$rD4$Y$k$3$H$,=PMh$?$H$7$F!"$=$N8e$I$&$7(B
>  >$B$?$i$$$$$N!)$C$FJU$j$,=q$$$F$"$j$^$;$s!#(B
> 
> $B$3$l$O(BAT$B8_495!$K8B$C$?J}K!$G$9$h$M!#(B

$B!!(BFAQ $B$d(B QandA $B$,(B AT $B8_495!MQ$N2sEz$7$+MQ0U$7$F$J$$$N$O;EJ}(B
$B$J$$$H;W$$$^$9!#$$$A$$$A(B PC-9801 $BMQ$N2sEz$HJ,$1$FMQ0U$9$k$N(B
$B$OBgJQ$G$9$7!"$=$b$=$b(B QandA $B:n@.<T$,(B PC-9801 $B$N<BBV$rCN$i$J(B
$B$$$3$H$bB?$$$G$7$g$&!#(B
$B!!0x$_$K!"(BPFDISK.EXE $B$,$J$$(B PC-9801 $B$G$O!"(BDEBUG.EXE $B$r;H$C$F(B
$BD>@\(B DISK BIOS $B$rC!$/$7$+$J$$$G$7$g$&$+$M!#(B
	C:\> debug
	-a 100
	XXXX:0100 mov ah, 84
	XXXX:0102 mov al, a0
	XXXX:0104 int 1b
	XXXX:0106
	-g=100,106
	
	AX=XXXX  BX=0100  CX=0266  DX=0821  SP=XXXX  BP=XXXX  SI=XXXX  DI=XXXX
	DS=XXXX  ES=XXXX  SS=XXXX  CS=XXXX  IP=XXXX   XX XX XX XX XX XX XX NC
	XXXX:0106 XXXX          XXX     XXXX
	-q
	C:\>
$B!!(BCX=(# of cylinders), DH=(# of heads), DL=(# of sectors) $B$G(B
$B$9!#0x$_$K(B BS=(size of sector)$B!#$3$N>l9g$@$H(B C/H/S $BCM$O$=$l(B
$B$>$l(B 614/8/33 $B$G$9$M!#(B
$B!!$3$NCM$r95$($F$*$$$F!"(Bpartition editor $B<B9T;~$K!V%8%*%a%H(B
$B%j@_Dj!W$G$7$g$&$+!#(B


>  >$B!!(Binstaller $B$N(B partition editor $B$K$O3N$+$K!V%8%*%a%H%j@_Dj!W(B
>  >$B$H$$$&%3%^%s%I$,$"$C$F!"$3$NCM$r(B installer $B$K65$($F$d$k$3$H(B
>  >$B$,=PMh$k$s$G$7$g$&$,!"$3$l$O7k9=9bEY$J5;$@$H;W$$$^$9!#(B
>  >$B!!>/$J$/$H$b!"(BQandA $B$KMj$C$F$/$k!V$A$g$C$H<+?.$N$J$$?M!W$,$d(B
>  >$B$k$h$&$J$3$H$8$c$J$$$N$G$O$J$$$G$7$g$&$+!)(B
> 
> $B;d!"$b$&>/$7$G$d$m$&$H$7$F$^$7$?!#(B

$B!!$$$(!"JL$K$d$C$A$c$$$1$J$$$H$$$&$3$H$G$O$J$$$G$9$h!#$A$c$s(B
$B$HM}2r=PMh$F$$$k$J$i$3$3$GCM$r@_Dj$7$F$d$l$P$$$$$s$G$9!#(B
$B!!LdBj$J$N$O!"$A$c$s$HM}2r=PMh$F$$$J$$?M$K$*>)$a$9$k$K$O@bL@(B
$B$,IT==J,$G$"$k$3$H$G$"$C$F!"<jK!<+BN$O<j=g$H$7$F4V0c$C$F$$$J(B
$B$$$H;W$$$^$9!#(B
$B!!$G$b!"$=$N@bL@$r==J,$K$9$k$N$O;jFq$N5;$J$N$G!"<+?.$N$J$$?M(B
$B$K>R2p$9$k$N$O$I$&$+$J$H$$$&$*OC$G$7$?!#(B


> $B$H$$$&$o$1$G!"#4$D$N%Q!<%F%#%7%g%s$KJ,$1$F$"$k$N$G$9$,!"(B
> $B%$%s%9%H!<%i$N%Q!<%F%#%7%g%s%(%G%#%?$NI=<($O0J2<$N$h$&$K$J$C$F$7$^$$$^$9!#(B
> $B$J$<!"(BDOS$B%Q!<%F%#%7%g%s$,#2$D$7$+$J$$$N$G$7$g$&$+!#(B
> ------------------------------------------------------------
> da0:
> $B%G%#%9%/%8%*%a%H%j(B:      16065 $B%7%j%s%@(B / 255 $B%X%C%I(B / 63 $B%;%/%?(B = 258084225
> 
>  $B3+;O0LCV(B      $BBg$-$5(B    $B=*N;0LCV(B    $BL>>N(B  $B%?%$%W(B    $B<oJL(B     $BI{%?%$%W(B   $B%U%i%0(B
>         0       16065       16064     -       6     unknown        0
>     16065   128520000   128536064   da0s1     2         fat    41376
> 128536065   128520000   257056064   da0s2     2         fat    41248
> 257056065     1028160   258084224     -       6     unknown        0
> ------------------------------------------------------------

$B!!$3$3$GI=<($5$l$F$$$k(B geometry $BCM$H!">e$N(B DEBUG.EXE $B$GD4$Y(B
$B$?CM$,0c$&$s$8$c$J$$$G$7$g$&$+!#$@$H$7$?$i!"D4$Y$?CM$r$3$3$G(B
$BF~NO$7$F$d$l$P$$$$$s$@$H;W$$$^$9$1$I!#(B


> DOS$BNN0h$r:n@.$7$F$$$k$N$K@5$7$$%8%*%a%H%j$,<hF@$G$-$F$$$J$$M}M3$O(B
> $B$J$s$J$N$G$7$g$&$+!#(B
> $B$^$?!":#2s$N>l9g%8%*%a%H%j$N@5$7$$CM$O$J$s$G$7$g$&$+!#(B
> $B$I$J$?$+2sEz$"$k$$$O2r7hK!$r$465<x$*4j$$$7$^$9!#(B

$B!!(Bgeometry $B$,@5$7$/<hF@=PMh$F$$$J$$M}M3<+BN$O(B AT $B8_495!$HF1(B
$B$8$h$&$J$3$H$J$s$8$c$J$$$G$7$g$&$+$M!#(B
$B!!(Bgeometry $B<hF@MQ$K(B DEBUG.EXE $B$,$J$$$h$&$J$i!"$3$s$J4JC1$J%W(B
$B%m%0%i%`$r=q$$$F8!>Z$b=PMh$^$9!#(B

$B!t!!(B LSI-C $B$G$b(B BCC $B$G$b(B MS-C $B$G$b(B compile $B=PMh$k$H;W$$$^$9(B
$B!t$,!"(BDJGPP $B$G$OL5M}$G$9!#(BDPMI $B$G=q$/$NLLE]$J$N$G(B DJGPP $B$X$N(B
$B!t0\?"$O3F<+$G$I$&$>!#(B

--------
#include <stdio.h>
#include <dos.h>

#define	DISK_BIOS	0x1b
#define	CMD_STAT	0x84
#define	MASK_UA		0x0f
#define	SASI_MAX	4
#define	SASI_DA		0x80
#define	SCSI_MAX	8
#define	SCSI_DA		0xa0

int getgeo(drive)
int drive;
{
	union REGS reg;

	reg.h.ah = CMD_STAT;
	reg.h.al = drive;
	int86(DISK_BIOS, &reg, &reg);
	if (reg.x.flags & 1) return(-1);
	printf("drive #%d: C/H/S = %d/%d/%d (secsize: %d)\n",
		drive & MASK_UA, reg.x.cx, reg.h.dh, reg.h.dl, reg.x.bx);
	return(0);
}

int main(argc, argv)
int argc;
char *argv[];
{
	int i;

	printf("SASI(IDE)\n");
	for (i = 0; i < SASI_MAX; i++) if (getgeo(SASI_DA | i) < 0) break;
	printf("SCSI\n");
	for (i = 0; i < SCSI_MAX; i++) if (getgeo(SCSI_DA | i) < 0) break;
	return(0);
}
--------

                                       $BGr0f(B $BN4(B (as $B#N#e#c#o(B)
