update history with changes from Lucho's NEWS file
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/branches/UNSTABLE@989 6ac86273-5f31-0410-b378-82cca8765d1b
This commit is contained in:
parent
9c94426d7a
commit
b0c98dd553
275
docs/history.txt
275
docs/history.txt
@ -1,3 +1,278 @@
|
||||
2004 July 8 - UNSTABLE branch
|
||||
-------- Jeremy Davis (jeremyd@computer.org)
|
||||
+ Changes Arkady
|
||||
* UTILS\PROTO.BAT, UTILS\INDENT, KERNEL\NLS_LOAD.C, KERNEL\KERNEL.CFG: removed.
|
||||
|
||||
* all batch files now check if environment is enough; this prevents wrong
|
||||
actions in case of small environment.
|
||||
* *.BAT: %MAKE% now called through CALL; this allows to place into PATH
|
||||
batch file instead utility itself.
|
||||
* BUILDALL.BAT: removed ambiguous ONERROR variable.
|
||||
* BUILDALL.BAT: added ">NUL" for DELs.
|
||||
* CLOBBER.BAT now uses CLEAN.BAT for its job; this eases to update cleaning
|
||||
code because no code duplication.
|
||||
* CONFIG.B: XNASM replaced by NASM, XLINK by LINK, MS_BASE by MSC_BASE.
|
||||
* CONFIG.B: added possibility to define librarian.
|
||||
* CONFIG.B: added "MAKER -S" as choice for MAKE.
|
||||
* DEFAULT.BAT renamed to DEFAULTS.BAT, for all "call <batchfile>" added
|
||||
suffix .BAT; this solves compatability problem with 4DOS (where DEFAULT
|
||||
is a built-in command).
|
||||
* DEFAULTS.BAT: added variable BASE.
|
||||
|
||||
* all MAKEFILEs now look similar.
|
||||
* some makefiles renamed: BC5->BC, TURBOCPP->TCPP, TC3->TCPP3, MSCL8->MSC.
|
||||
* MKFILES\*.MAK: removed space after "=" in macro definitions; this makes
|
||||
command lines shorter.
|
||||
* common definitions from makefiles moved to MKFILES\GENERIC.MAK
|
||||
(directories) and CONFIG.B/DEFAULTS.BAT (LINK, NASM, LIBUTIL, etc).
|
||||
* MKFILES\GENERIC.MAK: XCPU=86 and XFAT=32 are defined here, if environment
|
||||
doesn't contains these variables; this allows to reduce environment.
|
||||
* MKFILES\GENERIC.MAK: ALLCFLAGS and NASMFLAGS placed after all options
|
||||
(this allows to redefine some options in config.bat); for watcom.mak
|
||||
this also adds space after ALLCFLAGS (which is required, if ALLCFLAGS
|
||||
ends by option like -I).
|
||||
* MKFILES\GENERIC.MAK: NASMFLAGS now includes -f and -D$(COMPILER) options.
|
||||
* MKFILES\TCPP.MAK: -zC option moved from ALLCFLAGS into CFLAGS (this
|
||||
eliminates option duplication in INITCFLAGS and reduces command line
|
||||
length). ALLCFLAGS now includes -I..\hdr;$(INCLUDEPATH) option (this
|
||||
allows to reuse compiler headers (for example, limits.h), but own time.h
|
||||
anyway "overloads" compiler's header).
|
||||
* MKFILES\TC2.MAK, MKFILES\TCPP3.MAK, MKFILES\BC.MAK: reused contents of
|
||||
MKFILES\TCPP.MAK through "!include".
|
||||
* MKFILES\WATCOM.MAK: removed INCLUDE and EDPATH macroses.
|
||||
* MKFILES\WATCOM.MAK: added option -d1 (to allow make listings with sources).
|
||||
|
||||
* added KERNEL\TCI.CFG, which allows noticeably reduce size of INITCFLAGS
|
||||
definition in MKFILES\TCPP.MAK; options for other compilers also moved
|
||||
from command line to consequent KERNEL\*.CFG files.
|
||||
|
||||
* KERNEL\MAKEFILE: $(TARGET).lnk rule now removes *.obj (this allows to
|
||||
remove explicit dependency for $(TARGET).lnk for all other rules).
|
||||
* KERNEL\TURBOC.CFG: removed redefinition of __STDC__.
|
||||
|
||||
* "production" target replaced by "all" to eliminate warning from NMAKE.
|
||||
* DEVICE\MAKEFILE: device.lib now created directly in ..\lib directory
|
||||
without intermediate copy.
|
||||
* added SYS\TURBOC.CFG and UTILS\TURBOC.CFG.
|
||||
* SYS\MAKEFILE, UTILS\MAKEFILE: reused implicit rules from MKFILES\GENERIC.MAK.
|
||||
|
||||
* fdkrncfg.c
|
||||
- fix: eliminated warning "Initialization is only partially bracketed".
|
||||
* exeflat.c
|
||||
- removed duplicated definition for macro LENGTH().
|
||||
* floppy.asm
|
||||
- prototypes fixed and syncronized with dsk.c.
|
||||
- fixed wrong comments, more and better comments.
|
||||
- bugfix: when fl_lba_ReadWrite() converted to ASMPASCAL (and `ret' replaced
|
||||
by `ret 8'), "ret_AH" was remained as label for this tail (whereas other
|
||||
functions use plain `ret'); now ret_AH moved into another function.
|
||||
* procsupt.asm
|
||||
- exec_user(), reloc_call_p_0(): added "%ifndef WATCOM/%endif" around
|
||||
popping return address, because exec_user() and init_call_p_0() now
|
||||
declared with `aborts' attribute for Watcom.
|
||||
* entry.asm
|
||||
- fix: was used signed comparision instead unsigned.
|
||||
* int2f.asm
|
||||
- fixed wrong comment.
|
||||
* intr.asm
|
||||
- wrong prototypes fixed and syncronized with *.h headers.
|
||||
- small code cleanup (removed jumps) and optimizations, more comments.
|
||||
* break.c
|
||||
- removed extraneous variable assignment.
|
||||
* dsk.c
|
||||
- bugfix: blk_driver(): should be checked ">= NENTRY", not "> NENTRY".
|
||||
- bugfix: Getlogdev(): in case of no DF_CURLOG flag is set, in rp->r_unit
|
||||
now returned last+1 (equal to blk_dev.dh_name[0]) unit (was last+2).
|
||||
- Setlogdev(): added comment about undocumented behavior.
|
||||
- bugfix: Genblkdev():
|
||||
- formatting loop (0x42 function) rewritten: instead formating many tracks,
|
||||
was formated one track many times (because afentry.head++ outside loop);
|
||||
- now checked "afentry.track >= pddt->ddt_ncyl" (instead ">");
|
||||
- now gbfv_spcfunbit cleared at <exit when bit 0 is set>;
|
||||
- not fixed: there remained two returns without setting gbfv_spcfunbit;
|
||||
- verification (0x62) now check only bit 0 of gbfv_spcfunbit;
|
||||
- not fixed: verification should set gbfv_spcfunbit in case of errors.
|
||||
|
||||
- removed remained excerpt from history.txt at the end.
|
||||
- removed all references to PROTO macro name.
|
||||
- small source cleanup (expressions simplified, extraneous casts removed).
|
||||
- small code cleanup and optimization for diskchange(), mediachk(),
|
||||
blk_Media(), bldbpb(), IoctlQueblk(), blockio() and dskerr().
|
||||
- many variables (like `ret') moved deeply (by adding curly braces) - for
|
||||
BC this noticeably decreases stack usage.
|
||||
- getddt(0) and tmark are now macros.
|
||||
- blk_error() removed, consequent dispatch[] entries contains NULL and they
|
||||
checked by blk_driver() before calling getddt() and dispatch[] item.
|
||||
- getbpb(): removed extraneous stack variable; instead (x+y-1)/y for roundup
|
||||
used (x-1)/y+1 expression; printf sequences joined into one printf.
|
||||
- LBA_Transfer() now converts error code through dskerr() by itself;
|
||||
.ddt_offset field added to LBA_address also inside LBA_Transfer().
|
||||
* initdisk.c
|
||||
- small code optimization.
|
||||
- added `const' modifier into castings.
|
||||
- `bootdrv' variable inlined.
|
||||
* ioctl.c
|
||||
- 3 nested switch splitted into 2 switch (1st prepares parameters for
|
||||
2nd, which calls execrh()).
|
||||
- device attribute word checked through table lookup.
|
||||
- CharReqHdr.r_command computed through table lookup.
|
||||
- removed all goto, except one.
|
||||
* memmgr.c
|
||||
- joinMCBs(): check that mcb is valid now before check that mcb is free.
|
||||
- all "(uppermem_link & 1)" replaced by "uppermem_link", because
|
||||
DosUmbLink() stores there only 0 and 1.
|
||||
* nls.c
|
||||
- bugfix: (Eduardo Casino, Steffen Kaiser) DosGetData(): NULL pointer was
|
||||
addressed when searchPackage returns NULL.
|
||||
* globals.h
|
||||
- bugfix: NetRetry and NetDelay are UWORD, not UBYTE values.
|
||||
* init-mod.h
|
||||
- cleaned prototype for function from intr.asm.
|
||||
- init_fatal() described (for Watcom) as non-returned functions.
|
||||
* proto.h
|
||||
- fatal() and panic() described (for Watcom) as non-returned functions;
|
||||
this improves code generation.
|
||||
- cleaned prototypes for functions from intr.asm.
|
||||
- removed prototypes for nonexisting functions.
|
||||
- added brackets around parameters of macro.
|
||||
* config.c
|
||||
- source: added types PStr and PCStr to ease using string pointers.
|
||||
- source: for iregs members used predefined names like BH (instead b.b.h).
|
||||
- source: instead `seg' type used `seg_t'.
|
||||
- source: HMAState values now `enum'; for UmbState values now also given
|
||||
names through `enum'.
|
||||
|
||||
- added testbit() macro to make source more readable (and code shorter).
|
||||
- parameter of all command processing functions (like CfgMenu()) now have
|
||||
`const' modifier.
|
||||
- far pointers with zero offset now decalred with `_seg' modifier, MK_FP()
|
||||
replaced by MK_SEG_PTR() macro: this makes more understandable source and
|
||||
noticeably enhances code for BC.
|
||||
- added gotoxy() and clearScreenArea() to incapsulate screen manipulations.
|
||||
- GetNumArg(): returns value in global storage; added GetNumArg1() and
|
||||
GetNumArg2(), which does all check for command line syntax for other
|
||||
command processing functions.
|
||||
|
||||
- bugfix: umb_init() was not checks that new UMB completely inside "hole"
|
||||
and its size is greater than 2 paragraphs; now borders outside of holes
|
||||
are trimmed.
|
||||
- bugfix: umb_init(): when joining adjacent UMBs, umb_base_seg, umb_start
|
||||
and umb_max was not adjusted if they equal to start of next joined block.
|
||||
- fix: umb_init(): when joining adjacent UMBs, UMB_top was not adjusted if
|
||||
it equal to end of previous block; this forces to use only part of given
|
||||
UMB when loading drivers.
|
||||
- bugfix: umb_init(): umb_start+UMB_top was point end addres when loading
|
||||
drivers and initialized to end of (first, largest) block, but this was
|
||||
overlap link MCB for next UMB if umb_start was not the furthest UMB.
|
||||
- bugfix: umb_init(): when joining next adjacent UMB to new block, size of
|
||||
joined block was maked greater than required by 1.
|
||||
- bugfix: umb_init(): when new UMB is beyond of previous furthest block
|
||||
(umb_max) and first byte in last paragraph of umb_max block contains 'M',
|
||||
prev_mcb() was walk after umb_max.
|
||||
- bugfix: umb_init(): when EMM386 joins A000 area to base memory, it updates
|
||||
0:413 BIOS variable, but umb_init() was use older value (from ram_top
|
||||
variable) when adjusts base MCB and thus destroys MCBs chain.
|
||||
|
||||
- bugfix: GetBiosKey() was wrongly handles timeout==0.
|
||||
- fix: ClearScreen(): screen width at 0:44A is a word, not byte.
|
||||
- fix: GetStringArg() was uses scan(), which skips some nonwhitspaces;
|
||||
now replaced by scanword().
|
||||
- bugfix: AlignParagraph(): "overflow" on 32-bit targets not makes zero
|
||||
value, so 0x1000 should be assigned, not added to uSegVal.
|
||||
- fix: PreConfig2(): to argument of AlignParagraph() was added extra 0x0f,
|
||||
this captures extra paragraph before first MCB.
|
||||
- fix: sysVersion(): VERSION= now works properly by setting version for
|
||||
INT21/30, not for INT21/3306.
|
||||
- bugfix: _CmdInstall(): "numInstallCmds > LENGTH" - should be ">=".
|
||||
- bugfix: InstallExec() was call CfgFailure(), but it called after config
|
||||
file processing, when szLine buffer always contains last line/garbage.
|
||||
|
||||
- fix: WriteMenuLine(): blink attribute for selected line in menu now cleared.
|
||||
- fix: DoConfig(): config lines in error messages now counted from 1 (not 0).
|
||||
- bugfix: DoConfig(): when reading config, EOF (0x1A) was accepted as '\n'.
|
||||
- fix: DoConfig(): lines with alone sequences like "?" now diagnosed.
|
||||
- fix: DoConfig(): errors for unknown commands now printed only after menu.
|
||||
- fix: DoConfig(): in ECHO and EECHO arguments leading spaces now preserved.
|
||||
- CfgFailure(): message about error in config now same, as in MS-DOS6.
|
||||
- CfgFailure(): message now contains real config name (instead "CONFIG.SYS").
|
||||
- fix: CfgFailure(): "^" in error messages now shows proper position.
|
||||
|
||||
- all pressed before menu keys (if any, but except F5/F8) now preserved in
|
||||
keyboard buffer.
|
||||
- config now parsed in 5 passes: SWITCHES=/F/N and MENUCOLOR/MENUDEFAULT
|
||||
before menu, SHELL/SET/INSTALL after DEVICE (unlike MS-DOS6, which process
|
||||
SETs before INSTALLs and thus can't redefine variables between INSTALL).
|
||||
- screen now cleared (when MENUCOLOR present) before all MENU lines; after
|
||||
menu screen not cleared.
|
||||
- DoMenu(): now, when MENU lines are longer than screen width or them are
|
||||
more, than screen height, menu lines highlighting disabled.
|
||||
- menu selection shown only if there is more than one choice (in "123?"
|
||||
prefixes), but CONFIG=n will be defined if even one choice is present.
|
||||
- CONFIG= now not defined if F5 pressed in menu.
|
||||
- DoMenu(): menu now looks more like MS-DOS6 (same words, hint at bottom).
|
||||
- DoMenu(): choice 0 now not allowed if it not present in "123?".
|
||||
- DoMenu(): in menu now allowed to press Left and Right keys; Esc in menu
|
||||
now ignored; digit pressing not finish selection.
|
||||
- when tracing, Esc now turns off asks for all following lines, including
|
||||
lines with "?", and assumes "Y" for all; F8 now behaves similar to Esc.
|
||||
- removed extraneous COMMAND verb.
|
||||
- added BUFFERSHIGH verb (for compatability with MS-DOS6; currently dummy).
|
||||
- SWITCHES=/E now handled after menu and may be asked/traced.
|
||||
- (E)ECHO now executed without asking and tracing.
|
||||
- DeviceHigh(): DEVICEHIGH= now reloads driver into low memory without
|
||||
error messages about UMB (as in MS-DOS6).
|
||||
- environment for INSTALL= now includes previous SETs.
|
||||
- fix: CmdSet(): with SET environment variables now may be redefined and
|
||||
removed ("V=").
|
||||
|
||||
? LoadDevice() uppercases command line for driver. Wrong?
|
||||
* main.c
|
||||
- fix: FreeDOSmain(): "drv >= 0x80" - should be ">".
|
||||
- PSPinit(): DOS_PSP.ps_environ and ps_parent now set to zero.
|
||||
- kernel(): "PATH=." now not placed into empty environment (because bug with
|
||||
copying empty env in task.c:ChildEnv() is fixed).
|
||||
- kernel(): now "/D" or "/Y" option inserted even if command line is too
|
||||
long (by trimming command line tail).
|
||||
- fix: CheckContinueBootFromHarddisk(): "InitKernelConfig.BootHarddiskSeconds == 0" -
|
||||
should by "<=".
|
||||
* task.c
|
||||
! P_0(): old shell command line stored in SecPathName buffer and, thus, will
|
||||
be overwritten by DOS rename function with argument, longer than 50 bytes.
|
||||
|
||||
- fix: new_psp(): as in MS-DOS6, ps_parent now not changed; ps_exit, ps_unix,
|
||||
ps_farcall, ps_reentry, ps_prevpsp, ps_maxfiles, ps_filetab and ps_files
|
||||
are initialized.
|
||||
- fix: new_psp(): ps_reentry now have same value, as in MS-DOS6.
|
||||
- fix: child_psp(): as in MS-DOS6, ps_fcb* and ps_cmd now not changed,
|
||||
ps_prevpsp is set to -1 (from new_psp()).
|
||||
- bugfix: ChildEnv(): empty environment now processed correctly.
|
||||
- bugfix: ChildEnv(): DosMemAlloc() was called with NULL for `asize', but
|
||||
asize not always checked inside DosMemAlloc() for NULL before dereference.
|
||||
- fix: ChildEnv(): for environment now allocated memory not more, than
|
||||
required to store path after environment (was always 80 extra bytes).
|
||||
- patchPSP(): as in MS-DOS6, FCB addresses in exec block now don't checked
|
||||
and copied only 12 bytes (drive+name+ext).
|
||||
- DosComLoader()/DosExeLoader(): if childEnv() failed, then `env' contains
|
||||
garbage and DosMemFree(env) now not called.
|
||||
- bugfix: P_0() was copy argument of SHELL line into Shell buffer without
|
||||
checking length of source (note: max length of SHELL argument is a 74
|
||||
bytes, because Shell=SecPathName+50 and sizeof SecPathName=128).
|
||||
- P_0(): now supported command line without space between command and
|
||||
options (starting from '/').
|
||||
+ Changes Bernd, Aitor, & Arkady
|
||||
* config.c
|
||||
- source: (Bernd) the codepage table rewritten into a smaller layout.
|
||||
- bugfix: (Bernd, Aitor) country ID for Spain set to 34 (instead 33).
|
||||
+ Changes Lucho
|
||||
* exeflat.c
|
||||
- fix: eliminated warning by explicit cast.
|
||||
- reduced trailer, added to UPXed kernel.
|
||||
* segs.inc
|
||||
- fix: for MSVC CONST segment should be class CONST, not DATA.
|
||||
* dsk.c
|
||||
- play_dj() now says same words as MS-DOS6.
|
||||
*** Sync - Stable Build 2035 ***
|
||||
|
||||
2004 May 30 - Build 2035
|
||||
-------- Bart Oldeman (bart@dosemu.org)
|
||||
+ Changes Lucho + Tom
|
||||
|
1
mkfiles/tci.cfg
Normal file
1
mkfiles/tci.cfg
Normal file
@ -0,0 +1 @@
|
||||
-zCINIT_TEXT -zRID -zTID -zSI_GROUP -zDIB -zBIB -zGI_GROUP
|
Loading…
Reference in New Issue
Block a user