[Freedos-kernel] Fwd: FreeDOS kernel disk routines

2004-11-06 Thread tom ehlert



This is a forwarded message
From: Jose Antonio Senna
Subject: FreeDOS kernel disk routines

===8==Original message text===
 Excuse me for sending this directly to you, but I am still unable to post
on Freedos lists.
 I do not know who (if anyone) mantains the FreeDOS kernel disk routines.
If it is not you, please pass this mail to the appropriate person.
 The problem I found is:
 My computer BIOS INT 13 is able to access up to 4096 cylinders in a hard disk,
by using bits 6 -7 of DH in INT 13 requests as bits 10-11 of cylinder number.
This BIOS variant is documented in Brown and Kyle interrupts list.
 However,FreeDOS hooks INT 13 and,in doing so,rolls over any cylinder 
number modulo 1024,that is,if I make a request to access cylinder 1024,it does
not report any error,but I get cylinder 0, and so on.
 FreeDOS is not the only DOS to have this problem. Is it too difficult to 
solve ?
I thank you for your attention
JAS

===8===End of original message text===

my comment:

how are these disks/BIOS variants detected ?

I have a faint memory of these translating BIOS's, but can't find it
in RBIL.

IMO the kernel shouldn't touch partitions that are to big to handle
(1024 cylinders), unless LBA is detected.

tom




---
This SF.Net email is sponsored by:
Sybase ASE Linux Express Edition - download now for FREE
LinuxWorld Reader's Choice Award Winner for best database on Linux.
http://ads.osdn.com/?ad_id=5588alloc_id=12065op=click
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] Fwd: FreeDOS kernel disk routines

2004-11-06 Thread Arkady V.Belousov
Hi!

6--2004 16:13 [EMAIL PROTECTED] (tom ehlert) wrote to
[EMAIL PROTECTED]:

te From: Jose Antonio Senna
te ===8==Original message text===
te  Excuse me for sending this directly to you, but I am still unable to post
te on Freedos lists.
te  I do not know who (if anyone) mantains the FreeDOS kernel disk routines.
te If it is not you, please pass this mail to the appropriate person.
te  The problem I found is:
te  My computer BIOS INT 13 is able to access up to 4096 cylinders in a hard
te disk,
te by using bits 6 -7 of DH in INT 13 requests as bits 10-11 of cylinder
te number.

 If so, then this is non-standard and this completely prohibits LBA
(with up to 256/255 heads).

te This BIOS variant is documented in Brown and Kyle interrupts list.

 Ralf Brown not documents such API deviation (or I miss something?).

te  However,FreeDOS hooks INT 13 and,in doing so,rolls over any cylinder
te number modulo 1024, that is,if I make a request to access cylinder 1024,it
te does not report any error,but I get cylinder 0, and so on.

 FreeDOS _doesn't_ hooks INT 13. See main.c:setup_int_vectors() for list
of hooked vectors.

te  FreeDOS is not the only DOS to have this problem.

 May you quote code fragment, which works under other OSes (which?) and
doesn't works under FD?

te  Is it too difficult to solve ?
te ===8===End of original message text===
te my comment:
te how are these disks/BIOS variants detected ?
te I have a faint memory of these translating BIOS's, but can't find it
te in RBIL.
te IMO the kernel shouldn't touch partitions that are to big to handle
(1024 cylinders), unless LBA is detected.




---
This SF.Net email is sponsored by:
Sybase ASE Linux Express Edition - download now for FREE
LinuxWorld Reader's Choice Award Winner for best database on Linux.
http://ads.osdn.com/?ad_idU88alloc_id065op=click
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] Fwd: FreeDOS kernel disk routines

2004-11-06 Thread Bart Oldeman
On Sat, 6 Nov 2004, tom ehlert wrote:

  However,FreeDOS hooks INT 13

No, if anything hooks INT 13 it could be LBACACHE but the kernel does not
(it should but for different reasons -- see int2f/ah=13 in RBIL).

 how are these disks/BIOS variants detected ?

 I have a faint memory of these translating BIOS's, but can't find it
 in RBIL.

RBIL D-1302
INT 13 - DISK - READ SECTOR(S) INTO MEMORY
[...]
AWARD AT BIOS and AMI 386sx BIOS have been extended to handle more
than 1024 cylinders by placing bits 10 and 11 of the cylinder number
into bits 6 and 7 of DH

Probably a rare breed of machines. For most bit 6  7 of DH mean bit 6
and 7 of the (translated) head number. I have no idea how to distinguish
this meaning.

My 386 SX only had 80 MB hard disk space, which was far below the
first problematic barrier of 1024*16*63*512=512MB

 IMO the kernel shouldn't touch partitions that are to big to handle
 (1024 cylinders), unless LBA is detected.

Agreed. That's what it does today.

Bart


---
This SF.Net email is sponsored by:
Sybase ASE Linux Express Edition - download now for FREE
LinuxWorld Reader's Choice Award Winner for best database on Linux.
http://ads.osdn.com/?ad_id=5588alloc_id=12065op=click
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] Fwd: FreeDOS kernel disk routines

2004-11-06 Thread Arkady V.Belousov
Hi!

7--2004 09:24 [EMAIL PROTECTED] (Bart Oldeman) wrote to
[EMAIL PROTECTED]:

BO My 386 SX only had 80 MB hard disk space, which was far below the
BO first problematic barrier of 1024*16*63*512=512MB

 1024*16*63*512=504Mb (or 528 Mb, as this counted by disk
manufacturers).




---
This SF.Net email is sponsored by:
Sybase ASE Linux Express Edition - download now for FREE
LinuxWorld Reader's Choice Award Winner for best database on Linux.
http://ads.osdn.com/?ad_idU88alloc_id065op=click
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel