Eric Auer
bfb40c4b1c
Workaround for y2k BIOS bugs at the only location where FreeDOS
...
reads the BIOS (CMOS RTC) date (at boot). Note that according to
RBIL, DRDOS would even hook int 1a ah=4 to force a correct year.
/* A BIOS with y2k (year 2000) bug will always report year 19nn */
if ((dosregs.c.x >= 1900) && (dosregs.c.x < 1980)) dosregs.c.x += 100;
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1359 6ac86273-5f31-0410-b378-82cca8765d1b
2008-03-09 16:11:10 +00:00
Eric Auer
26f116a217
More secure FAT handling: Avoids risk of cross links for example if
...
you reboot while files are open... Reported by Hardi Stengelin :-).
Always test *link_fat* result. New function is_free_cluster. Extra
checks in *link_fat* (bad r/w offset, i/o, write) and *next_cluster*
(dangling chain: bad value in chain) with short messages (no msg for
bad chain start). Shorter "Bad DPB" (FAT size) msg. More comments!
Update FS INFO on disk only when needed. Check if chain EOF was at
expected place when extending. Call *link_fat* before! *setdstart*
when a FAT chain grows. [Q: Does 0 byte write always trunc? Why?]
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1358 6ac86273-5f31-0410-b378-82cca8765d1b
2008-03-08 20:31:37 +00:00
Eric Auer
0cc297cf2d
The truename function must use the current working directory of
...
the virtual / created-by-subst drive when it resolves relative
paths, even though truename returns the "real" drive and dir
of where your files actually are in the end. Using the current
directory of the "real" drive made truename give wrong results.
PS: If "subst e: d:\" says "physical path x:\ cannot be made",
then it refers to "making" a root dir. "subst e: d:\foo" works.
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1357 6ac86273-5f31-0410-b378-82cca8765d1b
2007-09-15 22:01:03 +00:00
Bart Oldeman
69d767be50
Let exeflat call UPX itself like in the unstable branch. Simplifies makefile.
...
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1353 6ac86273-5f31-0410-b378-82cca8765d1b
2007-08-29 08:49:02 +00:00
Bart Oldeman
266398c247
Add ASM to HaltCpuWhileIdle declarations for compatibility with Turbo C.
...
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1350 6ac86273-5f31-0410-b378-82cca8765d1b
2007-08-27 11:41:13 +00:00
Eric Auer
94d0560e7b
Do not ABORT if image size is above 1 MB - Instead, handle size
...
MODULO 1 MB (paras = low_16_bits(pages<<5) ...) because for e.g.
Turbo C++ 3.0 needs this: Their IDE is 1.3 MB BOSS NE style EXE,
the first < 0.3 MB load a DOS ext which loads and runs the rest.
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1348 6ac86273-5f31-0410-b378-82cca8765d1b
2007-08-25 02:37:59 +00:00
Eric Auer
f7320f6452
Init HaltCpuWhileIdle to 0 before installing int handlers.
...
Removed HaltCpuWhileIdle handling from GetBiosKey because it is
only used *before* IDLEHALT is processed anyway - in the config
sys menu *and* in CheckContinueBootFromHarddisk. Adding s.th.
like "switches /i" would be a way to enable it a bit earlier.
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1346 6ac86273-5f31-0410-b378-82cca8765d1b
2007-08-17 19:33:24 +00:00
Eric Auer
ab53a50c49
Mktemp (21.5a) only inserts leading backslash in temp file name
...
if no directory given in template if DOS version is 5.
Older and newer DOS versions just use no dirspec in that case.
This helps ftp.sac.sk/pub/sac/pack/iup067.zip exepacker which
tries to rename the temp file to a file in current directory.
Prepared Truename (21.60) to return 0 if okay, 3a00 if char dev
(and not JOIN / network?). May need further coding to actually
have the intended effect...? Note: The shell TRUENAME command
may change names for display!
Changed the "true DOS version" for FAT16 kernels from 5.0 to
6.22 to reflect the updates in 21.5a and 21.60, other 5 / 6
differences are not simply in the kernel but more in COUNTRY,
KEYB, HIMEM, SMARTDRV, DBLSPACE, EMM386, COMMAND and so on.
In addition, 6.22 is a popular version number to report :-).
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1345 6ac86273-5f31-0410-b378-82cca8765d1b
2007-07-28 19:03:40 +00:00
Bart Oldeman
c3bd779112
Reinstated _IRQTEXT, now with corrected segment loads in irqstack.asm.
...
It is better to use groups than segments here.
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1343 6ac86273-5f31-0410-b378-82cca8765d1b
2007-07-23 11:23:11 +00:00
Eric Auer
c2fababb01
Reverted the "add new IRQTEXT" segment patch from 1324->1325
...
again, as this made the kernel crash in Bochs in PostConfig
(or short before or after it). FASTBOOT should still be okay.
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1341 6ac86273-5f31-0410-b378-82cca8765d1b
2007-07-21 21:46:17 +00:00
Eric Auer
1e5efe260e
New config.sys (config.c, config.txt) options: IDLEHALT=n to activate
...
"HLT on idle" (dosidle.asm, int2f.asm) and KEYBUF=n[,m] to relocate
the keyboard buffer to another area in the 40:ac..40:1ff range. Global
functions and variables: proto.h DosIdle_hlt, init-mod.h and globals.h
DosIdle_hlt() and HaltCpuWhileIdle.
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1339 6ac86273-5f31-0410-b378-82cca8765d1b
2007-07-21 03:37:53 +00:00
Eric Auer
cf05259924
Removed "Dutch plurals" ("Dutch plural's" ;-)) from the source code:
...
kernel/fatfs.c kernel/config.c kernel/kernel.asm kernel/initdisk.c
kernel/fattab.c kernel/dyninit.c kernel/int2f.asm kernel/memmgr.c
kernel/task.c kernel/dsk.c kernel/printer.asm kernel/globals.h
kernel/dosfns.c docs/config.txt hdr/device.h drivers/rdpcclk.asm
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1338 6ac86273-5f31-0410-b378-82cca8765d1b
2007-07-20 20:52:33 +00:00
Bart Oldeman
c10f276c46
Really fix the 8086 issue!
...
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1337 6ac86273-5f31-0410-b378-82cca8765d1b
2007-06-17 21:23:12 +00:00
Bart Oldeman
4d7fc0f7ed
Disable interrupts before storing IVTs and fix the 8086 kernel.
...
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1336 6ac86273-5f31-0410-b378-82cca8765d1b
2007-06-17 21:20:50 +00:00
Bart Oldeman
a4bc22884c
Use the largest possible lastdrive value ('Z',26) for the initial CDS.
...
This allows device=f:\foo.sys to work.
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1335 6ac86273-5f31-0410-b378-82cca8765d1b
2007-06-04 16:54:11 +00:00
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
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
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
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
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
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
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
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
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
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
Kenneth J Davis
bd50aa5d40
from Arkady, use direct access instead of reading from copy made on stack
...
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1122 6ac86273-5f31-0410-b378-82cca8765d1b
2005-03-15 15:31:35 +00:00
Kenneth J Davis
c41380e578
merge from dev kernel, Jason Hood's patch for extended DPBs and Set Extended Error function
...
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1120 6ac86273-5f31-0410-b378-82cca8765d1b
2005-03-06 16:58:33 +00:00
Kenneth J Davis
e501067d7b
insure bpb_huge is initialized (zeroed) [merge from dev kernel]
...
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1119 6ac86273-5f31-0410-b378-82cca8765d1b
2005-03-06 16:12:34 +00:00
Kenneth J Davis
063efbfef3
from Eric (similar already in dev), set driver request field with subunit number
...
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1115 6ac86273-5f31-0410-b378-82cca8765d1b
2005-02-24 20:35:48 +00:00
Kenneth J Davis
42c99c7d70
ensure f_nodes.f_count are initialized to 0 (always clear KernelAlloc'd memory)
...
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1098 6ac86273-5f31-0410-b378-82cca8765d1b
2005-01-29 04:59:31 +00:00
Kenneth J Davis
5c262419e5
fix bug 1789
...
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1090 6ac86273-5f31-0410-b378-82cca8765d1b
2005-01-09 11:30:44 +00:00
Kenneth J Davis
ded1a47b81
bug 1850, properly handle block drivers failing just by returning no units
...
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1084 6ac86273-5f31-0410-b378-82cca8765d1b
2005-01-01 18:03:43 +00:00
Kenneth J Davis
89d10726a6
from Bart, invoke DOS idle int 28h for int21/ah=6/dl=ff if busy waiting on input
...
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1066 6ac86273-5f31-0410-b378-82cca8765d1b
2004-11-21 13:37:52 +00:00
Bart Oldeman
cca3ca9547
Don't use implicit int.
...
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1062 6ac86273-5f31-0410-b378-82cca8765d1b
2004-11-15 09:53:08 +00:00
Kenneth J Davis
f1421b184e
force use of label until additional merge allows uncommenting chunk so builds
...
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1049 6ac86273-5f31-0410-b378-82cca8765d1b
2004-09-20 08:08:27 +00:00
Kenneth J Davis
a40b93283f
merge from UNSTABLE: inthndlr.c (Lucho): added Int 2Fh/26-29h with Eduardo
...
for NLSFUNC, bug fixes from Michael Devore (add undoc behavior), and
fix MS Format + Ramdisk bug in INT21/5F07 and 5F08
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1037 6ac86273-5f31-0410-b378-82cca8765d1b
2004-09-12 06:07:21 +00:00
Kenneth J Davis
99f863a28f
merge in some changes from UNSTABLE, batch files no change just line ending issue
...
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1036 6ac86273-5f31-0410-b378-82cca8765d1b
2004-09-12 04:46:28 +00:00
Bart Oldeman
74b074660d
Set CX=0 for int21/ah=30. Avoids bug in Borland's 32RTM.EXE
...
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1016 6ac86273-5f31-0410-b378-82cca8765d1b
2004-08-15 08:16:51 +00:00
Bart Oldeman
7cd4f6c14b
int21/ah=0x1b,0x1c should only change AL
...
Change prototype of DosGetFree so it returns AX (Arkady)
Checking the return value for FFFF is enough to check for failure.
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1008 6ac86273-5f31-0410-b378-82cca8765d1b
2004-07-25 08:04:54 +00:00
Bart Oldeman
7c861194f8
Fix compilation error.
...
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1007 6ac86273-5f31-0410-b378-82cca8765d1b
2004-07-25 07:20:23 +00:00
Bart Oldeman
cd85d78739
Need to check for navc!=NULL, not *nc!=0xffff in DosGetFree.
...
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1006 6ac86273-5f31-0410-b378-82cca8765d1b
2004-07-25 00:08:34 +00:00
Bart Oldeman
a6a6cfec9d
Preserving di in ludivmul.inc: fixes problem with the modulo when
...
divisor > 0xffff.
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1005 6ac86273-5f31-0410-b378-82cca8765d1b
2004-07-24 23:56:32 +00:00
Bart Oldeman
7d0a83c800
Preserve DI in call_nls (fixes problem reported by Eduardo)
...
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1004 6ac86273-5f31-0410-b378-82cca8765d1b
2004-07-24 23:54:23 +00:00
Bart Oldeman
56682a5656
Fix: AL was not passed to FcbParseFname (int21/ah=29) (Arkady)
...
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1003 6ac86273-5f31-0410-b378-82cca8765d1b
2004-07-24 23:53:21 +00:00
Bart Oldeman
fe30b5a698
Fix some dependencies.
...
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@973 6ac86273-5f31-0410-b378-82cca8765d1b
2004-05-30 20:59:33 +00:00
Bart Oldeman
11e6ccefbf
high-part-of register save fixes from Lucho.
...
Bump version to 2035.
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@971 6ac86273-5f31-0410-b378-82cca8765d1b
2004-05-30 19:31:07 +00:00
Bart Oldeman
2c8a4b8c34
MSC fixes and small cleanups from Lucho
...
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@970 6ac86273-5f31-0410-b378-82cca8765d1b
2004-05-29 09:51:47 +00:00
Bart Oldeman
41edf4f640
Don't take attr if dpbp == NULL! OW does some optimizations assuming that
...
NULL does not point to valid memory, in this case it hurts.
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@969 6ac86273-5f31-0410-b378-82cca8765d1b
2004-05-29 01:33:12 +00:00
Bart Oldeman
7a9c620d82
DosUmbLink no longer tries to merge free blocks. Also cleaned up a bit.
...
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@968 6ac86273-5f31-0410-b378-82cca8765d1b
2004-05-28 19:08:48 +00:00
Bart Oldeman
3f72bd1865
DJ mechanism without memcpy.
...
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@967 6ac86273-5f31-0410-b378-82cca8765d1b
2004-05-28 13:44:49 +00:00
Bart Oldeman
4199f4c6c8
Cache attr and control flow optimizations from Lucho (~120 bytes)
...
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@966 6ac86273-5f31-0410-b378-82cca8765d1b
2004-05-28 13:15:22 +00:00
Bart Oldeman
dace548223
(mostly from Lucho) deal with the correct structure for generic and
...
query ioctls. Fixes issues with 3rd party device drivers (or ones that use
dsk.c)
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@965 6ac86273-5f31-0410-b378-82cca8765d1b
2004-05-28 12:57:41 +00:00
Bart Oldeman
0168037d73
From Lucho: no need to preserve ebx
...
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@964 6ac86273-5f31-0410-b378-82cca8765d1b
2004-05-28 11:58:18 +00:00
Bart Oldeman
57bac85ae3
Applied most of Arkady's initdisk optimizations (65 bytes) and is_suspect fix.
...
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@963 6ac86273-5f31-0410-b378-82cca8765d1b
2004-05-25 19:24:55 +00:00
Bart Oldeman
e71f6448ab
Fix int21/3302 (the swap was wrong, Lucho & Bart)
...
Made int21/3301,2e,54 consistent with MSDOS behaviour (Lucho)
Fix int21/5e02+ (mentioned by Arkady)
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@962 6ac86273-5f31-0410-b378-82cca8765d1b
2004-05-25 18:47:43 +00:00
Bart Oldeman
c90e1e3c11
Fix problem with wrong remote_rw cast and unused variable.
...
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@961 6ac86273-5f31-0410-b378-82cca8765d1b
2004-05-25 00:02:46 +00:00
Bart Oldeman
9a1418a6c8
cleanups by Lucho
...
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@960 6ac86273-5f31-0410-b378-82cca8765d1b
2004-05-24 23:38:11 +00:00
Bart Oldeman
0c00651565
Pointer-ise specificCountriesSupported accesses.
...
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@959 6ac86273-5f31-0410-b378-82cca8765d1b
2004-05-24 23:34:22 +00:00
Bart Oldeman
b3a2d6bfde
Reorganized GetBiosKey a bit -- inlining GetBiosTime saves a slight amount
...
of code, converted timeout < 0 to a blocking read instead of polling.
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@958 6ac86273-5f31-0410-b378-82cca8765d1b
2004-05-24 18:39:49 +00:00
Bart Oldeman
c0f1c45d1f
Use strcaseequal instead of strcasecmp since we never care about order
...
anyway.
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@957 6ac86273-5f31-0410-b378-82cca8765d1b
2004-05-24 18:06:04 +00:00
Bart Oldeman
195614981a
Fix problem with #ifdef DEBUG HMA check. Use more descriptive name
...
(EnabledA20).
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@956 6ac86273-5f31-0410-b378-82cca8765d1b
2004-05-24 17:07:04 +00:00
Bart Oldeman
39e6b427f4
Fixed new bugs caused by typos.
...
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@955 6ac86273-5f31-0410-b378-82cca8765d1b
2004-05-24 11:42:28 +00:00
Bart Oldeman
3eac7d3c19
Fix problem with redirected input and int21/ah=0a (debug < foo.txt) --
...
could get you an invalid opcode!
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@954 6ac86273-5f31-0410-b378-82cca8765d1b
2004-05-23 22:53:11 +00:00
Bart Oldeman
99e727b73d
Use int29 for kernel console output. Enables ansi escape sequences in config.sys once you load nansi.sys. It also saves a couple of bytes.
...
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@953 6ac86273-5f31-0410-b378-82cca8765d1b
2004-05-23 22:04:42 +00:00
Bart Oldeman
f8be820925
Clear up confusing (void *)n using a macro.
...
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@952 6ac86273-5f31-0410-b378-82cca8765d1b
2004-05-23 21:18:37 +00:00
Bart Oldeman
86a8e9c2d2
This was unequal replacement: in new code performed more memory access
...
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@951 6ac86273-5f31-0410-b378-82cca8765d1b
2004-05-23 20:06:51 +00:00
Bart Oldeman
c863987e18
Arkady changed/optimized allocmem()
...
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@950 6ac86273-5f31-0410-b378-82cca8765d1b
2004-05-23 20:01:30 +00:00
Bart Oldeman
05f3cdd165
Arkady: bugfix for INT21/440b (change NetRetry if DX is _non_zero).
...
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@949 6ac86273-5f31-0410-b378-82cca8765d1b
2004-05-23 19:53:33 +00:00
Bart Oldeman
b723ff9a46
inthndler cleanups, mostly from Arkady
...
Bart: made dosmktmp to return a long: consistent with DosOpen et al and
avoids the cast.
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@948 6ac86273-5f31-0410-b378-82cca8765d1b
2004-05-23 19:45:48 +00:00
Bart Oldeman
fe3a2a1dd5
Some small cleanups from Lucho.
...
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@946 6ac86273-5f31-0410-b378-82cca8765d1b
2004-05-23 18:28:18 +00:00
Bart Oldeman
b89c1b7cd3
Disabled EBDA moves by default. Automatic EBDA moves now happen using
...
switches=/e:-1
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@945 6ac86273-5f31-0410-b378-82cca8765d1b
2004-05-23 16:30:25 +00:00
Bart Oldeman
c97bc20bf2
GetNumArg and misc other cleanups from Lucho
...
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@944 6ac86273-5f31-0410-b378-82cca8765d1b
2004-05-23 16:21:14 +00:00
Bart Oldeman
24d27f2f9b
From Tom: must set r_bpfat for C_BLDBPB, otherwise USBASPI.SYS, DI1000DD.SYS
...
won't like us. From Lucho: use DiskTransferBuffer for deblock_buf.
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@943 6ac86273-5f31-0410-b378-82cca8765d1b
2004-05-23 15:10:08 +00:00