Re: [Freedos-kernel] commit: floppy.asm

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

18--2004 18:27 [EMAIL PROTECTED] (Kenneth J. Davis) wrote to
[EMAIL PROTECTED]:

 KJD provided I will work on the config processing.
  I not send any patch here. Reason: there too many changes - so, I
 should send one _big_ patch or send _many_ smaller patches. I fear, this is
 not acceptable here.
KJD That's fine, it doesn't matter to me if its one big, several smaller, or
KJD even just the changed file.

 I may send you my edition of config.c (private, I suggest?), but it not
the last edition (I continue to work on it).

  I see, you miss some my changes (for example, fl_diskchanged epilog)
KJD please be more specific,

 ?

KJD for example I changed floppy.asm patch 3 to maintain the same size

 Same size of what?

KJD and return values as the original logic, as

 Of course, I check validness of change.

KJD I did not see a reason to make the code longer

 ? My code not longer.

KJD and return 0x00FF instead of 0x (-1).

 Because other functions do this (return one byte with zero AH)! I just
add consistency.

 and add own comments. For example:
KJD yes, I viewed yours, the original, RBIL, and the code and selected
KJD the one that seemed the most clear, being more verbose if necessary.

 Hm, I look at RBIL. Looks, like there is another ambiguite (or even
wrong) description. :(

PS: There are also other re-changes in compare to original and my edition.
For example, I describe `drive' parameter for all functions (as in dsk.c) as
UBYTE (this gets better code) and return type as `int' - in your edition
this is no so. Also, I think, explaining in comments for sbb al,al that
Al=-CF is not good. This is same, as write next:

int i = ...
i++; /* increment i */

(BTW, you preserve comment in mov ah,0 ; zero out ah). Also, you preserve
wrong comment cylinder number (lo only if hard) - this is complete
cylinder number, not its lo part. Also, count to read/write is wrong
comment, because there is code for format and verify (same for
fl_lba_readwrite()). Also, you remain (Zero transfer count) and force
into  255 count, whereas AL (AL only, AH cleared!) returns error code, not
transfer count.

PPS: Also, there are cosmetic remarks (from me :): in some places you
preserve my tabulations (though, before some comments you lost one - see,
for example, mov ah,18h), in other places you preserve trailing spaces
(even on empty lines)...




---
This SF.Net email is sponsored by The 2004 JavaOne(SM) Conference
Learn from the experts at JavaOne(SM), Sun's Worldwide Java Developer
Conference, June 28 - July 1 at the Moscone Center in San Francisco, CA
REGISTER AND SAVE! http://java.sun.com/javaone/sf Priority Code NWMGYKND
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] commit: floppy.asm

2004-06-19 Thread Kenneth J. Davis
...
 I may send you my edition of config.c (private, I suggest?), but it not
the last edition (I continue to work on it).
please do

...
and add own comments. For example:
KJD yes, I viewed yours, the original, RBIL, and the code and selected
KJD the one that seemed the most clear, being more verbose if necessary.
 Hm, I look at RBIL. Looks, like there is another ambiguite (or even
wrong) description. :(
In the future I will be more careful and try to validate descriptions
with other resources.
PS: There are also other re-changes in compare to original and my edition.
For example, I describe `drive' parameter for all functions (as in dsk.c) as
UBYTE (this gets better code) and return type as `int' - in your edition
While the drive parameter is an unsigned byte, it is actually passed in
as a word, and the prototypes in dsk.c at present still indicate this.
So instead of using UBTYE in one place (floppy.asm) and WORD in another
(dsk.c), I maintained the use of WORD.  No code is effected, as these
are strictly changes to comments.  When I apply your dsk.c patch 10,
which does change the prototypes, I will change floppy.asm to match.

this is no so. Also, I think, explaining in comments for sbb al,al that
Al=-CF is not good. This is same, as write next:
int i = ...
i++; /* increment i */
My comment isn't AL=-CF it is AL=-CF={-1,0}, the comment is
saying that after the sbb call, AL is either -1 or 0.  The -CF simply
clarifies that only carry determines the actual value.
(BTW, you preserve comment in mov ah,0 ; zero out ah). Also, you preserve
sure its an obvious comment, but how does it adversely effect anything?
wrong comment cylinder number (lo only if hard) - this is complete
cylinder number, not its lo part. Also, count to read/write is wrong
corrected
comment, because there is code for format and verify (same for
how about 'count of sectors to read/write/...'
fl_lba_readwrite()). Also, you remain (Zero transfer count) and force
into  255 count, whereas AL (AL only, AH cleared!) returns error code, not
transfer count.
ok, adjusted, I read this comment as extending al into ax without sign
extension.
PPS: Also, there are cosmetic remarks (from me :): in some places you
preserve my tabulations (though, before some comments you lost one - see,
for example, mov ah,18h), in other places you preserve trailing spaces
(even on empty lines)...
While I will commit some, I prefer to not make whitespace only changes.
it also depends on how I apply a given patch.
Jeremy

---
This SF.Net email is sponsored by The 2004 JavaOne(SM) Conference
Learn from the experts at JavaOne(SM), Sun's Worldwide Java Developer
Conference, June 28 - July 1 at the Moscone Center in San Francisco, CA
REGISTER AND SAVE! http://java.sun.com/javaone/sf Priority Code NWMGYKND
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] commit: floppy.asm

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

