Commit Graph

619 Commits

Author SHA1 Message Date
Bart Oldeman
3f1938d8e8 Fix bug 1953: 21h/29h returns 0 (valid) for all drive root names up to
LASTDRIVE. Also, if the drive is invalid this function no longer fills in
any values in the destination FCB.


git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1334 6ac86273-5f31-0410-b378-82cca8765d1b
2007-06-04 16:35:53 +00:00
Bart Oldeman
920274e93a Fix stack for UPX-compressed kernels via a .sys file; adjust the threshold
from 64K to the real UPX limit which is 65420.


git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1333 6ac86273-5f31-0410-b378-82cca8765d1b
2007-05-28 18:45:52 +00:00
Bart Oldeman
5fa8f24fb7 Fix zero timeouts for GetBiosKey (F5/F8 handling).
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1332 6ac86273-5f31-0410-b378-82cca8765d1b
2007-05-28 18:01:59 +00:00
Bart Oldeman
77af35928e Documentation updates merged from UNSTABLE
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1331 6ac86273-5f31-0410-b378-82cca8765d1b
2007-05-26 22:21:04 +00:00
Bart Oldeman
ce58a924fe Fix builds with Turbo C.
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1330 6ac86273-5f31-0410-b378-82cca8765d1b
2007-05-26 21:57:11 +00:00
Bart Oldeman
29d6eb79f1 Use dos/sys compression if the uncompressed kernel is less than 64K. That
makes the compressed kernel about 2K smaller.


git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1329 6ac86273-5f31-0410-b378-82cca8765d1b
2007-05-26 21:20:58 +00:00
Bart Oldeman
ad58440395 Process relocations before compressing kernel.sys. This shaves about 130 bytes
off the compressed kernel.sys.


