Update history.txt from SVN log entries.
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1495 6ac86273-5f31-0410-b378-82cca8765d1b
This commit is contained in:
parent
ddb2dffb9f
commit
e146fa112d
306
docs/history.txt
306
docs/history.txt
@ -10,6 +10,312 @@ http://freedos.svn.sf.net/viewvc/freedos?view=rev&sortby=rev&revision=NUMBER
|
||||
Changelog items can list SVN revision rNUMBER and bugzilla bug NUMBER.
|
||||
|
||||
|
||||
2009 Aug xx - Build 2039
|
||||
-------- Jeremy Davis, Bart Oldeman
|
||||
|
||||
+ Changes Jeremy
|
||||
* r1494, 1483 docs/sys.txt, sys/sys.c: update documentation to
|
||||
include new options; add option to sys to force LBA or CHS
|
||||
usage, allow using BIOS specified boot drive # on floppy,
|
||||
add verbose output (debug prints), and reorder some steps in
|
||||
copy() to avoid some unnecessary disk swaps on single drive systems
|
||||
* r1493 boot/boot.asm: add comment about location that may be
|
||||
modified by sys (and some whitespace changes due to editor)
|
||||
* r1492 boot/makefile: create list file when assembling boot sectors
|
||||
* r1489 kernel/main.c: update copyright year, add some comments
|
||||
* r1488 kernel/kernel.asm: mark unused space in kernel for unused win
|
||||
compatibility structs
|
||||
* r1487 hdr/lol.h, hdr/win.h: comment/structure info update
|
||||
* r1486 hdr/process.h: comments added
|
||||
* r1485 hdr/device.h: comments added
|
||||
* r1484 hdr/cds.h: update comments
|
||||
* r1483 docs/sys.txt: update sys usage documentation
|
||||
* r1482 boot/boot.asm, boot/makefile, boot/oemboot.asm,
|
||||
build.bat, default.bat, hdr/debug.h, kernel/{dosfns.c,init-mod.h,
|
||||
initdisk.c,inthndlr.c,prf.c,proto.h},sys/{fdkrncfg.c,makefile,sys.c}:
|
||||
update sys to current version, adjust printf to support
|
||||
percent modifier, consistent prototype, and handle text not in
|
||||
current segment (FAR *) better, merge part of simplified debug (via
|
||||
prints) support
|
||||
* r1467 kernel/makefile, mkfiles/generic.mak: update build process to
|
||||
include country.sys
|
||||
* r1466 kernel/country.asm: sync country source with latest from
|
||||
eduardocasino.es site
|
||||
* r1465 kernel/country.asm: add source for country.sys from dev
|
||||
branch
|
||||
* r1456 hdr/version.h, kernel/globals.h: simplify how version
|
||||
specified, enable SVN builds with revision#
|
||||
* r1455 build.bat: add convenience options to build.bat for setting
|
||||
various defines
|
||||
* r1454 default.bat: clear some additional env variables
|
||||
* r1431 kernel/makefile, utils/exeflat.c: More verbose output of UPX
|
||||
method (sys or exe) used and fix case without UPX so kernel boots.
|
||||
* r1385 docs/fdkernel.lsm, hdr/version.h: update version # in
|
||||
preparation for next release and to avoid confusion between svn and
|
||||
release kernels
|
||||
|
||||
+ Changes Bart
|
||||
* r1491 hdr/debug.h, kernel/{init-mod.h,kernel/int2f.asm,nls.c,prf.c,
|
||||
proto.h}, sys/{fdkrncfg.c,sys.c}: Use near pointers for printf()s
|
||||
where possible. Problematic is only the case where SS!=DS (which
|
||||
happens sometimes in resident code), in which case va_list/va_arg
|
||||
need to use FAR pointers. DS!=DGROUP never works, so I corrected
|
||||
that for NLS_DEBUG, by setting DS in int2f.asm.
|
||||
* r1490 kernel/fatfs.c: Check the BPB instead of the DPB for FAT32
|
||||
after a BUILDBPB device call, as the DPB may still be uninitialized
|
||||
at this point. Fixes FAT32 drives in USBDRIVE (http://bretjohnson.us)
|
||||
* r1480 utils/exeflat.c: Corrected a bug in exeflat: it was writing
|
||||
32 bytes too many from possibly unexisting buffers after compressing
|
||||
exe files.
|
||||
* r1479 kernel/{initdisk.c,newstuff.c}: Corrected DEBUG #if to
|
||||
#ifdef for Turbo C and corrected debug printfs in truename().
|
||||
* r1478 kernel/newstuff.c: Simplified truename(): eliminated the
|
||||
addSep state by adding a backslash in every new segment, including a
|
||||
trailing backslash. Simplified . and .. logic. Converted switch to if
|
||||
because there were few cases left.
|
||||
* r1477 kernel/dosfns.c: DosChangeDir can only return DE_PATHNOTFND
|
||||
in case of error, so force that error code.
|
||||
* r1476 kernel/dosfns.c: Remove the wildcard check for DosChangeDir()
|
||||
because truename() already does that.
|
||||
* r1475 kernel/newstuff.c: Use simpler code for copying the current
|
||||
directory constructing the "truename": instead of fmemcpy followed by
|
||||
strcpy, just use strcpy. Also use the near TempCDS more.
|
||||
* r1474 kernel/newstuff.c: Unify parse_name_ext for name and
|
||||
extension and inline this function into truename(). This is an
|
||||
optimization (200 bytes).
|
||||
* r1473 kernel{fatdir.c,fatfs.c,newstuff.c}: If the current directory
|
||||
is no longer valid, call dos_cd() for the root to update the CDS
|
||||
cluster. Call media_check explicitly in truename() as a central
|
||||
first and only place in directory-using DOS calls (except
|
||||
DosFindNext) to call it.
|
||||
* r1472 kernel/{dosfns.c,newstuff.c}: The original DosGetCuDir
|
||||
is now inlined in truename(). DosGetCuDir now does truename("D:",
|
||||
CDS_MODE_SKIP_PHYSICAL), and this mode was changed to no longer call
|
||||
QRemote_Fn (int2f/ax=1123).
|
||||
* r1471 kernel/newstuff.c: Fix truename("C:") where the current
|
||||
directory is different from the root: then it should not append a
|
||||
backslash.
|
||||
* r1470 kernel/{inthndlr.c,makefile}: Turbo C 2.01 and Linux
|
||||
cross-compilation compatibility fixes.
|
||||
* r1469 kernel/{inthndlr.c,task.c}: For self-owning PSPs do
|
||||
everything that a normal exit does except for closing files and
|
||||
releasing memory (see RBIL). Thanks to Christian Masloch.
|
||||
* r1468 kernel/fatdir.c: Fix problem with cd\ reported by
|
||||
ibid_ag@lavabit.com on the mailing list.
|
||||
* r1458 kernel/{blockio.c, fatfs.c, proto.h}: In case of
|
||||
"not sure" if the removable media has changed, the IBM PCDOS
|
||||
technical reference says to call BLDBPB if there are no used buffers,
|
||||
so we only do it then, instead of flushing the buffers.
|
||||
* r1457 hdr/{xstructs.h, inthndlr.c}: Merged int21/ax=7304,
|
||||
subfunctions 3 and 4, which work very similarly.
|
||||
* r1453 kernel/fatfs.c: Set the clean bit also on created/replaced
|
||||
files, not just opened files, so the directory entry is only updated
|
||||
after they are written too. Fixes SF bug #2380531.
|
||||
* r1452 kernel/initdisk.c: Use a better formula for calculating FAT12
|
||||
clusters, by multiplying nominator and denominator by 3.
|
||||
* r1451 kernel/{fatfs.c, initdisk.c}: initdisk: further optimizations
|
||||
in CalculateFATData(): merging the FAT16 & FAT32 loops.
|
||||
fatfs: #if DEBUG fix.
|
||||
* r1450 kernel/initdisk.c: Optimized initdisk.c by using constants
|
||||
instead of variables where possible.
|
||||
* r1449 kernel/config.c, kernel/config.h: Removed unused config
|
||||
variables and don't detect 'y' and 'n' if we're using toupper anyway.
|
||||
* r1448 hdr/{fat.h, fatfs.c}: Cluster optimizations, mainly for FAT32
|
||||
eliminated checkdstart, replaced (cl == FREE || cl == 1) by (cl <= 1),
|
||||
UWORD cluster cast for FAT12/16, and merge if branches for link_fat().
|
||||
* r1447 kernel/fatfs.c: Merged if status==S_OPENED logic in dos_open,
|
||||
cache dir_attrib, and remove unnecessary init to 0.
|
||||
* r1446 kernel/config.c: Make the built-in COUNTRY table more compact
|
||||
and allow to merge duplicate strings for error message.
|
||||
* r1445 kernel/fatfs.c: Optimization: changed find_fname() to call
|
||||
split_path() because find_fname was always preceeded by split_path().
|
||||
The return code is now an error code, DE_FILENOTFND, DE_PATHNOTFND,
|
||||
or SUCCESS, depending on the failure.
|
||||
* r1444 kernel/{fatdir.c, fatfs.c, proto.h}: Added a
|
||||
split boolean argument to dir_open so the trick with setting the
|
||||
dir/filename separator to 0 can be avoided, and we don't need to
|
||||
calculate its location in split_path(). Without the trick many more
|
||||
char * path arguments in the kernel can become "const char *".
|
||||
* r1443 utils/exeflat.c: Use tmp.exe instead of tmp$$$$$.exe -- the
|
||||
Linux cross compilation really has trouble without quotes because $$
|
||||
can be expanded as a shell variable when passed to system().
|
||||
* r1442 kernel/{dosnames.c, fatfs.c, makefile, proto.h}:
|
||||
Remove dosnames.c and inline ParseDosName, because there is only one
|
||||
user left (split_path()) which only uses it to find out if the path
|
||||
ends in a backslash and the length of the directory part.
|
||||
* r1441 kernel/{dosnames.c, fatdir.c, fatfs.c, proto.h}:
|
||||
dos_findfirst() now uses split_path(). The only thing
|
||||
that needed to be added was the need to check for "d:\" paths which
|
||||
return DE_NFILES. Also, findfirst("d:\nonexist\*.*",D_VOLID) should
|
||||
fail even if it actually searches in d:\.
|
||||
* r1440 kernel/{dosnames.c, newstuff.c}: The invalid pathname
|
||||
character detection is moved from ParseDosName (dosnames.c) to
|
||||
truename (newstuff.c), because TRUENAME should check these characters
|
||||
before passing paths on to fatfs.c & fatdir.c.
|
||||
* r1439 kernel/fatdir.c: Corrected the if-statement && logic for
|
||||
attributes in the findnext loop.
|
||||
* r1438 kernel/{dosfns.c, fatdir.c}: Make findfirst/findnext
|
||||
more MSDOS compatible:
|
||||
* ignore 0x40 (D_DEVICE) in search attribute.
|
||||
* if you specify D_VOLID + one or more of D_HIDDEN, D_SYSTEM, and
|
||||
D_DIR you will get files *and* volume labels in the specified
|
||||
directory, not forced to the root directory.
|
||||
* VOLID searches must look at the search pattern name too,
|
||||
or do not match.
|
||||
* r1437 kernel/{dosfns.c, fatfs.c}: For read/write don't update
|
||||
sft_posit in dosfns.c anymore so fatfs.c takes care of it.
|
||||
* r1436 kernel/{fatdir.c, fatfs.c}: Remove usage of the fnode
|
||||
f_flags field where it is not relevant anymore. Because of the
|
||||
explicit dir_write() calls we only need them in situations where SFTs
|
||||
where used, that is for open files but not for directories.
|
||||
* r1435 kernel/{fatdir.c, fatfs.c}: Eliminate fcbname[] on the
|
||||
stack: we can use dm_name_pat in the dirmatch structures instead.
|
||||
* r1434 kernel/asmsupt.asm: %if 0 unused asm functions and fix a
|
||||
stack return problem with fstrcmp.
|
||||
* r1433 kernel/{dosnames.c, fatdir.c, fatfs.c, proto.h}:
|
||||
Split 8.3 FCB-style filename extraction from ParseDosName
|
||||
into a new ConvertNameSZToName83 function, also used by dir_open().
|
||||
* r1432 hdr/fnode.h, kernel/{fatdir.c, fatfs.c, globals.h, init-mod.h,
|
||||
kernel.asm}:
|
||||
Move the fnode fields f_diroff and f_dirstart into a referenced
|
||||
directory match structure with fields dm_entry and dm_dircluster.
|
||||
* r1430 hdr/nls.h, kernel/{config.c, init-mod.h, inthndlr.c, intr.asm,
|
||||
kernel/nls.c, kernel/nls_hc.asm, kernel/proto.h}:
|
||||
Ported COUNTRY.SYS support from the unstable branch.
|
||||
Simple country support is kept: COUNTRY=31 will look for country.sys
|
||||
but if it does not exist, not complain and load the built-in info.
|
||||
* r1429 hdr/sft.h, kernel/{dosfns.c, inthndlr.c, proto.h}: Seek changes:
|
||||
* merge unstable kernel optimizations
|
||||
* enable seek for int2f/AX=1228
|
||||
* -1 is a valid offset, so we need to process the return code
|
||||
seperately
|
||||
* r1428 kernel/dosfns.c: Merge pop_dmp optimization from the unstable
|
||||
kernel.
|
||||
* r1427 kernel/ioctl.c: This change was missed, as the changelog
|
||||
mentioned it was in 2035a already: r_si/r_di contents added as
|
||||
documented in PC-DOS Technical Update. I also moved the CharReqHdr
|
||||
filling in to just before execrh, and made the command table a static
|
||||
const so it is outside the SDA (OW places it in CONST2).
|
||||
* r1426 kernel/ioctl.c: Optimization: move the attribute checks down
|
||||
and localize some variables.
|
||||
* r1425 kernel/ioctl.c: Streamline ioctl.c code so OW saves 2 more
|
||||
words of stack.
|
||||
* r1424 kernel/ioctl.c: r1115 set the dpb_subunit but that was wrong
|
||||
for get_cds() called from AX=4409. Use a local variable unit to avoid
|
||||
that, and simplify the AX=4409 logic like in the unstable kernel.
|
||||
* r1423 kernel/ioctl.c: Inline ioctl helper routine back again. Save
|
||||
stack by using the dev variable that points to the device smartly.
|
||||
* r1422 kernel/ioctl.c: Split DosDevIoctl into two calls so execrh
|
||||
can be called with minimal stack usage. Always return DE_ACCESS when
|
||||
the device fails instead of DE_DEVICE, as DE_DEVICE is only used for
|
||||
renames between devices that are not the same.
|
||||
* r1421 kernel/fatfs.c: Introduce clear_dir() to clear a directory,
|
||||
this was code shared between dos_mkdir() and extend_dir(). Now
|
||||
dos_mkdir() calls this function to clear the new directory, and then
|
||||
creates the . and .. entries using higher level functions instead of
|
||||
dealing with the blocks directly.
|
||||
* r1420 hdr/{fnode.h, sft.h}, kernel/{fatdir.c, fatfs.c}: Make
|
||||
the fnode f_flags completely equal to the SFT sft_flags. Rename
|
||||
SFT_FDIRTY to SFT_FCLEAN to avoid confusion.
|
||||
* r1419 hdr/fnode.h, kernel/{fatdir.c, fatfs.c}: Eliminate the
|
||||
fnode F_DDIR flag which has no SFT equivalent: f_sft_idx==0xff can do
|
||||
the same. rwblock() is never called for directories so the checks
|
||||
could be removed.
|
||||
* r1418 kernel/fatfs.c: Flip target and source checks to avoid
|
||||
calling ParseDosName for in-directory renames. Do not allow to rename
|
||||
directories between different directories.
|
||||
* r1417 kernel/fatfs.c: RENAME: if the source and target directories
|
||||
are the same, rename the directory entry in-place instead of creating
|
||||
a new one and deleting the old one. Fixes archived bugzilla bug:
|
||||
http://www.freedos.org/bugzilla/cgi-bin/show_bug.cgi?id=1908
|
||||
* r1416 kernel/fatfs.c: Change dos_rmdir to only use 1 fnode. It now
|
||||
first checks if the directory is empty and then opens the parent and
|
||||
deletes the real directory. No longer returns DE_FILENOTFND(2), but
|
||||
return DE_PATHNOTFND(3) instead.
|
||||
* r1415 hdr/dirmatch.h: Cleanup dirmatch.h: make attributes and size
|
||||
unsigned, and make the unused dm_flags field reserved.
|
||||
* r1414 kernel/{dosfns.c, proto.h, task.c}: Introduce get_cds1 to merge
|
||||
common code that checks for 0=default_drive,1=A,etc.
|
||||
Make load_transfer() static.
|
||||
* r1413 kernel/chario.c: Inline cooked_write_char() into cooked_write().
|
||||
* r1411 kernel/fatfs.c: Fix compilation with Turbo C.
|
||||
* r1410 kernel/{fatdir.c, fatfs.c, proto.h}: Eliminate dir_close().
|
||||
Its only purpose left was to flush buffers, which isn't necessary
|
||||
after just open/read, so we can move that to dir_write().
|
||||
* r1409 kernel/{dosfns.c, fatfs.c}:
|
||||
Move the open/creat access checks to more efficient places.
|
||||
* r1408 kernel/fatfs.c: Make merge_file_changes more direct dealing
|
||||
with SFTs and merge the "close open files setfattr wants to change"
|
||||
functionality there.
|
||||
* r1407 kernel/dosfns.c: Eliminate DosGetFile -- it is no longer
|
||||
necessary because the filename is already copied from the fnode.
|
||||
* r1406 kernel/dosfns.c: Fix a regression with sft_flags overwriting
|
||||
what dos_open wrote so file dates/times would always be updated, even
|
||||
for reads!
|
||||
* r1405 kernel/{dosfns.c, fatdir.c, fatfs.c, fcbfns.c, proto.h}:
|
||||
Eliminate dos_setfsize, dos_setftime, and dos_lseek, by just using
|
||||
the SFT. dos_setfsize still needed to merge changes for SHARE so the
|
||||
call was replaced by a new dos_merge_file_changes() call.
|
||||
* r1404 hdr/fnode.h, kernel/{fatdir.c, fatfs.c}: Eliminate
|
||||
xlt_fd(), save_far_f_node(), and the redundant fnode f_mode field.
|
||||
* r1403 kernel/{dosfns.c, fatfs.c}: Let merge_file_changes
|
||||
operate directly on the other SFTs. dos_setfattr with SHARE now
|
||||
closes open SFTs referring to that file in compat mode.
|
||||
* r1402 kernel/fatfs.c: Fix SFT/fnode fields so the SHARE related
|
||||
functions is_same_file() and merge_file_changes() work.
|
||||
* r1401 hdr/fnode.h, kernel/{fatfs.c, globals.h}: Remove
|
||||
redundant checks for fnodes==0 since the checks are done in dosfns.c.
|
||||
Replace global f_nodes[] array by f_sft_idx fields in the fnodes.
|
||||
* r1400 hdr/sft.h, kernel/{dosfns.c, fatfs.c, fcbfns.c, proto.h}:
|
||||
Eliminate the sft_status field as it is now equal to the SFT index.
|
||||
* r1399 kernel/{dosfns.c, fatfs.c, proto.h, task.c}:
|
||||
Eliminate dos_getftime, dos_getfsize, and dos_getfattr_fd, because we
|
||||
can now get these properties directly from the SFT.
|
||||
* r1398 hdr/fnode.h, kernel/{fatdir.c, fatfs.c, proto.h}:
|
||||
Eliminate f_count field in fnodes and some no-op functions.
|
||||
* r1397 hdr/{fnode.h, lol.h}, kernel/{config.c, dosfns.c, fatfs.c,
|
||||
globals.h, kernel.asm, proto.h}:
|
||||
This is the main change to eliminate far fnodes. SFT info is copied
|
||||
from and to the two near fnodes. Some cleanups still follow.
|
||||
* r1396 hdr/sft.h:
|
||||
Make the SFT DOS 4+ compatible and change fields to be unsigned.
|
||||
* r1395 kernel/dosfns.c:
|
||||
Handle sft_count before calling dos_open and after calling dos_close
|
||||
so the SFT is open for longer, during fatfs.c operations.
|
||||
* r1394 kernel/prf.c: Fix compilation with -DDOSEMU set.
|
||||
* r1393 kernel/{dosfns.c, fatfs.c}: Handle dos_getfattr and
|
||||
dos_setfattr directly at the directory level, instead of opening the
|
||||
file, to avoid needing to claim SFTs in later changes. Clarify and
|
||||
implement parts of the correct SHARE behaviour.
|
||||
* r1392 hdr/fat.h, kernel/{fatdir.c, fatfs.c, proto.h}:
|
||||
On close or commit, only update those directory entry fields that
|
||||
have an SFT equivalent. The rest stays unmodified on disk.
|
||||
* r1391 kernel/{fatdir.c, fatfs.c}: Use explicit dir_write()
|
||||
instead of letting dir_close() do the writing. This is to prepare for
|
||||
an updating version to deal with SFTs.
|
||||
* r1390 hdr/fnode.h, kernel/fatdir.c: Add f_dirsector (sector
|
||||
containing dentry) and f_diridx (index within sector) fields to the
|
||||
fnode, to make fnodes more compatible with SFTs. Use them to simplify
|
||||
dir_read() and dir_write().
|
||||
* r1389 kernel/{fatdir.c, fatfs.c, globals.h, inthndlr.c, lfnapi.c,
|
||||
proto.h}: Force near fnode use to use either fnode[0] or fnode[1]
|
||||
instead of the allocation scheme. This eliminates the checks
|
||||
done in inthndlr.c because the f_count field is no longer checked.
|
||||
* r1388 makefile, mkfiles/owlinux.mak: Change Linux makefiles to only
|
||||
update what is necessary for subsequent makes.
|
||||
* r1387 config.m, docs/build.txt, drivers/makefile, kernel/{makefile,
|
||||
segs.inc}, makefile, mkfiles/{generic.mak, owlinux.mak, watcom.mak},
|
||||
sys/makefile, utils/{exeflat.c, makefile}:
|
||||
Add Linux cross-compile capability, using Open Watcom:
|
||||
* Flip \ to / where possible.
|
||||
* Introduce $(DIRSEP) (/ or \) for use inside commands in
|
||||
makefiles where / won't work in DOS.
|
||||
* Override various settings for Linux in owlinux.mak.
|
||||
* Add quotes in exeflat.c to avoid shell expansion of $$$$$.
|
||||
* Let "make all", "make clean", and "make clobber" do the job.
|
||||
* r1386 utils/echoto.bat: OW 1.8 MS2WLINK is too picky about leading
|
||||
and trailing whitespace so echoto is changed to not generate any.
|
||||
|
||||
2009 May 16 - Build 2038
|
||||
-------- Pat Villani, Bart Oldeman, Eric Auer
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user