Hi, there's a problem with the recent FCB fix -- I was a little suspect seeing the change. After testing with the old GEM, it seems the problem is in FCBOpen: it initializes too much, see also http://www.drdos.com/dosdoc/sysprog/chap4.htm
After opening GEM does something like "mov cx,es:[007d]" for the random i/o call and that value is lost (it was 3) from FCBOpen's init. see the fix below Bart =================================================================== --- kernel/fcbfns.c (revision 1379) +++ kernel/fcbfns.c (working copy) @@ -253,7 +253,7 @@ lpFcb = ExtFcbToFcb(lpXfcb); recsiz = lpFcb->fcb_recsiz; - bigsize = (ULONG)recsiz * (recno+1); + bigsize = (ULONG)recsiz * recno; if (bigsize > 0xffff) return FCB_ERR_SEGMENT_WRAP; size = (unsigned)bigsize; @@ -417,8 +417,6 @@ sftp->sft_mode |= O_FCB; lpFcb->fcb_sftno = sft_idx; - lpFcb->fcb_curec = 0; - lpFcb->fcb_rndm = 0; lpFcb->fcb_recsiz = 0; /* true for devices */ if (!(sftp->sft_flags & SFT_FDEVICE)) /* check for a device */ ------------------------------------------------------------------------------ Crystal Reports - New Free Runtime and 30 Day Trial Check out the new simplified licensing option that enables unlimited royalty-free distribution of the report engine for externally facing server and web deployment. http://p.sf.net/sfu/businessobjects _______________________________________________ Freedos-kernel mailing list Freedos-kernel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/freedos-kernel