git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1328 6ac86273-5f31-0410-b378-82cca8765d1b
2007-05-26 20:03:51 +00:00
Bart Oldeman
ca4ea74eeb Replace UPX trailer in exeflat by the more flexible one from UNSTABLE.
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1327 6ac86273-5f31-0410-b378-82cca8765d1b
2007-05-26 19:35:20 +00:00
Bart Oldeman
eeef2f7efd Implement an int19 hook (from Japheth's JEMFBHLP.ASM).
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1326 6ac86273-5f31-0410-b378-82cca8765d1b
2007-05-26 17:34:12 +00:00
Bart Oldeman
dc840d98f4 Jemm's FASTBOOT needs interrupt vectors at 0070:0100 so put them there,
eliminating the need for JEMFBHLP.EXE


git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1325 6ac86273-5f31-0410-b378-82cca8765d1b
2007-05-26 16:57:15 +00:00
Bart Oldeman
fc3a696ca3 Add share to the stable kernel too.
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1324 6ac86273-5f31-0410-b378-82cca8765d1b
2007-05-21 03:46:06 +00:00
Bart Oldeman
acbc504765 Fix Bugzilla Bug 1956: all file opens fail under specific conditions.
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1323 6ac86273-5f31-0410-b378-82cca8765d1b
2007-05-21 02:29:01 +00:00
Bart Oldeman
4a8c30c6e2 Fix problem with an old game that calls findfirst with attribute 77a8:
the kernel should not return a volume label in that case.


git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1322 6ac86273-5f31-0410-b378-82cca8765d1b
2007-05-21 02:17:44 +00:00
Bart Oldeman
ea91fd0236 Extra check for EBDA move: ramsize == peek(0, RAMSIZE) by Tom Ehlert
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1321 6ac86273-5f31-0410-b378-82cca8765d1b
2007-05-21 02:16:36 +00:00
Bart Oldeman
fbd8d43ccb From Eric: add some comments about what intr() does.
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1320 6ac86273-5f31-0410-b378-82cca8765d1b
2007-05-21 02:15:56 +00:00
Bart Oldeman
7d18a16081 Read partition tables using CHS methods unless instructed to do otherwise.
Fixes problems with some older boot sector managers like PROT.


git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1319 6ac86273-5f31-0410-b378-82cca8765d1b
2007-05-21 01:57:21 +00:00
Bart Oldeman
c20a106569 Fix warning with OW 1.7 in-development.
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1318 6ac86273-5f31-0410-b378-82cca8765d1b
2007-05-21 01:14:20 +00:00
Bart Oldeman
d99cfc38c1 Add Tom Ehlert's freeing of near f_node's work-around for problems with
INT24 handling.


git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1317 6ac86273-5f31-0410-b378-82cca8765d1b
2007-05-15 17:50:22 +00:00
Bart Oldeman
1e98a86033 Remove unused intr prototype for resident code; add dir kernel.exe (TE),
cosmetic p=A -> p = A (TE).


git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1316 6ac86273-5f31-0410-b378-82cca8765d1b
2007-05-15 17:48:47 +00:00
Bart Oldeman
511646b03f Set OEM name to FRDOS5.1 instead of FreeDOS as Win9x seems to require 5
uppercase letters, digit(4 or 5) dot digit (Tom Ehlert)


git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1315 6ac86273-5f31-0410-b378-82cca8765d1b
2007-05-15 17:46:30 +00:00
Bart Oldeman
2618be338f Implement floppy change notification via int2f/ax=4a00 (originally by
Tom Ehlert). Add forgotten bit of NLS int2f.asm change.


git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1314 6ac86273-5f31-0410-b378-82cca8765d1b
2007-05-15 17:44:02 +00:00
Bart Oldeman
f2823f9f27 Changed and optimized call_nls a bit to return the id in the high word
of a long, eliminating the on-stack pointer.


git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1313 6ac86273-5f31-0410-b378-82cca8765d1b
2007-05-15 17:41:35 +00:00
Bart Oldeman
85856ae35b Always set lr.ES just before the "break". Enables the compiler to do some
tail merge optimizations.


git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1312 6ac86273-5f31-0410-b378-82cca8765d1b
2007-05-15 04:26:45 +00:00
Bart Oldeman
81da8db94d Having set extended error like Tom is a little smaller.
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1311 6ac86273-5f31-0410-b378-82cca8765d1b
2007-05-15 04:22:30 +00:00
Bart Oldeman
f777f91f4c Ioctl optimization using a command table, present both in Tom's and the
unstable kernel. ~83 bytes saved.


git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1310 6ac86273-5f31-0410-b378-82cca8765d1b
2007-05-15 04:12:53 +00:00
Bart Oldeman
2faf38e208 Fix typo in booot (from Tom's kernel).
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1309 6ac86273-5f31-0410-b378-82cca8765d1b
2007-05-15 03:10:02 +00:00
Bart Oldeman
2466934534 Fix OW 1.6 warnings about functions redeclared as 'static'.
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1308 6ac86273-5f31-0410-b378-82cca8765d1b
2007-05-15 00:05:41 +00:00
Bart Oldeman
818e1bf0da Fix OW warnings about "unsigned int <= 0".
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1307 6ac86273-5f31-0410-b378-82cca8765d1b
2007-05-14 23:53:46 +00:00
Bart Oldeman
46d959f0cb Fix the NUL device so it returns 0 bytes for reads, independent of whether
cooked or raw mode is used. It was broken for raw mode. Fixes problem
with DJGPP sed (see
http://sourceforge.net/tracker/index.php?func=detail&aid=1429741&group_id=49784&atid=457447)


git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1306 6ac86273-5f31-0410-b378-82cca8765d1b
2007-05-14 23:52:39 +00:00
Bart Oldeman
599278eeae Build system adjustments from the FD1.0 kernel. Shuts up dos4g and some
other stuff.


git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1305 6ac86273-5f31-0410-b378-82cca8765d1b
2006-10-31 21:13:02 +00:00
Bart Oldeman
56d8008672 Fix QB4 MCB problem (from FD1.0 kernel).
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1304 6ac86273-5f31-0410-b378-82cca8765d1b
2006-10-31 21:08:12 +00:00
Bart Oldeman
c952ceff61 Clear high 4 bits of FAT32 FAT table entries & diagnostics. From FD 1.0
kernel.


git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1303 6ac86273-5f31-0410-b378-82cca8765d1b
2006-10-31 21:05:09 +00:00
Bart Oldeman
4768a9d2f8 Serial code fixes from the FD1.0 kernel.
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1302 6ac86273-5f31-0410-b378-82cca8765d1b
2006-10-31 21:01:38 +00:00
Eric Auer
ba7bde0bdf VERSION=x.yy must set the setver-able DOS version, not the "true internal"
DOS version. The setver-able version is the one queried by int 21.30 and
settable by int 21.33fc, internal version is the one queried by int 21.3306.


git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1190 6ac86273-5f31-0410-b378-82cca8765d1b
2006-05-21 18:50:30 +00:00
Eric Auer
db243d4688 Updated the year in the "copyright" string which is used for the
signon message at boot time. Note that the string in globals.h is
no longer used! Message is now:
(C) Copyright 1995-2004 Pasquale J. Villani and The FreeDOS Project.
All Rights Reserved. This is free software and comes with ABSOLUTELY NO
WARRANTY; you can redistribute it and/or modify it under the terms of the
GNU General Public License as published by the Free Software Foundation;
either version 2, or (at your option) any later version.


git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1189 6ac86273-5f31-0410-b378-82cca8765d1b
2006-05-20 21:01:29 +00:00
Eric Auer
2d8b3b8f91 LSM update: the kernel now identifies itself as build 2036 cvs. Actually
the UNSTABLE kernel should identify itself as build 2037 test, which has
to be uploaded to the cvs (branch) for UNSTABLE separately. The kernel
signon message is now:
FreeDOS kernel build 2036 cvs [version Sep 09 2005 compiled May 20 2006]
Kernel compatibility 7.10 - WATCOMC - 80386 CPU required - FAT32 support
... (second line depends on compile time options)
IMPORTANT: The "version Sep 09 2005" is taken from version.h and must
be updated manually. It is meant to state the date of the most recent
major source code update for the current build.


git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1188 6ac86273-5f31-0410-b378-82cca8765d1b
2006-05-20 20:58:54 +00:00
Eric Auer
511fdee8e5 summarized log -d '>Feb 25 2005' kernel for today... WARNING: some of the
described changes might be available only in the UNSTABLE cvs branch (like
SYS OEMBOOT, Win3, COM port output for debug print, the SHARE tool), so the
history.txt should actually contain TWO entries, one which describes the
2036 cvs HEAD changes and one which describes the 2037 test UNSTABLE changes!


git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1187 6ac86273-5f31-0410-b378-82cca8765d1b
2006-05-20 20:53:23 +00:00
Eric Auer
46cd62310a updated list of supported DOS functions. When DOSLFN is loaded for int
21.71, only remaining unsupported int 21 functions are 21.4b05 (set exec
state), int 21.63xx (DBCS / Korean Hangul, see above) and int 21.5d01 -
21.5d05 (close files by name/computer/task, list open files, commit all)


git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1186 6ac86273-5f31-0410-b378-82cca8765d1b
2006-05-20 20:51:11 +00:00
Eric Auer
5c9ae102b4 added stub for function 0x6301/0x6302 Korean Hangul keyboard input methods
in int 0x21 handler (0x63xx is DBCS support related), returns AL=-1 (error)


git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1185 6ac86273-5f31-0410-b378-82cca8765d1b
2006-05-20 20:50:44 +00:00
Eric Auer
265efa8b8b removed the "protect 386 registers" patch again, a fixed version of free-
EMM386 is available. This reduces device driver call overhead in terms of
CPU and stack usage.  Older EMM386 versions destroyed eax ebx ecx edi esi
ebp fs gs, now go_driver_entry in emm386.asm saves those registers. Only
the INIT was broken, but the execrh.asm patch protected ALL functions.


git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1184 6ac86273-5f31-0410-b378-82cca8765d1b
2006-05-20 20:49:59 +00:00
Eric Auer
52c9c933d8 removed some no longer used version defines. Changed build to "2036 cvs"
(revision 36) WARNING: Version should be "2037 test" (rev. 37) for UNSTABLE!


git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1183 6ac86273-5f31-0410-b378-82cca8765d1b
2006-05-20 20:49:16 +00:00
Eric Auer
40276450af changed the os_release version message to be
"build 2036 cvs [version Sep 09 2005 compiled May 20 2006]" as opposed to
the old "version 1.1.35 (Build 2035b-cvs) [Jul 23 2005 12:34:56]"
-> removed the "1.1.35" and compile TIME, added SOURCE DATE


git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1182 6ac86273-5f31-0410-b378-82cca8765d1b
2006-05-20 20:48:43 +00:00
Eric Auer
0539a70107 Changed batch files to use CR LF - command.com gets confused otherwise.
build.bat clean.bat clobber.bat default.bat utils/echoto.bat
utils/proto.bat utils/wlinker.bat utils/rmfiles.bat


git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1181 6ac86273-5f31-0410-b378-82cca8765d1b
2006-05-20 20:45:59 +00:00
Eric Auer
f14329ef38 changed linebreaks to CR LF as command.com gets confused otherwise.
Batch files: build clean clobber default utils/ echoto proto wlinker rmfiles


git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1180 6ac86273-5f31-0410-b378-82cca8765d1b
2006-05-20 20:40:20 +00:00
Kenneth J Davis
0ed2d7e7b6 correct email address
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1173 6ac86273-5f31-0410-b378-82cca8765d1b
2005-12-24 09:17:02 +00:00
Kenneth J Davis
b08bb299b1 from Eduardo, fix Spanish (34, not duplicate of 33)
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1142 6ac86273-5f31-0410-b378-82cca8765d1b
2005-09-08 23:48:25 +00:00
Kenneth J Davis
6d9f6c60c0 protect 386 registers from emm386 on 386 kernel build (prevent crash, workaround)
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1136 6ac86273-5f31-0410-b378-82cca8765d1b
2005-07-24 09:34:10 +00:00
Kenneth J Davis
696614a6c1 do not compares filenames to name field in block devices
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1127 6ac86273-5f31-0410-b378-82cca8765d1b
2005-07-10 01:19:29 +00:00
Kenneth J Davis
790ad53fee don't leave fd open when failing DIR bit check
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1124 6ac86273-5f31-0410-b378-82cca8765d1b
2005-04-10 15:00:37 +00:00
Kenneth J Davis
4dcdd071e5 bug 1874 fix, do not consider setting DIR bit an error for int 21/4301=set attribute, if really is a directory
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1123 6ac86273-5f31-0410-b378-82cca8765d1b
2005-04-05 15:08:30 +00:00