19--2004 15:41 [EMAIL PROTECTED] (Kenneth J. Davis) wrote to
[EMAIL PROTECTED]:

  I may send you my edition of config.c (private, I suggest?), but it not
KJD please do

 Done. See archive with config.c, portab.h (from which used new macro)
and makefiles (which also pass for compiler path to its include files - new
portab.h uses compiler's limits.h).

KJD are strictly changes to comments.  When I apply your dsk.c patch 10,
KJD which does change the prototypes, I will change floppy.asm to match.

 Why change prototype lines twice? As I understand, this generates extra
unnecessary entries in CVS.

 this is no so. Also, I think, explaining in comments for sbb al,al that
 Al=-CF is not good. This is same, as write next:
 int i = ...
 i++; /* increment i */
KJD My comment isn't AL=-CF it is AL=-CF={-1,0}, the comment is
KJD saying that after the sbb call, AL is either -1 or 0.

 But this is what sbb al,al mean and do. I think, comment should
contain more high-level explanations, than repeating description from
Instruction Set Manual. For example:

sbb al,al   ; CF=0 (disk has not changed)
jnc ret_AH_0; ...return 0
cmp ah,6; ah!=6 (error)
jne ret_AH_0; ...return 0xFF

 (BTW, you preserve comment in mov ah,0 ; zero out ah). Also, you preserve
KJD sure its an obvious comment, but how does it adversely effect anything?

 It not affect anything, but this comment was not present in my patch.
This mean, you copy it from old source.

 comment, because there is code for format and verify (same for
KJD how about 'count of sectors to read/write/...'

 What bad in plain number of sectors?

 fl_lba_readwrite()). Also, you remain (Zero transfer count) and force
 into  255 count, whereas AL (AL only, AH cleared!) returns error code, not
 transfer count.
KJD ok, adjusted, I read this comment as extending al into ax without sign
KJD extension.

 Ok.

 PPS: Also, there are cosmetic remarks (from me :): in some places you
 preserve my tabulations (though, before some comments you lost one - see,
 for example, mov ah,18h), in other places you preserve trailing spaces
 (even on empty lines)...
KJD While I will commit some, I prefer to not make whitespace only changes.
KJD it also depends on how I apply a given patch.

 When you change line, this is wise to fix, for example, spacings. But
your changes are inconsistent: in one case you preserve spaces, in other
case you replace spaces by tabs, in third case I see wrong shifting:

__O\_/_\_/O__
mov al, 1   ; set change occurred
fl_dc:  cbw ; extend AL into AX, AX={1,0,-1}
ret ; note: AH=0 on no change, AL set above
[...]
pushbx  ; restore stack
mov ah,17h  ; floppy set disk type for format
_
  O/~\ /~\O




---
This SF.Net email is sponsored by The 2004 JavaOne(SM) Conference
Learn from the experts at JavaOne(SM), Sun's Worldwide Java Developer
Conference, June 28 - July 1 at the Moscone Center in San Francisco, CA
REGISTER AND SAVE! http://java.sun.com/javaone/sf Priority Code NWMGYKND
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


[Freedos-kernel] commit: floppy.asm

2004-06-18 Thread Kenneth J. Davis
I have gone through Arkady's floppy patchset (is there a 5 of 5?).
This weekend I intend to finish processing his dsk.c patchset
(which includes Lucho's rewording patch), and once a patch is
provided I will work on the config processing.  I'll commit the
history.txt update once I finish the dsk.c work.
I have set the build version to 2035a to help prevent confusion
with released kernels.
As I commit updates, please refer to sourceforge for source, but
I may provide binaries and diffs at http://www.fdos.org/kernel/
As this is my first commit, for exact patch committed see:
http://www.fdos.org/kernel/2035a/p1.diff
and for the binary compiled with OpenWatcom 1.2 + UPX'd see:
http://www.fdos.org/kernel/2035a/KERNEL.SYS
Please feel free to comment and thank you for the patches!
Jeremy Davis
[EMAIL PROTECTED]
CVS: Modified Files:
CVS:drivers/floppy.asm hdr/version.h
--
based on floppy.asm patchset from Arkady, use ret instead of ret 8
appropriately; improve comments, including sync with prototypes in
dsk.c; small code clean up

---
This SF.Net email is sponsored by The 2004 JavaOne(SM) Conference
Learn from the experts at JavaOne(SM), Sun's Worldwide Java Developer
Conference, June 28 - July 1 at the Moscone Center in San Francisco, CA
REGISTER AND SAVE! http://java.sun.com/javaone/sf Priority Code NWMGYKND
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] commit: floppy.asm

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

18--2004 03:12 [EMAIL PROTECTED] (Kenneth J. Davis) wrote to
[EMAIL PROTECTED]:

KJD I have gone through Arkady's floppy patchset (is there a 5 of 5?).

 There was 4 of 5. Last patch I omit, because it was cosmetic. Ot the
other side, you may get complete floppy.asm patch (all in one) in previous
letters.

KJD This weekend I intend to finish processing his dsk.c patchset
KJD (which includes Lucho's rewording patch), and once a patch is
KJD provided I will work on the config processing.

 I not send any patch here. Reason: there too many changes - so, I
should send one _big_ patch or send _many_ smaller patches. I fear, this is
not acceptable here.

KJD As I commit updates, please refer to sourceforge for source, but

 Is kernel.tgz will be updated?

KJD Please feel free to comment and thank you for the patches!
KJD CVS:   drivers/floppy.asm hdr/version.h

 I see, you miss some my changes (for example, fl_diskchanged epilog)
and add own comments. For example:

 + pop dx  ; drive, (DL only, bit 7 set resets both 
 floppy  hd)
---^^...

 This is wrong addition: of course, BIOS enumerates hard disks as
80h-ffh (with bit 7 set), bit 7 not relates to reseting both floppy and
hd, there will be reset disk, which number is in DL and only it.




---
This SF.Net email is sponsored by The 2004 JavaOne(SM) Conference
Learn from the experts at JavaOne(SM), Sun's Worldwide Java Developer
Conference, June 28 - July 1 at the Moscone Center in San Francisco, CA
REGISTER AND SAVE! http://java.sun.com/javaone/sf Priority Code NWMGYKND
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] commit: floppy.asm

2004-06-18 Thread Kenneth J. Davis
Arkady V.Belousov wrote:
Hi!
18--2004 03:12 [EMAIL PROTECTED] (Kenneth J. Davis) wrote to
[EMAIL PROTECTED]:
KJD I have gone through Arkady's floppy patchset (is there a 5 of 5?).
 There was 4 of 5. Last patch I omit, because it was cosmetic. Ot the
other side, you may get complete floppy.asm patch (all in one) in previous
letters.
Ok.  Thanks, just wanted to make sure I didn't somehow overlook it on
sourceforge.
KJD This weekend I intend to finish processing his dsk.c patchset
KJD (which includes Lucho's rewording patch), and once a patch is
KJD provided I will work on the config processing.
 I not send any patch here. Reason: there too many changes - so, I
should send one _big_ patch or send _many_ smaller patches. I fear, this is
not acceptable here.
That's fine, it doesn't matter to me if its one big, several smaller, or
even just the changed file.
KJD As I commit updates, please refer to sourceforge for source, but
 Is kernel.tgz will be updated?
Should be.
KJD Please feel free to comment and thank you for the patches!
KJD CVS:   drivers/floppy.asm hdr/version.h
 I see, you miss some my changes (for example, fl_diskchanged epilog)
please be more specific, for example I changed floppy.asm patch 3
to maintain the same size and return values as the original logic, as
I did not see a reason to make the code longer and return 0x00FF instead
of 0x (-1).  see http://www.fdos.org/kernel/2035a/arkady/test.asm
for the three variations (mine, yours, the original).
and add own comments. For example:
yes, I viewed yours, the original, RBIL, and the code and selected
the one that seemed the most clear, being more verbose if necessary.

+ pop dx  ; drive, (DL only, bit 7 set resets both floppy  hd)
---^^...
 This is wrong addition: of course, BIOS enumerates hard disks as
80h-ffh (with bit 7 set), bit 7 not relates to reseting both floppy and
hd, there will be reset disk, which number is in DL and only it.
Ok, I will remove it.  It was taken from RBIL, and I added as it looked
like a really weird quirk to be aware of and research a bit further;
along with determing if we actually called any of the floppy functions
with a disk number corresponding to a hard drive, as RBIL indicated
for several of the calls we use about problems with some buggy BIOSes
if a value greater than 0x7Fh was use (ie if drive number refers to
a hard drive).
Jeremy

---
This SF.Net email is sponsored by The 2004 JavaOne(SM) Conference
Learn from the experts at JavaOne(SM), Sun's Worldwide Java Developer
Conference, June 28 - July 1 at the Moscone Center in San Francisco, CA
REGISTER AND SAVE! http://java.sun.com/javaone/sf Priority Code NWMGYKND
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel