Hi,

thanks to Damien Guibouret the problem with file corruption in kernel
2039 finally seems to be resolved.
I collected some more changes and bug reports and fixed them. This
includes the problem with writes to write-protected disks failing
silently without error.

I think it might be a good idea to release a new 2040 kernel. If
nobody else does it within the coming 2 weeks I'll do it myself.

In the mean time:
An SVN source tarball can be obtained at:
http://freedos.svn.sourceforge.net/viewvc/freedos/kernel/trunk/?view=tar

An 8086/FAT32 OW1.9 compiled kernel.sys binary for testing at:
http://dosemu.org/bart/kernel.sys

2011 Apr xx - Build 2040
-------- Jeremy Davis, Bart Oldeman

+ Changes Jeremy
        * r1501 sys/sys.c: correct return value from NULL to FALSE -
          fix compile with OW1.9
        * r1500 docs/sys.txt, sys/sys.c:
          handle case when source not specified but filename for boot
          sector is given (sys X: bootfile.bin)

+ Changes Bart
        * r1568 kernel/asmsupt.asm, mkfiles/owlinux.mak: Make sure the
          DOS native and Linux cross-builds produce identical binaries.
        * r1567 drivers/rdpcclk.asm,kernel/{asmsupt,entry,irqstack,kernel,
          nls_hc}.asm, kernel/makefile:
          Remove useless END from nls_hc.asm, add explicit byte
          overrides for older versions of NASM for more compact code,
          and adjust silent relocation segments.
        * r1565 sys/sys.c: Change // to /* comments for Turbo C compatibility.
        * r1564 kernel/dosfns.c: If handle valid, close file in PSP
          table before the low-level close + (perhaps) critical error.
          Avoids closing the file twice (and hitting the critical
          error twice) on abort/program termination.
          Also, close can only return error 6 (DE_INVLDHNDL), not 5
          (DE_ACCESS), see RBIL.
        * r1563 kernel/task.c: From Christian Masloch:
          set flags to 0x200 (IF set) when transferring to int22
          termination address.
        * r1562 kernel/fatfs.c: Check errors for callers of dir_write
          and shrink_file. Fixes: Bug: File creation does not check
          whether buffers are written correctly
          (http://www.bttr-software.de/forum/forum_entry.php?id=9783)
        * r1561 kernel/blockio.c, kernel/fatdir.c:
          No longer force flush1() and dir_write_update() to return
          TRUE if there were disk write errors. Part 1 for fixing
          http://www.bttr-software.de/forum/forum_entry.php?id=9783
          Bug: File creation does not check whether buffers are
          written correctly
        * r1560 kernel/kernel.asm:
          Enlarge clock and block driver stacks. Thanks to Damien Guibouret
          <[email protected]>.
        * r1559 kernel/fatfs.c: Fix value that is used before being initialised.
          This lead to a drive to not be considered as FAT32 despite it is
          (or vice-versa).
          Thanks to Damien Guibouret <[email protected]>.
        * r1499 kernel/makefile:
          With the stack changes the DOS segment has moved to 0x79.
        * r1498 kernel/irqstack.asm:
          New irqstack.asm: irq 2, 3, 4, 5, 6, 10, 11, 12, 14, 15 now
          use the IBM interrupt sharing protocol for STACKS. Affect
          int 2 too, but not IRQ 7 (INT 0fh) and IRQ 9 (INT 71h)

------------------------------------------------------------------------------
Xperia(TM) PLAY
It's a major breakthrough. An authentic gaming
smartphone on the nation's most reliable network.
And it wants your games.
http://p.sf.net/sfu/verizon-sfdev
_______________________________________________
Freedos-kernel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel

Reply via email to