mirror of https://github.com/FDOS/kernel.git
Changes for kernel 2028 (see history.txt)
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@485 6ac86273-5f31-0410-b378-82cca8765d1b
This commit is contained in:
parent
ed2036e139
commit
e67a8f5058
|
@ -85,17 +85,4 @@ component. Study the makefile to better understand this.
|
|||
|
||||
$Id$
|
||||
|
||||
Log: build.txt,v
|
||||
Revision 1.3 2000/08/15 03:42:17 jhall1
|
||||
update to the build.txt file to remove references to the now-defunct
|
||||
web site at gcfl.net (John's old site).
|
||||
|
||||
Revision 1.2 2000/05/08 04:27:48 jimtabor
|
||||
Update CVS to 2020
|
||||
|
||||
Revision 1.2 1999/08/25 04:12:31 jprice
|
||||
update
|
||||
|
||||
Revision 1.1 1999/08/25 03:46:41 jprice
|
||||
New build config
|
||||
|
||||
|
|
|
@ -1,13 +1,12 @@
|
|||
Begin3
|
||||
Title: The FreeDOS Kernel
|
||||
Version: 2.0.27
|
||||
Entered-date: xx Aug 2002
|
||||
Version: 2.0.28
|
||||
Entered-date: 09 Dec 2002
|
||||
Description: The FreeDOS Kernel.
|
||||
Keywords: kernel freedos dos msdos
|
||||
Author: (developers)
|
||||
Maintained-by: bart@dosemu.org
|
||||
Maintained-by: bartoldeman@users.sourceforge.net
|
||||
Primary-site: http://freedos.sourceforge.net
|
||||
Alternate-site: www.dosemu.org/~bart
|
||||
Original-site: http://www.gcfl.net/pub/FreeDOS/kernel
|
||||
Platforms: dos dosemu
|
||||
Copying-policy: GPL
|
||||
|
|
|
@ -1,3 +1,30 @@
|
|||
2002 Dec 9 - Build 2028
|
||||
-------- Bart Oldeman (bart@dosemu.org)
|
||||
+ Changes Tom
|
||||
* move clock driver initialization to inittext
|
||||
* new ELSE_ISFAT16 macro to save some bytes
|
||||
* use _TEXT for old HMA_TEXT, _LOWTEXT for old _TEXT to get
|
||||
a slightly less complicated memory model from the C compiler's
|
||||
point of view.
|
||||
* add support for int2f/4a01,4a02: query/allocate HMA space.
|
||||
+ Changes Arkady V. Belousov
|
||||
* slightly improved asm for print_hex and int2f clear_ax stuff
|
||||
* use #error for unknown compilers
|
||||
* remove hexDigits reference
|
||||
* correct comment in kernel.asm (pad to 05fdh)
|
||||
+ Changes Bart
|
||||
* fix ss:sp init bug for int21/ax=4b01 (visible in DEBUG)
|
||||
* fix redirection problem for character output routines
|
||||
* fix press the any key message for floppy swaps
|
||||
* correct cluster value for BAD cluster
|
||||
* correct FAT12/16/32 cutoff magic values as per the MS spec
|
||||
* the BUFFERS structure is now the same as in MSDOS 5+ and uses
|
||||
a circular double-linked list using near pointers.
|
||||
* move all old RCS log messages into one seperate file
|
||||
* divide the fnode f_cluster_offset field by the size of a cluster:
|
||||
this gives a more efficient map_cluster().
|
||||
* point the CharMapSrvc pointer to the DOS DS for AARD compliance.
|
||||
* nls.c: set CX to cooperate with load_unf.exe
|
||||
2002 Nov 9 - Build 2027
|
||||
-------- Bart Oldeman (bart@dosemu.org)
|
||||
+ Changes Tom
|
||||
|
|
|
@ -193,18 +193,3 @@ See COPYING in DOS-C root directory for license.
|
|||
---------------------------------------------------------------------
|
||||
|
||||
$Id$
|
||||
|
||||
Log: intfns.txt,v
|
||||
|
||||
Revision 1.2 2000/03/18 05:51:55 kernel
|
||||
changes in supported functions
|
||||
|
||||
Revision 1.1 1999/08/25 03:46:42 jprice
|
||||
New build config
|
||||
|
||||
Revision 1.1.1.1 1999/03/29 15:39:16 jprice
|
||||
New version without IPL.SYS
|
||||
|
||||
Revision 1.2 1999/03/02 06:55:51 jprice
|
||||
Updated interrupt list
|
||||
|
||||
|
|
|
@ -0,0 +1,931 @@
|
|||
13 Nov 2002 tom
|
||||
initclk.c:
|
||||
Initial revision
|
||||
|
||||
2001/11/04 bartoldeman
|
||||
install.bat:
|
||||
Text files need to be LF ended at the server. So be it...
|
||||
|
||||
2001/04/29 brianreifsnyder
|
||||
dsk.c:
|
||||
Added phase 1 support for LBA hard drives
|
||||
|
||||
20 Apr 2001 Bart Oldeman
|
||||
buffer.h:
|
||||
Initial revision.
|
||||
|
||||
2001/04/16 bartoldeman
|
||||
dsk.c:
|
||||
Fixed handles, config.sys drivers, warnings. Enabled INT21/AH=6C, printf %S/%Fs
|
||||
|
||||
2001/04/15 bartoldeman
|
||||
dsk.c:
|
||||
See history.txt for the list of fixes.
|
||||
|
||||
2001/03/27 bartoldeman
|
||||
dsk.c:
|
||||
dsk.c (reported by Nagy Daniel), inthndlr and int25/26 fixes by Tom Ehlert.
|
||||
|
||||
2001/03/24 bartoldeman
|
||||
dsk.c:
|
||||
See history.txt: dsk.c changes, warning removal and int21 entry handling.
|
||||
|
||||
2001/03/22 bartoldeman
|
||||
install.bat:
|
||||
Change LF to CR/LF in batch files.
|
||||
|
||||
2001/03/21 bartoldeman
|
||||
dsk.c:
|
||||
See history.txt for changes. Bug fixes and HMA support are the main ones.
|
||||
|
||||
2001/03/16 tom ehlert
|
||||
inithma.c:
|
||||
initial creation
|
||||
|
||||
2001/03/08 bartoldeman
|
||||
dsk.c:
|
||||
Space saving fixes from Tom Ehlert
|
||||
|
||||
2001/03/07 10:00:00 tomehlert
|
||||
prf.c:
|
||||
recoded for smaller object footprint, added main() for testing+QA
|
||||
|
||||
2000/10/29 jimtabor
|
||||
inthndlr.c:
|
||||
Adding Share Support by Ron Cemer
|
||||
|
||||
2000/08/15 jhall1
|
||||
build.txt:
|
||||
update to the build.txt file to remove references to the now-defunct
|
||||
web site at gcfl.net (John's old site).
|
||||
|
||||
2000/08/06 jimtabor
|
||||
inthndlr.c, nls_load.c:
|
||||
Add new files and update cvs with patches and changes
|
||||
|
||||
2000/06/21 jimtabor
|
||||
dsk.c, inthndlr.c:
|
||||
Add UMB code, patch, and code fixes
|
||||
|
||||
2000/06/01 jimtabor
|
||||
dsk.c:
|
||||
Read History for Changes
|
||||
|
||||
2000/05/26 jimtabor
|
||||
dsk.c:
|
||||
Read History file for Change info
|
||||
|
||||
2000/05/25 jimtabor
|
||||
dsk.c, inthndlr.c:
|
||||
Fixed project history
|
||||
|
||||
2000/05/17 jimtabor
|
||||
dsk.c, inthndlr.c:
|
||||
Cleanup, add and fix source.
|
||||
|
||||
2000/05/11 jimtabor
|
||||
inthndlr.c:
|
||||
Removed #if statement
|
||||
|
||||
2000/05/11 jimtabor
|
||||
dsk.c, inthndlr.c:
|
||||
Added code for DOS FN 69 & 6C
|
||||
|
||||
2000/05/11 jimtabor
|
||||
install.bat, inthndlr.c:
|
||||
Clean up and Release
|
||||
|
||||
2000/05/08 jimtabor
|
||||
inthndlr.c, dosnames.c, dsk.c, dosnames.h, build.txt:
|
||||
Update CVS to 2020
|
||||
|
||||
2000/05/06 jhall1
|
||||
getvec.asm, dsk.c, inthndlr.c:
|
||||
The FreeDOS Kernel. A DOS kernel that aims to be 100% compatible with
|
||||
MS-DOS. Distributed under the GNU GPL.
|
||||
|
||||
2000/04/29 jtabor
|
||||
device.h, blockio.c, dsk.c, fatfs.c, inthndlr.c, ioctl.c:
|
||||
Added new functions and clean up code
|
||||
|
||||
2000/04/02 jtabor
|
||||
newstuff.c:
|
||||
Fix ChgDir Code
|
||||
|
||||
2000/04/02 jtabor
|
||||
dosfns.c:
|
||||
Replaced ChgDir Code
|
||||
|
||||
2000/04/02 jtabor
|
||||
dosfns.c:
|
||||
Fix to DosChgDir
|
||||
|
||||
2000/03/31 jprice
|
||||
sys.c:
|
||||
Added discription of program.
|
||||
|
||||
2000/03/31 jtabor
|
||||
config.c, dosfns.c, dosnames.c, fatdir.c, fcbfns.c, int2f.asm, main.c,
|
||||
makefile, network.c, newstuff.c, proto.h, task.c:
|
||||
Added Eric W. Biederman Patches
|
||||
|
||||
2000/03/23 ska
|
||||
nls.c:
|
||||
Initial revision
|
||||
|
||||
2000/03/20 kernel
|
||||
entry.asm:
|
||||
Change in Entry.asm
|
||||
|
||||
2000/03/18 kernel
|
||||
intfns.txt:
|
||||
changes in supported functions
|
||||
|
||||
2000/03/17 kernel
|
||||
config.c, fatdir.c, fatfs.c, fcbfns.c, inthndlr.c, makefile,
|
||||
network.c, nlssupt.asm, proto.h:
|
||||
Steffen Kaiser's NLS changes
|
||||
|
||||
2000/03/17 kernel
|
||||
inthndlr.c:
|
||||
Fixed Func 0x32
|
||||
|
||||
2000/03/17 kernel
|
||||
fatfs.c:
|
||||
Added Change for media_check
|
||||
|
||||
2000/03/16 kernel
|
||||
globals.h, inthndlr.c:
|
||||
*** empty log message ***
|
||||
|
||||
2000/03/09 kernel
|
||||
dosfns.c, dosnames.c, dsk.c, error.c, execrh.asm, fatdir.c, fatfs.c,
|
||||
fcbfns.c, globals.h, initoem.c, int2f.asm, inthndlr.c, io.asm,
|
||||
ioctl.c, kernel.asm, main.c, makefile, memmgr.c, misc.c, network.c,
|
||||
newstuff.c, prf.c, proto.h, strings.c, sysclk.c, task.c, blockio.c,
|
||||
break.c, chario.c, config.c, console.asm, cds.h, dcb.h, device.h,
|
||||
dirmatch.h, fnode.h, mcb.h, sft.h, stacks.inc:
|
||||
2017f updates by James Tabor
|
||||
|
||||
1999/09/25 jprice
|
||||
boot.asm:
|
||||
Optimize boot loader. Documentation.
|
||||
|
||||
1999/09/24 jprice
|
||||
boot.asm:
|
||||
Added changes recommended by Jens Horstmeier
|
||||
to make their bootable CD work.
|
||||
|
||||
1999/09/23 jprice
|
||||
main.c, network.c, proto.h, globals.h, inthndlr.c, kernel.asm,
|
||||
makefile, config.c, console.asm, dosfns.c, entry.asm, fatfs.c,
|
||||
fcbfns.c, chario.c, boot.asm, fcb.h, sys/makefile, sys.c:
|
||||
*** empty log message ***
|
||||
|
||||
1999/09/20 jprice
|
||||
sys.c:
|
||||
Changed open/creat to fopen to make TC2 happy.
|
||||
|
||||
1999/09/15 jprice
|
||||
sys.c:
|
||||
Changed boot sector writing code so easier to read.
|
||||
|
||||
1999/09/14 jprice
|
||||
lib/makefile:
|
||||
no message
|
||||
|
||||
1999/09/14 jprice
|
||||
sys.c:
|
||||
Added debug log creation to sys.com.
|
||||
|
||||
1999/09/14 jprice
|
||||
console.asm:
|
||||
no message
|
||||
|
||||
1999/09/14 jprice
|
||||
inthndlr.c:
|
||||
ror4: fix int25 & 26 are not cached.
|
||||
|
||||
1999/09/14 jprice
|
||||
fatfs.c, dosfns.c:
|
||||
Fixed bug where you could write over directories.
|
||||
|
||||
1999/09/13 jprice
|
||||
inthndlr.c, console.asm:
|
||||
Fix 210B function
|
||||
|
||||
1999/09/13 jprice
|
||||
console.asm:
|
||||
Changes from Helmut Fritsch to fix INT21 func B
|
||||
|
||||
1999/09/13 jprice
|
||||
makefile:
|
||||
Some clean up.
|
||||
|
||||
1999/09/13 jprice
|
||||
config.b, config.b:
|
||||
Added COMPILER variable
|
||||
|
||||
1999/09/13 jprice
|
||||
lib/makefile:
|
||||
Added !if so we can use TC2 or TC3 to compile.
|
||||
|
||||
1999/08/25 jprice
|
||||
build.txt:
|
||||
update
|
||||
|
||||
1999/08/25 jprice
|
||||
config.b, clobber.bat, clean.bat, config.b, build.bat:
|
||||
New build batch files.
|
||||
|
||||
1999/08/25 jprice
|
||||
intfns.txt, build.txt, build.bat:
|
||||
New build config
|
||||
|
||||
1999/08/25 jprice
|
||||
config.b, sys/makefile, sys.c, lib/makefile, task.c, main.c, makefile,
|
||||
memmgr.c, newstuff.c, proto.h, strings.c, fatfs.c, globals.h,
|
||||
initoem.c, inthndlr.c, blockio.c, chario.c, config.c, dosfns.c,
|
||||
fatdir.c, date.h, dirmatch.h, portab.h, time.h, drivers/makefile,
|
||||
install.bat:
|
||||
ror4 patches to allow TC 2.01 compile.
|
||||
|
||||
1999/08/10 jprice
|
||||
clobber.bat:
|
||||
case
|
||||
|
||||
1999/08/10 jprice
|
||||
dsk.c, inthndlr.c:
|
||||
ror4 2011-04 patch
|
||||
|
||||
1999/08/10 jprice
|
||||
globals.h, inthndlr.c, fatfs.c, fattab.c, blockio.c:
|
||||
ror4 2011-03 patch
|
||||
|
||||
1999/08/10 jprice
|
||||
irqstack.asm, kernel.asm, makefile, nlssupt.asm, printer.asm,
|
||||
procsupt.asm, segs.inc, apisupt.asm, asmsupt.asm, console.asm, entry.asm, execrh.asm, fatdir.c,
|
||||
int2f.asm, io.asm, io.inc, stacks.inc:
|
||||
ror4 2011-02 patch
|
||||
|
||||
1999/08/10 jprice
|
||||
wrpcclk.asm, wratclk.asm, rdpcclk.asm, drivers/makefile, getvec.asm, floppy.asm:
|
||||
ror4 2011-01 patch
|
||||
|
||||
1999/05/04 jprice
|
||||
systime.c:
|
||||
ror4 date fix
|
||||
|
||||
1999/05/03 jprice
|
||||
fat.h:
|
||||
Changed some variables from signed to unsigned.
|
||||
|
||||
1999/05/03 jprice
|
||||
blockio.c, config.c, dosfns.c, fatdir.c, fatfs.c, fattab.c, globals.h,
|
||||
inthndlr.c, misc.c, proto.h:
|
||||
Patches from ror4 and many changed of signed to unsigned variables.
|
||||
|
||||
1999/05/03 jprice
|
||||
sys/makefile:
|
||||
no message
|
||||
|
||||
1999/05/03 jprice
|
||||
fatfs.c:
|
||||
Fixed bug in map_cluster function
|
||||
|
||||
1999/05/03 jprice
|
||||
blockio.c:
|
||||
Changed getblock & getbuf so that they leave at least 3 buffer for FAT data.
|
||||
|
||||
1999/04/23 jprice
|
||||
procsupt.asm:
|
||||
Fixed got_cbreak function.
|
||||
|
||||
1999/04/23 jprice
|
||||
makefile:
|
||||
no message
|
||||
|
||||
1999/04/23 jprice
|
||||
asmsupt.asm, inthndlr.c, memmgr.c, misc.c, proto.h, task.c:
|
||||
Memory manager changes made by ska
|
||||
|
||||
1999/04/23 jprice
|
||||
clobber.bat:
|
||||
Initial include
|
||||
|
||||
1999/04/23 jprice
|
||||
clean.bat, build.bat, sys/makefile, lib/makefile, makefile, drivers/makefile:
|
||||
Improved by jprice
|
||||
|
||||
1999/04/23 jprice
|
||||
boot/makefile:
|
||||
Ported to NASM by ror4. Improvements
|
||||
|
||||
1999/04/23 jprice
|
||||
boot.asm:
|
||||
Ported to NASM by ror4
|
||||
|
||||
1999/04/21 jprice
|
||||
blockio.c:
|
||||
no message
|
||||
|
||||
1999/04/18 jprice
|
||||
blockio.c:
|
||||
no message
|
||||
|
||||
1999/04/17 jprice
|
||||
sys.c, boot.asm:
|
||||
Fixed multi-sector code
|
||||
|
||||
1999/04/17 jprice
|
||||
build.bat:
|
||||
ror4 patches
|
||||
|
||||
1999/04/17 jprice
|
||||
boot.asm:
|
||||
Changed so multi-sector IO is optional.
|
||||
|
||||
1999/04/16 jprice
|
||||
blockio.c, config.c, dsk.c, globals.h, main.c, proto.h, floppy.asm:
|
||||
ror4 multi-sector IO
|
||||
|
||||
1999/04/16 jprice
|
||||
break.c:
|
||||
Steffen contributed.
|
||||
|
||||
1999/04/16 jprice
|
||||
dosfns.c, globals.h, inthndlr.c, irqstack.asm, main.c, makefile, procsupt.asm,
|
||||
proto.h, chario.c, config.c:
|
||||
Steffen c-break handler changes
|
||||
|
||||
1999/04/16 jprice
|
||||
fatfs.c, fattab.c, globals.h, main.c, task.c, blockio.c, config.c,
|
||||
dsk.c, fatdir.c, fnode.h, dcb.h:
|
||||
Optimized FAT handling
|
||||
|
||||
1999/04/13 jprice
|
||||
kernel.asm:
|
||||
changes for boot loader
|
||||
|
||||
1999/04/13 jprice
|
||||
boot.asm:
|
||||
Moves boot sector to top of mem
|
||||
|
||||
1999/04/13 jprice
|
||||
makefile, fatdir.c, drivers/makefile:
|
||||
no message
|
||||
|
||||
1999/04/12 jprice
|
||||
fatfs.c, blockio.c:
|
||||
Using getbuf to write data instead of getblock
|
||||
using getblock made it read the block before it wrote it
|
||||
|
||||
1999/04/12 jprice
|
||||
systime.c, config.c, dosfns.c, fatfs.c, globals.h, main.c, proto.h,
|
||||
sysclk.c:
|
||||
more ror4 patches. Changes for multi-block IO
|
||||
|
||||
1999/04/12 jprice
|
||||
rdpcclk.asm, rdatclk.asm:
|
||||
more ror4 patches
|
||||
|
||||
1999/04/11 jprice
|
||||
blockio.c:
|
||||
Working on multi-block IO
|
||||
|
||||
1999/04/11 jprice
|
||||
globals.h, inthndlr.c, main.c, newstuff.c, proto.h, task.c, blockio.c,
|
||||
config.c, dosfns.c, fatdir.c, fatfs.c, fattab.c:
|
||||
ror4 patches
|
||||
|
||||
1999/04/06 jprice
|
||||
boot.asm:
|
||||
Put back code to read multiple sectors at a time.
|
||||
|
||||
1999/04/04 jprice
|
||||
config.c, globals.h, inthndlr.c, main.c, dosfns.c, dosnames.c,
|
||||
fatdir.c, fatfs.c, fcbfns.c, globals.h, inthndlr.c, ioctl.c, main.c,
|
||||
newstuff.c, prf.c, proto.h, strings.c, chario.c, sft.h, device.h:
|
||||
no message
|
||||
|
||||
1999/04/01 jprice
|
||||
sys.c:
|
||||
SYS modified for new boot loader
|
||||
|
||||
1999/04/01 jprice
|
||||
boot/makefile, boot.asm:
|
||||
New boot loader
|
||||
|
||||
1999/04/01 jprice
|
||||
install.bat:
|
||||
no message
|
||||
|
||||
1999/03/29 jprice
|
||||
wrpcclk.asm, wratclk.asm, rdpcclk.asm, rdatclk.asm, drivers/makefile,
|
||||
getvec.asm, floppy.asm, globals.h, io.inc, task.c:
|
||||
ror4 changes
|
||||
|
||||
1999/03/29 jprice
|
||||
sys.c:
|
||||
Fixed error message
|
||||
|
||||
1999/03/29 jprice
|
||||
sys.c, syspack.c, prf.c, misc.c, fcbfns.c, fattab.c, fatfs.c,
|
||||
fatdir.c, error.c, dosnames.c, dosfns.c, chario.c, blockio.c, task.c,
|
||||
systime.c, sysclk.c, strings.c, proto.h, segs.inc, procsupt.asm,
|
||||
printer.asm, nlssupt.asm, newstuff.c, memmgr.c, main.c, makefile,
|
||||
kernel.asm, irqstack.asm, ioctl.c, io.inc, io.asm, inthndlr.c,
|
||||
int2f.asm, globals.h, initoem.c, execrh.asm, entry.asm, dsk.c,
|
||||
console.asm, config.c, asmsupt.asm, apisupt.asm, wrpcclk.asm,
|
||||
wratclk.asm, rdpcclk.asm, rdatclk.asm, getvec.asm, floppy.asm,
|
||||
drivers/makefile, install.bat, boot/makefile, boot.asm, tail.h,
|
||||
time.h, sft.h, stacks.inc, process.h, portab.h, pcb.h, kbd.h, mcb.h,
|
||||
file.h, fnode.h, fcb.h, exe.h, fat.h, dosnames.h, error.h, device.h,
|
||||
date.h, dcb.h, cds.h, clock.h, dirmatch.h, intfns.txt, clean.bat,
|
||||
build.bat:
|
||||
New version without IPL.SYS
|
||||
|
||||
1999/03/25 jprice
|
||||
fatdir.c:
|
||||
Fixed findfirst & findnext functions to treat the attributes like MSDOS does.
|
||||
|
||||
1999/03/23 jprice
|
||||
inthndlr.c:
|
||||
Now sets carry when we don't support a function
|
||||
|
||||
1999/03/23 jprice
|
||||
config.c:
|
||||
Now checks for a reads fdconfig.sys file, if exists
|
||||
|
||||
1999/03/23 jprice
|
||||
fatfs.c:
|
||||
Fixed mkdir DOS function so it will create a directory with same name as the volument label
|
||||
|
||||
1999/03/02 jprice
|
||||
inthndlr.c:
|
||||
Added some comments. Fixed some minor bugs.
|
||||
|
||||
1999/03/02 jprice
|
||||
fatfs.c:
|
||||
Fixed bugs with dos set attribute function. Now returns correct
|
||||
error code, and errors if user tries to set bits 6 & 7.
|
||||
|
||||
1999/03/02 jprice
|
||||
boot.asm:
|
||||
Added entry address for more recent versions of TLINK
|
||||
|
||||
1999/03/02 jprice
|
||||
intfns.txt:
|
||||
Updated interrupt list
|
||||
|
||||
1999/03/01 jprice
|
||||
makefile:
|
||||
Fixed so it'll work with config.mak
|
||||
|
||||
1999/03/01 jprice
|
||||
makefile:
|
||||
Turned off DEBUG define.
|
||||
|
||||
1999/03/01 jprice
|
||||
inthndlr.c:
|
||||
Added some DEBUG ifdef's so that it will compile without DEBUG defined.
|
||||
|
||||
1999/02/14 jprice
|
||||
fatdir.c, dsk.c:
|
||||
Changed check media so that it checks if a floppy disk has been changed.
|
||||
|
||||
1999/02/14 jprice
|
||||
floppy.asm:
|
||||
Added functions to check if a floppy disk has been changed.
|
||||
|
||||
1999/02/09 jprice
|
||||
makefile, drivers/makefile, boot/makefile, clean.bat, build.bat:
|
||||
Make makefile use common config.mak file
|
||||
|
||||
1999/02/09 jprice
|
||||
blockio.c, chario.c, dosfns.c, error.c, fatdir.c, fatfs.c, fattab.c,
|
||||
fcbfns.c, device.h, error.h, sysclk.c, systime.c, task.c, apisupt.asm,
|
||||
asmsupt.asm, config.c, console.asm, dsk.c, entry.asm, execrh.asm,
|
||||
globals.h, initoem.c, int2f.asm, inthndlr.c, io.asm, io.inc, ioctl.c,
|
||||
irqstack.asm, kernel.asm, main.c, makefile, memmgr.c, newstuff.c,
|
||||
nlssupt.asm, printer.asm, procsupt.asm, proto.h, segs.inc, floppy.asm:
|
||||
Added Pat's 1937 kernel patches
|
||||
|
||||
1999/02/04 jprice
|
||||
chario.c, fatfs.c, fcbfns.c, strings.c, sysclk.c, systime.c, task.c:
|
||||
Formating. Added comments.
|
||||
|
||||
1999/02/04 jprice
|
||||
inthndlr.c:
|
||||
Formating
|
||||
|
||||
1999/02/04 jprice
|
||||
makefile:
|
||||
Added option to share constants (-d).
|
||||
|
||||
1999/02/04 jprice
|
||||
device.h:
|
||||
no message
|
||||
|
||||
1999/02/02 jprice
|
||||
dosnames.c:
|
||||
Steve Miller fixed a bug with doing "cd ." would lock the machine.
|
||||
|
||||
1999/02/01 jprice
|
||||
apisupt.asm, asmsupt.asm, config.c, dsk.c, entry.asm, execrh.asm, globals.h,
|
||||
initoem.c, int2f.asm, inthndlr.c, ioctl.c, irqstack.asm, kernel.asm,
|
||||
main.c, memmgr.c, newstuff.c, nlssupt.asm, procsupt.asm, proto.h,
|
||||
strings.c, sysclk.c, systime.c, task.c:
|
||||
Clean up; Now you can use hex numbers in config.sys. added config.sys screen function to change screen mode (28 or 43/50 lines)
|
||||
|
||||
1999/02/01 jprice
|
||||
chario.c, dosfns.c, dosnames.c, error.c, fatdir.c, fatfs.c, fattab.c,
|
||||
fcbfns.c, misc.c, prf.c, syspack.c, blockio.c:
|
||||
Fixed findfirst function to find volume label with Windows long filenames
|
||||
|
||||
1999/02/01 jprice
|
||||
cds.h, clock.h, date.h, dcb.h, device.h, dirmatch.h, dosnames.h, error.h,
|
||||
exe.h, fat.h, fcb.h, file.h, fnode.h, kbd.h, mcb.h, pcb.h, portab.h, process.h,
|
||||
sft.h, stacks.inc, tail.h, time.h:
|
||||
Clean up
|
||||
|
||||
1999/01/30 jprice
|
||||
clean.bat, build.bat:
|
||||
Clean up
|
||||
|
||||
1999/01/30 jprice
|
||||
main.c, config.c, initoem.c, inthndlr.c:
|
||||
Clean up; Fixed bug with set attribute function.
|
||||
|
||||
1999/01/30 jprice
|
||||
globals.h:
|
||||
Clean up; commented out copyright messages while we debug.
|
||||
|
||||
1999/01/30 jprice
|
||||
blockio.c, fatdir.c, fatfs.c:
|
||||
Clean up; Fixed bug with set attribute function. If you tried to
|
||||
change the attributes of a directory, it would erase it.
|
||||
|
||||
1999/01/30 jprice
|
||||
cds.h, clock.h, error.h, fat.h, fnode.h, build.bat:
|
||||
Clean up
|
||||
|
||||
1999/01/22 jprice
|
||||
cds.h, clock.h, date.h, dcb.h, device.h, dirmatch.h, dosnames.h, error.h,
|
||||
exe.h, fat.h, fcb.h, file.h, fnode.h, kbd.h, mcb.h, pcb.h, portab.h, process.h,
|
||||
sft.h, stacks.inc, tail.h, time.h, wrpcclk.asm, wratclk.asm,
|
||||
rdpcclk.asm, rdatclk.asm, drivers/makefile, getvec.asm, floppy.asm,
|
||||
blockio.c, chario.c, dosfns.c, dosnames.c, error.c, fatdir.c, fatfs.c,
|
||||
fattab.c, fcbfns.c, misc.c, prf.c, syspack.c, procsupt.asm, proto.h,
|
||||
strings.c, sysclk.c, systime.c, task.c, globals.h, initoem.c,
|
||||
int2f.asm, inthndlr.c, ioctl.c, irqstack.asm, kernel.asm, main.c,
|
||||
makefile, memmgr.c, newstuff.c, nlssupt.asm, apisupt.asm, asmsupt.asm,
|
||||
config.c, dsk.c, entry.asm, execrh.asm, boot/makefile, boot.asm:
|
||||
Formating.
|
||||
|
||||
1999/01/21 jprice Fixed comments.
|
||||
sys.c:
|
||||
Added indent program
|
||||
|
||||
1999/01/21 jprice Added messages to sys. Also made
|
||||
sys.c:
|
||||
it create a .COM file.
|
||||
|
||||
1999/01/20 jprice
|
||||
cds.h, clock.h, date.h, dcb.h, device.h, dirmatch.h, dosnames.h, error.h,
|
||||
exe.h, fat.h, fcb.h, file.h, fnode.h, kbd.h, mcb.h, pcb.h, portab.h, process.h,
|
||||
sft.h, stacks.inc, tail.h, time.h, apisupt.asm, asmsupt.asm, config.c, dsk.c,
|
||||
entry.asm, execrh.asm, globals.h, initoem.c, int2f.asm, ioctl.c, irqstack.asm,
|
||||
kernel.asm, main.c, makefile, memmgr.c, newstuff.c, nlssupt.asm,
|
||||
procsupt.asm, proto.h, strings.c, sysclk.c, systime.c, task.c:
|
||||
Imported sources
|
||||
|
||||
1999/01/20 jprice
|
||||
wrpcclk.asm, wratclk.asm, rdpcclk.asm, rdatclk.asm, drivers/makefile,
|
||||
getvec.asm, floppy.asm, boot/makefile, boot.asm, blockio.c, chario.c, dosfns.c,
|
||||
dosnames.c, error.c, fatdir.c, fatfs.c, fattab.c, fcbfns.c,
|
||||
inthndlr.c, misc.c, prf.c, syspack.c:
|
||||
Imported sources
|
||||
|
||||
10 Jan 1999 SRM
|
||||
makefile:
|
||||
Took out "/P-" from TLINK
|
||||
Changed "bcc" to "tcc"
|
||||
|
||||
06 Dec 1998 patv
|
||||
entry.asm:
|
||||
New int 21h handler code.
|
||||
|
||||
06 Dec 1998 patv
|
||||
inthndlr.c:
|
||||
Expanded due to improved int 21h handler code.
|
||||
|
||||
06 Dec 1998 patv
|
||||
ioctl.c, proto.h, apisupt.asm, globals.h:
|
||||
Expanded due to new I/O subsystem.
|
||||
|
||||
06 Dec 1998 patv
|
||||
makefile:
|
||||
Added new files for I/O subsystem.
|
||||
|
||||
06 Dec 1998 patv
|
||||
main.c, dsk.c:
|
||||
Changed due to new I/O subsystem.
|
||||
|
||||
06 Dec 1998 patv
|
||||
irqstack.asm, newstuff.c, int2f.asm, kernel.asm, systime.c,
|
||||
nlssupt.asm, asmsupt.asm, procsupt.asm, task.c, execrh.asm, fatdir.c,
|
||||
fatfs.c:
|
||||
Bug fixes.
|
||||
|
||||
06 Dec 1998 patv
|
||||
dosfns.c:
|
||||
Expanded dos functions due to new I/O subsystem.
|
||||
|
||||
06 Dec 1998 patv
|
||||
fcbfns.c:
|
||||
Expanded fcb functions for new I/O subsystem.
|
||||
|
||||
06 Dec 1998 patv
|
||||
error.c:
|
||||
Now handles errors like MS-DOS.
|
||||
|
||||
06 Dec 1998 patv
|
||||
chario.c:
|
||||
changes in character I/O because of new I/O subsystem.
|
||||
|
||||
06 Dec 1998 patv
|
||||
blockio.c:
|
||||
Changes in block I/O because of new I/O subsystem.
|
||||
|
||||
06 Dec 1998 patv
|
||||
floppy.asm:
|
||||
New floppy support functions.
|
||||
|
||||
06 Dec 1998 patv
|
||||
device.h:
|
||||
Changed for new I/O subsystem
|
||||
|
||||
06 Dec 1998 patv
|
||||
error.h:
|
||||
Added new errors for new I/O subsystem.
|
||||
|
||||
06 Dec 1998 patv
|
||||
io.inc, segs.inc:
|
||||
Initial revision.
|
||||
|
||||
09 Feb 1998 patv
|
||||
fatfs.c, fattab.c:
|
||||
Eliminated FAT12 EOF and error returns.
|
||||
|
||||
07 Feb 1998 patv
|
||||
stacks.inc, pcb.h, entry.asm, procsupt.asm, inthndlr.c, task.c,
|
||||
globals.h, proto.h:
|
||||
Modified stack fram to match DOS standard
|
||||
|
||||
03 Feb 1998 patv
|
||||
kernel.asm:
|
||||
Added a start-up stack for loadable device drivers. Need the separate
|
||||
stack so that all int 21h functions can be called.
|
||||
|
||||
03 Feb 1998 patv
|
||||
fatfs.c:
|
||||
Fixed lseek bug.
|
||||
|
||||
02 Feb 1998 patv
|
||||
globals.h:
|
||||
Fixed size of default_drive. Caused failures when break_ena was not zero.
|
||||
|
||||
31 Jan 1998 patv
|
||||
task.c:
|
||||
Corrected type in load high code.
|
||||
|
||||
31 Jan 1998 patv
|
||||
task.c:
|
||||
Added load high in memory option in DosExeLoader.
|
||||
|
||||
22 Jan 1998 patv
|
||||
task.c:
|
||||
Eliminated warnings.
|
||||
|
||||
22 Jan 1998 patv
|
||||
process.h:
|
||||
Had to change ps_prevps to VOID FAR * due to BC++ error.
|
||||
|
||||
22 Jan 1998 patv
|
||||
process.h:
|
||||
Corrected ps_prevpsp declaration.
|
||||
|
||||
22 Jan 1998 patv
|
||||
task.c:
|
||||
Corrected short .COM problem.
|
||||
|
||||
22 Jan 1998 patv
|
||||
makefile:
|
||||
Outdated stacks.asm.
|
||||
|
||||
22 Jan 1998 patv
|
||||
fatfs.c:
|
||||
Corrected remaining file name and extension copies that did not
|
||||
account for far file nodes due to allocated FILES= spec.
|
||||
|
||||
22 Jan 1998 patv
|
||||
inthndlr.c, proto.h, config.c, globals.h, kernel.asm, main.c,
|
||||
blockio.c, dosnames.c, fatdir.c, fatfs.c:
|
||||
Fixed pointer problems affecting SDA
|
||||
|
||||
11 Jan 1998 patv
|
||||
ioctl.c, proto.h, chario.c, device.h:
|
||||
Added functionality to ioctl.
|
||||
|
||||
08 Jan 1998 patv
|
||||
chario.c:
|
||||
Changed automatic requestic packets to static to save stack space.
|
||||
|
||||
06 Jan 1998 patv
|
||||
inthndlr.c:
|
||||
Broke apart int21_system from int21_handler.
|
||||
|
||||
06 Jan 1998 patv
|
||||
kernel.asm:
|
||||
Reduced device driver stack sizes.
|
||||
|
||||
04 Jan 1998 patv
|
||||
globals.h, proto.h, inthndlr.c, newstuff.c, systime.c, main.c,
|
||||
config.c, ioctl.c, memmgr.c, dsk.c, initoem.c, strings.c, sysclk.c,
|
||||
task.c, fatfs.c, chario.c, dosfns.c, dosnames.c, fattab.c, fcbfns.c,
|
||||
prf.c, syspack.c, blockio.c, error.c, fatdir.c, misc.c, device.h,
|
||||
cds.h, clock.h, date.h, dcb.h, fat.h, file.h, fnode.h, kbd.h, mcb.h,
|
||||
pcb.h, sft.h, dirmatch.h, error.h, exe.h, fcb.h, portab.h, process.h,
|
||||
tail.h, time.h:
|
||||
Changed Log for strip utility
|
||||
|
||||
04 Jan 1998 patv
|
||||
kernel.asm, inthndlr.c, main.c, config.c, newstuff.c, fatfs.c:
|
||||
Corrected subdirectory bug
|
||||
|
||||
03 Jan 1998 patv
|
||||
globals.h, kernel.asm, makefile, systime.c, inthndlr.c, main.c,
|
||||
proto.h, asmsupt.asm, dosfns.c, dosnames.c, fatfs.c, blockio.c,
|
||||
fatdir.c, fcbfns.c:
|
||||
Converted data area to SDA format
|
||||
|
||||
31 Dec 1997 patv
|
||||
strings.c:
|
||||
Added new far string functions.
|
||||
|
||||
30 Dec 1997 patv
|
||||
chario.c:
|
||||
Modified to support SDA
|
||||
|
||||
01 Aug 1997 patv
|
||||
inthndlr.c:
|
||||
COMPATIBILITY: Added return '$' in AL for function int 21h fn 09h
|
||||
|
||||
06 Feb 1997 patv
|
||||
kernel.asm:
|
||||
Reduced stack sizes for block and clock devices.
|
||||
|
||||
06 Feb 1997 patv
|
||||
globals.h:
|
||||
Changed version format string
|
||||
|
||||
06 Feb 1997 patv
|
||||
main.c:
|
||||
Modified to support new version format and changed debug message to
|
||||
output drive letter instead of number.
|
||||
|
||||
06 Feb 1997 patv
|
||||
globals.h:
|
||||
Modified to support new version format
|
||||
|
||||
06 Feb 1997 patv
|
||||
inthndlr.c, kernel.asm:
|
||||
Added hooks for tsc command
|
||||
|
||||
30 Jan 1997 patv
|
||||
makefile:
|
||||
Added TSC flag for trace support.
|
||||
|
||||
22 Jan 1997 patv
|
||||
newstuff.c, inthndlr.c, task.c, irqstack.asm:
|
||||
pre-0.92 Svante Frey bug fixes.
|
||||
|
||||
22 Jan 1997 patv
|
||||
globals.h:
|
||||
Changed to support version.h and pre-0.92 Svante Frey bug fixes.
|
||||
|
||||
22 Jan 1997 patv
|
||||
main.c:
|
||||
Now does correct default drive initialization.
|
||||
|
||||
22 Jan 1997 patv
|
||||
fatfs.c, dosfns.c:
|
||||
pre-0.92 bug fixes
|
||||
|
||||
16 Jan 1997 patv
|
||||
irqstack.asm:
|
||||
Initial revision.
|
||||
|
||||
16 Jan 1997 patv
|
||||
globals.h, main.c, memmgr.c, task.c, ioctl.c, config.c, inthndlr.c,
|
||||
apisupt.asm, nlssupt.asm, proto.h, makefile, fcbfns.c, chario.c,
|
||||
dosnames.c, blockio.c, dosfns.c, fatdir.c, fatfs.c, fattab.c,
|
||||
device.h, fcb.h, sft.h, dsk.c, boot.asm:
|
||||
Corrected copyright
|
||||
|
||||
10 Jan 1997 patv
|
||||
boot.asm:
|
||||
Re-written to support C drive and eliminate restrictions on IPL.SYS
|
||||
|
||||
10 Jan 1997 patv
|
||||
boot/makefile:
|
||||
Changed to use FreeDOS exe2bin and support new boot code
|
||||
|
||||
17 Dec 1996 patv
|
||||
boot/makefile:
|
||||
Converted to FreeDOS exe2bin.
|
||||
|
||||
13 Sep 1996 patv
|
||||
globals.h:
|
||||
Fixed boot for hard drive
|
||||
|
||||
29 Aug 1996 patv
|
||||
makefile, globals.h, task.c, floppy.asm, wrpcclk.asm, wratclk.asm,
|
||||
drivers/makefile, rdpcclk.asm, rdatclk.asm, getvec.asm, boot/makefile,
|
||||
boot.asm:
|
||||
Bug fixes for v0.91b
|
||||
|
||||
29 May 1996 patv
|
||||
clock.h, date.h, dcb.h, kbd.h, dirmatch.h, error.h, exe.h, sft.h,
|
||||
tail.h, time.h, fnode.h, mcb.h, pcb.h, portab.h, process.h,
|
||||
dosnames.h, fat.h, fcb.h, file.h, device.h, dosfns.c, fatdir.c,
|
||||
misc.c, fatfs.c, fattab.c, fcbfns.c, chario.c, dosnames.c, syspack.c,
|
||||
blockio.c, error.c, prf.c, initoem.c, sysclk.c, int2f.asm, config.c,
|
||||
kernel.asm, inthndlr.c, proto.h, systime.c, apisupt.asm, asmsupt.asm,
|
||||
nlssupt.asm, procsupt.asm, task.c, globals.h, memmgr.c, dsk.c, main.c,
|
||||
makefile, execrh.asm, ioctl.c, strings.c:
|
||||
bug fixes for v0.91a
|
||||
|
||||
19 Feb 1996 patv
|
||||
int2f.asm:
|
||||
Initial revision.
|
||||
|
||||
19 Feb 1996 patv
|
||||
makefile, kernel.asm, nlssupt.asm, proto.h, globals.h, config.c,
|
||||
inthndlr.c, task.c, dsk.c, main.c, memmgr.c, strings.c, initoem.c,
|
||||
ioctl.c, sysclk.c, systime.c, fatdir.c, misc.c, fatfs.c, dosfns.c,
|
||||
dosnames.c, fattab.c, drivers/makefile, cds.h, dirmatch.h, exe.h,
|
||||
sft.h, tail.h, time.h, fcb.h, file.h, fnode.h, mcb.h, pcb.h, portab.h,
|
||||
process.h, clock.h, date.h, dcb.h, device.h, dosnames.h, fat.h,
|
||||
error.h, kbd.h:
|
||||
Added NLS, int2f and config.sys processing
|
||||
|
||||
01 Sep 1995 patv
|
||||
wrpcclk.asm, wratclk.asm, rdpcclk.asm, rdatclk.asm, getvec.asm,
|
||||
floppy.asm, boot.asm, apisupt.asm, asmsupt.asm, proto.h, kernel.asm,
|
||||
procsupt.asm, execrh.asm, strings.c, task.c, inthndlr.c, memmgr.c,
|
||||
dsk.c, main.c, sysclk.c, globals.h, initoem.c, ioctl.c, systime.c,
|
||||
dosfns.c, blockio.c, error.c, misc.c, dosnames.c, fcbfns.c, chario.c,
|
||||
fattab.c, prf.c, syspack.c, fatfs.c, fatdir.c, time.h, pcb.h,
|
||||
portab.h, process.h, sft.h, tail.h, fat.h, fcb.h, file.h, fnode.h,
|
||||
mcb.h, date.h, dcb.h, device.h, dirmatch.h, dosnames.h, clock.h,
|
||||
error.h, exe.h, kbd.h:
|
||||
First GPL release.
|
||||
|
||||
30 Jul 1995 patv
|
||||
dsk.c, memmgr.c, proto.h, strings.c, task.c, blockio.c, misc.c, chario.c,
|
||||
dosnames.c, error.c, fattab.c, fcbfns.c, prf.c, syspack.c, dosfns.c,
|
||||
fatdir.c, fatfs.c, mcb.h, pcb.h, portab.h, process.h, sft.h, tail.h,
|
||||
time.h, date.h, dcb.h, device.h, dirmatch.h, dosnames.h, fat.h, fcb.h,
|
||||
file.h, fnode.h, clock.h:
|
||||
Eliminated version strings in ipl
|
||||
|
||||
30 Jul 1995 patv
|
||||
error.h, kbd.h, exe.h:
|
||||
Fixed ipl
|
||||
|
||||
30 Jul 1995 patv
|
||||
boot.asm:
|
||||
Initialized stack before use.
|
||||
|
||||
05 Jul 1995 patv
|
||||
asmsupt.asm, proto.h:
|
||||
Initial revision.
|
||||
|
||||
02 Jul 1995 patv
|
||||
boot.asm, time.h, tail.h, process.h, sft.h, portab.h, pcb.h, kbd.h,
|
||||
mcb.h, fnode.h, file.h, fat.h, fcb.h, exe.h, error.h, dirmatch.h,
|
||||
dosnames.h, dcb.h, device.h, date.h, clock.h, boot/makefile,
|
||||
procsupt.asm, kernel.asm, execrh.asm, apisupt.asm, task.c, strings.c,
|
||||
inthndlr.c, main.c, memmgr.c, dsk.c, sysclk.c, systime.c, ioctl.c,
|
||||
initoem.c, globals.h, makefile, misc.c, error.c, fcbfns.c, dosnames.c,
|
||||
chario.c, syspack.c, prf.c, fattab.c, fatfs.c, fatdir.c, dosfns.c,
|
||||
blockio.c, wrpcclk.asm, wratclk.asm, getvec.asm, rdpcclk.asm,
|
||||
rdatclk.asm, floppy.asm, drivers/makefile:
|
||||
Initial revision.
|
||||
|
||||
25 May 1993 patv
|
||||
dirmatch.h:
|
||||
Initial revision.
|
||||
|
|
@ -30,7 +30,7 @@
|
|||
|
||||
%ifndef SYS
|
||||
%include "..\kernel\segs.inc"
|
||||
segment HMA_TEXT
|
||||
segment _TEXT
|
||||
%else
|
||||
segment _TEXT class=CODE
|
||||
%endif
|
||||
|
|
|
@ -30,7 +30,7 @@
|
|||
|
||||
%include "..\kernel\segs.inc"
|
||||
|
||||
segment HMA_TEXT
|
||||
segment _TEXT
|
||||
|
||||
global _getvec
|
||||
_getvec:
|
||||
|
|
|
@ -32,7 +32,7 @@
|
|||
|
||||
%include "..\kernel\segs.inc"
|
||||
|
||||
segment HMA_TEXT
|
||||
segment _TEXT
|
||||
|
||||
;
|
||||
;COUNT ReadATClock(bcdDays, bcdHours, bcdMinutes, bcdSeconds)
|
||||
|
|
|
@ -30,7 +30,7 @@
|
|||
|
||||
%include "..\kernel\segs.inc"
|
||||
|
||||
segment HMA_TEXT
|
||||
segment _TEXT
|
||||
|
||||
;
|
||||
; BOOL ReadPCClock(Ticks)
|
||||
|
|
|
@ -30,7 +30,7 @@
|
|||
|
||||
%include "..\kernel\segs.inc"
|
||||
|
||||
segment HMA_TEXT
|
||||
segment _TEXT
|
||||
|
||||
;
|
||||
; VOID WriteATClock(bcdDays, bcdHours, bcdMinutes, bcdSeconds)
|
||||
|
|
|
@ -29,7 +29,7 @@
|
|||
;
|
||||
%include "..\kernel\segs.inc"
|
||||
|
||||
segment HMA_TEXT
|
||||
segment _TEXT
|
||||
|
||||
|
||||
;
|
||||
|
|
18
hdr/buffer.h
18
hdr/buffer.h
|
@ -39,26 +39,24 @@ static BYTE *buffer_hRcsId =
|
|||
|
||||
#define BUFFERSIZE 512
|
||||
struct buffer {
|
||||
WORD b_dummy; /* dummy self pointing word to keep MFT from crashing */
|
||||
struct buffer
|
||||
FAR *b_next; /* form linked list for LRU */
|
||||
UWORD b_next; /* next buffer in LRU list */
|
||||
UWORD b_prev; /* previous buffer in LRU list */
|
||||
BYTE b_unit; /* disk for this buffer */
|
||||
BYTE b_flag; /* buffer flags */
|
||||
ULONG b_blkno; /* block for this buffer */
|
||||
UBYTE b_copies; /* number of copies to write */
|
||||
UWORD b_offset; /* offset in sectors between copies
|
||||
to write for FAT sectors */
|
||||
struct dpb FAR *b_dpbp; /* pointer to DPB */
|
||||
UWORD b_remotesz; /* size of remote buffer if remote */
|
||||
BYTE b_padding;
|
||||
UBYTE b_buffer[BUFFERSIZE]; /* 512 byte sectors for now */
|
||||
};
|
||||
|
||||
#define BFR_UNCACHE 0x80 /* indication, not really used */
|
||||
#define BFR_DIRTY 0x40 /* buffer modified */
|
||||
#define BFR_VALID 0x20 /* buffer contains valid data */
|
||||
#define BFR_DATA 0x08 /* buffer is from data area */
|
||||
#define BFR_DIR 0x04 /* buffer is from dir area */
|
||||
#define BFR_FAT 0x02 /* buffer is from fat area */
|
||||
#define BFR_BOOT 0x01 /* buffer is boot disk */
|
||||
#define BFR_UNCACHE 0x01 /* buffer to be released ASAP */
|
||||
|
||||
/*
|
||||
* Log: buffer.h,v
|
||||
* Rev 1.0 20 Apr 2001 17:30:00 Bart Oldeman
|
||||
* Initial revision.
|
||||
*/
|
||||
|
|
27
hdr/cds.h
27
hdr/cds.h
|
@ -94,30 +94,3 @@ struct cds {
|
|||
|
||||
#define CDS_MODE_SKIP_PHYSICAL 0x01 /* don't resolve SUBST, JOIN, NETW */
|
||||
#define CDS_MODE_CHECK_DEV_PATH 0x02 /* check for existence of device path */
|
||||
/*
|
||||
* Log: cds.h,v
|
||||
* Revision 1.2 2000/03/09 06:06:38 kernel
|
||||
* 2017f updates by James Tabor
|
||||
*
|
||||
* Revision 1.1.1.1 1999/03/29 15:39:22 jprice
|
||||
* New version without IPL.SYS
|
||||
*
|
||||
* Revision 1.4 1999/02/01 01:40:06 jprice
|
||||
* Clean up
|
||||
*
|
||||
* Revision 1.3 1999/01/30 08:21:43 jprice
|
||||
* Clean up
|
||||
*
|
||||
* Revision 1.2 1999/01/22 04:17:40 jprice
|
||||
* Formating
|
||||
*
|
||||
* Revision 1.1.1.1 1999/01/20 05:51:01 jprice
|
||||
* Imported sources
|
||||
*
|
||||
|
||||
Rev 1.1 04 Jan 1998 23:14:18 patv
|
||||
Changed Log for strip utility
|
||||
|
||||
Rev 1.0 19 Feb 1996 3:15:52 patv
|
||||
Added NLS, int2f and config.sys processing
|
||||
*/
|
||||
|
|
37
hdr/clock.h
37
hdr/clock.h
|
@ -45,40 +45,3 @@ struct ClockRecord {
|
|||
UBYTE clkSeconds; /* residual seconds. */
|
||||
};
|
||||
|
||||
/*
|
||||
* Log: clock.h,v
|
||||
*
|
||||
* Revision 1.1.1.1 1999/03/29 15:39:22 jprice
|
||||
* New version without IPL.SYS
|
||||
*
|
||||
* Revision 1.4 1999/02/01 01:40:06 jprice
|
||||
* Clean up
|
||||
*
|
||||
* Revision 1.3 1999/01/30 08:21:43 jprice
|
||||
* Clean up
|
||||
*
|
||||
* Revision 1.2 1999/01/22 04:17:40 jprice
|
||||
* Formating
|
||||
*
|
||||
* Revision 1.1.1.1 1999/01/20 05:51:01 jprice
|
||||
* Imported sources
|
||||
*
|
||||
*
|
||||
* Rev 1.5 04 Jan 1998 23:14:18 patv
|
||||
* Changed Log for strip utility
|
||||
*
|
||||
* Rev 1.4 29 May 1996 21:25:20 patv
|
||||
* bug fixes for v0.91a
|
||||
*
|
||||
* Rev 1.3 19 Feb 1996 3:15:30 patv
|
||||
* Added NLS, int2f and config.sys processing
|
||||
*
|
||||
* Rev 1.2 01 Sep 1995 17:35:38 patv
|
||||
* First GPL release.
|
||||
*
|
||||
* Rev 1.1 30 Jul 1995 20:43:46 patv
|
||||
* Eliminated version strings in ipl
|
||||
*
|
||||
* Rev 1.0 02 Jul 1995 10:39:26 patv
|
||||
* Initial revision.
|
||||
*/
|
||||
|
|
37
hdr/date.h
37
hdr/date.h
|
@ -55,40 +55,3 @@ typedef UWORD date;
|
|||
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Log: date.h,v
|
||||
*
|
||||
* Revision 1.2 1999/08/25 03:17:11 jprice
|
||||
* ror4 patches to allow TC 2.01 compile.
|
||||
*
|
||||
* Revision 1.1.1.1 1999/03/29 15:39:23 jprice
|
||||
* New version without IPL.SYS
|
||||
*
|
||||
* Revision 1.3 1999/02/01 01:40:06 jprice
|
||||
* Clean up
|
||||
*
|
||||
* Revision 1.2 1999/01/22 04:17:40 jprice
|
||||
* Formating
|
||||
*
|
||||
* Revision 1.1.1.1 1999/01/20 05:51:01 jprice
|
||||
* Imported sources
|
||||
*
|
||||
*
|
||||
* Rev 1.5 04 Jan 1998 23:14:18 patv
|
||||
* Changed Log for strip utility
|
||||
*
|
||||
* Rev 1.4 29 May 1996 21:25:20 patv
|
||||
* bug fixes for v0.91a
|
||||
*
|
||||
* Rev 1.3 19 Feb 1996 3:15:30 patv
|
||||
* Added NLS, int2f and config.sys processing
|
||||
*
|
||||
* Rev 1.2 01 Sep 1995 17:35:40 patv
|
||||
* First GPL release.
|
||||
*
|
||||
* Rev 1.1 30 Jul 1995 20:43:48 patv
|
||||
* Eliminated version strings in ipl
|
||||
*
|
||||
* Rev 1.0 02 Jul 1995 10:39:28 patv
|
||||
* Initial revision.
|
||||
*/
|
||||
|
|
40
hdr/dcb.h
40
hdr/dcb.h
|
@ -90,43 +90,3 @@ struct dpb {
|
|||
#define XUNKNCLSTFREE 0xffffffffl /* unknown for DOS */
|
||||
#define UNKNCLSTFREE 0xffff /* unknown for DOS */
|
||||
|
||||
/*
|
||||
* Log: dcb.h,v
|
||||
*
|
||||
* Revision 1.3 2000/03/09 06:06:38 kernel
|
||||
* 2017f updates by James Tabor
|
||||
*
|
||||
* Revision 1.2 1999/04/16 00:52:09 jprice
|
||||
* Optimized FAT handling
|
||||
*
|
||||
* Revision 1.1.1.1 1999/03/29 15:39:23 jprice
|
||||
* New version without IPL.SYS
|
||||
*
|
||||
* Revision 1.3 1999/02/01 01:40:06 jprice
|
||||
* Clean up
|
||||
*
|
||||
* Revision 1.2 1999/01/22 04:17:40 jprice
|
||||
* Formating
|
||||
*
|
||||
* Revision 1.1.1.1 1999/01/20 05:51:01 jprice
|
||||
* Imported sources
|
||||
*
|
||||
*
|
||||
* Rev 1.5 04 Jan 1998 23:14:18 patv
|
||||
* Changed Log for strip utility
|
||||
*
|
||||
* Rev 1.4 29 May 1996 21:25:20 patv
|
||||
* bug fixes for v0.91a
|
||||
*
|
||||
* Rev 1.3 19 Feb 1996 3:15:30 patv
|
||||
* Added NLS, int2f and config.sys processing
|
||||
*
|
||||
* Rev 1.2 01 Sep 1995 17:35:40 patv
|
||||
* First GPL release.
|
||||
*
|
||||
* Rev 1.1 30 Jul 1995 20:43:48 patv
|
||||
* Eliminated version strings in ipl
|
||||
*
|
||||
* Rev 1.0 02 Jul 1995 10:39:30 patv
|
||||
* Initial revision.
|
||||
*/
|
||||
|
|
58
hdr/device.h
58
hdr/device.h
|
@ -476,61 +476,3 @@ WORD ASMCFUNC execrh(request FAR *, struct dhdr FAR *);
|
|||
* end of device.h
|
||||
*/
|
||||
|
||||
/*
|
||||
* Log: device.h,v
|
||||
*
|
||||
* Revision 1.4 2000/04/29 05:13:16 jtabor
|
||||
* Added new functions and clean up code
|
||||
*
|
||||
* Revision 1.3 2000/03/09 06:06:38 kernel
|
||||
* 2017f updates by James Tabor
|
||||
*
|
||||
* Revision 1.2 1999/04/04 18:50:14 jprice
|
||||
* no message
|
||||
*
|
||||
* Revision 1.1.1.1 1999/03/29 15:39:26 jprice
|
||||
* New version without IPL.SYS
|
||||
*
|
||||
* Revision 1.5 1999/02/08 05:58:24 jprice
|
||||
* Added Pat's 1937 kernel patches
|
||||
*
|
||||
* Revision 1.4 1999/02/04 03:08:47 jprice
|
||||
* no message
|
||||
*
|
||||
* Revision 1.3 1999/02/01 01:40:06 jprice
|
||||
* Clean up
|
||||
*
|
||||
* Revision 1.2 1999/01/22 04:17:40 jprice
|
||||
* Formating
|
||||
*
|
||||
* Revision 1.1.1.1 1999/01/20 05:51:01 jprice
|
||||
* Imported sources
|
||||
*
|
||||
*
|
||||
* Rev 1.8 06 Dec 1998 8:41:30 patv
|
||||
* Changed for new I/O subsystem
|
||||
*
|
||||
* Rev 1.7 11 Jan 1998 2:05:54 patv
|
||||
* Added functionality to ioctl.
|
||||
*
|
||||
* Rev 1.6 04 Jan 1998 23:14:20 patv
|
||||
* Changed Log for strip utility
|
||||
*
|
||||
* Rev 1.5 16 Jan 1997 12:46:06 patv
|
||||
* pre-Release 0.92 feature additions
|
||||
*
|
||||
* Rev 1.4 29 May 1996 21:25:12 patv
|
||||
* bug fixes for v0.91a
|
||||
*
|
||||
* Rev 1.3 19 Feb 1996 3:15:30 patv
|
||||
* Added NLS, int2f and config.sys processing
|
||||
*
|
||||
* Rev 1.2 01 Sep 1995 17:35:40 patv
|
||||
* First GPL release.
|
||||
*
|
||||
* Rev 1.1 30 Jul 1995 20:43:48 patv
|
||||
* Eliminated version strings in ipl
|
||||
*
|
||||
* Rev 1.0 02 Jul 1995 10:39:30 patv
|
||||
* Initial revision.
|
||||
*/
|
||||
|
|
|
@ -67,46 +67,3 @@ typedef struct {
|
|||
BYTE dm_name[FNAME_SIZE + FEXT_SIZE + 2]; /* file name */
|
||||
} dmatch;
|
||||
|
||||
/*
|
||||
* Log: dirmatch.h,v
|
||||
* Revision 1.3 2000/03/09 06:06:38 kernel
|
||||
* 2017f updates by James Tabor
|
||||
*
|
||||
* Revision 1.2 1999/08/25 03:17:11 jprice
|
||||
* ror4 patches to allow TC 2.01 compile.
|
||||
*
|
||||
* Revision 1.1.1.1 1999/03/29 15:39:21 jprice
|
||||
* New version without IPL.SYS
|
||||
*
|
||||
* Revision 1.3 1999/02/01 01:40:06 jprice
|
||||
* Clean up
|
||||
*
|
||||
* Revision 1.2 1999/01/22 04:17:40 jprice
|
||||
* Formating
|
||||
*
|
||||
* Revision 1.1.1.1 1999/01/20 05:51:01 jprice
|
||||
* Imported sources
|
||||
*
|
||||
*
|
||||
* Rev 1.5 04 Jan 1998 23:14:16 patv
|
||||
* Changed Log for strip utility
|
||||
*
|
||||
* Rev 1.4 29 May 1996 21:25:18 patv
|
||||
* bug fixes for v0.91a
|
||||
*
|
||||
* Rev 1.3 19 Feb 1996 3:15:34 patv
|
||||
* Added NLS, int2f and config.sys processing
|
||||
*
|
||||
* Rev 1.2 01 Sep 1995 17:35:40 patv
|
||||
* First GPL release.
|
||||
*
|
||||
* Rev 1.1 30 Jul 1995 20:43:48 patv
|
||||
* Eliminated version strings in ipl
|
||||
*
|
||||
* Rev 1.0 02 Jul 1995 10:39:34 patv
|
||||
* Initial revision.
|
||||
*
|
||||
* Rev 1.0 25 May 1993 23:30:26 patv
|
||||
* Initial revision.
|
||||
*
|
||||
*/
|
||||
|
|
|
@ -44,36 +44,3 @@ struct dosnames {
|
|||
UBYTE dn_name[FNAME_SIZE + FEXT_SIZE + 1]; /* the file name */
|
||||
};
|
||||
|
||||
/*
|
||||
* Log: dosnames.h,v
|
||||
* Revision 1.2 2000/05/08 04:28:22 jimtabor
|
||||
* Update CVS to 2020
|
||||
*
|
||||
* Revision 1.1.1.1 1999/03/29 15:39:27 jprice
|
||||
* New version without IPL.SYS
|
||||
*
|
||||
* Revision 1.3 1999/02/01 01:40:06 jprice
|
||||
* Clean up
|
||||
*
|
||||
* Revision 1.2 1999/01/22 04:17:40 jprice
|
||||
* Formating
|
||||
*
|
||||
* Revision 1.1.1.1 1999/01/20 05:51:01 jprice
|
||||
* Imported sources
|
||||
*
|
||||
*
|
||||
* Rev 1.4 29 May 1996 21:25:14 patv
|
||||
* bug fixes for v0.91a
|
||||
*
|
||||
* Rev 1.3 19 Feb 1996 3:15:30 patv
|
||||
* Added NLS, int2f and config.sys processing
|
||||
*
|
||||
* Rev 1.2 01 Sep 1995 17:35:40 patv
|
||||
* First GPL release.
|
||||
*
|
||||
* Rev 1.1 30 Jul 1995 20:43:48 patv
|
||||
* Eliminated version strings in ipl
|
||||
*
|
||||
* Rev 1.0 02 Jul 1995 10:39:34 patv
|
||||
* Initial revision.
|
||||
*/
|
||||
|
|
43
hdr/error.h
43
hdr/error.h
|
@ -86,46 +86,3 @@ static BYTE *error_hRcsId =
|
|||
#define ABORT 2
|
||||
#define FAIL 3
|
||||
|
||||
/*
|
||||
* Log: error.h,v
|
||||
*
|
||||
* Revision 1.1.1.1 1999/03/29 15:39:27 jprice
|
||||
* New version without IPL.SYS
|
||||
*
|
||||
* Revision 1.5 1999/02/08 05:58:24 jprice
|
||||
* Added Pat's 1937 kernel patches
|
||||
*
|
||||
* Revision 1.4 1999/02/01 01:40:06 jprice
|
||||
* Clean up
|
||||
*
|
||||
* Revision 1.3 1999/01/30 08:21:43 jprice
|
||||
* Clean up
|
||||
*
|
||||
* Revision 1.2 1999/01/22 04:17:40 jprice
|
||||
* Formating
|
||||
*
|
||||
* Revision 1.1.1.1 1999/01/20 05:51:01 jprice
|
||||
* Imported sources
|
||||
*
|
||||
*
|
||||
* Rev 1.6 06 Dec 1998 8:41:00 patv
|
||||
* Added new errors for new I/O subsystem.
|
||||
*
|
||||
* Rev 1.5 04 Jan 1998 23:14:16 patv
|
||||
* Changed Log for strip utility
|
||||
*
|
||||
* Rev 1.4 29 May 1996 21:25:18 patv
|
||||
* bug fixes for v0.91a
|
||||
*
|
||||
* Rev 1.3 19 Feb 1996 3:15:28 patv
|
||||
* Added NLS, int2f and config.sys processing
|
||||
*
|
||||
* Rev 1.2 01 Sep 1995 17:35:38 patv
|
||||
* First GPL release.
|
||||
*
|
||||
* Rev 1.1 30 Jul 1995 20:42:28 patv
|
||||
* fixed ipl
|
||||
*
|
||||
* Rev 1.0 02 Jul 1995 10:39:36 patv
|
||||
* Initial revision.
|
||||
*/
|
||||
|
|
34
hdr/exe.h
34
hdr/exe.h
|
@ -55,37 +55,3 @@ typedef struct {
|
|||
#define MAGIC 0x5a4d
|
||||
#define OLD_MAGIC 0x4d5a
|
||||
|
||||
/*
|
||||
* Log: exe.h,v
|
||||
*
|
||||
* Revision 1.1.1.1 1999/03/29 15:39:28 jprice
|
||||
* New version without IPL.SYS
|
||||
*
|
||||
* Revision 1.3 1999/02/01 01:40:06 jprice
|
||||
* Clean up
|
||||
*
|
||||
* Revision 1.2 1999/01/22 04:17:40 jprice
|
||||
* Formating
|
||||
*
|
||||
* Revision 1.1.1.1 1999/01/20 05:51:01 jprice
|
||||
* Imported sources
|
||||
*
|
||||
*
|
||||
* Rev 1.5 04 Jan 1998 23:14:16 patv
|
||||
* Changed Log for strip utility
|
||||
*
|
||||
* Rev 1.4 29 May 1996 21:25:18 patv
|
||||
* bug fixes for v0.91a
|
||||
*
|
||||
* Rev 1.3 19 Feb 1996 3:15:34 patv
|
||||
* Added NLS, int2f and config.sys processing
|
||||
*
|
||||
* Rev 1.2 01 Sep 1995 17:35:38 patv
|
||||
* First GPL release.
|
||||
*
|
||||
* Rev 1.1 30 Jul 1995 20:41:56 patv
|
||||
* Fixed ipl
|
||||
*
|
||||
* Rev 1.0 02 Jul 1995 10:39:38 patv
|
||||
* Initial revision.
|
||||
*/
|
||||
|
|
67
hdr/fat.h
67
hdr/fat.h
|
@ -65,9 +65,29 @@ static BYTE *fat_hRcsId =
|
|||
/* Test for 16 bit or 12 bit FAT */
|
||||
#define SIZEOF_CLST16 2
|
||||
#define SIZEOF_CLST32 4
|
||||
#define FAT_MAGIC 4086
|
||||
#define FAT_MAGIC16 ((unsigned)65526l)
|
||||
#define FAT_MAGIC32 268435456l
|
||||
|
||||
/* FAT cluster special flags */
|
||||
#define FREE 0x000
|
||||
|
||||
#ifdef WITHFAT32
|
||||
#define LONG_LAST_CLUSTER 0x0FFFFFFFl
|
||||
#define LONG_BAD 0x0FFFFFF7l
|
||||
#else
|
||||
#define LONG_LAST_CLUSTER 0xFFFF
|
||||
#define LONG_BAD 0xFFF7
|
||||
#endif
|
||||
#define MASK16 0xFFF8
|
||||
#define BAD16 0xFFF7
|
||||
#define MASK12 0xFF8
|
||||
#define BAD12 0xFF7
|
||||
|
||||
/* magic constants: even though FF7 is BAD so FF6 could be a valid cluster
|
||||
no., MS docs specify that FF5 is the maximal possible cluster number
|
||||
for FAT12; similar for 16 and 32 */
|
||||
|
||||
#define FAT_MAGIC 4085
|
||||
#define FAT_MAGIC16 ((unsigned)65525l)
|
||||
#define FAT_MAGIC32 268435455l
|
||||
|
||||
/* int ISFAT32(struct dpb FAR *dpbp);*/
|
||||
#define ISFAT32(x) _ISFAT32(x)
|
||||
|
@ -77,6 +97,7 @@ static BYTE *fat_hRcsId =
|
|||
*/
|
||||
#define _ISFAT32(dpbp) (((dpbp)->dpb_fatsize)==0)
|
||||
#define ISFAT16(dpbp) (((dpbp)->dpb_size)>FAT_MAGIC && ((dpbp)->dpb_size)<=FAT_MAGIC16 )
|
||||
#define ELSE_ISFAT16(dpbp) (((dpbp)->dpb_size)<=FAT_MAGIC16 )
|
||||
#define ISFAT12(dpbp) ((((dpbp)->dpb_size)-1)<FAT_MAGIC)
|
||||
/* dpb_size == 0 for FAT32, hence doing -1 here */
|
||||
|
||||
|
@ -141,43 +162,3 @@ struct lfn_entry {
|
|||
|
||||
#define DIRENT_SIZE 32
|
||||
|
||||
/*
|
||||
* Log: fat.h,v
|
||||
*
|
||||
* Revision 1.2 1999/05/03 06:28:00 jprice
|
||||
* Changed some variables from signed to unsigned.
|
||||
*
|
||||
* Revision 1.1.1.1 1999/03/29 15:39:28 jprice
|
||||
* New version without IPL.SYS
|
||||
*
|
||||
* Revision 1.4 1999/02/01 01:40:06 jprice
|
||||
* Clean up
|
||||
*
|
||||
* Revision 1.3 1999/01/30 08:21:43 jprice
|
||||
* Clean up
|
||||
*
|
||||
* Revision 1.2 1999/01/22 04:17:40 jprice
|
||||
* Formating
|
||||
*
|
||||
* Revision 1.1.1.1 1999/01/20 05:51:01 jprice
|
||||
* Imported sources
|
||||
*
|
||||
*
|
||||
* Rev 1.5 04 Jan 1998 23:14:18 patv
|
||||
* Changed Log for strip utility
|
||||
*
|
||||
* Rev 1.4 29 May 1996 21:25:14 patv
|
||||
* bug fixes for v0.91a
|
||||
*
|
||||
* Rev 1.3 19 Feb 1996 3:15:30 patv
|
||||
* Added NLS, int2f and config.sys processing
|
||||
*
|
||||
* Rev 1.2 01 Sep 1995 17:35:42 patv
|
||||
* First GPL release.
|
||||
*
|
||||
* Rev 1.1 30 Jul 1995 20:43:48 patv
|
||||
* Eliminated version strings in ipl
|
||||
*
|
||||
* Rev 1.0 02 Jul 1995 10:39:40 patv
|
||||
* Initial revision.
|
||||
*/
|
||||
|
|
40
hdr/fcb.h
40
hdr/fcb.h
|
@ -118,43 +118,3 @@ typedef struct {
|
|||
BYTE renReserved2[9];
|
||||
} rfcb;
|
||||
|
||||
/*
|
||||
* Log: fcb.h,v
|
||||
*
|
||||
* Revision 1.2 1999/09/20 21:24:54 jprice
|
||||
* *** empty log message ***
|
||||
*
|
||||
* Revision 1.1.1.1 1999/03/29 15:39:29 jprice
|
||||
* New version without IPL.SYS
|
||||
*
|
||||
* Revision 1.3 1999/02/01 01:40:06 jprice
|
||||
* Clean up
|
||||
*
|
||||
* Revision 1.2 1999/01/22 04:17:40 jprice
|
||||
* Formating
|
||||
*
|
||||
* Revision 1.1.1.1 1999/01/20 05:51:01 jprice
|
||||
* Imported sources
|
||||
*
|
||||
*
|
||||
* Rev 1.6 04 Jan 1998 23:14:16 patv
|
||||
* Changed Log for strip utility
|
||||
*
|
||||
* Rev 1.5 16 Jan 1997 12:46:06 patv
|
||||
* pre-Release 0.92 feature additions
|
||||
*
|
||||
* Rev 1.4 29 May 1996 21:25:14 patv
|
||||
* bug fixes for v0.91a
|
||||
*
|
||||
* Rev 1.3 19 Feb 1996 3:15:32 patv
|
||||
* Added NLS, int2f and config.sys processing
|
||||
*
|
||||
* Rev 1.2 01 Sep 1995 17:35:42 patv
|
||||
* First GPL release.
|
||||
*
|
||||
* Rev 1.1 30 Jul 1995 20:43:48 patv
|
||||
* Eliminated version strings in ipl
|
||||
*
|
||||
* Rev 1.0 02 Jul 1995 10:39:40 patv
|
||||
* Initial revision.
|
||||
*/
|
||||
|
|
34
hdr/file.h
34
hdr/file.h
|
@ -66,37 +66,3 @@ static BYTE *file_hRcsId =
|
|||
/* status for extended open */
|
||||
enum {S_OPENED = 1, S_CREATED = 2, S_REPLACED = 3};
|
||||
|
||||
/*
|
||||
* Log: file.h,v
|
||||
*
|
||||
* Revision 1.1.1.1 1999/03/29 15:39:30 jprice
|
||||
* New version without IPL.SYS
|
||||
*
|
||||
* Revision 1.3 1999/02/01 01:40:06 jprice
|
||||
* Clean up
|
||||
*
|
||||
* Revision 1.2 1999/01/22 04:17:40 jprice
|
||||
* Formating
|
||||
*
|
||||
* Revision 1.1.1.1 1999/01/20 05:51:01 jprice
|
||||
* Imported sources
|
||||
*
|
||||
*
|
||||
* Rev 1.5 04 Jan 1998 23:14:18 patv
|
||||
* Changed Log for strip utility
|
||||
*
|
||||
* Rev 1.4 29 May 1996 21:25:14 patv
|
||||
* bug fixes for v0.91a
|
||||
*
|
||||
* Rev 1.3 19 Feb 1996 3:15:32 patv
|
||||
* Added NLS, int2f and config.sys processing
|
||||
*
|
||||
* Rev 1.2 01 Sep 1995 17:35:42 patv
|
||||
* First GPL release.
|
||||
*
|
||||
* Rev 1.1 30 Jul 1995 20:43:48 patv
|
||||
* Eliminated version strings in ipl
|
||||
*
|
||||
* Rev 1.0 02 Jul 1995 10:39:42 patv
|
||||
* Initial revision.
|
||||
*/
|
||||
|
|
45
hdr/fnode.h
45
hdr/fnode.h
|
@ -57,7 +57,7 @@ struct f_node {
|
|||
ULONG f_offset; /* byte offset for next op */
|
||||
ULONG f_highwater; /* the largest offset ever */
|
||||
CLUSTER f_back; /* the cluster we were at */
|
||||
ULONG f_cluster_offset; /* byte offset that the next 3 point to */
|
||||
CLUSTER f_cluster_offset; /* relative cluster number within file */
|
||||
CLUSTER f_cluster; /* the cluster we are at */
|
||||
UWORD f_sector; /* the sector in the cluster */
|
||||
UWORD f_boff; /* the byte in the cluster */
|
||||
|
@ -74,46 +74,3 @@ struct lfn_inode {
|
|||
};
|
||||
|
||||
typedef struct lfn_inode FAR * lfn_inode_ptr;
|
||||
/*
|
||||
* Log: fnode.h,v
|
||||
*
|
||||
* Revision 1.3 2000/03/09 06:06:38 kernel
|
||||
* 2017f updates by James Tabor
|
||||
*
|
||||
* Revision 1.2 1999/04/16 00:52:10 jprice
|
||||
* Optimized FAT handling
|
||||
*
|
||||
* Revision 1.1.1.1 1999/03/29 15:39:30 jprice
|
||||
* New version without IPL.SYS
|
||||
*
|
||||
* Revision 1.4 1999/02/01 01:40:06 jprice
|
||||
* Clean up
|
||||
*
|
||||
* Revision 1.3 1999/01/30 08:21:43 jprice
|
||||
* Clean up
|
||||
*
|
||||
* Revision 1.2 1999/01/22 04:17:40 jprice
|
||||
* Formating
|
||||
*
|
||||
* Revision 1.1.1.1 1999/01/20 05:51:01 jprice
|
||||
* Imported sources
|
||||
*
|
||||
*
|
||||
* Rev 1.5 04 Jan 1998 23:14:18 patv
|
||||
* Changed Log for strip utility
|
||||
*
|
||||
* Rev 1.4 29 May 1996 21:25:16 patv
|
||||
* bug fixes for v0.91a
|
||||
*
|
||||
* Rev 1.3 19 Feb 1996 3:15:32 patv
|
||||
* Added NLS, int2f and config.sys processing
|
||||
*
|
||||
* Rev 1.2 01 Sep 1995 17:35:42 patv
|
||||
* First GPL release.
|
||||
*
|
||||
* Rev 1.1 30 Jul 1995 20:43:48 patv
|
||||
* Eliminated version strings in ipl
|
||||
*
|
||||
* Rev 1.0 02 Jul 1995 10:39:44 patv
|
||||
* Initial revision.
|
||||
*/
|
||||
|
|
34
hdr/kbd.h
34
hdr/kbd.h
|
@ -46,37 +46,3 @@ typedef struct {
|
|||
BYTE kb_buf[KBD_MAXLENGTH]; /* the buffer itself */
|
||||
} keyboard;
|
||||
|
||||
/*
|
||||
* Log: kbd.h,v
|
||||
*
|
||||
* Revision 1.1.1.1 1999/03/29 15:39:31 jprice
|
||||
* New version without IPL.SYS
|
||||
*
|
||||
* Revision 1.3 1999/02/01 01:40:06 jprice
|
||||
* Clean up
|
||||
*
|
||||
* Revision 1.2 1999/01/22 04:17:40 jprice
|
||||
* Formating
|
||||
*
|
||||
* Revision 1.1.1.1 1999/01/20 05:51:01 jprice
|
||||
* Imported sources
|
||||
*
|
||||
*
|
||||
* Rev 1.5 04 Jan 1998 23:14:18 patv
|
||||
* Changed Log for strip utility
|
||||
*
|
||||
* Rev 1.4 29 May 1996 21:25:20 patv
|
||||
* bug fixes for v0.91a
|
||||
*
|
||||
* Rev 1.3 19 Feb 1996 3:15:28 patv
|
||||
* Added NLS, int2f and config.sys processing
|
||||
*
|
||||
* Rev 1.2 01 Sep 1995 17:35:38 patv
|
||||
* First GPL release.
|
||||
*
|
||||
* Rev 1.1 30 Jul 1995 20:42:22 patv
|
||||
* fixed ipl
|
||||
*
|
||||
* Rev 1.0 02 Jul 1995 10:39:46 patv
|
||||
* Initial revision.
|
||||
*/
|
||||
|
|
37
hdr/mcb.h
37
hdr/mcb.h
|
@ -65,40 +65,3 @@ typedef struct {
|
|||
BYTE m_name[8]; /* owner name limited to 8 bytes */
|
||||
} mcb;
|
||||
|
||||
/*
|
||||
* Log: mcb.h,v
|
||||
*
|
||||
* Revision 1.2 2000/03/09 06:06:38 kernel
|
||||
* 2017f updates by James Tabor
|
||||
*
|
||||
* Revision 1.1.1.1 1999/03/29 15:39:31 jprice
|
||||
* New version without IPL.SYS
|
||||
*
|
||||
* Revision 1.3 1999/02/01 01:40:06 jprice
|
||||
* Clean up
|
||||
*
|
||||
* Revision 1.2 1999/01/22 04:17:40 jprice
|
||||
* Formating
|
||||
*
|
||||
* Revision 1.1.1.1 1999/01/20 05:51:01 jprice
|
||||
* Imported sources
|
||||
*
|
||||
*
|
||||
* Rev 1.5 04 Jan 1998 23:14:18 patv
|
||||
* Changed Log for strip utility
|
||||
*
|
||||
* Rev 1.4 29 May 1996 21:25:16 patv
|
||||
* bug fixes for v0.91a
|
||||
*
|
||||
* Rev 1.3 19 Feb 1996 3:15:32 patv
|
||||
* Added NLS, int2f and config.sys processing
|
||||
*
|
||||
* Rev 1.2 01 Sep 1995 17:35:42 patv
|
||||
* First GPL release.
|
||||
*
|
||||
* Rev 1.1 30 Jul 1995 20:43:50 patv
|
||||
* Eliminated version strings in ipl
|
||||
*
|
||||
* Rev 1.0 02 Jul 1995 10:39:46 patv
|
||||
* Initial revision.
|
||||
*/
|
||||
|
|
37
hdr/pcb.h
37
hdr/pcb.h
|
@ -178,40 +178,3 @@ void ASMCFUNC intr(int intnr, iregs * const pr);
|
|||
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Log: pcb.h,v
|
||||
*
|
||||
* Revision 1.1.1.1 1999/03/29 15:39:32 jprice
|
||||
* New version without IPL.SYS
|
||||
*
|
||||
* Revision 1.3 1999/02/01 01:40:06 jprice
|
||||
* Clean up
|
||||
*
|
||||
* Revision 1.2 1999/01/22 04:17:40 jprice
|
||||
* Formating
|
||||
*
|
||||
* Revision 1.1.1.1 1999/01/20 05:51:01 jprice
|
||||
* Imported sources
|
||||
*
|
||||
*
|
||||
* Rev 1.6 07 Feb 1998 20:47:40 patv
|
||||
* Modified stack frame to match DOS standard
|
||||
*
|
||||
* Rev 1.5 04 Jan 1998 23:14:18 patv
|
||||
* Changed Log for strip utility
|
||||
*
|
||||
* Rev 1.4 29 May 1996 21:25:16 patv
|
||||
* bug fixes for v0.91a
|
||||
*
|
||||
* Rev 1.3 19 Feb 1996 3:15:32 patv
|
||||
* Added NLS, int2f and config.sys processing
|
||||
*
|
||||
* Rev 1.2 01 Sep 1995 17:35:44 patv
|
||||
* First GPL release.
|
||||
*
|
||||
* Rev 1.1 30 Jul 1995 20:43:50 patv
|
||||
* Eliminated version strings in ipl
|
||||
*
|
||||
* Rev 1.0 02 Jul 1995 10:39:48 patv
|
||||
* Initial revision.
|
||||
*/
|
||||
|
|
39
hdr/portab.h
39
hdr/portab.h
|
@ -99,8 +99,7 @@ void __int__(int);
|
|||
#define MC68K
|
||||
|
||||
#else
|
||||
anyone knows a _portable_ way to create nice errors ? ?
|
||||
at least this causes the compiler not to compile : -)
|
||||
#error Unknown compiler
|
||||
#endif
|
||||
|
||||
#ifdef MC68K
|
||||
|
@ -261,39 +260,3 @@ typedef VOID (FAR ASMCFUNC * intvec) (void);
|
|||
#define PROTO
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Log: portab.h,v
|
||||
* Revision 1.2 1999/08/25 03:17:11 jprice
|
||||
* ror4 patches to allow TC 2.01 compile.
|
||||
*
|
||||
* Revision 1.1.1.1 1999/03/29 15:39:33 jprice
|
||||
* New version without IPL.SYS
|
||||
*
|
||||
* Revision 1.3 1999/02/01 01:40:06 jprice
|
||||
* Clean up
|
||||
*
|
||||
* Revision 1.2 1999/01/22 04:17:40 jprice
|
||||
* Formating
|
||||
*
|
||||
* Revision 1.1.1.1 1999/01/20 05:51:01 jprice
|
||||
* Imported sources
|
||||
*
|
||||
*
|
||||
* Rev 1.5 04 Jan 1998 23:14:16 patv
|
||||
* Changed Log for strip utility
|
||||
*
|
||||
* Rev 1.4 29 May 1996 21:25:16 patv
|
||||
* bug fixes for v0.91a
|
||||
*
|
||||
* Rev 1.3 19 Feb 1996 3:15:32 patv
|
||||
* Added NLS, int2f and config.sys processing
|
||||
*
|
||||
* Rev 1.2 01 Sep 1995 17:35:44 patv
|
||||
* First GPL release.
|
||||
*
|
||||
* Rev 1.1 30 Jul 1995 20:43:50 patv
|
||||
* Eliminated version strings in ipl
|
||||
*
|
||||
* Rev 1.0 02 Jul 1995 10:39:50 patv
|
||||
* Initial revision.
|
||||
*/
|
||||
|
|
|
@ -101,43 +101,3 @@ typedef struct {
|
|||
#define ps_fcb2 _u._u2._ps_fcb2
|
||||
#define ps_cmd _u._u3._ps_cmd
|
||||
|
||||
/*
|
||||
* Log: process.h,v
|
||||
*
|
||||
* Revision 1.1.1.1 1999/03/29 15:39:34 jprice
|
||||
* New version without IPL.SYS
|
||||
*
|
||||
* Revision 1.3 1999/02/01 01:40:06 jprice
|
||||
* Clean up
|
||||
*
|
||||
* Revision 1.2 1999/01/22 04:17:40 jprice
|
||||
* Formating
|
||||
*
|
||||
* Revision 1.1.1.1 1999/01/20 05:51:01 jprice
|
||||
* Imported sources
|
||||
*
|
||||
*
|
||||
* Rev 1.7 22 Jan 1998 22:13:00 patv
|
||||
* Had to change ps_prevps to VOID FAR * due to BC++ error.
|
||||
*
|
||||
* Rev 1.6 22 Jan 1998 22:05:22 patv
|
||||
* Corrected ps_prevpsp declaration.
|
||||
*
|
||||
* Rev 1.5 04 Jan 1998 23:14:16 patv
|
||||
* Changed Log for strip utility
|
||||
*
|
||||
* Rev 1.4 29 May 1996 21:25:16 patv
|
||||
* bug fixes for v0.91a
|
||||
*
|
||||
* Rev 1.3 19 Feb 1996 3:15:32 patv
|
||||
* Added NLS, int2f and config.sys processing
|
||||
*
|
||||
* Rev 1.2 01 Sep 1995 17:35:44 patv
|
||||
* First GPL release.
|
||||
*
|
||||
* Rev 1.1 30 Jul 1995 20:43:50 patv
|
||||
* Eliminated version strings in ipl
|
||||
*
|
||||
* Rev 1.0 02 Jul 1995 10:39:52 patv
|
||||
* Initial revision.
|
||||
*/
|
||||
|
|
43
hdr/sft.h
43
hdr/sft.h
|
@ -139,46 +139,3 @@ typedef struct _sfttbl {
|
|||
#define sft_flags_hi sft_flags_union._split_sft_flags._sft_flags_hi
|
||||
#define sft_flags_lo sft_flags_union._split_sft_flags._sft_flags_lo
|
||||
|
||||
/*
|
||||
* Log: sft.h,v
|
||||
*
|
||||
* Revision 1.3 2000/03/09 06:06:38 kernel
|
||||
* 2017f updates by James Tabor
|
||||
*
|
||||
* Revision 1.2 1999/04/04 18:50:25 jprice
|
||||
* no message
|
||||
*
|
||||
* Revision 1.1.1.1 1999/03/29 15:39:35 jprice
|
||||
* New version without IPL.SYS
|
||||
*
|
||||
* Revision 1.3 1999/02/01 01:40:06 jprice
|
||||
* Clean up
|
||||
*
|
||||
* Revision 1.2 1999/01/22 04:17:40 jprice
|
||||
* Formating
|
||||
*
|
||||
* Revision 1.1.1.1 1999/01/20 05:51:01 jprice
|
||||
* Imported sources
|
||||
*
|
||||
*
|
||||
* Rev 1.6 04 Jan 1998 23:14:18 patv
|
||||
* Changed Log for strip utility
|
||||
*
|
||||
* Rev 1.5 16 Jan 1997 12:46:04 patv
|
||||
* pre-Release 0.92 feature additions
|
||||
*
|
||||
* Rev 1.4 29 May 1996 21:25:18 patv
|
||||
* bug fixes for v0.91a
|
||||
*
|
||||
* Rev 1.3 19 Feb 1996 3:15:34 patv
|
||||
* Added NLS, int2f and config.sys processing
|
||||
*
|
||||
* Rev 1.2 01 Sep 1995 17:35:44 patv
|
||||
* First GPL release.
|
||||
*
|
||||
* Rev 1.1 30 Jul 1995 20:43:50 patv
|
||||
* Eliminated version strings in ipl
|
||||
*
|
||||
* Rev 1.0 02 Jul 1995 10:39:52 patv
|
||||
* Initial revision.
|
||||
*/
|
||||
|
|
|
@ -185,28 +185,3 @@ irp_hi equ 26
|
|||
%endmacro
|
||||
|
||||
%ENDIF
|
||||
|
||||
; Log: stacks.inc,v
|
||||
; Revision 1.3 2000/03/09 06:06:38 kernel
|
||||
; 2017f updates by James Tabor
|
||||
;
|
||||
; Revision 1.2 1999/08/10 17:56:26 jprice
|
||||
; ror4 2011-02 patch
|
||||
;
|
||||
; Revision 1.1.1.1 1999/03/29 15:39:35 jprice
|
||||
; New version without IPL.SYS
|
||||
;
|
||||
; Revision 1.3 1999/02/01 01:40:06 jprice
|
||||
; Clean up
|
||||
;
|
||||
; Revision 1.2 1999/01/22 04:17:40 jprice
|
||||
; Formating
|
||||
;
|
||||
; Revision 1.1.1.1 1999/01/20 05:51:01 jprice
|
||||
; Imported sources
|
||||
;
|
||||
;
|
||||
; Rev 1.0 07 Feb 1998 20:59:16 patv
|
||||
;Modified stack frame to match DOS standard
|
||||
; EndLog
|
||||
|
||||
|
|
34
hdr/tail.h
34
hdr/tail.h
|
@ -42,37 +42,3 @@ typedef struct {
|
|||
char ctBuffer[CTBUFFERSIZE]; /* the buffer itself */
|
||||
} CommandTail;
|
||||
|
||||
/*
|
||||
* Log: tail.h,v
|
||||
*
|
||||
* Revision 1.1.1.1 1999/03/29 15:39:36 jprice
|
||||
* New version without IPL.SYS
|
||||
*
|
||||
* Revision 1.3 1999/02/01 01:40:06 jprice
|
||||
* Clean up
|
||||
*
|
||||
* Revision 1.2 1999/01/22 04:17:40 jprice
|
||||
* Formating
|
||||
*
|
||||
* Revision 1.1.1.1 1999/01/20 05:51:01 jprice
|
||||
* Imported sources
|
||||
*
|
||||
*
|
||||
* Rev 1.5 04 Jan 1998 23:14:16 patv
|
||||
* Changed Log for strip utility
|
||||
*
|
||||
* Rev 1.4 29 May 1996 21:25:18 patv
|
||||
* bug fixes for v0.91a
|
||||
*
|
||||
* Rev 1.3 19 Feb 1996 3:15:34 patv
|
||||
* Added NLS, int2f and config.sys processing
|
||||
*
|
||||
* Rev 1.2 01 Sep 1995 17:35:44 patv
|
||||
* First GPL release.
|
||||
*
|
||||
* Rev 1.1 30 Jul 1995 20:43:50 patv
|
||||
* Eliminated version strings in ipl
|
||||
*
|
||||
* Rev 1.0 02 Jul 1995 10:39:54 patv
|
||||
* Initial revision.
|
||||
*/
|
||||
|
|
37
hdr/time.h
37
hdr/time.h
|
@ -62,40 +62,3 @@ struct dosdate
|
|||
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Log: time.h,v
|
||||
*
|
||||
* Revision 1.2 1999/08/25 03:17:11 jprice
|
||||
* ror4 patches to allow TC 2.01 compile.
|
||||
*
|
||||
* Revision 1.1.1.1 1999/03/29 15:39:36 jprice
|
||||
* New version without IPL.SYS
|
||||
*
|
||||
* Revision 1.3 1999/02/01 01:40:06 jprice
|
||||
* Clean up
|
||||
*
|
||||
* Revision 1.2 1999/01/22 04:17:40 jprice
|
||||
* Formating
|
||||
*
|
||||
* Revision 1.1.1.1 1999/01/20 05:51:01 jprice
|
||||
* Imported sources
|
||||
*
|
||||
*
|
||||
* Rev 1.5 04 Jan 1998 23:14:16 patv
|
||||
* Changed Log for strip utility
|
||||
*
|
||||
* Rev 1.4 29 May 1996 21:25:18 patv
|
||||
* bug fixes for v0.91a
|
||||
*
|
||||
* Rev 1.3 19 Feb 1996 3:15:34 patv
|
||||
* Added NLS, int2f and config.sys processing
|
||||
*
|
||||
* Rev 1.2 01 Sep 1995 17:35:46 patv
|
||||
* First GPL release.
|
||||
*
|
||||
* Rev 1.1 30 Jul 1995 20:43:50 patv
|
||||
* Eliminated version strings in ipl
|
||||
*
|
||||
* Rev 1.0 02 Jul 1995 10:39:56 patv
|
||||
* Initial revision.
|
||||
*/
|
||||
|
|
|
@ -47,8 +47,8 @@ static BYTE *date_hRcsId =
|
|||
|
||||
#define REVISION_MAJOR 1
|
||||
#define REVISION_MINOR 1
|
||||
#define REVISION_SEQ 27
|
||||
#define BUILD "2027"
|
||||
#define REVISION_SEQ 28
|
||||
#define BUILD "2028"
|
||||
#define SUB_BUILD ""
|
||||
#define KERNEL_VERSION_STRING "1.1.27" /*#REVISION_MAJOR "." #REVISION_MINOR "." #REVISION_SEQ */
|
||||
#define KERNEL_BUILD_STRING "2027" /*#BUILD SUB_BUILD */
|
||||
#define KERNEL_VERSION_STRING "1.1.28" /*#REVISION_MAJOR "." #REVISION_MINOR "." #REVISION_SEQ */
|
||||
#define KERNEL_BUILD_STRING "2028" /*#BUILD SUB_BUILD */
|
||||
|
|
|
@ -29,7 +29,7 @@
|
|||
|
||||
%include "segs.inc"
|
||||
|
||||
segment HMA_TEXT
|
||||
segment _TEXT
|
||||
%if 0
|
||||
|
||||
extern _api_sp:wrt DGROUP ; api stacks - for context
|
||||
|
@ -128,40 +128,3 @@ _restore_stack:
|
|||
|
||||
ret
|
||||
%endif
|
||||
|
||||
; Log: apisupt.asm,v
|
||||
;
|
||||
; Revision 1.2 1999/08/10 17:57:12 jprice
|
||||
; ror4 2011-02 patch
|
||||
;
|
||||
; Revision 1.1.1.1 1999/03/29 15:40:38 jprice
|
||||
; New version without IPL.SYS
|
||||
;
|
||||
; Revision 1.4 1999/02/08 05:55:57 jprice
|
||||
; Added Pat's 1937 kernel patches
|
||||
;
|
||||
; Revision 1.3 1999/02/01 01:48:41 jprice
|
||||
; Clean up; Now you can use hex numbers in config.sys. added config.sys screen function to change screen mode (28 or 43/50 lines)
|
||||
;
|
||||
; Revision 1.2 1999/01/22 04:13:25 jprice
|
||||
; Formating
|
||||
;
|
||||
; Revision 1.1.1.1 1999/01/20 05:51:01 jprice
|
||||
; Imported sources
|
||||
;
|
||||
; Rev 1.4 06 Dec 1998 8:47:02 patv
|
||||
;Expanded due to new I/O subsystem.
|
||||
;
|
||||
; Rev 1.3 16 Jan 1997 12:46:44 patv
|
||||
;pre-Release 0.92 feature additions
|
||||
;
|
||||
; Rev 1.2 29 May 1996 21:03:38 patv
|
||||
;bug fixes for v0.91a
|
||||
;
|
||||
; Rev 1.1 01 Sep 1995 17:54:26 patv
|
||||
;First GPL release.
|
||||
;
|
||||
; Rev 1.0 02 Jul 1995 9:04:50 patv
|
||||
;Initial revision.
|
||||
; EndLog
|
||||
;
|
||||
|
|
|
@ -36,7 +36,7 @@
|
|||
|
||||
%include "segs.inc"
|
||||
|
||||
segment HMA_TEXT
|
||||
segment _TEXT
|
||||
|
||||
;*********************************************************************
|
||||
; this implements some of the common string handling functions
|
||||
|
@ -518,43 +518,3 @@ domemcmp:
|
|||
repe cmpsb
|
||||
jne strncmp_done
|
||||
jmp short strncmp_retzero
|
||||
|
||||
; Log: asmsupt.asm,v
|
||||
;
|
||||
; Revision 1.3 1999/08/10 17:57:12 jprice
|
||||
; ror4 2011-02 patch
|
||||
;
|
||||
; Revision 1.2 1999/04/23 04:24:39 jprice
|
||||
; Memory manager changes made by ska
|
||||
;
|
||||
; Revision 1.1.1.1 1999/03/29 15:40:41 jprice
|
||||
; New version without IPL.SYS
|
||||
;
|
||||
; Revision 1.4 1999/02/08 05:55:57 jprice
|
||||
; Added Pat's 1937 kernel patches
|
||||
;
|
||||
; Revision 1.3 1999/02/01 01:48:41 jprice
|
||||
; Clean up; Now you can use hex numbers in config.sys. added config.sys screen function to change screen mode (28 or 43/50 lines)
|
||||
;
|
||||
; Revision 1.2 1999/01/22 04:13:25 jprice
|
||||
; Formating
|
||||
;
|
||||
; Revision 1.1.1.1 1999/01/20 05:51:01 jprice
|
||||
; Imported sources
|
||||
;
|
||||
; Rev 1.4 06 Dec 1998 8:46:50 patv
|
||||
; Bug fixes.
|
||||
;
|
||||
; Rev 1.3 03 Jan 1998 8:36:44 patv
|
||||
; Converted data area to SDA format
|
||||
;
|
||||
; Rev 1.2 29 May 1996 21:03:38 patv
|
||||
; bug fixes for v0.91a
|
||||
;
|
||||
; Rev 1.1 01 Sep 1995 17:54:26 patv
|
||||
; First GPL release.
|
||||
;
|
||||
; Rev 1.0 05 Jul 1995 11:38:42 patv
|
||||
; Initial revision.
|
||||
; EndLog
|
||||
;
|
||||
|
|
371
kernel/blockio.c
371
kernel/blockio.c
|
@ -36,6 +36,10 @@ static BYTE *blockioRcsId =
|
|||
"$Id$";
|
||||
#endif
|
||||
|
||||
#define b_next(bp) ((struct buffer FAR *)(MK_FP(FP_SEG(bp), bp->b_next)))
|
||||
#define b_prev(bp) ((struct buffer FAR *)(MK_FP(FP_SEG(bp), bp->b_prev)))
|
||||
#define bufptr(fbp) ((struct buffer FAR *)(MK_FP(FP_SEG(bp), fbp)))
|
||||
|
||||
/************************************************************************/
|
||||
/* */
|
||||
/* block cache routines */
|
||||
|
@ -45,71 +49,43 @@ static BYTE *blockioRcsId =
|
|||
|
||||
STATIC BOOL flush1(struct buffer FAR * bp);
|
||||
|
||||
/* */
|
||||
/* Initialize the buffer structure */
|
||||
/* */
|
||||
|
||||
/* Extract the block number from a buffer structure. */
|
||||
|
||||
#if 0 /*TE*/
|
||||
STATIC ULONG getblkno(struct buffer FAR * bp)
|
||||
{
|
||||
if (bp->b_blkno == 0xffffu)
|
||||
return bp->b_huge_blkno;
|
||||
else
|
||||
return bp->b_blkno;
|
||||
}
|
||||
#else
|
||||
#define getblkno(bp) (bp)->b_blkno
|
||||
#endif
|
||||
|
||||
/* Set the block number of a buffer structure. (The caller should */
|
||||
/* set the unit number before calling this function.) */
|
||||
#if 0 /*TE*/
|
||||
STATIC VOID setblkno(struct buffer FAR * bp, ULONG blkno)
|
||||
{
|
||||
if (blkno >= 0xffffu)
|
||||
{
|
||||
bp->b_blkno = 0xffffu;
|
||||
bp->b_huge_blkno = blkno;
|
||||
}
|
||||
else
|
||||
{
|
||||
bp->b_blkno = blkno;
|
||||
/* bp->b_dpbp = &blk_devices[bp->b_unit]; */
|
||||
|
||||
bp->b_dpbp = get_cds(bp->b_unit)->cdsDpb;
|
||||
|
||||
}
|
||||
}
|
||||
#else
|
||||
#define setblkno(bp, blkno) (bp)->b_blkno = (blkno)
|
||||
#endif
|
||||
|
||||
/*
|
||||
this searches the buffer list for the given disk/block.
|
||||
|
||||
returns:
|
||||
TRUE:
|
||||
the buffer is found
|
||||
FALSE:
|
||||
the buffer is not found
|
||||
*Buffp contains a block to flush and reuse later
|
||||
a far pointer to the buffer.
|
||||
|
||||
If the buffer is found the UNCACHE bit is not set and else it is set.
|
||||
|
||||
new:
|
||||
upper layer may set UNCACHE attribute
|
||||
UNCACHE buffers are recycled first.
|
||||
intended to be used for full sector reads into application buffer
|
||||
|
||||
intended to be used for full sector reads into application buffer
|
||||
resets UNCACHE upon a "HIT" -- so then this buffer will not be
|
||||
recycled anymore.
|
||||
*/
|
||||
|
||||
STATIC BOOL searchblock(ULONG blkno, COUNT dsk, struct buffer FAR ** pBuffp)
|
||||
STATIC void move_buffer(struct buffer FAR *bp, size_t firstbp)
|
||||
{
|
||||
/* connect bp->b_prev and bp->b_next */
|
||||
b_next(bp)->b_prev = bp->b_prev;
|
||||
b_prev(bp)->b_next = bp->b_next;
|
||||
|
||||
/* insert bp between firstbp and firstbp->b_prev */
|
||||
bp->b_prev = bufptr(firstbp)->b_prev;
|
||||
bp->b_next = firstbp;
|
||||
b_next(bp)->b_prev = FP_OFF(bp);
|
||||
b_prev(bp)->b_next = FP_OFF(bp);
|
||||
}
|
||||
|
||||
STATIC struct buffer FAR *searchblock(ULONG blkno, COUNT dsk)
|
||||
{
|
||||
int fat_count = 0;
|
||||
struct buffer FAR *bp;
|
||||
struct buffer FAR *lbp = NULL;
|
||||
struct buffer FAR *lastNonFat = NULL;
|
||||
struct buffer FAR *uncacheBuf = NULL;
|
||||
size_t lastNonFat = 0;
|
||||
size_t uncacheBuf = 0;
|
||||
seg bufseg = FP_SEG(firstbuf);
|
||||
size_t firstbp = FP_OFF(firstbuf);
|
||||
|
||||
#ifdef DISPLAY_GETBLOCK
|
||||
printf("[searchblock %d, blk %ld, buf ", dsk, blkno);
|
||||
|
@ -118,33 +94,34 @@ STATIC BOOL searchblock(ULONG blkno, COUNT dsk, struct buffer FAR ** pBuffp)
|
|||
/* Search through buffers to see if the required block */
|
||||
/* is already in a buffer */
|
||||
|
||||
for (bp = firstbuf; bp != NULL; lbp = bp, bp = bp->b_next)
|
||||
bp = MK_FP(bufseg, firstbp);
|
||||
do
|
||||
{
|
||||
if ((getblkno(bp) == blkno) &&
|
||||
if ((bp->b_blkno == blkno) &&
|
||||
(bp->b_flag & BFR_VALID) && (bp->b_unit == dsk))
|
||||
{
|
||||
/* found it -- rearrange LRU links */
|
||||
if (lbp != NULL)
|
||||
{
|
||||
lbp->b_next = bp->b_next;
|
||||
bp->b_next = firstbuf;
|
||||
firstbuf = bp;
|
||||
}
|
||||
#ifdef DISPLAY_GETBLOCK
|
||||
printf("HIT %04x:%04x]\n", FP_SEG(bp), FP_OFF(bp));
|
||||
#endif
|
||||
*pBuffp = bp;
|
||||
return TRUE;
|
||||
bp->b_flag &= ~BFR_UNCACHE; /* reset uncache attribute */
|
||||
if (FP_OFF(bp) != firstbp)
|
||||
{
|
||||
*(UWORD *)&firstbuf = FP_OFF(bp);
|
||||
move_buffer(bp, firstbp);
|
||||
}
|
||||
return bp;
|
||||
}
|
||||
|
||||
if (bp->b_flag & BFR_UNCACHE)
|
||||
uncacheBuf = bp;
|
||||
uncacheBuf = FP_OFF(bp);
|
||||
|
||||
if (bp->b_flag & BFR_FAT)
|
||||
fat_count++;
|
||||
else
|
||||
lastNonFat = bp;
|
||||
}
|
||||
lastNonFat = FP_OFF(bp);
|
||||
bp = b_next(bp);
|
||||
} while (FP_OFF(bp) != firstbp);
|
||||
|
||||
/*
|
||||
now take either the last buffer in chain (not used recently)
|
||||
|
@ -153,52 +130,49 @@ STATIC BOOL searchblock(ULONG blkno, COUNT dsk, struct buffer FAR ** pBuffp)
|
|||
|
||||
if (uncacheBuf)
|
||||
{
|
||||
lbp = uncacheBuf;
|
||||
bp = bufptr(uncacheBuf);
|
||||
}
|
||||
else if (bp->b_flag & BFR_FAT && fat_count < 3 && lastNonFat)
|
||||
{
|
||||
bp = bufptr(lastNonFat);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (lbp->b_flag & BFR_FAT && fat_count < 3 && lastNonFat)
|
||||
{
|
||||
lbp = lastNonFat;
|
||||
}
|
||||
bp = b_prev(bufptr(firstbp));
|
||||
}
|
||||
|
||||
lbp->b_flag &= ~BFR_UNCACHE; /* reset uncache attribute */
|
||||
|
||||
*pBuffp = lbp;
|
||||
bp->b_flag |= BFR_UNCACHE; /* set uncache attribute */
|
||||
|
||||
#ifdef DISPLAY_GETBLOCK
|
||||
printf("MISS, replace %04x:%04x]\n", FP_SEG(lbp), FP_OFF(lbp));
|
||||
printf("MISS, replace %04x:%04x]\n", FP_SEG(bp), FP_OFF(bp));
|
||||
#endif
|
||||
|
||||
if (lbp != firstbuf) /* move to front */
|
||||
if (FP_OFF(bp) != firstbp) /* move to front */
|
||||
{
|
||||
for (bp = firstbuf; bp->b_next != lbp; bp = bp->b_next)
|
||||
;
|
||||
bp->b_next = bp->b_next->b_next;
|
||||
lbp->b_next = firstbuf;
|
||||
firstbuf = lbp;
|
||||
move_buffer(bp, firstbp);
|
||||
*(UWORD *)&firstbuf = FP_OFF(bp);
|
||||
}
|
||||
|
||||
return FALSE;
|
||||
return bp;
|
||||
}
|
||||
|
||||
BOOL DeleteBlockInBufferCache(ULONG blknolow, ULONG blknohigh, COUNT dsk)
|
||||
{
|
||||
struct buffer FAR *bp;
|
||||
|
||||
struct buffer FAR *bp = firstbuf;
|
||||
|
||||
/* Search through buffers to see if the required block */
|
||||
/* is already in a buffer */
|
||||
|
||||
for (bp = firstbuf; bp != NULL; bp = bp->b_next)
|
||||
do
|
||||
{
|
||||
if (blknolow <= getblkno(bp) &&
|
||||
getblkno(bp) <= blknohigh &&
|
||||
if (blknolow <= bp->b_blkno &&
|
||||
bp->b_blkno <= blknohigh &&
|
||||
(bp->b_flag & BFR_VALID) && (bp->b_unit == dsk))
|
||||
{
|
||||
flush1(bp);
|
||||
}
|
||||
bp = b_next(bp);
|
||||
}
|
||||
while (FP_OFF(bp) != FP_OFF(firstbuf));
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
@ -206,40 +180,43 @@ BOOL DeleteBlockInBufferCache(ULONG blknolow, ULONG blknohigh, COUNT dsk)
|
|||
#if TOM
|
||||
void dumpBufferCache(void)
|
||||
{
|
||||
struct buffer FAR *bp;
|
||||
struct buffer FAR *bp = firstbuf;
|
||||
int printed = 0;
|
||||
|
||||
/* Search through buffers to see if the required block */
|
||||
/* is already in a buffer */
|
||||
|
||||
for (bp = firstbuf; bp != NULL; bp = bp->b_next)
|
||||
do
|
||||
{
|
||||
printf("%8lx %02x ", getblkno(bp), bp->b_flag);
|
||||
printf("%8lx %02x ", bp->b_blkno, bp->b_flag);
|
||||
if (++printed % 6 == 0)
|
||||
printf("\n");
|
||||
bp = b_next(bp);
|
||||
}
|
||||
while (FP_OFF(bp) != FP_OFF(firstbuf));
|
||||
printf("\n");
|
||||
}
|
||||
#endif
|
||||
/* */
|
||||
/* Return the address of a buffer structure containing the */
|
||||
/* requested block. */
|
||||
/* if overwrite is set, then no need to read first */
|
||||
/* */
|
||||
/* returns: */
|
||||
/* requested block with data */
|
||||
/* failure: */
|
||||
/* returns NULL */
|
||||
/* */
|
||||
struct buffer FAR *getblock(ULONG blkno, COUNT dsk)
|
||||
struct buffer FAR *getblk(ULONG blkno, COUNT dsk, BOOL overwrite)
|
||||
{
|
||||
struct buffer FAR *bp;
|
||||
|
||||
/* Search through buffers to see if the required block */
|
||||
/* is already in a buffer */
|
||||
|
||||
if (searchblock(blkno, dsk, &bp))
|
||||
struct buffer FAR *bp = searchblock(blkno, dsk);
|
||||
|
||||
if (!(bp->b_flag & BFR_UNCACHE))
|
||||
{
|
||||
return (bp);
|
||||
return bp;
|
||||
}
|
||||
|
||||
/* The block we need is not in a buffer, we must make a buffer */
|
||||
|
@ -251,51 +228,16 @@ struct buffer FAR *getblock(ULONG blkno, COUNT dsk)
|
|||
|
||||
/* Fill the indicated disk buffer with the current track and sector */
|
||||
|
||||
if (dskxfer(dsk, blkno, (VOID FAR *) bp->b_buffer, 1, DSKREAD))
|
||||
if (!overwrite && dskxfer(dsk, blkno, bp->b_buffer, 1, DSKREAD))
|
||||
{
|
||||
return NULL;
|
||||
}
|
||||
|
||||
bp->b_flag = BFR_VALID | BFR_DATA;
|
||||
bp->b_unit = dsk;
|
||||
setblkno(bp, blkno);
|
||||
bp->b_blkno = blkno;
|
||||
|
||||
return bp;
|
||||
|
||||
}
|
||||
|
||||
/*
|
||||
exactly the same as getblock(), but the data will be completely
|
||||
overwritten. so there is no need to read from disk first
|
||||
*/
|
||||
struct buffer FAR *getblockOver(ULONG blkno, COUNT dsk)
|
||||
{
|
||||
struct buffer FAR *bp;
|
||||
|
||||
/* Search through buffers to see if the required block */
|
||||
/* is already in a buffer */
|
||||
|
||||
if (searchblock(blkno, dsk, &bp))
|
||||
{
|
||||
return bp;
|
||||
}
|
||||
|
||||
/* The block we need is not in a buffer, we must make a buffer */
|
||||
/* available. */
|
||||
|
||||
/* take the buffer than lbp points to and flush it, then make it available. */
|
||||
if (flush1(bp)) /* success */
|
||||
{
|
||||
bp->b_flag = 0;
|
||||
bp->b_unit = dsk;
|
||||
setblkno(bp, blkno);
|
||||
return bp;
|
||||
}
|
||||
else
|
||||
/* failure */
|
||||
{
|
||||
return NULL;
|
||||
}
|
||||
}
|
||||
|
||||
/* */
|
||||
|
@ -303,15 +245,15 @@ struct buffer FAR *getblockOver(ULONG blkno, COUNT dsk)
|
|||
/* */
|
||||
VOID setinvld(REG COUNT dsk)
|
||||
{
|
||||
REG struct buffer FAR *bp;
|
||||
struct buffer FAR *bp = firstbuf;
|
||||
|
||||
bp = firstbuf;
|
||||
while (bp)
|
||||
do
|
||||
{
|
||||
if (bp->b_unit == dsk)
|
||||
bp->b_flag = 0;
|
||||
bp = bp->b_next;
|
||||
bp = b_next(bp);
|
||||
}
|
||||
while (FP_OFF(bp) != FP_OFF(firstbuf));
|
||||
}
|
||||
|
||||
/* */
|
||||
|
@ -322,17 +264,18 @@ VOID setinvld(REG COUNT dsk)
|
|||
/* */
|
||||
BOOL flush_buffers(REG COUNT dsk)
|
||||
{
|
||||
REG struct buffer FAR *bp;
|
||||
struct buffer FAR *bp = firstbuf;
|
||||
REG BOOL ok = TRUE;
|
||||
|
||||
bp = firstbuf;
|
||||
while (bp)
|
||||
do
|
||||
{
|
||||
if (bp->b_unit == dsk)
|
||||
if (!flush1(bp))
|
||||
ok = FALSE;
|
||||
bp = bp->b_next;
|
||||
bp = b_next(bp);
|
||||
}
|
||||
while (FP_OFF(bp) != FP_OFF(firstbuf));
|
||||
return ok;
|
||||
}
|
||||
|
||||
|
@ -347,25 +290,24 @@ STATIC BOOL flush1(struct buffer FAR * bp)
|
|||
|
||||
if ((bp->b_flag & BFR_VALID) && (bp->b_flag & BFR_DIRTY))
|
||||
{
|
||||
result = dskxfer(bp->b_unit, getblkno(bp), (VOID FAR *) bp->b_buffer, 1, DSKWRITE); /* BER 9/4/00 */
|
||||
/* BER 9/4/00 */
|
||||
result = dskxfer(bp->b_unit, bp->b_blkno, bp->b_buffer, 1, DSKWRITE);
|
||||
if (bp->b_flag & BFR_FAT)
|
||||
{
|
||||
struct dpb FAR *dpbp = bp->b_dpbp;
|
||||
UWORD b_copies = dpbp->dpb_fats;
|
||||
ULONG b_offset = dpbp->dpb_fatsize;
|
||||
ULONG blkno = getblkno(bp);
|
||||
UWORD b_copies = bp->b_copies;
|
||||
ULONG blkno = bp->b_blkno;
|
||||
#ifdef WITHFAT32
|
||||
if (ISFAT32(dpbp))
|
||||
{
|
||||
if (dpbp->dpb_xflags & FAT_NO_MIRRORING)
|
||||
b_copies = 1;
|
||||
b_offset = dpbp->dpb_xfatsize;
|
||||
}
|
||||
ULONG b_offset = bp->b_offset;
|
||||
if (b_offset == 0) /* FAT32 FS */
|
||||
b_offset = bp->b_dpbp->dpb_xfatsize;
|
||||
#else
|
||||
UWORD b_offset = bp->b_offset;
|
||||
#endif
|
||||
while (--b_copies > 0)
|
||||
{
|
||||
blkno += b_offset;
|
||||
result = dskxfer(bp->b_unit, blkno, bp->b_buffer, 1, DSKWRITE); /* BER 9/4/00 */
|
||||
/* BER 9/4/00 */
|
||||
result = dskxfer(bp->b_unit, blkno, bp->b_buffer, 1, DSKWRITE);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -384,18 +326,18 @@ STATIC BOOL flush1(struct buffer FAR * bp)
|
|||
/* */
|
||||
BOOL flush(void)
|
||||
{
|
||||
REG struct buffer FAR *bp;
|
||||
REG struct buffer FAR *bp = firstbuf;
|
||||
REG BOOL ok;
|
||||
|
||||
ok = TRUE;
|
||||
bp = firstbuf;
|
||||
while (bp)
|
||||
do
|
||||
{
|
||||
if (!flush1(bp))
|
||||
ok = FALSE;
|
||||
bp->b_flag &= ~BFR_VALID;
|
||||
bp = bp->b_next;
|
||||
bp = b_next(bp);
|
||||
}
|
||||
while (FP_OFF(bp) != FP_OFF(firstbuf));
|
||||
|
||||
remote_flushall();
|
||||
|
||||
|
@ -508,98 +450,29 @@ UWORD dskxfer(COUNT dsk, ULONG blkno, VOID FAR * buf, UWORD numblocks,
|
|||
}
|
||||
|
||||
/*
|
||||
* 2000/9/04 Brian Reifsnyder
|
||||
* Modified dskxfer() such that error codes are now returned.
|
||||
* Functions that rely on dskxfer() have also been modified accordingly.
|
||||
*/
|
||||
this removes any (additionally allocated) buffers
|
||||
from the HMA buffer chain, because they get allocated to the 'user'
|
||||
*/
|
||||
|
||||
void AllocateHMASpace (size_t lowbuffer, size_t highbuffer)
|
||||
{
|
||||
REG struct buffer FAR *bp = firstbuf;
|
||||
int n = LoL_nbuffers;
|
||||
|
||||
/*
|
||||
* Log: blockio.c,v - for newer entries do "cvs log blockio.c"
|
||||
*
|
||||
* Revision 1.15 2000/04/29 05:13:16 jtabor
|
||||
* Added new functions and clean up code
|
||||
*
|
||||
* Revision 1.14 2000/03/09 06:07:10 kernel
|
||||
* 2017f updates by James Tabor
|
||||
*
|
||||
* Revision 1.13 1999/08/25 03:18:07 jprice
|
||||
* ror4 patches to allow TC 2.01 compile.
|
||||
*
|
||||
* Revision 1.12 1999/08/10 18:03:39 jprice
|
||||
* ror4 2011-03 patch
|
||||
*
|
||||
* Revision 1.11 1999/05/03 06:25:45 jprice
|
||||
* Patches from ror4 and many changed of signed to unsigned variables.
|
||||
*
|
||||
* Revision 1.10 1999/05/03 04:55:35 jprice
|
||||
* Changed getblock & getbuf so that they leave at least 3 buffer for FAT data.
|
||||
*
|
||||
* Revision 1.9 1999/04/21 01:44:40 jprice
|
||||
* no message
|
||||
*
|
||||
* Revision 1.8 1999/04/18 05:28:39 jprice
|
||||
* no message
|
||||
*
|
||||
* Revision 1.7 1999/04/16 21:43:40 jprice
|
||||
* ror4 multi-sector IO
|
||||
*
|
||||
* Revision 1.6 1999/04/16 00:53:32 jprice
|
||||
* Optimized FAT handling
|
||||
*
|
||||
* Revision 1.5 1999/04/12 23:41:53 jprice
|
||||
* Using getbuf to write data instead of getblock
|
||||
* using getblock made it read the block before it wrote it
|
||||
*
|
||||
* Revision 1.4 1999/04/11 05:28:10 jprice
|
||||
* Working on multi-block IO
|
||||
*
|
||||
* Revision 1.3 1999/04/11 04:33:38 jprice
|
||||
* ror4 patches
|
||||
*
|
||||
* Revision 1.1.1.1 1999/03/29 15:41:43 jprice
|
||||
* New version without IPL.SYS
|
||||
*
|
||||
* Revision 1.5 1999/02/09 02:54:23 jprice
|
||||
* Added Pat's 1937 kernel patches
|
||||
*
|
||||
* Revision 1.4 1999/02/01 01:43:27 jprice
|
||||
* Fixed findfirst function to find volume label with Windows long filenames
|
||||
*
|
||||
* Revision 1.3 1999/01/30 08:25:34 jprice
|
||||
* Clean up; Fixed bug with set attribute function. If you tried to
|
||||
* change the attributes of a directory, it would erase it.
|
||||
*
|
||||
* Revision 1.2 1999/01/22 04:15:28 jprice
|
||||
* Formating
|
||||
*
|
||||
* Revision 1.1.1.1 1999/01/20 05:51:00 jprice
|
||||
* Imported sources
|
||||
*
|
||||
*
|
||||
* Rev 1.8 06 Dec 1998 8:43:16 patv
|
||||
* Changes in block I/O because of new I/O subsystem.
|
||||
*
|
||||
* Rev 1.7 22 Jan 1998 4:09:00 patv
|
||||
* Fixed pointer problems affecting SDA
|
||||
*
|
||||
* Rev 1.6 04 Jan 1998 23:14:36 patv
|
||||
* Changed Log for strip utility
|
||||
*
|
||||
* Rev 1.5 03 Jan 1998 8:36:02 patv
|
||||
* Converted data area to SDA format
|
||||
*
|
||||
* Rev 1.4 16 Jan 1997 12:46:34 patv
|
||||
* pre-Release 0.92 feature additions
|
||||
*
|
||||
* Rev 1.3 29 May 1996 21:15:10 patv
|
||||
* bug fixes for v0.91a
|
||||
*
|
||||
* Rev 1.2 01 Sep 1995 17:48:46 patv
|
||||
* First GPL release.
|
||||
*
|
||||
* Rev 1.1 30 Jul 1995 20:50:28 patv
|
||||
* Eliminated version strings in ipl
|
||||
*
|
||||
* Rev 1.0 02 Jul 1995 8:04:06 patv
|
||||
* Initial revision.
|
||||
*/
|
||||
do
|
||||
{
|
||||
if (FP_OFF(bp) < highbuffer && FP_OFF(bp+1) >= lowbuffer)
|
||||
{
|
||||
flush1(bp);
|
||||
/* unlink bp from buffer chain */
|
||||
|
||||
b_prev(bp)->b_next = bp->b_next;
|
||||
b_next(bp)->b_prev = bp->b_prev;
|
||||
if (bp == firstbuf)
|
||||
firstbuf = b_next(bp);
|
||||
LoL_nbuffers--;
|
||||
}
|
||||
bp = b_next(bp);
|
||||
}
|
||||
while (n--);
|
||||
}
|
||||
|
|
|
@ -73,13 +73,3 @@ void handle_break(int sft_idx)
|
|||
spawn_int23(); /* invoke user INT-23 and never come back */
|
||||
}
|
||||
|
||||
/*
|
||||
* Log: break.c,v - for newer entries see "cvs log break.c"
|
||||
*
|
||||
* Revision 1.2 2000/03/09 06:07:10 kernel
|
||||
* 2017f updates by James Tabor
|
||||
*
|
||||
* Revision 1.1 1999/04/16 21:18:17 jprice
|
||||
* Steffen contributed.
|
||||
*
|
||||
*/
|
||||
|
|
|
@ -542,71 +542,3 @@ size_t read_line_handle(int sft_idx, size_t n, char FAR * bp)
|
|||
return n;
|
||||
}
|
||||
|
||||
/*
|
||||
* Log: chario.c,v - for newer logs do "cvs log chario.c"
|
||||
*
|
||||
* Revision 1.7 2000/03/09 06:07:10 kernel
|
||||
* 2017f updates by James Tabor
|
||||
*
|
||||
* Revision 1.6 1999/09/23 04:40:45 jprice
|
||||
* *** empty log message ***
|
||||
*
|
||||
* Revision 1.4 1999/08/25 03:18:07 jprice
|
||||
* ror4 patches to allow TC 2.01 compile.
|
||||
*
|
||||
* Revision 1.3 1999/04/16 12:21:21 jprice
|
||||
* Steffen c-break handler changes
|
||||
*
|
||||
* Revision 1.2 1999/04/04 18:51:42 jprice
|
||||
* no message
|
||||
*
|
||||
* Revision 1.1.1.1 1999/03/29 15:41:45 jprice
|
||||
* New version without IPL.SYS
|
||||
*
|
||||
* Revision 1.5 1999/02/09 02:54:23 jprice
|
||||
* Added Pat's 1937 kernel patches
|
||||
*
|
||||
* Revision 1.4 1999/02/04 03:18:37 jprice
|
||||
* Formating. Added comments.
|
||||
*
|
||||
* Revision 1.3 1999/02/01 01:43:28 jprice
|
||||
* Fixed findfirst function to find volume label with Windows long filenames
|
||||
*
|
||||
* Revision 1.2 1999/01/22 04:15:28 jprice
|
||||
* Formating
|
||||
*
|
||||
* Revision 1.1.1.1 1999/01/20 05:51:00 jprice
|
||||
* Imported sources
|
||||
*
|
||||
*
|
||||
* Rev 1.9 06 Dec 1998 8:43:36 patv
|
||||
* changes in character I/O because of new I/O subsystem.
|
||||
*
|
||||
* Rev 1.8 11 Jan 1998 2:06:08 patv
|
||||
* Added functionality to ioctl.
|
||||
*
|
||||
* Rev 1.7 08 Jan 1998 21:36:40 patv
|
||||
* Changed automatic requestic packets to static to save stack space.
|
||||
*
|
||||
* Rev 1.6 04 Jan 1998 23:14:38 patv
|
||||
* Changed Log for strip utility
|
||||
*
|
||||
* Rev 1.5 30 Dec 1997 4:00:20 patv
|
||||
* Modified to support SDA
|
||||
*
|
||||
* Rev 1.4 16 Jan 1997 12:46:36 patv
|
||||
* pre-Release 0.92 feature additions
|
||||
*
|
||||
* Rev 1.3 29 May 1996 21:15:12 patv
|
||||
* bug fixes for v0.91a
|
||||
*
|
||||
* Rev 1.2 01 Sep 1995 17:48:42 patv
|
||||
* First GPL release.
|
||||
*
|
||||
* Rev 1.1 30 Jul 1995 20:50:26 patv
|
||||
* Eliminated version strings in ipl
|
||||
*
|
||||
* Rev 1.0 02 Jul 1995 8:05:44 patv
|
||||
* Initial revision.
|
||||
*
|
||||
*/
|
||||
|
|
150
kernel/config.c
150
kernel/config.c
|
@ -67,7 +67,7 @@ extern struct dhdr
|
|||
DOSTEXTFAR ASM blk_dev, /* Block device (Disk) driver */
|
||||
DOSFAR ASM nul_dev;
|
||||
extern struct buffer FAR *DOSFAR ASM firstbuf; /* head of buffers linked list */
|
||||
|
||||
extern struct buffer FAR *DOSFAR firstAvailableBuf; /* first 'available' buffer */
|
||||
extern struct dpb FAR *DOSFAR ASM DPBp;
|
||||
/* First drive Parameter Block */
|
||||
extern struct cds FAR *DOSFAR ASM CDSp;
|
||||
|
@ -1511,14 +1511,16 @@ VOID config_init_buffers(COUNT anzBuffers)
|
|||
{
|
||||
REG WORD i;
|
||||
struct buffer FAR *pbuffer;
|
||||
int HMAcount = 0;
|
||||
BYTE FAR *tmplpBase = lpBase;
|
||||
BOOL fillhma = TRUE;
|
||||
unsigned wantedbuffers = anzBuffers;
|
||||
|
||||
if (anzBuffers < 0)
|
||||
{
|
||||
anzBuffers = -anzBuffers;
|
||||
fillhma = FALSE;
|
||||
wantedbuffers = anzBuffers = -anzBuffers;
|
||||
}
|
||||
else if (HMAState == HMA_DONE)
|
||||
{
|
||||
anzBuffers = (0xfff0 - HMAFree) / sizeof(struct buffer);
|
||||
}
|
||||
|
||||
anzBuffers = max(anzBuffers, 6);
|
||||
|
@ -1528,63 +1530,42 @@ VOID config_init_buffers(COUNT anzBuffers)
|
|||
anzBuffers = 99;
|
||||
}
|
||||
LoL_nbuffers = anzBuffers;
|
||||
|
||||
|
||||
lpTop = lpOldTop;
|
||||
|
||||
if (HMAState == HMA_NONE || HMAState == HMA_REQ)
|
||||
lpTop = lpBase = lpTop - anzBuffers * (sizeof(struct buffer) + 0xf);
|
||||
|
||||
firstbuf = ConfigAlloc(sizeof(struct buffer));
|
||||
|
||||
lpTop = lpBase = lpTop - (anzBuffers * sizeof(struct buffer) + 0xf);
|
||||
|
||||
firstbuf = ConfigAlloc(sizeof(struct buffer) * anzBuffers);
|
||||
pbuffer = firstbuf;
|
||||
|
||||
DebugPrintf(("init_buffers (size %u) at", sizeof(struct buffer)));
|
||||
DebugPrintf((" (%p)", firstbuf));
|
||||
|
||||
for (i = 0;; ++i)
|
||||
pbuffer->b_prev = FP_OFF(pbuffer + (anzBuffers-1));
|
||||
for (i = 1; i < anzBuffers; ++i)
|
||||
{
|
||||
if (FP_SEG(pbuffer) == 0xffff)
|
||||
HMAcount++;
|
||||
|
||||
pbuffer->b_dummy = FP_OFF(pbuffer);
|
||||
pbuffer->b_unit = 0;
|
||||
pbuffer->b_flag = 0;
|
||||
pbuffer->b_blkno = 0;
|
||||
pbuffer->b_next = NULL;
|
||||
|
||||
DebugPrintf((" (%d,%p)", i, pbuffer));
|
||||
if (i == wantedbuffers)
|
||||
{
|
||||
firstAvailableBuf = pbuffer;
|
||||
}
|
||||
pbuffer->b_next = FP_OFF(pbuffer + 1);
|
||||
pbuffer++;
|
||||
pbuffer->b_prev = FP_OFF(pbuffer - 1);
|
||||
}
|
||||
pbuffer->b_next = FP_OFF(pbuffer - (anzBuffers-1));
|
||||
|
||||
/* now, we can have quite some buffers in HMA
|
||||
-- up to 37 for KE38616.
|
||||
-- up to 50 for KE38616.
|
||||
so we fill the HMA with buffers
|
||||
but not if the BUFFERS count is negative ;-)
|
||||
*/
|
||||
|
||||
if (i < (anzBuffers - 1))
|
||||
{
|
||||
pbuffer->b_next = HMAalloc(sizeof(struct buffer));
|
||||
|
||||
if (pbuffer->b_next == NULL)
|
||||
{
|
||||
/* if more buffer requested then fit into HMA, allocate
|
||||
some from low memory as rewuested
|
||||
*/
|
||||
pbuffer->b_next = ConfigAlloc(sizeof(struct buffer));
|
||||
}
|
||||
}
|
||||
else if (fillhma)
|
||||
pbuffer->b_next = HMAalloc(sizeof(struct buffer));
|
||||
|
||||
if (pbuffer->b_next == NULL)
|
||||
break;
|
||||
|
||||
pbuffer = pbuffer->b_next;
|
||||
}
|
||||
|
||||
DebugPrintf((" done\n"));
|
||||
|
||||
if (HMAcount)
|
||||
if (FP_SEG(pbuffer) == 0xffff)
|
||||
printf("Kernel: allocated %d Diskbuffers = %u Bytes in HMA\n",
|
||||
HMAcount, HMAcount * sizeof(struct buffer));
|
||||
anzBuffers, anzBuffers * sizeof(struct buffer));
|
||||
|
||||
if (HMAState == HMA_NONE || HMAState == HMA_REQ)
|
||||
lpBase = tmplpBase;
|
||||
|
@ -1711,82 +1692,3 @@ STATIC VOID CfgMenuDefault(BYTE * pLine)
|
|||
}
|
||||
|
||||
|
||||
/*
|
||||
* Log: config.c,v - for newer log entries see "cvs log config.c"
|
||||
*
|
||||
* Revision 1.15 2000/03/31 05:40:09 jtabor
|
||||
* Added Eric W. Biederman Patches
|
||||
*
|
||||
* Revision 1.14 2000/03/17 22:59:04 kernel
|
||||
* Steffen Kaiser's NLS changes
|
||||
*
|
||||
* Revision 1.13 2000/03/09 06:07:10 kernel
|
||||
* 2017f updates by James Tabor
|
||||
*
|
||||
* Revision 1.12 1999/09/23 04:40:46 jprice
|
||||
* *** empty log message ***
|
||||
*
|
||||
* Revision 1.10 1999/08/25 03:18:07 jprice
|
||||
* ror4 patches to allow TC 2.01 compile.
|
||||
*
|
||||
* Revision 1.9 1999/05/03 06:25:45 jprice
|
||||
* Patches from ror4 and many changed of signed to unsigned variables.
|
||||
*
|
||||
* Revision 1.8 1999/04/16 21:43:40 jprice
|
||||
* ror4 multi-sector IO
|
||||
*
|
||||
* Revision 1.7 1999/04/16 12:21:21 jprice
|
||||
* Steffen c-break handler changes
|
||||
*
|
||||
* Revision 1.6 1999/04/16 00:53:32 jprice
|
||||
* Optimized FAT handling
|
||||
*
|
||||
* Revision 1.5 1999/04/12 03:21:17 jprice
|
||||
* more ror4 patches. Changes for multi-block IO
|
||||
*
|
||||
* Revision 1.4 1999/04/11 04:33:38 jprice
|
||||
* ror4 patches
|
||||
*
|
||||
* Revision 1.2 1999/04/04 22:57:47 jprice
|
||||
* no message
|
||||
*
|
||||
* Revision 1.1.1.1 1999/03/29 15:40:46 jprice
|
||||
* New version without IPL.SYS
|
||||
*
|
||||
* Revision 1.6 1999/03/23 23:38:15 jprice
|
||||
* Now checks for a reads fdconfig.sys file, if exists
|
||||
*
|
||||
* Revision 1.5 1999/02/08 05:55:57 jprice
|
||||
* Added Pat's 1937 kernel patches
|
||||
*
|
||||
* Revision 1.4 1999/02/01 01:48:41 jprice
|
||||
* Clean up; Now you can use hex numbers in config.sys. added config.sys screen function to change screen mode (28 or 43/50 lines)
|
||||
*
|
||||
* Revision 1.3 1999/01/30 08:28:11 jprice
|
||||
* Clean up; Fixed bug with set attribute function.
|
||||
*
|
||||
* Revision 1.2 1999/01/22 04:13:25 jprice
|
||||
* Formating
|
||||
*
|
||||
* Revision 1.1.1.1 1999/01/20 05:51:01 jprice
|
||||
* Imported sources
|
||||
*
|
||||
*
|
||||
* Rev 1.6 22 Jan 1998 4:09:24 patv
|
||||
* Fixed pointer problems affecting SDA
|
||||
*
|
||||
* Rev 1.5 04 Jan 1998 23:15:18 patv
|
||||
* Changed Log for strip utility
|
||||
*
|
||||
* Rev 1.4 04 Jan 1998 17:26:14 patv
|
||||
* Corrected subdirectory bug
|
||||
*
|
||||
* Rev 1.3 16 Jan 1997 12:46:50 patv
|
||||
* pre-Release 0.92 feature additions
|
||||
*
|
||||
* Rev 1.1 29 May 1996 21:03:44 patv
|
||||
* bug fixes for v0.91a
|
||||
*
|
||||
* Rev 1.0 19 Feb 1996 3:22:16 patv
|
||||
* Added NLS, int2f and config.sys processing
|
||||
*/
|
||||
|
|
|
@ -50,7 +50,7 @@ ConTable db 0Ah
|
|||
PRT_SCREEN equ 7200h
|
||||
CTL_P equ 10h
|
||||
|
||||
segment _TEXT
|
||||
segment _LOWTEXT
|
||||
|
||||
uScanCode db 0 ; Scan code for con: device
|
||||
|
||||
|
@ -246,32 +246,3 @@ ConCharReady:
|
|||
ConNoChar:
|
||||
jmp _IODone ; no key ready (busy=1)
|
||||
|
||||
|
||||
; Log: console.asm,v
|
||||
;
|
||||
; Revision 1.8 2000/03/09 06:07:10 kernel
|
||||
; 2017f updates by James Tabor
|
||||
;
|
||||
; Revision 1.7 1999/09/23 04:40:46 jprice
|
||||
; *** empty log message ***
|
||||
;
|
||||
; Revision 1.5 1999/09/14 16:31:38 jprice
|
||||
; no message
|
||||
;
|
||||
; Revision 1.4 1999/09/13 22:16:14 jprice
|
||||
; Fix 210B function
|
||||
;
|
||||
; Revision 1.3 1999/09/13 21:00:19 jprice
|
||||
; Changes from Helmut Fritsch to fix INT21 func B
|
||||
;
|
||||
; Revision 1.2 1999/08/10 17:57:12 jprice
|
||||
; ror4 2011-02 patch
|
||||
;
|
||||
; Revision 1.1.1.1 1999/03/29 15:40:47 jprice
|
||||
; New version without IPL.SYS
|
||||
;
|
||||
; Revision 1.1 1999/02/08 05:55:57 jprice
|
||||
; Added Pat's 1937 kernel patches
|
||||
;
|
||||
; EndLog
|
||||
;
|
||||
|
|
|
@ -1552,91 +1552,3 @@ COUNT DosTruename(const char FAR *src, char FAR *dest)
|
|||
return rc;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
*
|
||||
* /// Added SHARE support. 2000/09/04 Ron Cemer
|
||||
*
|
||||
* Log: dosfns.c,v - for newer log entries do a "cvs log dosfns.c"
|
||||
*
|
||||
* Revision 1.14 2000/04/02 05:01:08 jtabor
|
||||
* Replaced ChgDir Code
|
||||
*
|
||||
* Revision 1.13 2000/04/02 04:53:56 jtabor
|
||||
* Fix to DosChgDir
|
||||
*
|
||||
* Revision 1.12 2000/03/31 05:40:09 jtabor
|
||||
* Added Eric W. Biederman Patches
|
||||
*
|
||||
* Revision 1.11 2000/03/09 06:07:11 kernel
|
||||
* 2017f updates by James Tabor
|
||||
*
|
||||
* Revision 1.10 1999/09/23 04:40:46 jprice
|
||||
* *** empty log message ***
|
||||
*
|
||||
* Revision 1.8 1999/09/14 01:01:53 jprice
|
||||
* Fixed bug where you could write over directories.
|
||||
*
|
||||
* Revision 1.7 1999/08/25 03:18:07 jprice
|
||||
* ror4 patches to allow TC 2.01 compile.
|
||||
*
|
||||
* Revision 1.6 1999/05/03 06:25:45 jprice
|
||||
* Patches from ror4 and many changed of signed to unsigned variables.
|
||||
*
|
||||
* Revision 1.5 1999/04/16 12:21:22 jprice
|
||||
* Steffen c-break handler changes
|
||||
*
|
||||
* Revision 1.4 1999/04/12 03:21:17 jprice
|
||||
* more ror4 patches. Changes for multi-block IO
|
||||
*
|
||||
* Revision 1.3 1999/04/11 04:33:38 jprice
|
||||
* ror4 patches
|
||||
*
|
||||
* Revision 1.2 1999/04/04 18:51:43 jprice
|
||||
* no message
|
||||
*
|
||||
* Revision 1.1.1.1 1999/03/29 15:41:52 jprice
|
||||
* New version without IPL.SYS
|
||||
*
|
||||
* Revision 1.4 1999/02/09 02:54:23 jprice
|
||||
* Added Pat's 1937 kernel patches
|
||||
*
|
||||
* Revision 1.3 1999/02/01 01:43:28 jprice
|
||||
* Fixed findfirst function to find volume label with Windows long filenames
|
||||
*
|
||||
* Revision 1.2 1999/01/22 04:15:28 jprice
|
||||
* Formating
|
||||
*
|
||||
* Revision 1.1.1.1 1999/01/20 05:51:00 jprice
|
||||
* Imported sources
|
||||
*
|
||||
* Rev 1.10 06 Dec 1998 8:44:42 patv
|
||||
* Expanded dos functions due to new I/O subsystem.
|
||||
*
|
||||
* Rev 1.9 04 Jan 1998 23:14:38 patv
|
||||
* Changed Log for strip utility
|
||||
*
|
||||
* Rev 1.8 03 Jan 1998 8:36:04 patv
|
||||
* Converted data area to SDA format
|
||||
*
|
||||
* Rev 1.7 22 Jan 1997 12:59:56 patv
|
||||
* pre-0.92 bug fixes
|
||||
*
|
||||
* Rev 1.6 16 Jan 1997 12:46:32 patv
|
||||
* pre-Release 0.92 feature additions
|
||||
*
|
||||
* Rev 1.5 29 May 1996 21:15:20 patv
|
||||
* bug fixes for v0.91a
|
||||
*
|
||||
* Rev 1.4 19 Feb 1996 3:20:08 patv
|
||||
* Added NLS, int2f and config.sys processing
|
||||
*
|
||||
* Rev 1.2 01 Sep 1995 17:48:48 patv
|
||||
* First GPL release.
|
||||
*
|
||||
* Rev 1.1 30 Jul 1995 20:50:24 patv
|
||||
* Eliminated version strings in ipl
|
||||
*
|
||||
* Rev 1.0 02 Jul 1995 8:04:20 patv
|
||||
* Initial revision.
|
||||
*/
|
||||
|
|
|
@ -31,7 +31,7 @@
|
|||
PSP_USERSP equ 2eh
|
||||
PSP_USERSS equ 30h
|
||||
|
||||
segment HMA_TEXT
|
||||
segment _TEXT
|
||||
|
||||
global _DosIdle_int
|
||||
|
||||
|
|
|
@ -159,62 +159,3 @@ int ParseDosName(const char *filename, char *fcbname, BOOL bAllowWildcards)
|
|||
return nDirCnt;
|
||||
}
|
||||
|
||||
/*
|
||||
* Log: dosnames.c,v - for newer log entries do "cvs log dosnames.c"
|
||||
*
|
||||
* Revision 1.2 2000/05/08 04:29:59 jimtabor
|
||||
* Update CVS to 2020
|
||||
*
|
||||
* Revision 1.4 2000/03/31 05:40:09 jtabor
|
||||
* Added Eric W. Biederman Patches
|
||||
*
|
||||
* Revision 1.3 2000/03/09 06:07:11 kernel
|
||||
* 2017f updates by James Tabor
|
||||
*
|
||||
* Revision 1.2 1999/04/04 18:51:43 jprice
|
||||
* no message
|
||||
*
|
||||
* Revision 1.1.1.1 1999/03/29 15:41:54 jprice
|
||||
* New version without IPL.SYS
|
||||
*
|
||||
* Revision 1.4 1999/02/02 04:40:49 jprice
|
||||
* Steve Miller fixed a bug with doing "cd ." would lock the machine.
|
||||
*
|
||||
* Revision 1.3 1999/02/01 01:43:28 jprice
|
||||
* Fixed findfirst function to find volume label with Windows long filenames
|
||||
*
|
||||
* Revision 1.2 1999/01/22 04:15:28 jprice
|
||||
* Formating
|
||||
*
|
||||
* Revision 1.1.1.1 1999/01/20 05:51:00 jprice
|
||||
* Imported sources
|
||||
*
|
||||
*
|
||||
* Rev 1.8 22 Jan 1998 4:09:00 patv
|
||||
* Fixed pointer problems affecting SDA
|
||||
*
|
||||
* Rev 1.7 04 Jan 1998 23:14:38 patv
|
||||
* Changed Log for strip utility
|
||||
*
|
||||
* Rev 1.6 03 Jan 1998 8:36:04 patv
|
||||
* Converted data area to SDA format
|
||||
*
|
||||
* Rev 1.5 16 Jan 1997 12:46:36 patv
|
||||
* pre-Release 0.92 feature additions
|
||||
*
|
||||
* Rev 1.4 29 May 1996 21:15:12 patv
|
||||
* bug fixes for v0.91a
|
||||
*
|
||||
* Rev 1.3 19 Feb 1996 3:20:08 patv
|
||||
* Added NLS, int2f and config.sys processing
|
||||
*
|
||||
* Rev 1.2 01 Sep 1995 17:48:44 patv
|
||||
* First GPL release.
|
||||
*
|
||||
* Rev 1.1 30 Jul 1995 20:50:26 patv
|
||||
* Eliminated version strings in ipl
|
||||
*
|
||||
* Rev 1.0 02 Jul 1995 8:05:56 patv
|
||||
* Initial revision.
|
||||
*
|
||||
*/
|
||||
|
|
140
kernel/dsk.c
140
kernel/dsk.c
|
@ -110,8 +110,6 @@ ddt *getddt(int dev)
|
|||
return &(((ddt *) Dyn.Buffer)[dev]);
|
||||
}
|
||||
|
||||
ULONG dsk_lasttime = 0;
|
||||
|
||||
STATIC VOID tmark(ddt *pddt)
|
||||
{
|
||||
pddt->ddt_fh.ddt_lasttime = ReadPCClock();
|
||||
|
@ -200,7 +198,7 @@ COUNT ASMCFUNC FAR blk_driver(rqptr rp)
|
|||
}
|
||||
|
||||
STATIC char template_string[] = "XXXXXX diskette in drive X:\n";
|
||||
#define DRIVE_POS (sizeof(template_string) - 2)
|
||||
#define DRIVE_POS (sizeof(template_string) - 4)
|
||||
|
||||
STATIC WORD play_dj(ddt * pddt)
|
||||
{
|
||||
|
@ -870,33 +868,31 @@ STATIC WORD dskerr(COUNT code)
|
|||
translate LBA sectors into CHS addressing
|
||||
*/
|
||||
|
||||
STATIC int LBA_to_CHS(struct CHS *chs, ULONG LBA_address, ddt * pddt)
|
||||
STATIC int LBA_to_CHS(ULONG LBA_address, struct CHS *chs, const ddt * pddt)
|
||||
{
|
||||
/* we need the defbpb values since those are taken from the
|
||||
BIOS, not from some random boot sector, except when
|
||||
we're dealing with a floppy */
|
||||
unsigned long cylinder;
|
||||
|
||||
bpb *pbpb = hd(pddt->ddt_descflags) ? &pddt->ddt_defbpb : &pddt->ddt_bpb;
|
||||
|
||||
chs->Sector = LBA_address % pbpb->bpb_nsecs + 1;
|
||||
const bpb *pbpb = hd(pddt->ddt_descflags) ? &pddt->ddt_defbpb : &pddt->ddt_bpb;
|
||||
unsigned hs = pbpb->bpb_nsecs * pbpb->bpb_nheads;
|
||||
unsigned hsrem = (unsigned)(LBA_address % hs);
|
||||
|
||||
LBA_address /= pbpb->bpb_nsecs;
|
||||
LBA_address /= hs;
|
||||
|
||||
chs->Head = LBA_address % pbpb->bpb_nheads;
|
||||
|
||||
cylinder = LBA_address / pbpb->bpb_nheads;
|
||||
|
||||
if (cylinder > 1023ul)
|
||||
if (LBA_address > 1023ul)
|
||||
{
|
||||
#ifdef DEBUG
|
||||
printf("LBA-Transfer error : cylinder %lu > 1023\n", cylinder);
|
||||
printf("LBA-Transfer error : cylinder %lu > 1023\n", LBA_address);
|
||||
#else
|
||||
put_string("LBA-Transfer error : cylinder > 1023\n");
|
||||
#endif
|
||||
return 1;
|
||||
}
|
||||
chs->Cylinder = cylinder;
|
||||
|
||||
chs->Cylinder = LBA_address;
|
||||
chs->Head = hsrem / pbpb->bpb_nsecs;
|
||||
chs->Sector = hsrem % pbpb->bpb_nsecs + 1;
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -956,6 +952,8 @@ STATIC int LBA_Transfer(ddt * pddt, UWORD mode, VOID FAR * buffer,
|
|||
|
||||
int num_retries;
|
||||
|
||||
*transferred = 0;
|
||||
|
||||
/* only low-level format floppies for now ! */
|
||||
if (mode == LBA_FORMAT && hd(pddt->ddt_descflags))
|
||||
return 0;
|
||||
|
@ -974,7 +972,6 @@ STATIC int LBA_Transfer(ddt * pddt, UWORD mode, VOID FAR * buffer,
|
|||
}
|
||||
}
|
||||
|
||||
*transferred = 0;
|
||||
/*
|
||||
if (LBA_address+totaltodo > pddt->total_sectors)
|
||||
{
|
||||
|
@ -1036,7 +1033,7 @@ STATIC int LBA_Transfer(ddt * pddt, UWORD mode, VOID FAR * buffer,
|
|||
else
|
||||
{ /* transfer data, using old bios functions */
|
||||
|
||||
if (LBA_to_CHS(&chs, LBA_address, pddt))
|
||||
if (LBA_to_CHS(LBA_address, &chs, pddt))
|
||||
return 1;
|
||||
|
||||
/* avoid overflow at end of track */
|
||||
|
@ -1099,110 +1096,3 @@ STATIC int LBA_Transfer(ddt * pddt, UWORD mode, VOID FAR * buffer,
|
|||
* initcode moved (mostly) to initdisk.c
|
||||
* lower interface partly redesigned
|
||||
*/
|
||||
|
||||
/* Log: dsk.c,v - for newer log entries: "cvs log dsk.c"
|
||||
*
|
||||
* Revision 1.16 2001/04/29 brianreifsnyder
|
||||
* Added phase 1 support for LBA hard drives
|
||||
*
|
||||
* Revision 1.15 2001/04/16 01:45:26 bartoldeman
|
||||
* Fixed handles, config.sys drivers, warnings. Enabled INT21/AH=6C, printf %S/%Fs
|
||||
*
|
||||
* Revision 1.14 2001/04/15 03:21:50 bartoldeman
|
||||
* See history.txt for the list of fixes.
|
||||
*
|
||||
* Revision 1.13 2001/03/27 20:27:43 bartoldeman
|
||||
* dsk.c (reported by Nagy Daniel), inthndlr and int25/26 fixes by Tom Ehlert.
|
||||
*
|
||||
* Revision 1.12 2001/03/24 22:13:05 bartoldeman
|
||||
* See history.txt: dsk.c changes, warning removal and int21 entry handling.
|
||||
*
|
||||
* Revision 1.11 2001/03/21 02:56:25 bartoldeman
|
||||
* See history.txt for changes. Bug fixes and HMA support are the main ones.
|
||||
*
|
||||
* Revision 1.9 2001/03/08 21:15:00 bartoldeman
|
||||
* Space saving fixes from Tom Ehlert
|
||||
*
|
||||
* Revision 1.8 2000/06/21 18:16:46 jimtabor
|
||||
* Add UMB code, patch, and code fixes
|
||||
*
|
||||
* Revision 1.7 2000/06/01 06:37:38 jimtabor
|
||||
* Read History for Changes
|
||||
*
|
||||
* Revision 1.6 2000/05/26 19:25:19 jimtabor
|
||||
* Read History file for Change info
|
||||
*
|
||||
* Revision 1.5 2000/05/25 20:56:21 jimtabor
|
||||
* Fixed project history
|
||||
*
|
||||
* Revision 1.4 2000/05/17 19:15:12 jimtabor
|
||||
* Cleanup, add and fix source.
|
||||
*
|
||||
* Revision 1.3 2000/05/11 04:26:26 jimtabor
|
||||
* Added code for DOS FN 69 & 6C
|
||||
*
|
||||
* Revision 1.2 2000/05/08 04:29:59 jimtabor
|
||||
* Update CVS to 2020
|
||||
*
|
||||
* Revision 1.1.1.1 2000/05/06 19:34:53 jhall1
|
||||
* The FreeDOS Kernel. A DOS kernel that aims to be 100% compatible with
|
||||
* MS-DOS. Distributed under the GNU GPL.
|
||||
*
|
||||
* Revision 1.6 2000/04/29 05:13:16 jtabor
|
||||
* Added new functions and clean up code
|
||||
*
|
||||
* Revision 1.5 2000/03/09 06:07:11 kernel
|
||||
* 2017f updates by James Tabor
|
||||
*
|
||||
* Revision 1.4 1999/08/10 18:07:57 jprice
|
||||
* ror4 2011-04 patch
|
||||
*
|
||||
* Revision 1.3 1999/04/16 21:43:40 jprice
|
||||
* ror4 multi-sector IO
|
||||
*
|
||||
* Revision 1.2 1999/04/16 00:53:32 jprice
|
||||
* Optimized FAT handling
|
||||
*
|
||||
* Revision 1.1.1.1 1999/03/29 15:40:51 jprice
|
||||
* New version without IPL.SYS
|
||||
*
|
||||
* Revision 1.5 1999/02/14 04:26:46 jprice
|
||||
* Changed check media so that it checks if a floppy disk has been changed.
|
||||
*
|
||||
* Revision 1.4 1999/02/08 05:55:57 jprice
|
||||
* Added Pat's 1937 kernel patches
|
||||
*
|
||||
* Revision 1.3 1999/02/01 01:48:41 jprice
|
||||
* Clean up; Now you can use hex numbers in config.sys. added config.sys screen function to change screen mode (28 or 43/50 lines)
|
||||
*
|
||||
* Revision 1.2 1999/01/22 04:13:25 jprice
|
||||
* Formating
|
||||
*
|
||||
* Revision 1.1.1.1 1999/01/20 05:51:01 jprice
|
||||
* Imported sources
|
||||
*
|
||||
*
|
||||
* Rev 1.7 06 Dec 1998 8:45:18 patv
|
||||
* Changed due to new I/O subsystem.
|
||||
*
|
||||
* Rev 1.6 04 Jan 1998 23:15:16 patv
|
||||
* Changed Log for strip utility
|
||||
*
|
||||
* Rev 1.5 10 Jan 1997 5:41:48 patv
|
||||
* Modified for extended partition support
|
||||
*
|
||||
* Rev 1.4 29 May 1996 21:03:32 patv
|
||||
* bug fixes for v0.91a
|
||||
*
|
||||
* Rev 1.3 19 Feb 1996 3:21:36 patv
|
||||
* Added NLS, int2f and config.sys processing
|
||||
*
|
||||
* Rev 1.2 01 Sep 1995 17:54:18 patv
|
||||
* First GPL release.
|
||||
*
|
||||
* Rev 1.1 30 Jul 1995 20:52:00 patv
|
||||
* Eliminated version strings in ipl
|
||||
*
|
||||
* Rev 1.0 02 Jul 1995 8:32:42 patv
|
||||
* Initial revision.
|
||||
*/
|
||||
|
|
|
@ -31,10 +31,10 @@
|
|||
%include "segs.inc"
|
||||
%include "stacks.inc"
|
||||
|
||||
segment HMA_TEXT
|
||||
extern _int21_syscall:wrt HGROUP
|
||||
extern _int21_service:wrt HGROUP
|
||||
extern _int2526_handler:wrt HGROUP
|
||||
segment _TEXT
|
||||
extern _int21_syscall:wrt TGROUP
|
||||
extern _int21_service:wrt TGROUP
|
||||
extern _int2526_handler:wrt TGROUP
|
||||
extern _error_tos:wrt DGROUP
|
||||
extern _char_api_tos:wrt DGROUP
|
||||
extern _disk_api_tos:wrt DGROUP
|
||||
|
@ -123,21 +123,19 @@ cpm_error: mov al,0
|
|||
; int20_handler(iregs UserRegs)
|
||||
;
|
||||
|
||||
print_hex: mov cx, 404h
|
||||
hex_loop:
|
||||
rol dx, cl
|
||||
mov al, dl
|
||||
and al, 0fh
|
||||
add al, 30h
|
||||
cmp al, 39h
|
||||
jbe no_letter
|
||||
add al, 7
|
||||
no_letter:
|
||||
mov bx, 0070h
|
||||
mov ah, 0eh
|
||||
int 10h
|
||||
dec ch
|
||||
jnz hex_loop
|
||||
print_hex: mov cl, 12
|
||||
hex_loop:
|
||||
mov ax, dx
|
||||
shr ax, cl
|
||||
and al, 0fh
|
||||
cmp al, 10
|
||||
sbb al, 69h
|
||||
das
|
||||
mov bx, 0070h
|
||||
mov ah, 0eh
|
||||
int 10h
|
||||
sub cl, 4
|
||||
jae hex_loop
|
||||
ret
|
||||
|
||||
divide_by_zero_message db 0dh,0ah,'Interrupt divide by zero, stack:',0dh,0ah,0
|
||||
|
@ -639,35 +637,3 @@ CritErrAbort:
|
|||
mov [bp+reg_ax],ax
|
||||
sti
|
||||
jmp int21_reentry ; restart the system call
|
||||
|
||||
; Log: entry.asm,v
|
||||
; Revision 1.5 2000/03/20 03:15:49 kernel
|
||||
; Change in Entry.asm
|
||||
;
|
||||
; Revision 1.4 1999/09/23 04:40:46 jprice
|
||||
; *** empty log message ***
|
||||
;
|
||||
; Revision 1.2 1999/08/10 17:57:12 jprice
|
||||
; ror4 2011-02 patch
|
||||
;
|
||||
; Revision 1.1.1.1 1999/03/29 15:40:53 jprice
|
||||
; New version without IPL.SYS
|
||||
;
|
||||
; Revision 1.4 1999/02/08 05:55:57 jprice
|
||||
; Added Pat's 1937 kernel patches
|
||||
;
|
||||
; Revision 1.3 1999/02/01 01:48:41 jprice
|
||||
; Clean up; Now you can use hex numbers in config.sys. added config.sys screen function to change screen mode (28 or 43/50 lines)
|
||||
;
|
||||
; Revision 1.2 1999/01/22 04:13:25 jprice
|
||||
; Formating
|
||||
;
|
||||
; Revision 1.1.1.1 1999/01/20 05:51:01 jprice
|
||||
; Imported sources
|
||||
;
|
||||
; Rev 1.1 06 Dec 1998 8:48:40 patv
|
||||
; New int 21h handler code.
|
||||
;
|
||||
; Rev 1.0 07 Feb 1998 20:42:08 patv
|
||||
; Modified stack frame to match DOS standard
|
||||
; EndLog
|
||||
|
|
|
@ -89,43 +89,3 @@ COUNT block_error(request * rq, COUNT nDrive, struct dhdr FAR * lpDevice)
|
|||
nDrive, rq->r_status & S_MASK, lpDevice);
|
||||
}
|
||||
|
||||
/*
|
||||
* Log: error.c,v - for newer entries do "cvs log error.c"
|
||||
*
|
||||
* Revision 1.2 2000/03/09 06:07:11 kernel
|
||||
* 2017f updates by James Tabor
|
||||
*
|
||||
* Revision 1.1.1.1 1999/03/29 15:41:55 jprice
|
||||
* New version without IPL.SYS
|
||||
*
|
||||
* Revision 1.4 1999/02/09 02:54:23 jprice
|
||||
* Added Pat's 1937 kernel patches
|
||||
*
|
||||
* Revision 1.3 1999/02/01 01:43:28 jprice
|
||||
* Fixed findfirst function to find volume label with Windows long filenames
|
||||
*
|
||||
* Revision 1.2 1999/01/22 04:15:28 jprice
|
||||
* Formating
|
||||
*
|
||||
* Revision 1.1.1.1 1999/01/20 05:51:00 jprice
|
||||
* Imported sources
|
||||
*
|
||||
*
|
||||
* Rev 1.5 06 Dec 1998 8:43:54 patv
|
||||
* Now handles errors like MS-DOS.
|
||||
*
|
||||
* Rev 1.4 04 Jan 1998 23:14:36 patv
|
||||
* Changed Log for strip utility
|
||||
*
|
||||
* Rev 1.3 29 May 1996 21:15:10 patv
|
||||
* bug fixes for v0.91a
|
||||
*
|
||||
* Rev 1.2 01 Sep 1995 17:48:46 patv
|
||||
* First GPL release.
|
||||
*
|
||||
* Rev 1.1 30 Jul 1995 20:50:26 patv
|
||||
* Eliminated version strings in ipl
|
||||
*
|
||||
* Rev 1.0 02 Jul 1995 8:06:14 patv
|
||||
* Initial revision.
|
||||
*/
|
||||
|
|
|
@ -30,7 +30,7 @@
|
|||
|
||||
%include "segs.inc"
|
||||
|
||||
segment HMA_TEXT
|
||||
segment _TEXT
|
||||
; _execrh
|
||||
; Execute Device Request
|
||||
;
|
||||
|
@ -78,40 +78,3 @@ segment INIT_TEXT
|
|||
|
||||
_init_execrh:
|
||||
EXECRH
|
||||
|
||||
; Log: execrh.asm,v
|
||||
; Revision 1.3 2000/03/09 06:07:11 kernel
|
||||
; 2017f updates by James Tabor
|
||||
;
|
||||
; Revision 1.2 1999/08/10 17:57:12 jprice
|
||||
; ror4 2011-02 patch
|
||||
;
|
||||
; Revision 1.1.1.1 1999/03/29 15:40:54 jprice
|
||||
; New version without IPL.SYS
|
||||
;
|
||||
; Revision 1.4 1999/02/08 05:55:57 jprice
|
||||
; Added Pat's 1937 kernel patches
|
||||
;
|
||||
; Revision 1.3 1999/02/01 01:48:41 jprice
|
||||
; Clean up; Now you can use hex numbers in config.sys. added config.sys screen function to change screen mode (28 or 43/50 lines)
|
||||
;
|
||||
; Revision 1.2 1999/01/22 04:13:25 jprice
|
||||
; Formating
|
||||
;
|
||||
; Revision 1.1.1.1 1999/01/20 05:51:01 jprice
|
||||
; Imported sources
|
||||
;
|
||||
;
|
||||
; Rev 1.3 06 Dec 1998 8:45:06 patv
|
||||
;Bug fixes.
|
||||
;
|
||||
; Rev 1.2 29 May 1996 21:03:30 patv
|
||||
;bug fixes for v0.91a
|
||||
;
|
||||
; Rev 1.1 01 Sep 1995 17:54:22 patv
|
||||
;First GPL release.
|
||||
;
|
||||
; Rev 1.0 02 Jul 1995 9:05:34 patv
|
||||
;Initial revision.
|
||||
; EndLog
|
||||
;
|
||||
|
|
|
@ -46,8 +46,8 @@ VOID dir_init_fnode(f_node_ptr fnp, CLUSTER dirstart)
|
|||
fnp->f_flags.f_droot = FALSE;
|
||||
fnp->f_flags.f_ddir = TRUE;
|
||||
fnp->f_flags.f_dnew = TRUE;
|
||||
fnp->f_diroff = fnp->f_offset = fnp->f_cluster_offset =
|
||||
fnp->f_highwater = 0l;
|
||||
fnp->f_diroff = fnp->f_offset = fnp->f_highwater = 0l;
|
||||
fnp->f_cluster_offset = 0;
|
||||
|
||||
/* root directory */
|
||||
if (dirstart == 0)
|
||||
|
@ -319,7 +319,7 @@ BOOL dir_write(REG f_node_ptr fnp)
|
|||
fnp->f_offset = fnp->f_diroff;
|
||||
fnp->f_back = LONG_LAST_CLUSTER;
|
||||
fnp->f_cluster = fnp->f_dirstart;
|
||||
fnp->f_cluster_offset = 0l; /*JPP */
|
||||
fnp->f_cluster_offset = 0;
|
||||
|
||||
/* Search through the FAT to find the block */
|
||||
/* that this entry is in. */
|
||||
|
@ -641,92 +641,3 @@ int FileName83Length(BYTE * filename83)
|
|||
}
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Log: fatdir.c,v - for newer log entries do a "cvs log fatdir.c"
|
||||
*
|
||||
* Revision 1.12 2000/03/31 05:40:09 jtabor
|
||||
* Added Eric W. Biederman Patches
|
||||
*
|
||||
* Revision 1.11 2000/03/17 22:59:04 kernel
|
||||
* Steffen Kaiser's NLS changes
|
||||
*
|
||||
* Revision 1.10 2000/03/09 06:07:11 kernel
|
||||
* 2017f updates by James Tabor
|
||||
*
|
||||
* Revision 1.9 1999/08/25 03:18:07 jprice
|
||||
* ror4 patches to allow TC 2.01 compile.
|
||||
*
|
||||
* Revision 1.8 1999/08/10 17:57:12 jprice
|
||||
* ror4 2011-02 patch
|
||||
*
|
||||
* Revision 1.7 1999/05/03 06:25:45 jprice
|
||||
* Patches from ror4 and many changed of signed to unsigned variables.
|
||||
*
|
||||
* Revision 1.6 1999/04/16 00:53:32 jprice
|
||||
* Optimized FAT handling
|
||||
*
|
||||
* Revision 1.5 1999/04/13 15:48:20 jprice
|
||||
* no message
|
||||
*
|
||||
* Revision 1.4 1999/04/11 04:33:38 jprice
|
||||
* ror4 patches
|
||||
*
|
||||
* Revision 1.2 1999/04/04 18:51:43 jprice
|
||||
* no message
|
||||
*
|
||||
* Revision 1.1.1.1 1999/03/29 15:41:58 jprice
|
||||
* New version without IPL.SYS
|
||||
*
|
||||
* Revision 1.7 1999/03/25 05:06:57 jprice
|
||||
* Fixed findfirst & findnext functions to treat the attributes like MSDOS does.
|
||||
*
|
||||
* Revision 1.6 1999/02/14 04:27:09 jprice
|
||||
* Changed check media so that it checks if a floppy disk has been changed.
|
||||
*
|
||||
* Revision 1.5 1999/02/09 02:54:23 jprice
|
||||
* Added Pat's 1937 kernel patches
|
||||
*
|
||||
* Revision 1.4 1999/02/01 01:43:28 jprice
|
||||
* Fixed findfirst function to find volume label with Windows long filenames
|
||||
*
|
||||
* Revision 1.3 1999/01/30 08:25:34 jprice
|
||||
* Clean up; Fixed bug with set attribute function. If you tried to
|
||||
* change the attributres of a directory, it would erase it.
|
||||
*
|
||||
* Revision 1.2 1999/01/22 04:15:28 jprice
|
||||
* Formating
|
||||
*
|
||||
* Revision 1.1.1.1 1999/01/20 05:51:00 jprice
|
||||
* Imported sources
|
||||
*
|
||||
*
|
||||
* Rev 1.10 06 Dec 1998 8:44:36 patv
|
||||
* Bug fixes.
|
||||
*
|
||||
* Rev 1.9 22 Jan 1998 4:09:00 patv
|
||||
* Fixed pointer problems affecting SDA
|
||||
*
|
||||
* Rev 1.8 04 Jan 1998 23:14:36 patv
|
||||
* Changed Log for strip utility
|
||||
*
|
||||
* Rev 1.7 03 Jan 1998 8:36:02 patv
|
||||
* Converted data area to SDA format
|
||||
*
|
||||
* Rev 1.6 16 Jan 1997 12:46:30 patv
|
||||
* pre-Release 0.92 feature additions
|
||||
*
|
||||
* Rev 1.5 29 May 1996 21:15:18 patv
|
||||
* bug fixes for v0.91a
|
||||
*
|
||||
* Rev 1.4 19 Feb 1996 3:20:12 patv
|
||||
* Added NLS, int2f and config.sys processing
|
||||
*
|
||||
* Rev 1.2 01 Sep 1995 17:48:38 patv
|
||||
* First GPL release.
|
||||
*
|
||||
* Rev 1.1 30 Jul 1995 20:50:24 patv
|
||||
* Eliminated version strings in ipl
|
||||
*
|
||||
* Rev 1.0 02 Jul 1995 8:04:34 patv
|
||||
* Initial revision.
|
||||
*/
|
||||
|
|
163
kernel/fatfs.c
163
kernel/fatfs.c
|
@ -236,7 +236,7 @@ long dos_open(char *path, unsigned flags, unsigned attrib)
|
|||
{
|
||||
fnp->f_cluster = FREE;
|
||||
setdstart(fnp->f_dir, FREE);
|
||||
fnp->f_cluster_offset = 0l; /*JPP */
|
||||
fnp->f_cluster_offset = 0;
|
||||
}
|
||||
|
||||
fnp->f_flags.f_dmod = (status != S_OPENED);
|
||||
|
@ -247,7 +247,7 @@ long dos_open(char *path, unsigned flags, unsigned attrib)
|
|||
merge_file_changes(fnp, status == S_OPENED); /* /// Added - Ron Cemer */
|
||||
/* /// Moved from above. - Ron Cemer */
|
||||
fnp->f_cluster = getdstart(fnp->f_dir);
|
||||
fnp->f_cluster_offset = 0l; /*JPP */
|
||||
fnp->f_cluster_offset = 0;
|
||||
|
||||
return xlt_fnp(fnp) | ((long)status << 16);
|
||||
}
|
||||
|
@ -1318,24 +1318,21 @@ STATIC BOOL first_fat(f_node_ptr fnp)
|
|||
* DE_SEEK - [XFR_READ mode only] byte at f_offset lies outside of
|
||||
* the FAT chain. The fnode is not released.
|
||||
* Notes.
|
||||
* JPP: new map_cluster. If we are moving forward, then use the offset
|
||||
* If we are moving forward, then use the relative cluster number offset
|
||||
* that we are at now (f_cluster_offset) to start, instead of starting
|
||||
* at the beginning. */
|
||||
|
||||
COUNT map_cluster(REG f_node_ptr fnp, COUNT mode)
|
||||
{
|
||||
ULONG idx;
|
||||
ULONG clssize; /* might be 64K (by WinNT) TE */
|
||||
CLUSTER relcluster = (CLUSTER)((fnp->f_offset / fnp->f_dpb->dpb_secsize) >>
|
||||
fnp->f_dpb->dpb_shftcnt);
|
||||
|
||||
#ifdef DISPLAY_GETBLOCK
|
||||
printf("map_cluster: current %lu, offset %lu, diff=%lu ",
|
||||
fnp->f_cluster_offset, fnp->f_offset,
|
||||
(ULONG)fnp->f_cluster_offset, fnp->f_offset,
|
||||
fnp->f_offset - fnp->f_cluster_offset);
|
||||
#endif
|
||||
|
||||
/* The variable clssize will be used later. */
|
||||
clssize = (ULONG) fnp->f_dpb->dpb_secsize << fnp->f_dpb->dpb_shftcnt;
|
||||
|
||||
/* If someone did a seek, but no writes have occured, we will */
|
||||
/* need to initialize the fnode. */
|
||||
if ((mode == XFR_WRITE) && checkdstart(fnp->f_dir, FREE))
|
||||
|
@ -1347,16 +1344,9 @@ COUNT map_cluster(REG f_node_ptr fnp, COUNT mode)
|
|||
}
|
||||
}
|
||||
|
||||
if (fnp->f_offset >= fnp->f_cluster_offset) /*JPP */
|
||||
if (relcluster < fnp->f_cluster_offset)
|
||||
{
|
||||
/* Set internal index and cluster size. */
|
||||
idx = fnp->f_offset - fnp->f_cluster_offset;
|
||||
}
|
||||
else
|
||||
{
|
||||
/* Set internal index and cluster size. */
|
||||
idx = fnp->f_offset;
|
||||
|
||||
fnp->f_cluster = fnp->f_flags.f_ddir ? fnp->f_dirstart :
|
||||
getdstart(fnp->f_dir);
|
||||
fnp->f_cluster_offset = 0;
|
||||
|
@ -1386,15 +1376,14 @@ COUNT map_cluster(REG f_node_ptr fnp, COUNT mode)
|
|||
}
|
||||
}
|
||||
|
||||
if (idx < clssize)
|
||||
if (fnp->f_cluster_offset == relcluster)
|
||||
break;
|
||||
|
||||
fnp->f_back = fnp->f_cluster;
|
||||
|
||||
/* get next cluster in the chain */
|
||||
fnp->f_cluster = next_cluster(fnp->f_dpb, fnp->f_cluster);
|
||||
fnp->f_cluster_offset += clssize;
|
||||
idx -= clssize;
|
||||
fnp->f_cluster_offset++;
|
||||
if (fnp->f_cluster == 1)
|
||||
return DE_SEEK;
|
||||
}
|
||||
|
@ -2236,138 +2225,4 @@ done:
|
|||
*
|
||||
* the dos_mkdir/extenddir (with getblock() instead of getblockOver) was a real
|
||||
* performance killer on large drives. (~0.5 sec /dos_mkdir) TE
|
||||
*
|
||||
* Log: fatfs.c,v - for newer log entries do "cvs log fatfs.c"
|
||||
*
|
||||
* /// 2000/08/12 22:49:00 Ron Cemer
|
||||
* Fixed writeblock() to only use getbuf() if writing a
|
||||
* complete sector; otherwise use getbloc() and do a
|
||||
* read-modify-write to prevent writing garbage back
|
||||
* over pre-existing data in the file.
|
||||
* This was a major BUG.
|
||||
*
|
||||
* Revision 1.23 2000/04/29 05:13:16 jtabor
|
||||
* Added new functions and clean up code
|
||||
*
|
||||
* Revision 1.19 2000/03/17 22:59:04 kernel
|
||||
* Steffen Kaiser's NLS changes
|
||||
*
|
||||
* Revision 1.18 2000/03/17 04:13:12 kernel
|
||||
* Added Change for media_check
|
||||
*
|
||||
* Revision 1.17 2000/03/17 04:01:20 kernel
|
||||
* Added Change for media_check
|
||||
*
|
||||
* Revision 1.16 2000/03/09 06:07:11 kernel
|
||||
* 2017f updates by James Tabor
|
||||
*
|
||||
* Revision 1.15 1999/09/23 04:40:46 jprice
|
||||
* *** empty log message ***
|
||||
*
|
||||
* Revision 1.12 1999/09/14 01:01:54 jprice
|
||||
* Fixed bug where you could write over directories.
|
||||
*
|
||||
* Revision 1.11 1999/08/25 03:18:08 jprice
|
||||
* ror4 patches to allow TC 2.01 compile.
|
||||
*
|
||||
* Revision 1.10 1999/08/10 18:03:42 jprice
|
||||
* ror4 2011-03 patch
|
||||
*
|
||||
* Revision 1.9 1999/05/03 06:25:45 jprice
|
||||
* Patches from ror4 and many changed of signed to unsigned variables.
|
||||
*
|
||||
* Revision 1.8 1999/05/03 05:00:24 jprice
|
||||
* Fixed bug in map_cluster function
|
||||
*
|
||||
* Revision 1.7 1999/04/16 00:53:33 jprice
|
||||
* Optimized FAT handling
|
||||
*
|
||||
* Revision 1.6 1999/04/12 23:41:54 jprice
|
||||
* Using getbuf to write data instead of getblock
|
||||
* using getblock made it read the block before it wrote it
|
||||
*
|
||||
* Revision 1.5 1999/04/12 03:21:17 jprice
|
||||
* more ror4 patches. Changes for multi-block IO
|
||||
*
|
||||
* Revision 1.4 1999/04/11 04:33:38 jprice
|
||||
* ror4 patches
|
||||
*
|
||||
* Revision 1.2 1999/04/04 18:51:43 jprice
|
||||
* no message
|
||||
*
|
||||
* Revision 1.1.1.1 1999/03/29 15:42:07 jprice
|
||||
* New version without IPL.SYS
|
||||
*
|
||||
* Revision 1.8 1999/03/23 23:37:39 jprice
|
||||
* Fixed mkdir DOS function so it will create a directory with same name as the volument label
|
||||
*
|
||||
* Revision 1.7 1999/03/02 07:00:51 jprice
|
||||
* Fixed bugs with dos set attribute function. Now returns correct
|
||||
* error code, and errors if user tries to set bits 6 & 7.
|
||||
*
|
||||
* Revision 1.6 1999/02/09 02:54:23 jprice
|
||||
* Added Pat's 1937 kernel patches
|
||||
*
|
||||
* Revision 1.5 1999/02/04 03:18:37 jprice
|
||||
* Formating. Added comments.
|
||||
*
|
||||
* Revision 1.4 1999/02/01 01:43:28 jprice
|
||||
* Fixed findfirst function to find volume label with Windows long filenames
|
||||
*
|
||||
* Revision 1.3 1999/01/30 08:25:34 jprice
|
||||
* Clean up; Fixed bug with set attribute function. If you tried to
|
||||
* change the attributes of a directory, it would erase it.
|
||||
*
|
||||
* Revision 1.2 1999/01/22 04:15:28 jprice
|
||||
* Formating
|
||||
*
|
||||
* Revision 1.1.1.1 1999/01/20 05:51:00 jprice
|
||||
* Imported sources
|
||||
*
|
||||
*
|
||||
* Rev 1.14 06 Dec 1998 8:44:26 patv
|
||||
* Bug fixes.
|
||||
*
|
||||
* Rev 1.13 09 Feb 1998 5:43:30 patv
|
||||
* Eliminated FAT12 EOF and error useage.
|
||||
*
|
||||
* Rev 1.12 03 Feb 1998 11:28:04 patv
|
||||
* Fixed lseek bug.
|
||||
*
|
||||
* Rev 1.11 22 Jan 1998 5:38:08 patv
|
||||
* Corrected remaining file name and extension copies that did not
|
||||
* account for far file nodes due to allocated FILES= spec.
|
||||
*
|
||||
* Rev 1.10 22 Jan 1998 4:09:00 patv
|
||||
* Fixed pointer problems affecting SDA
|
||||
*
|
||||
* Rev 1.9 04 Jan 1998 23:14:40 patv
|
||||
* Changed Log for strip utility
|
||||
*
|
||||
* Rev 1.8 04 Jan 1998 17:24:14 patv
|
||||
* Corrected subdirectory bug
|
||||
*
|
||||
* Rev 1.7 03 Jan 1998 8:36:04 patv
|
||||
* Converted data area to SDA format
|
||||
*
|
||||
* Rev 1.6 22 Jan 1997 13:00:30 patv
|
||||
* pre-0.92 bug fixes
|
||||
*
|
||||
* Rev 1.5 16 Jan 1997 12:46:24 patv
|
||||
* pre-Release 0.92 feature additions
|
||||
*
|
||||
* Rev 1.4 29 May 1996 21:15:16 patv
|
||||
* bug fixes for v0.91a
|
||||
*
|
||||
* Rev 1.3 19 Feb 1996 3:20:10 patv
|
||||
* Added NLS, int2f and config.sys processing
|
||||
*
|
||||
* Rev 1.2 01 Sep 1995 17:48:40 patv
|
||||
* First GPL release.
|
||||
*
|
||||
* Rev 1.1 30 Jul 1995 20:50:24 patv
|
||||
* Eliminated version strings in ipl
|
||||
*
|
||||
* Rev 1.0 02 Jul 1995 8:04:46 patv
|
||||
* Initial revision.
|
||||
*/
|
||||
|
|
|
@ -82,6 +82,15 @@ struct buffer FAR *getFATblock(ULONG clussec, struct dpb FAR * dpbp)
|
|||
bp->b_flag &= ~(BFR_DATA | BFR_DIR);
|
||||
bp->b_flag |= BFR_FAT | BFR_VALID;
|
||||
bp->b_dpbp = dpbp;
|
||||
bp->b_copies = dpbp->dpb_fats;
|
||||
bp->b_offset = dpbp->dpb_fatsize;
|
||||
#ifdef WITHFAT32
|
||||
if (ISFAT32(dpbp))
|
||||
{
|
||||
if (dpbp->dpb_xflags & FAT_NO_MIRRORING)
|
||||
bp->b_copies = 1;
|
||||
}
|
||||
#endif
|
||||
}
|
||||
return bp;
|
||||
}
|
||||
|
@ -183,7 +192,7 @@ unsigned link_fat(struct dpb FAR * dpbp, CLUSTER Cluster1,
|
|||
*fbp1 = (*fbp1 & 0xf0) | ((Cluster2 >> 8) & 0x0f);
|
||||
}
|
||||
}
|
||||
else if (ISFAT16(dpbp))
|
||||
else if (ELSE_ISFAT16(dpbp))
|
||||
{
|
||||
/* form an index so that we can read the block as a */
|
||||
/* byte array */
|
||||
|
@ -319,7 +328,7 @@ CLUSTER next_cluster(struct dpb FAR * dpbp, CLUSTER ClusterNum)
|
|||
return LONG_BAD;
|
||||
return idx;
|
||||
}
|
||||
else if (ISFAT16(dpbp))
|
||||
else if (ELSE_ISFAT16(dpbp))
|
||||
{
|
||||
UWORD res;
|
||||
|
||||
|
@ -353,58 +362,3 @@ CLUSTER next_cluster(struct dpb FAR * dpbp, CLUSTER ClusterNum)
|
|||
return LONG_LAST_CLUSTER;
|
||||
}
|
||||
|
||||
/*
|
||||
* Log: fattab.c,v - for newer log entries do "cvs log fattab.c"
|
||||
*
|
||||
* Revision 1.6 1999/08/10 18:03:42 jprice
|
||||
* ror4 2011-03 patch
|
||||
*
|
||||
* Revision 1.5 1999/05/03 06:25:45 jprice
|
||||
* Patches from ror4 and many changed of signed to unsigned variables.
|
||||
*
|
||||
* Revision 1.4 1999/04/16 00:53:33 jprice
|
||||
* Optimized FAT handling
|
||||
*
|
||||
* Revision 1.3 1999/04/11 04:33:38 jprice
|
||||
* ror4 patches
|
||||
*
|
||||
* Revision 1.1.1.1 1999/03/29 15:42:09 jprice
|
||||
* New version without IPL.SYS
|
||||
*
|
||||
* Revision 1.4 1999/02/09 02:54:23 jprice
|
||||
* Added Pat's 1937 kernel patches
|
||||
*
|
||||
* Revision 1.3 1999/02/01 01:43:28 jprice
|
||||
* Fixed findfirst function to find volume label with Windows long filenames
|
||||
*
|
||||
* Revision 1.2 1999/01/22 04:15:28 jprice
|
||||
* Formating
|
||||
*
|
||||
* Revision 1.1.1.1 1999/01/20 05:51:00 jprice
|
||||
* Imported sources
|
||||
*
|
||||
*
|
||||
* Rev 1.7 09 Feb 1998 5:41:08 patv
|
||||
* Eliminated FAT12 EOF and error returns.
|
||||
*
|
||||
* Rev 1.6 04 Jan 1998 23:14:38 patv
|
||||
* Changed Log for strip utility
|
||||
*
|
||||
* Rev 1.5 16 Jan 1997 12:46:22 patv
|
||||
* pre-Release 0.92 feature additions
|
||||
*
|
||||
* Rev 1.4 29 May 1996 21:15:14 patv
|
||||
* bug fixes for v0.91a
|
||||
*
|
||||
* Rev 1.3 19 Feb 1996 3:20:08 patv
|
||||
* Added NLS, int2f and config.sys processing
|
||||
*
|
||||
* Rev 1.2 01 Sep 1995 17:48:42 patv
|
||||
* First GPL release.
|
||||
*
|
||||
* Rev 1.1 30 Jul 1995 20:50:26 patv
|
||||
* Eliminated version strings in ipl
|
||||
*
|
||||
* Rev 1.0 02 Jul 1995 8:04:56 patv
|
||||
* Initial revision.
|
||||
*/
|
||||
|
|
|
@ -692,64 +692,3 @@ UBYTE FcbFindFirstNext(xfcb FAR * lpXfcb, BOOL First)
|
|||
}
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Log: fcbfns.c,v - for newer entries see "cvs log fcbfns.c"
|
||||
*
|
||||
* Revision 1.7 2000/03/31 05:40:09 jtabor
|
||||
* Added Eric W. Biederman Patches
|
||||
*
|
||||
* Revision 1.6 2000/03/17 22:59:04 kernel
|
||||
* Steffen Kaiser's NLS changes
|
||||
*
|
||||
* Revision 1.5 2000/03/09 06:07:11 kernel
|
||||
* 2017f updates by James Tabor
|
||||
*
|
||||
* Revision 1.4 1999/09/23 04:40:46 jprice
|
||||
* *** empty log message ***
|
||||
*
|
||||
* Revision 1.2 1999/04/04 18:51:43 jprice
|
||||
* no message
|
||||
*
|
||||
* Revision 1.1.1.1 1999/03/29 15:42:15 jprice
|
||||
* New version without IPL.SYS
|
||||
*
|
||||
* Revision 1.5 1999/02/09 02:54:23 jprice
|
||||
* Added Pat's 1937 kernel patches
|
||||
*
|
||||
* Revision 1.4 1999/02/04 03:18:37 jprice
|
||||
* Formating. Added comments.
|
||||
*
|
||||
* Revision 1.3 1999/02/01 01:43:28 jprice
|
||||
* Fixed findfirst function to find volume label with Windows long filenames
|
||||
*
|
||||
* Revision 1.2 1999/01/22 04:15:28 jprice
|
||||
* Formating
|
||||
*
|
||||
* Revision 1.1.1.1 1999/01/20 05:51:00 jprice
|
||||
* Imported sources
|
||||
*
|
||||
*
|
||||
* Rev 1.7 06 Dec 1998 8:44:10 patv
|
||||
* Expanded fcb functions for new I/O subsystem.
|
||||
*
|
||||
* Rev 1.6 04 Jan 1998 23:14:38 patv
|
||||
* Changed Log for strip utility
|
||||
*
|
||||
* Rev 1.5 03 Jan 1998 8:36:02 patv
|
||||
* Converted data area to SDA format
|
||||
*
|
||||
* Rev 1.4 16 Jan 1997 12:46:38 patv
|
||||
* pre-Release 0.92 feature additions
|
||||
*
|
||||
* Rev 1.3 29 May 1996 21:15:14 patv
|
||||
* bug fixes for v0.91a
|
||||
*
|
||||
* Rev 1.2 01 Sep 1995 17:48:44 patv
|
||||
* First GPL release.
|
||||
*
|
||||
* Rev 1.1 30 Jul 1995 20:50:26 patv
|
||||
* Eliminated version strings in ipl
|
||||
*
|
||||
* Rev 1.0 02 Jul 1995 8:06:06 patv
|
||||
* Initial revision.
|
||||
*/
|
||||
|
|
128
kernel/globals.h
128
kernel/globals.h
|
@ -150,21 +150,6 @@ FAR * ASM DPBp; /* First drive Parameter Block */
|
|||
#define DSKWRITEINT26 3
|
||||
#define DSKREADINT25 4
|
||||
|
||||
/* FAT cluster special flags */
|
||||
#define FREE 0x000
|
||||
|
||||
#ifdef WITHFAT32
|
||||
#define LONG_LAST_CLUSTER 0x0FFFFFFFl
|
||||
#define LONG_BAD 0x0FFFFFF7l
|
||||
#else
|
||||
#define LONG_LAST_CLUSTER 0xFFFF
|
||||
#define LONG_BAD 0xFFF8
|
||||
#endif
|
||||
#define MASK16 0xFFF8
|
||||
#define BAD16 0xFFF0
|
||||
#define MASK12 0xFF8
|
||||
#define BAD12 0xFF0
|
||||
|
||||
/* NLS character table type */
|
||||
typedef BYTE *UPMAP;
|
||||
|
||||
|
@ -270,6 +255,7 @@ FAR * ASM clock, /* CLOCK$ device */
|
|||
extern WORD ASM maxbksize; /* Number of Drives in system */
|
||||
extern struct buffer
|
||||
FAR *ASM firstbuf; /* head of buffers linked list */
|
||||
GLOBAL char FAR *firstAvailableBuf;
|
||||
extern struct cds FAR * ASM CDSp; /* Current Directory Structure */
|
||||
extern
|
||||
struct cds FAR * ASM current_ldt;
|
||||
|
@ -453,115 +439,3 @@ void ASMCFUNC spawn_int23(void); /* procsupt.asm */
|
|||
|
||||
GLOBAL BYTE ReturnAnyDosVersionExpected;
|
||||
|
||||
/*
|
||||
* Log: globals.h,v
|
||||
*
|
||||
* Revision 1.17 2000/03/16 03:28:49 kernel
|
||||
* *** empty log message ***
|
||||
*
|
||||
* Revision 1.16 2000/03/09 06:07:11 kernel
|
||||
* 2017f updates by James Tabor
|
||||
*
|
||||
* Revision 1.15 1999/09/23 04:40:47 jprice
|
||||
* *** empty log message ***
|
||||
*
|
||||
* Revision 1.13 1999/08/25 03:18:08 jprice
|
||||
* ror4 patches to allow TC 2.01 compile.
|
||||
*
|
||||
* Revision 1.12 1999/08/10 18:03:43 jprice
|
||||
* ror4 2011-03 patch
|
||||
*
|
||||
* Revision 1.11 1999/05/03 06:25:45 jprice
|
||||
* Patches from ror4 and many changed of signed to unsigned variables.
|
||||
*
|
||||
* Revision 1.10 1999/04/16 21:43:40 jprice
|
||||
* ror4 multi-sector IO
|
||||
*
|
||||
* Revision 1.9 1999/04/16 12:21:22 jprice
|
||||
* Steffen c-break handler changes
|
||||
*
|
||||
* Revision 1.8 1999/04/16 00:53:33 jprice
|
||||
* Optimized FAT handling
|
||||
*
|
||||
* Revision 1.7 1999/04/12 03:21:17 jprice
|
||||
* more ror4 patches. Changes for multi-block IO
|
||||
*
|
||||
* Revision 1.6 1999/04/11 04:33:39 jprice
|
||||
* ror4 patches
|
||||
*
|
||||
* Revision 1.4 1999/04/04 22:57:47 jprice
|
||||
* no message
|
||||
*
|
||||
* Revision 1.3 1999/04/04 18:51:43 jprice
|
||||
* no message
|
||||
*
|
||||
* Revision 1.2 1999/03/29 17:05:09 jprice
|
||||
* ror4 changes
|
||||
*
|
||||
* Revision 1.1.1.1 1999/03/29 15:40:58 jprice
|
||||
* New version without IPL.SYS
|
||||
*
|
||||
* Revision 1.5 1999/02/08 05:55:57 jprice
|
||||
* Added Pat's 1937 kernel patches
|
||||
*
|
||||
* Revision 1.4 1999/02/01 01:48:41 jprice
|
||||
* Clean up; Now you can use hex numbers in config.sys. added config.sys screen function to change screen mode (28 or 43/50 lines)
|
||||
*
|
||||
* Revision 1.3 1999/01/30 08:26:46 jprice
|
||||
* Clean up; commented out copyright messages while we debug.
|
||||
*
|
||||
* Revision 1.2 1999/01/22 04:13:26 jprice
|
||||
* Formating
|
||||
*
|
||||
* Revision 1.1.1.1 1999/01/20 05:51:01 jprice
|
||||
* Imported sources
|
||||
*
|
||||
|
||||
Rev 1.16 06 Dec 1998 8:45:56 patv
|
||||
Expanded due to new I/O subsystem.
|
||||
|
||||
Rev 1.15 07 Feb 1998 20:38:00 patv
|
||||
Modified stack fram to match DOS standard
|
||||
|
||||
Rev 1.14 02 Feb 1998 22:33:46 patv
|
||||
Fixed size of default_drive. Caused failures when break_ena was not zero.
|
||||
|
||||
Rev 1.13 22 Jan 1998 4:09:24 patv
|
||||
Fixed pointer problems affecting SDA
|
||||
|
||||
Rev 1.12 04 Jan 1998 23:16:22 patv
|
||||
Changed Log for strip utility
|
||||
|
||||
Rev 1.11 03 Jan 1998 8:36:50 patv
|
||||
Converted data area to SDA format
|
||||
|
||||
Rev 1.10 06 Feb 1997 21:57:04 patv
|
||||
Changed version format string
|
||||
|
||||
Rev 1.9 06 Feb 1997 21:35:08 patv
|
||||
Modified to support new version format
|
||||
|
||||
Rev 1.8 22 Jan 1997 13:17:14 patv
|
||||
Changed to support version.h and pre-0.92 Svante Frey bug fixes.
|
||||
|
||||
Rev 1.6 16 Jan 1997 12:47:00 patv
|
||||
pre-Release 0.92 feature additions
|
||||
|
||||
Rev 1.5 13 Sep 1996 19:26:32 patv
|
||||
Fixed boot for hard drive
|
||||
|
||||
Rev 1.4 29 Aug 1996 13:07:22 patv
|
||||
Bug fixes for v0.91b
|
||||
|
||||
Rev 1.3 29 May 1996 21:03:34 patv
|
||||
bug fixes for v0.91a
|
||||
|
||||
Rev 1.2 19 Feb 1996 3:23:04 patv
|
||||
Added NLS, int2f and config.sys processing
|
||||
|
||||
Rev 1.1 01 Sep 1995 17:54:16 patv
|
||||
First GPL release.
|
||||
|
||||
Rev 1.0 02 Jul 1995 8:31:00 patv
|
||||
Initial revision.
|
||||
*/
|
||||
|
|
|
@ -27,7 +27,6 @@ extern __segment DosTextSeg;
|
|||
|
||||
#else
|
||||
|
||||
#pragma error("unknown compiler - please adjust")
|
||||
this should simply not compile ! !
|
||||
#error("unknown compiler - please adjust")
|
||||
#endif
|
||||
extern BYTE DOSFAR version_flags; /* minor version number */
|
||||
|
|
|
@ -0,0 +1,102 @@
|
|||
/****************************************************************/
|
||||
/* */
|
||||
/* initclk.c */
|
||||
/* */
|
||||
/* System Clock Driver - initialization */
|
||||
/* */
|
||||
/* Copyright (c) 1995 */
|
||||
/* Pasquale J. Villani */
|
||||
/* All Rights Reserved */
|
||||
/* */
|
||||
/* This file is part of DOS-C. */
|
||||
/* */
|
||||
/* DOS-C is free software; 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. */
|
||||
/* */
|
||||
/* DOS-C is distributed in the hope that it will be useful, but */
|
||||
/* WITHOUT ANY WARRANTY; without even the implied warranty of */
|
||||
/* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See */
|
||||
/* the GNU General Public License for more details. */
|
||||
/* */
|
||||
/* You should have received a copy of the GNU General Public */
|
||||
/* License along with DOS-C; see the file COPYING. If not, */
|
||||
/* write to the Free Software Foundation, 675 Mass Ave, */
|
||||
/* Cambridge, MA 02139, USA. */
|
||||
/****************************************************************/
|
||||
|
||||
#include "portab.h"
|
||||
#include "init-mod.h"
|
||||
#include "init-dat.h"
|
||||
|
||||
#ifdef VERSION_STRINGS
|
||||
static char *RcsId =
|
||||
"$Id$";
|
||||
#endif
|
||||
|
||||
/* */
|
||||
/* WARNING - THIS DRIVER IS NON-PORTABLE!!!! */
|
||||
/* */
|
||||
|
||||
STATIC int InitByteToBcd(int x)
|
||||
{
|
||||
return ((x / 10) << 4) | (x % 10);
|
||||
}
|
||||
|
||||
STATIC int InitBcdToByte(int x)
|
||||
{
|
||||
return ((x >> 4) & 0xf) * 10 + (x & 0xf);
|
||||
}
|
||||
|
||||
STATIC void InitDayToBcd(BYTE * x, unsigned mon, unsigned day, unsigned yr)
|
||||
{
|
||||
x[1] = InitByteToBcd(mon);
|
||||
x[0] = InitByteToBcd(day);
|
||||
x[3] = InitByteToBcd(yr / 100);
|
||||
x[2] = InitByteToBcd(yr % 100);
|
||||
}
|
||||
|
||||
void Init_clk_driver(void)
|
||||
{
|
||||
iregs regsT, regsD, dosregs;
|
||||
|
||||
regsT.a.b.h = 0x02;
|
||||
regsT.d.x = regsT.c.x = 0;
|
||||
regsT.flags = 0;
|
||||
init_call_intr(0x1a, ®sT);
|
||||
|
||||
if ((regsT.flags & 0x0001) || (regsT.c.x == 0 && regsT.d.x == 0))
|
||||
{
|
||||
goto error; /* error */
|
||||
}
|
||||
|
||||
regsD.a.b.h = 0x04;
|
||||
regsD.d.x = regsD.c.x = 0;
|
||||
regsD.flags = 0;
|
||||
init_call_intr(0x1a, ®sD);
|
||||
|
||||
if ((regsD.flags & 0x0001) || regsD.c.x == 0 || regsD.d.x == 0)
|
||||
{
|
||||
goto error;
|
||||
}
|
||||
|
||||
/* DosSetDate */
|
||||
dosregs.a.b.h = 0x2b;
|
||||
dosregs.c.x = 100 * InitBcdToByte(regsD.c.b.h) +
|
||||
InitBcdToByte(regsD.c.b.l);
|
||||
dosregs.d.b.h = InitBcdToByte(regsD.d.b.h); /* month */
|
||||
dosregs.d.b.l = InitBcdToByte(regsD.d.b.l); /* day */
|
||||
init_call_intr(0x21, &dosregs);
|
||||
|
||||
/* DosSetTime */
|
||||
dosregs.a.b.h = 0x2d;
|
||||
dosregs.c.b.l = InitBcdToByte(regsT.c.b.l); /* minutes */
|
||||
dosregs.c.b.h = InitBcdToByte(regsT.c.b.h); /* hours */
|
||||
dosregs.d.b.h = InitBcdToByte(regsT.d.b.h); /*seconds */
|
||||
dosregs.d.b.l = 0;
|
||||
init_call_intr(0x21, &dosregs);
|
||||
|
||||
error:;
|
||||
|
||||
}
|
|
@ -204,9 +204,9 @@ extern unsigned char DOSTEXTFAR ASM int1e_table[0xe];
|
|||
* the problem with fff0-fff6 is that they might be interpreted as BAD *
|
||||
* even though the standard BAD value is ...ff7 */
|
||||
|
||||
#define FAT12MAX (FAT_MAGIC-7)
|
||||
#define FAT16MAX (FAT_MAGIC16-7)
|
||||
#define FAT32MAX (FAT_MAGIC32-7)
|
||||
#define FAT12MAX (FAT_MAGIC-6)
|
||||
#define FAT16MAX (FAT_MAGIC16-6)
|
||||
#define FAT32MAX (FAT_MAGIC32-6)
|
||||
|
||||
#define IsExtPartition(parttyp) ((parttyp) == EXTENDED || \
|
||||
(parttyp) == EXTENDED_LBA )
|
||||
|
@ -354,15 +354,14 @@ COUNT init_getdriveparm(UBYTE drive, bpb FAR * pbpbarray)
|
|||
void init_LBA_to_CHS(struct CHS *chs, ULONG LBA_address,
|
||||
struct DriveParamS *driveparam)
|
||||
{
|
||||
unsigned long cylinder;
|
||||
unsigned hs = driveparam->chs.Sector * driveparam->chs.Head;
|
||||
unsigned hsrem = (unsigned)(LBA_address % hs);
|
||||
|
||||
chs->Sector = LBA_address % driveparam->chs.Sector + 1;
|
||||
LBA_address /= hs;
|
||||
|
||||
LBA_address /= driveparam->chs.Sector;
|
||||
|
||||
chs->Head = LBA_address % driveparam->chs.Head;
|
||||
cylinder = LBA_address / driveparam->chs.Head;
|
||||
chs->Cylinder = cylinder >= 0x10000ul ? 0xffffu : cylinder;
|
||||
chs->Cylinder = LBA_address >= 0x10000ul ? 0xffffu : (unsigned)LBA_address;
|
||||
chs->Head = hsrem / driveparam->chs.Sector;
|
||||
chs->Sector = hsrem % driveparam->chs.Sector + 1;
|
||||
}
|
||||
|
||||
void printCHS(char *title, struct CHS *chs)
|
||||
|
|
|
@ -186,7 +186,6 @@ int EnableHMA(VOID)
|
|||
|
||||
int MoveKernelToHMA()
|
||||
{
|
||||
|
||||
if (DosLoadedInHMA)
|
||||
{
|
||||
return TRUE;
|
||||
|
@ -366,7 +365,8 @@ void MoveKernel(unsigned NewKernelSegment)
|
|||
d[i] = s[i];
|
||||
}
|
||||
|
||||
HMAFree = FP_OFF(HMADest) + len; /* first free byte after HMA_TEXT */
|
||||
HMAFree = (FP_OFF(HMADest) + len + 0xf) & 0xfff0;
|
||||
/* first free byte after HMA_TEXT on 16 byte boundary */
|
||||
|
||||
{
|
||||
/* D) but it only makes sense, if we can relocate
|
||||
|
@ -446,9 +446,3 @@ errorReturn:
|
|||
for (;;) ;
|
||||
}
|
||||
|
||||
/*
|
||||
* Log: inithma.c,v - for newer entries do "cvs log inithma.c"
|
||||
*
|
||||
* Revision 0.1 2001/03/16 12:00:00 tom ehlert
|
||||
* initial creation
|
||||
*/
|
||||
|
|
|
@ -52,46 +52,3 @@ UWORD init_oem(void)
|
|||
return top_k;
|
||||
}
|
||||
|
||||
/*
|
||||
* Log: initoem.c,v - for newer entries do "cvs log initoem.c"
|
||||
*
|
||||
* Revision 1.3 2000/03/09 06:07:11 kernel
|
||||
* 2017f updates by James Tabor
|
||||
*
|
||||
* Revision 1.2 1999/08/25 03:18:08 jprice
|
||||
* ror4 patches to allow TC 2.01 compile.
|
||||
*
|
||||
* Revision 1.1.1.1 1999/03/29 15:40:58 jprice
|
||||
* New version without IPL.SYS
|
||||
*
|
||||
* Revision 1.5 1999/02/08 05:55:57 jprice
|
||||
* Added Pat's 1937 kernel patches
|
||||
*
|
||||
* Revision 1.4 1999/02/01 01:48:41 jprice
|
||||
* Clean up; Now you can use hex numbers in config.sys. added config.sys screen function to change screen mode (28 or 43/50 lines)
|
||||
*
|
||||
* Revision 1.3 1999/01/30 08:28:11 jprice
|
||||
* Clean up; Fixed bug with set attribute function.
|
||||
*
|
||||
* Revision 1.2 1999/01/22 04:13:26 jprice
|
||||
* Formating
|
||||
*
|
||||
* Revision 1.1.1.1 1999/01/20 05:51:01 jprice
|
||||
* Imported sources
|
||||
*
|
||||
*
|
||||
* Rev 1.4 04 Jan 1998 23:15:16 patv
|
||||
* Changed Log for strip utility
|
||||
*
|
||||
* Rev 1.3 29 May 1996 21:03:48 patv
|
||||
* bug fixes for v0.91a
|
||||
*
|
||||
* Rev 1.2 19 Feb 1996 3:21:34 patv
|
||||
* Added NLS, int2f and config.sys processing
|
||||
*
|
||||
* Rev 1.1 01 Sep 1995 17:54:16 patv
|
||||
* First GPL release.
|
||||
*
|
||||
* Rev 1.0 02 Jul 1995 8:31:54 patv
|
||||
* Initial revision.
|
||||
*/
|
||||
|
|
|
@ -31,9 +31,9 @@
|
|||
%include "segs.inc"
|
||||
%include "stacks.inc"
|
||||
|
||||
segment HMA_TEXT
|
||||
segment _TEXT
|
||||
extern _cu_psp:wrt DGROUP
|
||||
extern _syscall_MUX14:wrt HMA_TEXT
|
||||
extern _syscall_MUX14:wrt _TEXT
|
||||
|
||||
global reloc_call_int2f_handler
|
||||
reloc_call_int2f_handler:
|
||||
|
@ -56,6 +56,12 @@ Int2f3:
|
|||
je FarTabRetn ; Win Hook return fast
|
||||
cmp ah,12h
|
||||
je IntDosCal ; Dos Internal calls
|
||||
|
||||
cmp ax,4a01h
|
||||
je IntDosCal ; Dos Internal calls
|
||||
cmp ax,4a02h
|
||||
je IntDosCal ; Dos Internal calls
|
||||
|
||||
cmp ah,10h ; SHARE.EXE interrupt?
|
||||
je Int2f1 ; yes, do installation check
|
||||
cmp ah,08h
|
||||
|
@ -130,7 +136,7 @@ IntDosCal:
|
|||
|
||||
mov ax,DGROUP
|
||||
mov ds,ax
|
||||
extern _int2F_12_handler:wrt HGROUP
|
||||
extern _int2F_12_handler:wrt TGROUP
|
||||
call _int2F_12_handler
|
||||
|
||||
%IFDEF I386
|
||||
|
@ -319,14 +325,14 @@ int2f_call:
|
|||
xor cx, cx ; set to succeed; clear carry and CX
|
||||
int 2fh
|
||||
pop bx
|
||||
jc no_clear_ax
|
||||
clear_ax:
|
||||
mov ax, cx ; extended open -> status from CX in AX
|
||||
; otherwise CX was set to zero above
|
||||
jmp short no_neg_ax
|
||||
jnc clear_ax
|
||||
no_clear_ax:
|
||||
neg ax
|
||||
no_neg_ax:
|
||||
xchg cx, ax
|
||||
clear_ax:
|
||||
xchg ax, cx ; extended open -> status from CX in AX
|
||||
; otherwise CX was set to zero above
|
||||
no_neg_ax:
|
||||
pop bx
|
||||
pop cx
|
||||
pop di
|
||||
|
@ -573,40 +579,3 @@ umbt_ret:
|
|||
|
||||
umbt_error: xor ax,ax
|
||||
jmp short umbt_ret
|
||||
|
||||
; Log: int2f.asm,v
|
||||
; Revision 1.4 2000/03/31 05:40:09 jtabor
|
||||
; Added Eric W. Biederman Patches
|
||||
;
|
||||
; Revision 1.3 2000/03/09 06:07:11 kernel
|
||||
; 2017f updates by James Tabor
|
||||
;
|
||||
; Revision 1.2 1999/08/10 17:57:12 jprice
|
||||
; ror4 2011-02 patch
|
||||
;
|
||||
; Revision 1.1.1.1 1999/03/29 15:40:59 jprice
|
||||
; New version without IPL.SYS
|
||||
;
|
||||
; Revision 1.4 1999/02/08 05:55:57 jprice
|
||||
; Added Pat's 1937 kernel patches
|
||||
;
|
||||
; Revision 1.3 1999/02/01 01:48:41 jprice
|
||||
; Clean up; Now you can use hex numbers in config.sys. added config.sys screen function to change screen mode (28 or 43/50 lines)
|
||||
;
|
||||
; Revision 1.2 1999/01/22 04:13:26 jprice
|
||||
; Formating
|
||||
;
|
||||
; Revision 1.1.1.1 1999/01/20 05:51:01 jprice
|
||||
; Imported sources
|
||||
;
|
||||
;
|
||||
; Rev 1.2 06 Dec 1998 8:48:12 patv
|
||||
; Bug fixes.
|
||||
;
|
||||
; Rev 1.1 29 May 1996 21:03:46 patv
|
||||
; bug fixes for v0.91a
|
||||
;
|
||||
; Rev 1.0 19 Feb 1996 3:34:38 patv
|
||||
; Initial revision.
|
||||
; EndLog
|
||||
;
|
||||
|
|
|
@ -1810,9 +1810,48 @@ struct int2f12regs {
|
|||
UWORD callerARG1; /* used if called from INT2F/12 */
|
||||
};
|
||||
|
||||
extern short AllocateHMASpace (size_t lowbuffer, size_t highbuffer);
|
||||
|
||||
VOID ASMCFUNC int2F_12_handler(struct int2f12regs r)
|
||||
{
|
||||
UWORD function = r.ax & 0xff;
|
||||
|
||||
/* dont use
|
||||
QueryFreeHMASpace(&p);
|
||||
here; DS !=SS
|
||||
*/
|
||||
if ((r.ax & 0xff00) == 0x4a00)
|
||||
{
|
||||
size_t wantedBytes = r.bx;
|
||||
|
||||
r.bx = 0;
|
||||
r.es = FP_SEG(firstAvailableBuf);
|
||||
r.di = FP_OFF(firstAvailableBuf);
|
||||
if (FP_SEG(firstAvailableBuf) != 0xffff)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
if (r.ax == 0x4a01)
|
||||
{
|
||||
r.bx = 0 - FP_OFF(firstAvailableBuf);
|
||||
return;
|
||||
}
|
||||
|
||||
if (r.ax == 0x4a02)
|
||||
{
|
||||
if (wantedBytes > 0 - FP_OFF(firstAvailableBuf))
|
||||
{
|
||||
r.bx = 0;
|
||||
return;
|
||||
}
|
||||
AllocateHMASpace(FP_OFF(firstAvailableBuf),
|
||||
FP_OFF(firstAvailableBuf)+wantedBytes);
|
||||
firstAvailableBuf += wantedBytes;
|
||||
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
if (function > 0x31)
|
||||
return;
|
||||
|
@ -2000,164 +2039,3 @@ VOID ASMCFUNC int2F_12_handler(struct int2f12regs r)
|
|||
* Modified interrupts 0x25 & 0x26 to return more accurate error codes.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Log: inthndlr.c,v - see "cvs log inthndlr.c" for newer entries.
|
||||
*
|
||||
* Revision 1.10 2000/10/29 23:51:56 jimtabor
|
||||
* Adding Share Support by Ron Cemer
|
||||
*
|
||||
* Revision 1.9 2000/08/06 05:50:17 jimtabor
|
||||
* Add new files and update cvs with patches and changes
|
||||
*
|
||||
* Revision 1.8 2000/06/21 18:16:46 jimtabor
|
||||
* Add UMB code, patch, and code fixes
|
||||
*
|
||||
* Revision 1.7 2000/05/25 20:56:21 jimtabor
|
||||
* Fixed project history
|
||||
*
|
||||
* Revision 1.6 2000/05/17 19:15:12 jimtabor
|
||||
* Cleanup, add and fix source.
|
||||
*
|
||||
* Revision 1.5 2000/05/11 06:14:45 jimtabor
|
||||
* Removed #if statement
|
||||
*
|
||||
* Revision 1.4 2000/05/11 04:26:26 jimtabor
|
||||
* Added code for DOS FN 69 & 6C
|
||||
*
|
||||
* Revision 1.3 2000/05/09 00:30:11 jimtabor
|
||||
* Clean up and Release
|
||||
*
|
||||
* Revision 1.2 2000/05/08 04:30:00 jimtabor
|
||||
* Update CVS to 2020
|
||||
*
|
||||
* Revision 1.1.1.1 2000/05/06 19:34:53 jhall1
|
||||
* The FreeDOS Kernel. A DOS kernel that aims to be 100% compatible with
|
||||
* MS-DOS. Distributed under the GNU GPL.
|
||||
*
|
||||
* Revision 1.24 2000/04/29 05:13:16 jtabor
|
||||
* Added new functions and clean up code
|
||||
*
|
||||
* Revision 1.22 2000/03/17 22:59:04 kernel
|
||||
* Steffen Kaiser's NLS changes
|
||||
*
|
||||
* Revision 1.21 2000/03/17 05:00:11 kernel
|
||||
* Fixed Func 0x32
|
||||
*
|
||||
* Revision 1.20 2000/03/16 03:28:49 kernel
|
||||
* *** empty log message ***
|
||||
*
|
||||
* Revision 1.19 2000/03/09 06:07:11 kernel
|
||||
* 2017f updates by James Tabor
|
||||
*
|
||||
* Revision 1.18 1999/09/23 04:40:47 jprice
|
||||
* *** empty log message ***
|
||||
*
|
||||
* Revision 1.13 1999/09/14 01:18:36 jprice
|
||||
* ror4: fix int25 & 26 are not cached.
|
||||
*
|
||||
* Revision 1.12 1999/09/13 22:16:47 jprice
|
||||
* Fix 210B function
|
||||
*
|
||||
* Revision 1.11 1999/08/25 03:18:08 jprice
|
||||
* ror4 patches to allow TC 2.01 compile.
|
||||
*
|
||||
* Revision 1.10 1999/08/10 18:07:57 jprice
|
||||
* ror4 2011-04 patch
|
||||
*
|
||||
* Revision 1.9 1999/08/10 18:03:43 jprice
|
||||
* ror4 2011-03 patch
|
||||
*
|
||||
* Revision 1.8 1999/05/03 06:25:45 jprice
|
||||
* Patches from ror4 and many changed of signed to unsigned variables.
|
||||
*
|
||||
* Revision 1.7 1999/04/23 04:24:39 jprice
|
||||
* Memory manager changes made by ska
|
||||
*
|
||||
* Revision 1.6 1999/04/16 12:21:22 jprice
|
||||
* Steffen c-break handler changes
|
||||
*
|
||||
* Revision 1.5 1999/04/11 04:33:39 jprice
|
||||
* ror4 patches
|
||||
*
|
||||
* Revision 1.3 1999/04/04 22:57:47 jprice
|
||||
* no message
|
||||
*
|
||||
* Revision 1.2 1999/04/04 18:51:43 jprice
|
||||
* no message
|
||||
*
|
||||
* Revision 1.1.1.1 1999/03/29 15:41:04 jprice
|
||||
* New version without IPL.SYS
|
||||
*
|
||||
* Revision 1.9 1999/03/23 23:38:49 jprice
|
||||
* Now sets carry when we don't support a function
|
||||
*
|
||||
* Revision 1.8 1999/03/02 07:02:55 jprice
|
||||
* Added some comments. Fixed some minor bugs.
|
||||
*
|
||||
* Revision 1.7 1999/03/01 05:45:08 jprice
|
||||
* Added some DEBUG ifdef's so that it will compile without DEBUG defined.
|
||||
*
|
||||
* Revision 1.6 1999/02/08 05:55:57 jprice
|
||||
* Added Pat's 1937 kernel patches
|
||||
*
|
||||
* Revision 1.5 1999/02/04 03:11:07 jprice
|
||||
* Formating
|
||||
*
|
||||
* Revision 1.4 1999/02/01 01:48:41 jprice
|
||||
* Clean up; Now you can use hex numbers in config.sys. added config.sys screen function to change screen mode (28 or 43/50 lines)
|
||||
*
|
||||
* Revision 1.3 1999/01/30 08:28:11 jprice
|
||||
* Clean up; Fixed bug with set attribute function.
|
||||
*
|
||||
* Revision 1.2 1999/01/22 04:13:26 jprice
|
||||
* Formating
|
||||
*
|
||||
* Revision 1.1.1.1 1999/01/20 05:51:00 jprice
|
||||
* Imported sources
|
||||
*
|
||||
*
|
||||
* Rev 1.14 06 Dec 1998 8:47:38 patv
|
||||
* Expanded due to improved int 21h handler code.
|
||||
*
|
||||
* Rev 1.13 07 Feb 1998 20:38:46 patv
|
||||
* Modified stack fram to match DOS standard
|
||||
*
|
||||
* Rev 1.12 22 Jan 1998 4:09:26 patv
|
||||
* Fixed pointer problems affecting SDA
|
||||
*
|
||||
* Rev 1.11 06 Jan 1998 20:13:18 patv
|
||||
* Broke apart int21_system from int21_handler.
|
||||
*
|
||||
* Rev 1.10 04 Jan 1998 23:15:22 patv
|
||||
* Changed Log for strip utility
|
||||
*
|
||||
* Rev 1.9 04 Jan 1998 17:26:16 patv
|
||||
* Corrected subdirectory bug
|
||||
*
|
||||
* Rev 1.8 03 Jan 1998 8:36:48 patv
|
||||
* Converted data area to SDA format
|
||||
*
|
||||
* Rev 1.7 01 Aug 1997 2:00:10 patv
|
||||
* COMPATIBILITY: Added return '$' in AL for function int 21h fn 09h
|
||||
*
|
||||
* Rev 1.6 06 Feb 1997 19:05:54 patv
|
||||
* Added hooks for tsc command
|
||||
*
|
||||
* Rev 1.5 22 Jan 1997 13:18:32 patv
|
||||
* pre-0.92 Svante Frey bug fixes.
|
||||
*
|
||||
* Rev 1.4 16 Jan 1997 12:46:46 patv
|
||||
* pre-Release 0.92 feature additions
|
||||
*
|
||||
* Rev 1.3 29 May 1996 21:03:40 patv
|
||||
* bug fixes for v0.91a
|
||||
*
|
||||
* Rev 1.2 19 Feb 1996 3:21:48 patv
|
||||
* Added NLS, int2f and config.sys processing
|
||||
*
|
||||
* Rev 1.1 01 Sep 1995 17:54:20 patv
|
||||
* First GPL release.
|
||||
*
|
||||
* Rev 1.0 02 Jul 1995 8:33:34 patv
|
||||
* Initial revision.
|
||||
*/
|
||||
|
|
|
@ -28,7 +28,7 @@
|
|||
|
||||
%include "segs.inc"
|
||||
|
||||
segment HMA_TEXT
|
||||
segment _TEXT
|
||||
;
|
||||
; void intr(nr, rp)
|
||||
; REG int nr
|
||||
|
|
|
@ -30,18 +30,18 @@
|
|||
|
||||
%include "segs.inc"
|
||||
|
||||
extern ConTable:wrt TGROUP
|
||||
extern LptTable:wrt TGROUP
|
||||
extern ComTable:wrt TGROUP
|
||||
extern uPrtNo:wrt TGROUP
|
||||
extern CommonNdRdExit:wrt TGROUP
|
||||
extern ConTable:wrt LGROUP
|
||||
extern LptTable:wrt LGROUP
|
||||
extern ComTable:wrt LGROUP
|
||||
extern uPrtNo:wrt LGROUP
|
||||
extern CommonNdRdExit:wrt LGROUP
|
||||
;!! extern _NumFloppies:wrt DGROUP
|
||||
extern blk_stk_top:wrt DGROUP
|
||||
extern clk_stk_top:wrt DGROUP
|
||||
extern _reloc_call_blk_driver
|
||||
extern _reloc_call_clk_driver
|
||||
|
||||
extern _TEXT_DGROUP:wrt TGROUP
|
||||
extern _TEXT_DGROUP:wrt LGROUP
|
||||
|
||||
;---------------------------------------------------
|
||||
;
|
||||
|
@ -81,7 +81,7 @@ segment _IO_FIXED_DATA
|
|||
;
|
||||
global _con_dev
|
||||
_con_dev equ $
|
||||
dw _prn_dev,TGROUP
|
||||
dw _prn_dev,LGROUP
|
||||
dw 8013h ; con device (stdin & stdout)
|
||||
dw GenStrategy
|
||||
dw ConIntr
|
||||
|
@ -91,7 +91,7 @@ _con_dev equ $
|
|||
; Generic prn device that can be redirected via mode
|
||||
;
|
||||
global _prn_dev
|
||||
_prn_dev dw _aux_dev,TGROUP
|
||||
_prn_dev dw _aux_dev,LGROUP
|
||||
dw 0A040h
|
||||
dw GenStrategy
|
||||
dw PrnIntr
|
||||
|
@ -101,7 +101,7 @@ _prn_dev dw _aux_dev,TGROUP
|
|||
; Generic aux device that can be redirected via mode
|
||||
;
|
||||
global _aux_dev
|
||||
_aux_dev dw _Lpt1Dev,TGROUP
|
||||
_aux_dev dw _Lpt1Dev,LGROUP
|
||||
dw 8000h
|
||||
dw GenStrategy
|
||||
dw AuxIntr
|
||||
|
@ -110,17 +110,17 @@ _aux_dev dw _Lpt1Dev,TGROUP
|
|||
;
|
||||
; Printer device drivers
|
||||
;
|
||||
_Lpt1Dev dw _Lpt2Dev,TGROUP
|
||||
_Lpt1Dev dw _Lpt2Dev,LGROUP
|
||||
dw 0A040h
|
||||
dw GenStrategy
|
||||
dw Lpt1Intr
|
||||
db 'LPT1 '
|
||||
_Lpt2Dev dw _Lpt3Dev,TGROUP
|
||||
_Lpt2Dev dw _Lpt3Dev,LGROUP
|
||||
dw 0A040h
|
||||
dw GenStrategy
|
||||
dw Lpt2Intr
|
||||
db 'LPT2 '
|
||||
_Lpt3Dev dw _Com1Dev,TGROUP
|
||||
_Lpt3Dev dw _Com1Dev,LGROUP
|
||||
dw 0A040h
|
||||
dw GenStrategy
|
||||
dw Lpt3Intr
|
||||
|
@ -129,22 +129,22 @@ _Lpt3Dev dw _Com1Dev,TGROUP
|
|||
;
|
||||
; Com device drivers
|
||||
;
|
||||
_Com1Dev dw _Com2Dev,TGROUP
|
||||
_Com1Dev dw _Com2Dev,LGROUP
|
||||
dw 8000h
|
||||
dw GenStrategy
|
||||
dw AuxIntr
|
||||
db 'COM1 '
|
||||
_Com2Dev dw _Com3Dev,TGROUP
|
||||
_Com2Dev dw _Com3Dev,LGROUP
|
||||
dw 8000h
|
||||
dw GenStrategy
|
||||
dw Com2Intr
|
||||
db 'COM2 '
|
||||
_Com3Dev dw _Com4Dev,TGROUP
|
||||
_Com3Dev dw _Com4Dev,LGROUP
|
||||
dw 8000h
|
||||
dw GenStrategy
|
||||
dw Com3Intr
|
||||
db 'COM3 '
|
||||
_Com4Dev dw _clk_dev,TGROUP
|
||||
_Com4Dev dw _clk_dev,LGROUP
|
||||
dw 8000h
|
||||
dw GenStrategy
|
||||
dw Com4Intr
|
||||
|
@ -155,7 +155,7 @@ _Com4Dev dw _clk_dev,TGROUP
|
|||
;
|
||||
global _clk_dev
|
||||
_clk_dev equ $
|
||||
dw _blk_dev,TGROUP
|
||||
dw _blk_dev,LGROUP
|
||||
dw 8008h ; clock device
|
||||
dw GenStrategy
|
||||
dw clk_entry
|
||||
|
@ -596,19 +596,3 @@ clk_and_blk_common:
|
|||
pop bx
|
||||
popf
|
||||
retf
|
||||
|
||||
; Log: io.asm,v
|
||||
; Revision 1.3 2000/03/09 06:07:11 kernel
|
||||
; 2017f updates by James Tabor
|
||||
;
|
||||
; Revision 1.2 1999/08/10 17:57:12 jprice
|
||||
; ror4 2011-02 patch
|
||||
;
|
||||
; Revision 1.1.1.1 1999/03/29 15:41:07 jprice
|
||||
; New version without IPL.SYS
|
||||
;
|
||||
; Revision 1.1 1999/02/08 05:55:57 jprice
|
||||
; Added Pat's 1937 kernel patches
|
||||
;
|
||||
; EndLog
|
||||
;
|
||||
|
|
|
@ -49,30 +49,12 @@
|
|||
%define E_FAILURE 12 ; General Failure
|
||||
|
||||
|
||||
extern _IOExit:wrt TGROUP
|
||||
extern _IOSuccess:wrt TGROUP
|
||||
extern _IOErrorExit:wrt TGROUP
|
||||
extern _IOErrCnt:wrt TGROUP
|
||||
extern _IODone:wrt TGROUP
|
||||
extern _IOCommandError:wrt TGROUP
|
||||
extern GetUnitNum:wrt TGROUP
|
||||
extern _ReqPktPtr:wrt TGROUP
|
||||
; Log: io.inc,v
|
||||
;
|
||||
; Revision 1.3 1999/08/10 17:57:12 jprice
|
||||
; ror4 2011-02 patch
|
||||
;
|
||||
; Revision 1.2 1999/03/29 17:05:09 jprice
|
||||
; ror4 changes
|
||||
;
|
||||
; Revision 1.1.1.1 1999/03/29 15:41:08 jprice
|
||||
; New version without IPL.SYS
|
||||
;
|
||||
; Revision 1.1 1999/02/08 05:55:57 jprice
|
||||
; Added Pat's 1937 kernel patches
|
||||
;
|
||||
;
|
||||
; Rev 1.0 06 Dec 1998 8:13:02 patv
|
||||
; Initial revision.
|
||||
; EndLog
|
||||
;
|
||||
extern _IOExit:wrt LGROUP
|
||||
extern _IOSuccess:wrt LGROUP
|
||||
extern _IOErrorExit:wrt LGROUP
|
||||
extern _IOErrCnt:wrt LGROUP
|
||||
extern _IODone:wrt LGROUP
|
||||
extern _IOCommandError:wrt LGROUP
|
||||
extern GetUnitNum:wrt LGROUP
|
||||
extern _ReqPktPtr:wrt LGROUP
|
||||
|
||||
|
|
|
@ -339,55 +339,3 @@ COUNT DosDevIOctl(lregs * r)
|
|||
return SUCCESS;
|
||||
}
|
||||
|
||||
/*
|
||||
* Log: ioctl.c,v - for newer log entries do "cvs log ioctl.c"
|
||||
*
|
||||
* Revision 1.4 2000/04/29 05:13:16 jtabor
|
||||
* Added new functions and clean up code
|
||||
*
|
||||
* Revision 1.3 2000/03/09 06:07:11 kernel
|
||||
* 2017f updates by James Tabor
|
||||
*
|
||||
* Revision 1.2 1999/04/04 18:51:43 jprice
|
||||
* no message
|
||||
*
|
||||
* Revision 1.1.1.1 1999/03/29 15:41:09 jprice
|
||||
* New version without IPL.SYS
|
||||
*
|
||||
* Revision 1.4 1999/02/08 05:55:57 jprice
|
||||
* Added Pat's 1937 kernel patches
|
||||
*
|
||||
* Revision 1.3 1999/02/01 01:48:41 jprice
|
||||
* Clean up; Now you can use hex numbers in config.sys. added config.sys screen function to change screen mode (28 or 43/50 lines)
|
||||
*
|
||||
* Revision 1.2 1999/01/22 04:13:26 jprice
|
||||
* Formating
|
||||
*
|
||||
* Revision 1.1.1.1 1999/01/20 05:51:01 jprice
|
||||
* Imported sources
|
||||
*
|
||||
*
|
||||
* Rev 1.7 06 Dec 1998 8:48:22 patv
|
||||
* Expanded due to new I/O subsystem.
|
||||
*
|
||||
* Rev 1.6 11 Jan 1998 2:06:22 patv
|
||||
* Added functionality to ioctl.
|
||||
*
|
||||
* Rev 1.5 04 Jan 1998 23:15:18 patv
|
||||
* Changed Log for strip utility
|
||||
*
|
||||
* Rev 1.4 16 Jan 1997 12:46:54 patv
|
||||
* pre-Release 0.92 feature additions
|
||||
*
|
||||
* Rev 1.3 29 May 1996 21:03:30 patv
|
||||
* bug fixes for v0.91a
|
||||
*
|
||||
* Rev 1.2 19 Feb 1996 3:21:34 patv
|
||||
* Added NLS, int2f and config.sys processing
|
||||
*
|
||||
* Rev 1.1 01 Sep 1995 17:54:16 patv
|
||||
* First GPL release.
|
||||
*
|
||||
* Rev 1.0 02 Jul 1995 8:32:04 patv
|
||||
* Initial revision.
|
||||
*/
|
||||
|
|
|
@ -30,9 +30,9 @@
|
|||
|
||||
; Code for stack switching during hardware interrupts.
|
||||
|
||||
group TGROUP _TEXT
|
||||
group LGROUP _LOWTEXT
|
||||
|
||||
segment _TEXT class=CODE
|
||||
segment _LOWTEXT class=LCODE
|
||||
|
||||
old_vectors times 16 dd 0
|
||||
stack_size dw 0
|
||||
|
@ -168,7 +168,7 @@ _init_stacks:
|
|||
push si
|
||||
|
||||
|
||||
mov ax,_TEXT
|
||||
mov ax,_LOWTEXT
|
||||
mov ds,ax
|
||||
|
||||
mov bx, [bp+4]
|
||||
|
@ -187,7 +187,7 @@ _init_stacks:
|
|||
xor ax, ax
|
||||
mov ds, ax
|
||||
|
||||
mov ax, _TEXT
|
||||
mov ax, _LOWTEXT
|
||||
mov es, ax
|
||||
|
||||
mov di, old_vectors
|
||||
|
@ -221,44 +221,10 @@ set_vect:
|
|||
set_next: mov ax, dx
|
||||
cli
|
||||
stosw
|
||||
mov ax, _TEXT
|
||||
mov ax, _LOWTEXT
|
||||
stosw
|
||||
sti
|
||||
add dx, irq_1 - irq_0
|
||||
loop set_next
|
||||
|
||||
ret
|
||||
|
||||
; Log: irqstack.asm,v
|
||||
; Revision 1.3 1999/08/10 17:57:13 jprice
|
||||
; ror4 2011-02 patch
|
||||
;
|
||||
; Revision 1.2 1999/04/16 12:21:22 jprice
|
||||
; Steffen c-break handler changes
|
||||
;
|
||||
; Revision 1.1.1.1 1999/03/29 15:41:10 jprice
|
||||
; New version without IPL.SYS
|
||||
;
|
||||
; Revision 1.4 1999/02/08 05:55:57 jprice
|
||||
; Added Pat's 1937 kernel patches
|
||||
;
|
||||
; Revision 1.3 1999/02/01 01:48:41 jprice
|
||||
; Clean up; Now you can use hex numbers in config.sys. added config.sys screen function to change screen mode (28 or 43/50 lines)
|
||||
;
|
||||
; Revision 1.2 1999/01/22 04:13:26 jprice
|
||||
; Formating
|
||||
;
|
||||
; Revision 1.1.1.1 1999/01/20 05:51:01 jprice
|
||||
; Imported sources
|
||||
;
|
||||
;
|
||||
; Rev 1.2 06 Dec 1998 8:49:08 patv
|
||||
; Bug fixes.
|
||||
;
|
||||
; Rev 1.1 22 Jan 1997 13:15:34 patv
|
||||
; pre-0.92 Svante Frey bug fixes
|
||||
;
|
||||
; Rev 1.0 16 Jan 1997 21:43:44 patv
|
||||
; Initial revision.
|
||||
; EndLog
|
||||
;
|
||||
|
|
|
@ -34,7 +34,7 @@
|
|||
|
||||
segment PSP
|
||||
|
||||
extern _ReqPktPtr:wrt TGROUP
|
||||
extern _ReqPktPtr:wrt LGROUP
|
||||
|
||||
STACK_SIZE equ 384/2 ; stack allocated in words
|
||||
|
||||
|
@ -300,7 +300,7 @@ _nblkdev db 0 ; 0020 number of block devices
|
|||
_lastdrive db 0 ; 0021 value of last drive
|
||||
global _nul_dev
|
||||
_nul_dev: ; 0022 device chain root
|
||||
extern _con_dev:wrt TGROUP
|
||||
extern _con_dev:wrt LGROUP
|
||||
dw _con_dev, seg _con_dev
|
||||
; next is con_dev at init time.
|
||||
dw 8004h ; attributes = char device, NUL bit set
|
||||
|
@ -329,12 +329,11 @@ _BootDrive db 1 ; 0043 drive we booted from
|
|||
buf_info:
|
||||
global _firstbuf
|
||||
_firstbuf dd 0 ; 0047 disk buffer chain
|
||||
dw 0 ; 004B 0 (DOS 4 = # hashing chains)
|
||||
dw 0 ; 004B Number of dirty buffers
|
||||
dd 0 ; 004D pre-read buffer
|
||||
dw 0 ; 0051 # of sectors
|
||||
dw 0 ; 0051 number of look-ahead buffers
|
||||
db 0 ; 0053 00=conv 01=HMA
|
||||
dw 0 ; 0054 deblock buf in conv
|
||||
deblock_seg dw 0 ; 0056 (offset always zero)
|
||||
deblock_buf dd 0 ; 0054 deblock buffer
|
||||
times 3 db 0 ; 0058 unknown
|
||||
dw 0 ; 005B unknown
|
||||
db 0, 0FFh, 0 ; 005D unknown
|
||||
|
@ -574,7 +573,7 @@ _prev_user_r:
|
|||
prev_int21regs_off dw 0 ;2D0 - pointer to prev int 21 frame
|
||||
prev_int21regs_seg dw 0
|
||||
|
||||
; Pad to 02ddh
|
||||
; Pad to 05fdh
|
||||
times (2ddh - ($ - _internal_data)) db 0
|
||||
global _ext_open_action
|
||||
global _ext_open_attrib
|
||||
|
@ -654,6 +653,10 @@ blk_stk_top:
|
|||
global clk_stk_top
|
||||
times 64 dw 0
|
||||
clk_stk_top:
|
||||
|
||||
; have a jump to the real thing here for AARD compliance
|
||||
global _CharMapSrvc ; in _DATA (see AARD)
|
||||
_CharMapSrvc: jmp far CharMapSrvc2
|
||||
|
||||
; Dynamic data:
|
||||
; member of the DOS DATA GROUP
|
||||
|
@ -701,7 +704,7 @@ __HMATextStart:
|
|||
; the HMA area is filled with 1eh+3(=sizeof VDISK) = 33 byte dummy data,
|
||||
; so nothing will ever be below 0xffff:0031
|
||||
;
|
||||
segment HMA_TEXT
|
||||
segment _TEXT
|
||||
begin_hma:
|
||||
times 10h db 0 ; filler [ffff:0..ffff:10]
|
||||
times 20h db 0
|
||||
|
@ -733,7 +736,7 @@ segment _STACK class=STACK stack
|
|||
|
||||
|
||||
|
||||
segment _TEXT
|
||||
segment _LOWTEXT
|
||||
; dummy interrupt return handlers
|
||||
|
||||
global _int22_handler
|
||||
|
@ -753,7 +756,7 @@ _DGROUP_:
|
|||
dw DGROUP
|
||||
|
||||
|
||||
segment _TEXT
|
||||
segment _LOWTEXT
|
||||
|
||||
global _initforceEnableA20
|
||||
initforceEnableA20:
|
||||
|
@ -821,13 +824,13 @@ _reloc_call_clk_driver:
|
|||
jmp far _clk_driver
|
||||
call near forceEnableA20
|
||||
|
||||
global _CharMapSrvc
|
||||
; global _CharMapSrvc ; in _DATA (see AARD)
|
||||
extern _reloc_call_CharMapSrvc
|
||||
_CharMapSrvc: jmp far _reloc_call_CharMapSrvc
|
||||
CharMapSrvc2: jmp far _reloc_call_CharMapSrvc
|
||||
call near forceEnableA20
|
||||
|
||||
|
||||
global __HMARelocationTableEnd
|
||||
|
||||
global __HMARelocationTableEnd
|
||||
__HMARelocationTableEnd:
|
||||
|
||||
;
|
||||
|
@ -928,7 +931,7 @@ noNeedToDisable:
|
|||
iret
|
||||
|
||||
|
||||
segment _TEXT
|
||||
segment _LOWTEXT
|
||||
;
|
||||
; Default Int 24h handler -- always returns fail
|
||||
; so we have not to relocate it (now)
|
||||
|
@ -943,7 +946,7 @@ _int24_handler: mov al,FAIL
|
|||
; this makes some things easier
|
||||
;
|
||||
|
||||
segment _TEXT
|
||||
segment _LOWTEXT
|
||||
global _TEXT_DGROUP
|
||||
_TEXT_DGROUP dw DGROUP
|
||||
|
||||
|
@ -951,71 +954,3 @@ segment INIT_TEXT
|
|||
global _INIT_DGROUP
|
||||
_INIT_DGROUP dw DGROUP
|
||||
|
||||
|
||||
; Log: kernel.asm,v
|
||||
; Revision 1.6 2000/03/09 06:07:11 kernel
|
||||
; 2017f updates by James Tabor
|
||||
;
|
||||
; Revision 1.5 1999/09/23 04:40:47 jprice
|
||||
; *** empty log message ***
|
||||
;
|
||||
; Revision 1.3 1999/08/10 17:57:13 jprice
|
||||
; ror4 2011-02 patch
|
||||
;
|
||||
; Revision 1.2 1999/04/13 15:52:57 jprice
|
||||
; changes for boot loader
|
||||
;
|
||||
; Revision 1.1.1.1 1999/03/29 15:41:14 jprice
|
||||
; New version without IPL.SYS
|
||||
;
|
||||
; Revision 1.4 1999/02/08 05:55:57 jprice
|
||||
; Added Pat's 1937 kernel patches
|
||||
;
|
||||
; Revision 1.3 1999/02/01 01:48:41 jprice
|
||||
; Clean up; Now you can use hex numbers in config.sys. added config.sys screen function to change screen mode (28 or 43/50 lines)
|
||||
;
|
||||
; Revision 1.2 1999/01/22 04:13:26 jprice
|
||||
; Formating
|
||||
;
|
||||
; Revision 1.1.1.1 1999/01/20 05:51:01 jprice
|
||||
; Imported sources
|
||||
;
|
||||
; Rev 1.11 06 Dec 1998 8:48:04 patv
|
||||
;Bug fixes.
|
||||
;
|
||||
; Rev 1.10 03 Feb 1998 23:30:08 patv
|
||||
;Added a start-up stack for loadable device drivers. Need the separate
|
||||
;stack so that all int 21h functions can be called.
|
||||
;
|
||||
; Rev 1.9 22 Jan 1998 4:09:24 patv
|
||||
;Fixed pointer problems affecting SDA
|
||||
;
|
||||
; Rev 1.8 06 Jan 1998 20:12:32 patv
|
||||
;Reduced device driver stack sizes.
|
||||
;
|
||||
; Rev 1.7 04 Jan 1998 17:26:18 patv
|
||||
;Corrected subdirectory bug
|
||||
;
|
||||
; Rev 1.6 03 Jan 1998 8:36:50 patv
|
||||
;Converted data area to SDA format
|
||||
;
|
||||
; Rev 1.5 06 Feb 1997 22:43:18 patv
|
||||
;Reduced stack sizes for block and clock devices.
|
||||
;
|
||||
; Rev 1.4 06 Feb 1997 19:05:48 patv
|
||||
;Added hooks for tsc command
|
||||
;
|
||||
; Rev 1.3 29 May 1996 21:03:44 patv
|
||||
;bug fixes for v0.91a
|
||||
;
|
||||
; Rev 1.2 19 Feb 1996 3:24:06 patv
|
||||
;Added NLS, int2f and config.sys processing
|
||||
;
|
||||
; Rev 1.1 01 Sep 1995 17:54:24 patv
|
||||
;First GPL release.
|
||||
;
|
||||
; Rev 1.0 02 Jul 1995 9:05:44 patv
|
||||
;Initial revision.
|
||||
;
|
||||
; EndLog
|
||||
;
|
||||
|
|
|
@ -93,6 +93,8 @@ STATIC VOID kernel(VOID);
|
|||
STATIC VOID FsConfig(VOID);
|
||||
STATIC VOID InitPrinters(VOID);
|
||||
|
||||
extern void Init_clk_driver(void);
|
||||
|
||||
#ifdef _MSC_VER
|
||||
BYTE _acrtused = 0;
|
||||
#endif
|
||||
|
@ -252,6 +254,8 @@ STATIC void init_kernel(void)
|
|||
init_PSPSet(DOS_PSP);
|
||||
init_PSPInit(DOS_PSP);
|
||||
|
||||
Init_clk_driver();
|
||||
|
||||
/* Do first initialization of system variable buffers so that */
|
||||
/* we can read config.sys later. */
|
||||
lastdrive = Config.cfgLastdrive;
|
||||
|
@ -634,95 +638,3 @@ STATIC VOID InitPrinters(VOID)
|
|||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Log: main.c,v - for newer log entries do "cvs log main.c"
|
||||
*
|
||||
* Revision 1.14 2000/03/31 05:40:09 jtabor
|
||||
* Added Eric W. Biederman Patches
|
||||
*
|
||||
* Revision 1.13 2000/03/09 06:07:11 kernel
|
||||
* 2017f updates by James Tabor
|
||||
*
|
||||
* Revision 1.12 1999/09/23 04:40:48 jprice
|
||||
* *** empty log message ***
|
||||
*
|
||||
* Revision 1.10 1999/08/25 03:18:09 jprice
|
||||
* ror4 patches to allow TC 2.01 compile.
|
||||
*
|
||||
* Revision 1.9 1999/04/16 21:43:40 jprice
|
||||
* ror4 multi-sector IO
|
||||
*
|
||||
* Revision 1.8 1999/04/16 12:21:22 jprice
|
||||
* Steffen c-break handler changes
|
||||
*
|
||||
* Revision 1.7 1999/04/16 00:53:33 jprice
|
||||
* Optimized FAT handling
|
||||
*
|
||||
* Revision 1.6 1999/04/12 03:21:17 jprice
|
||||
* more ror4 patches. Changes for multi-block IO
|
||||
*
|
||||
* Revision 1.5 1999/04/11 04:33:39 jprice
|
||||
* ror4 patches
|
||||
*
|
||||
* Revision 1.3 1999/04/04 22:57:47 jprice
|
||||
* no message
|
||||
*
|
||||
* Revision 1.2 1999/04/04 18:51:43 jprice
|
||||
* no message
|
||||
*
|
||||
* Revision 1.1.1.1 1999/03/29 15:41:18 jprice
|
||||
* New version without IPL.SYS
|
||||
*
|
||||
* Revision 1.5 1999/02/08 05:55:57 jprice
|
||||
* Added Pat's 1937 kernel patches
|
||||
*
|
||||
* Revision 1.4 1999/02/01 01:48:41 jprice
|
||||
* Clean up; Now you can use hex numbers in config.sys. added config.sys screen function to change screen mode (28 or 43/50 lines)
|
||||
*
|
||||
* Revision 1.3 1999/01/30 08:28:12 jprice
|
||||
* Clean up; Fixed bug with set attribute function.
|
||||
*
|
||||
* Revision 1.2 1999/01/22 04:13:26 jprice
|
||||
* Formating
|
||||
*
|
||||
* Revision 1.1.1.1 1999/01/20 05:51:01 jprice
|
||||
* Imported sources
|
||||
*
|
||||
*
|
||||
* Rev 1.12 06 Dec 1998 8:45:30 patv
|
||||
* Changed due to new I/O subsystem.
|
||||
*
|
||||
* Rev 1.11 22 Jan 1998 4:09:24 patv
|
||||
* Fixed pointer problems affecting SDA
|
||||
*
|
||||
* Rev 1.10 04 Jan 1998 23:15:20 patv
|
||||
* Changed Log for strip utility
|
||||
*
|
||||
* Rev 1.9 04 Jan 1998 17:26:16 patv
|
||||
* Corrected subdirectory bug
|
||||
*
|
||||
* Rev 1.8 03 Jan 1998 8:36:48 patv
|
||||
* Converted data area to SDA format
|
||||
*
|
||||
* Rev 1.7 06 Feb 1997 21:35:46 patv
|
||||
* Modified to support new version format and changed debug message to
|
||||
* output drive letter instead of number.
|
||||
*
|
||||
* Rev 1.6 22 Jan 1997 13:05:02 patv
|
||||
* Now does correct default drive initialization.
|
||||
*
|
||||
* Rev 1.5 16 Jan 1997 12:47:00 patv
|
||||
* pre-Release 0.92 feature additions
|
||||
*
|
||||
* Rev 1.3 29 May 1996 21:03:32 patv
|
||||
* bug fixes for v0.91a
|
||||
*
|
||||
* Rev 1.2 19 Feb 1996 3:21:36 patv
|
||||
* Added NLS, int2f and config.sys processing
|
||||
*
|
||||
* Rev 1.1 01 Sep 1995 17:54:18 patv
|
||||
* First GPL release.
|
||||
*
|
||||
* Rev 1.0 02 Jul 1995 8:33:18 patv
|
||||
* Initial revision.
|
||||
*/
|
||||
|
|
101
kernel/makefile
101
kernel/makefile
|
@ -45,6 +45,7 @@ EXE_dependencies = \
|
|||
dosnames.obj \
|
||||
dsk.obj \
|
||||
initdisk.obj \
|
||||
initclk.obj \
|
||||
entry.obj \
|
||||
error.obj \
|
||||
execrh.obj \
|
||||
|
@ -108,7 +109,7 @@ kernel.res: $(EXE_dependencies) $(LIBS)
|
|||
-$(RM) kernel.res
|
||||
..\utils\echoto kernel.res kernel.obj iprf.obj+
|
||||
..\utils\echoto kernel.res entry.obj io.obj blockio.obj chario.obj dosfns.obj console.obj+
|
||||
..\utils\echoto kernel.res printer.obj serial.obj dsk.obj initdisk.obj error.obj fatdir.obj fatfs.obj+
|
||||
..\utils\echoto kernel.res printer.obj serial.obj dsk.obj initdisk.obj initclk.obj error.obj fatdir.obj fatfs.obj+
|
||||
..\utils\echoto kernel.res fattab.obj fcbfns.obj initoem.obj initHMA.obj inthndlr.obj ioctl.obj nls_hc.obj+
|
||||
..\utils\echoto kernel.res main.obj config.obj memmgr.obj misc.obj newstuff.obj nls.obj intr.obj+
|
||||
..\utils\echoto kernel.res dosnames.obj prf.obj strings.obj network.obj sysclk.obj syspack.obj+
|
||||
|
@ -253,101 +254,11 @@ initdisk.obj: initdisk.c $(INITHEADERS) $(HEADERS) $(CONFIGURATION)
|
|||
$(CC) $(INITCFLAGS) $*.c
|
||||
$(INITPATCH) $*.obj
|
||||
|
||||
initclk.obj: initclk.c $(INITHEADERS) $(HEADERS) $(CONFIGURATION)
|
||||
$(CC) $(INITCFLAGS) $*.c
|
||||
$(INITPATCH) $*.obj
|
||||
|
||||
#the printf for INIT_TEXT - yet another special case, this file includes prf.c
|
||||
iprf.obj: iprf.c prf.c $(HDR)\portab.h $(CONFIGURATION)
|
||||
$(CC) $(INITCFLAGS) $*.c
|
||||
$(INITPATCH) $*.obj
|
||||
|
||||
# Log: makefile,v
|
||||
#
|
||||
# Revision 1.14 2000/03/31 05:40:09 jtabor
|
||||
# Added Eric W. Biederman Patches
|
||||
#
|
||||
# Revision 1.13 2000/03/17 22:59:04 kernel
|
||||
# Steffen Kaiser's NLS changes
|
||||
#
|
||||
# Revision 1.12 2000/03/09 06:07:11 kernel
|
||||
# 2017f updates by James Tabor
|
||||
#
|
||||
# Revision 1.11 1999/09/23 04:40:47 jprice
|
||||
# *** empty log message ***
|
||||
#
|
||||
# Revision 1.8 1999/09/13 20:41:41 jprice
|
||||
# Some clean up.
|
||||
#
|
||||
# Revision 1.7 1999/08/25 03:18:09 jprice
|
||||
# ror4 patches to allow TC 2.01 compile.
|
||||
#
|
||||
# Revision 1.6 1999/08/10 17:57:13 jprice
|
||||
# ror4 2011-02 patch
|
||||
#
|
||||
# Revision 1.5 1999/04/23 04:25:15 jprice
|
||||
# no message
|
||||
#
|
||||
# Revision 1.4 1999/04/23 03:45:11 jprice
|
||||
# Improved by jprice
|
||||
#
|
||||
# Revision 1.3 1999/04/16 12:21:22 jprice
|
||||
# Steffen c-break handler changes
|
||||
#
|
||||
# Revision 1.2 1999/04/13 15:48:21 jprice
|
||||
# no message
|
||||
#
|
||||
# Revision 1.1.1.1 1999/03/29 15:41:15 jprice
|
||||
# New version without IPL.SYS
|
||||
#
|
||||
# Revision 1.7 1999/03/01 06:04:37 jprice
|
||||
# Fixed so it'll work with config.mak
|
||||
#
|
||||
# Revision 1.6 1999/03/01 05:46:43 jprice
|
||||
# Turned off DEBUG define.
|
||||
#
|
||||
# Revision 1.5 1999/02/09 04:49:43 jprice
|
||||
# Make makefile use common config.mak file
|
||||
#
|
||||
# Revision 1.4 1999/02/08 05:55:57 jprice
|
||||
# Added Pat's 1937 kernel patches
|
||||
#
|
||||
# Revision 1.3 1999/02/04 03:09:59 jprice
|
||||
# Added option to share constants (-d).
|
||||
#
|
||||
# Revision 1.2 1999/01/22 04:13:26 jprice
|
||||
# Formating
|
||||
#
|
||||
# Revision 1.1.1.1 1999/01/20 05:51:01 jprice
|
||||
# Imported sources
|
||||
#
|
||||
#
|
||||
# Rev 1.8.1 10 Jan 1999 SRM
|
||||
#Took out "/P-" from TLINK
|
||||
#Changed "bcc" to "tcc"
|
||||
#
|
||||
# Rev 1.9 06 Dec 1998 8:45:40 patv
|
||||
#Added new files for I/O subsystem.
|
||||
#
|
||||
# Rev 1.8 22 Jan 1998 14:50:06 patv
|
||||
#Outdated stacks.asm.
|
||||
#
|
||||
# Rev 1.6 03 Jan 1998 8:36:50 patv
|
||||
#Converted data area to SDA format
|
||||
#
|
||||
# Rev 1.5 30 Jan 1997 7:55:54 patv
|
||||
#Added TSC flag for trace support.
|
||||
#
|
||||
# Rev 1.4 16 Jan 1997 12:46:42 patv
|
||||
#pre-Release 0.92 feature additions
|
||||
#
|
||||
# Rev 1.3 29 Aug 1996 13:07:34 patv
|
||||
#Bug fixes for v0.91b
|
||||
#
|
||||
# Rev 1.2 29 May 1996 21:03:32 patv
|
||||
#bug fixes for v0.91a
|
||||
#
|
||||
# Rev 1.1 19 Feb 1996 3:35:38 patv
|
||||
#Added NLS, int2f and config.sys processing
|
||||
#
|
||||
# Rev 1.0 02 Jul 1995 8:30:22 patv
|
||||
#Initial revision.
|
||||
#
|
||||
# EndLog
|
||||
#
|
||||
|
|
|
@ -601,52 +601,3 @@ DUL_exit:
|
|||
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Log: memmgr.c,v - for newer log entries do "cvs log memmgr.c"
|
||||
*
|
||||
* Revision 1.4 2000/03/09 06:07:11 kernel
|
||||
* 2017f updates by James Tabor
|
||||
*
|
||||
* Revision 1.3 1999/08/25 03:18:09 jprice
|
||||
* ror4 patches to allow TC 2.01 compile.
|
||||
*
|
||||
* Revision 1.2 1999/04/23 04:24:39 jprice
|
||||
* Memory manager changes made by ska
|
||||
*
|
||||
* Revision 1.1.1.1 1999/03/29 15:41:20 jprice
|
||||
* New version without IPL.SYS
|
||||
*
|
||||
* Revision 1.4 1999/02/08 05:55:57 jprice
|
||||
* Added Pat's 1937 kernel patches
|
||||
*
|
||||
* Revision 1.3 1999/02/01 01:48:41 jprice
|
||||
* Clean up; Now you can use hex numbers in config.sys. added config.sys screen function to change screen mode (28 or 43/50 lines)
|
||||
*
|
||||
* Revision 1.2 1999/01/22 04:13:26 jprice
|
||||
* Formating
|
||||
*
|
||||
* Revision 1.1.1.1 1999/01/20 05:51:01 jprice
|
||||
* Imported sources
|
||||
*
|
||||
*
|
||||
* Rev 1.6 04 Jan 1998 23:15:18 patv
|
||||
* Changed Log for strip utility
|
||||
*
|
||||
* Rev 1.5 16 Jan 1997 12:47:00 patv
|
||||
* pre-Release 0.92 feature additions
|
||||
*
|
||||
* Rev 1.4 29 May 1996 21:03:34 patv
|
||||
* bug fixes for v0.91a
|
||||
*
|
||||
* Rev 1.3 19 Feb 1996 3:21:36 patv
|
||||
* Added NLS, int2f and config.sys processing
|
||||
*
|
||||
* Rev 1.2 01 Sep 1995 17:54:20 patv
|
||||
* First GPL release.
|
||||
*
|
||||
* Rev 1.1 30 Jul 1995 20:51:58 patv
|
||||
* Eliminated version strings in ipl
|
||||
*
|
||||
* Rev 1.0 02 Jul 1995 8:33:08 patv
|
||||
* Initial revision.
|
||||
*/
|
||||
|
|
|
@ -84,46 +84,3 @@ VOID fmemset(REG VOID FAR * s, REG int ch, REG size_t n)
|
|||
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Log: misc.c,v - for newer entries see "cvs log misc.c"
|
||||
*
|
||||
* Revision 1.4 2000/03/09 06:07:11 kernel
|
||||
* 2017f updates by James Tabor
|
||||
*
|
||||
* Revision 1.3 1999/05/03 06:25:45 jprice
|
||||
* Patches from ror4 and many changed of signed to unsigned variables.
|
||||
*
|
||||
* Revision 1.2 1999/04/23 04:24:39 jprice
|
||||
* Memory manager changes made by ska
|
||||
*
|
||||
* Revision 1.1.1.1 1999/03/29 15:42:19 jprice
|
||||
* New version without IPL.SYS
|
||||
*
|
||||
* Revision 1.3 1999/02/01 01:43:28 jprice
|
||||
* Fixed findfirst function to find volume label with Windows long filenames
|
||||
*
|
||||
* Revision 1.2 1999/01/22 04:15:28 jprice
|
||||
* Formating
|
||||
*
|
||||
* Revision 1.1.1.1 1999/01/20 05:51:00 jprice
|
||||
* Imported sources
|
||||
*
|
||||
*
|
||||
* Rev 1.5 04 Jan 1998 23:14:36 patv
|
||||
* Changed Log for strip utility
|
||||
*
|
||||
* Rev 1.4 29 May 1996 21:15:18 patv
|
||||
* bug fixes for v0.91a
|
||||
*
|
||||
* Rev 1.3 19 Feb 1996 3:20:12 patv
|
||||
* Added NLS, int2f and config.sys processing
|
||||
*
|
||||
* Rev 1.2 01 Sep 1995 17:48:46 patv
|
||||
* First GPL release.
|
||||
*
|
||||
* Rev 1.1 30 Jul 1995 20:50:28 patv
|
||||
* Eliminated version strings in ipl
|
||||
*
|
||||
* Rev 1.0 02 Jul 1995 8:06:28 patv
|
||||
* Initial revision.
|
||||
*/
|
||||
|
|
|
@ -51,19 +51,3 @@ VOID set_machine_name(BYTE FAR * netname, UWORD name_num)
|
|||
net_set_count++;
|
||||
}
|
||||
|
||||
/*
|
||||
* Log: network.c,v - for newer entries see "cvs log network.c"
|
||||
*
|
||||
* Revision 1.5 2000/03/31 05:40:09 jtabor
|
||||
* Added Eric W. Biederman Patches
|
||||
*
|
||||
* Revision 1.4 2000/03/17 22:59:04 kernel
|
||||
* Steffen Kaiser's NLS changes
|
||||
*
|
||||
* Revision 1.3 2000/03/09 06:07:11 kernel
|
||||
* 2017f updates by James Tabor
|
||||
*
|
||||
* Revision 1.2 1999/09/23 04:40:48 jprice
|
||||
* *** empty log message ***
|
||||
*
|
||||
*/
|
||||
|
|
|
@ -696,55 +696,3 @@ written on command line, the same applied to "con\0", a device driver.
|
|||
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Log: newstuff.c,v - for newer entries see "cvs log newstuff.c"
|
||||
*
|
||||
* Revision 1.8 2000/04/02 06:11:35 jtabor
|
||||
* Fix ChgDir Code
|
||||
*
|
||||
* Revision 1.7 2000/04/02 05:30:48 jtabor
|
||||
* Fix ChgDir Code
|
||||
*
|
||||
* Revision 1.6 2000/03/31 05:40:09 jtabor
|
||||
* Added Eric W. Biederman Patches
|
||||
*
|
||||
* Revision 1.5 2000/03/09 06:07:11 kernel
|
||||
* 2017f updates by James Tabor
|
||||
*
|
||||
* Revision 1.4 1999/08/25 03:18:09 jprice
|
||||
* ror4 patches to allow TC 2.01 compile.
|
||||
*
|
||||
* Revision 1.3 1999/04/11 04:33:39 jprice
|
||||
* ror4 patches
|
||||
*
|
||||
* Revision 1.2 1999/04/04 18:51:43 jprice
|
||||
* no message
|
||||
*
|
||||
* Revision 1.1.1.1 1999/03/29 15:41:22 jprice
|
||||
* New version without IPL.SYS
|
||||
*
|
||||
* Revision 1.4 1999/02/08 05:55:57 jprice
|
||||
* Added Pat's 1937 kernel patches
|
||||
*
|
||||
* Revision 1.3 1999/02/01 01:48:41 jprice
|
||||
* Clean up; Now you can use hex numbers in config.sys. added config.sys screen function to change screen mode (28 or 43/50 lines)
|
||||
*
|
||||
* Revision 1.2 1999/01/22 04:13:26 jprice
|
||||
* Formating
|
||||
*
|
||||
* Revision 1.1.1.1 1999/01/20 05:51:01 jprice
|
||||
* Imported sources
|
||||
*
|
||||
*
|
||||
* Rev 1.4 06 Dec 1998 8:49:02 patv
|
||||
* Bug fixes.
|
||||
*
|
||||
* Rev 1.3 04 Jan 1998 23:15:22 patv
|
||||
* Changed Log for strip utility
|
||||
*
|
||||
* Rev 1.2 04 Jan 1998 17:26:14 patv
|
||||
* Corrected subdirectory bug
|
||||
*
|
||||
* Rev 1.1 22 Jan 1997 13:21:22 patv
|
||||
* pre-0.92 Svante Frey bug fixes.
|
||||
*/
|
||||
|
|
|
@ -131,6 +131,7 @@ COUNT muxLoadPkg(UWORD cp, UWORD cntry)
|
|||
/* 0x14FF == installed */
|
||||
|
||||
r.BX = 0; /* make sure the NLSFUNC ID is updated */
|
||||
r.CX = NLS_FREEDOS_NLSFUNC_ID;
|
||||
if (muxGo(0, &r) != 0x14ff)
|
||||
return DE_FILENOTFND; /* No NLSFUNC --> no load */
|
||||
if (r.BX != NLS_FREEDOS_NLSFUNC_ID) /* FreeDOS NLSFUNC will return */
|
||||
|
@ -676,10 +677,3 @@ UWORD ASMCFUNC syscall_MUX14(DIRECT_IREGS)
|
|||
return DE_INVLDFUNC; /* no such function */
|
||||
}
|
||||
|
||||
/*
|
||||
* Log: nls.c,v - for newer log entries see "cvs log nls.c"
|
||||
*
|
||||
* Revision 1.1 2000/03/23 02:44:21 ska
|
||||
* Initial revision
|
||||
*
|
||||
*/
|
||||
|
|
|
@ -30,7 +30,7 @@ _nlsCountryInfoHardcoded:
|
|||
DB 01ch, 000h, 001h, 000h, 0b5h, 001h, 000h, 000h
|
||||
DB 024h, 000h, 000h, 000h, 000h, 02ch, 000h, 02eh
|
||||
DB 000h, 02dh, 000h, 03ah, 000h, 000h, 002h, 000h
|
||||
extern _CharMapSrvc:wrt TGROUP
|
||||
extern _CharMapSrvc:wrt DGROUP
|
||||
DW _CharMapSrvc, SEG _CharMapSrvc
|
||||
DB 02ch, 000h
|
||||
GLOBAL _hcTablesStart
|
||||
|
|
|
@ -30,7 +30,6 @@
|
|||
|
||||
#include "portab.h"
|
||||
#include "init-mod.h"
|
||||
//#include "pcb.h"
|
||||
|
||||
#ifdef VERSION_STRINGS
|
||||
static BYTE *RcsId =
|
||||
|
@ -407,10 +406,3 @@ BOOL LoadCountryInfo(char *fnam)
|
|||
return 0;
|
||||
}
|
||||
|
||||
/*
|
||||
* Log: nls_load.c,v for newer entries do "cvs log nls_load.c"
|
||||
*
|
||||
* Revision 1.1 2000/08/06 05:50:17 jimtabor
|
||||
* Add new files and update cvs with patches and changes
|
||||
*
|
||||
*/
|
||||
|
|
|
@ -30,9 +30,9 @@
|
|||
|
||||
%include "segs.inc"
|
||||
|
||||
segment HMA_TEXT
|
||||
segment _TEXT
|
||||
global _reloc_call_CharMapSrvc
|
||||
extern _DosUpChar:wrt HGROUP
|
||||
extern _DosUpChar:wrt TGROUP
|
||||
;
|
||||
; CharMapSrvc:
|
||||
; User callable character mapping service.
|
||||
|
@ -72,39 +72,3 @@ _reloc_call_CharMapSrvc:
|
|||
pop ds
|
||||
Restore386Registers
|
||||
retf ; Return far
|
||||
; Log: nlssupt.asm,v
|
||||
;
|
||||
; Revision 1.3 2000/03/17 22:59:04 kernel
|
||||
; Steffen Kaiser's NLS changes
|
||||
;
|
||||
; Revision 1.2 1999/08/10 17:57:13 jprice
|
||||
; ror4 2011-02 patch
|
||||
;
|
||||
; Revision 1.1.1.1 1999/03/29 15:41:25 jprice
|
||||
; New version without IPL.SYS
|
||||
;
|
||||
; Revision 1.4 1999/02/08 05:55:57 jprice
|
||||
; Added Pat's 1937 kernel patches
|
||||
;
|
||||
; Revision 1.3 1999/02/01 01:48:41 jprice
|
||||
; Clean up; Now you can use hex numbers in config.sys. added config.sys screen function to change screen mode (28 or 43/50 lines)
|
||||
;
|
||||
; Revision 1.2 1999/01/22 04:13:26 jprice
|
||||
; Formating
|
||||
;
|
||||
; Revision 1.1.1.1 1999/01/20 05:51:01 jprice
|
||||
; Imported sources
|
||||
;
|
||||
; Rev 1.3 06 Dec 1998 8:46:56 patv
|
||||
; Bug fixes.
|
||||
;
|
||||
; Rev 1.2 16 Jan 1997 12:46:44 patv
|
||||
; pre-Release 0.92 feature additions
|
||||
;
|
||||
; Rev 1.1 29 May 1996 21:03:38 patv
|
||||
; bug fixes for v0.91a
|
||||
;
|
||||
; Rev 1.0 19 Feb 1996 3:24:04 patv
|
||||
; Added NLS, int2f and config.sys processing
|
||||
; EndLog
|
||||
;
|
||||
|
|
41
kernel/prf.c
41
kernel/prf.c
|
@ -58,7 +58,6 @@ static char buff[MAX_BUFSIZE];
|
|||
#define printf init_printf
|
||||
#define sprintf init_sprintf
|
||||
#define charp init_charp
|
||||
#define hexDigits init_hexDigits
|
||||
#endif
|
||||
|
||||
#ifdef VERSION_STRINGS
|
||||
|
@ -564,43 +563,3 @@ main()
|
|||
}
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Log: prf.c,v - see "cvs log prf.c" for newer entries
|
||||
*
|
||||
* Revision 1.4 2001/03/07 10:00:00 tomehlert
|
||||
* recoded for smaller object footprint, added main() for testing+QA
|
||||
*
|
||||
* Revision 1.3 2000/03/09 06:07:11 kernel
|
||||
* 2017f updates by James Tabor
|
||||
*
|
||||
* Revision 1.2 1999/04/04 18:51:43 jprice
|
||||
* no message
|
||||
*
|
||||
* Revision 1.1.1.1 1999/03/29 15:42:20 jprice
|
||||
* New version without IPL.SYS
|
||||
*
|
||||
* Revision 1.3 1999/02/01 01:43:28 jprice
|
||||
* Fixed findfirst function to find volume label with Windows long filenames
|
||||
*
|
||||
* Revision 1.2 1999/01/22 04:15:28 jprice
|
||||
* Formating
|
||||
*
|
||||
* Revision 1.1.1.1 1999/01/20 05:51:00 jprice
|
||||
* Imported sources
|
||||
*
|
||||
*
|
||||
* Rev 1.4 04 Jan 1998 23:14:38 patv
|
||||
* Changed Log for strip utility
|
||||
*
|
||||
* Rev 1.3 29 May 1996 21:15:10 patv
|
||||
* bug fixes for v0.91a
|
||||
*
|
||||
* Rev 1.2 01 Sep 1995 17:48:42 patv
|
||||
* First GPL release.
|
||||
*
|
||||
* Rev 1.1 30 Jul 1995 20:50:26 patv
|
||||
* Eliminated version strings in ipl
|
||||
*
|
||||
* Rev 1.0 02 Jul 1995 8:05:10 patv
|
||||
* Initial revision.
|
||||
*/
|
||||
|
|
|
@ -242,18 +242,3 @@ PrtGnIoctl3:
|
|||
; you must not simply print without asking for status
|
||||
; as the BIOS has a LARGE timeout before aborting
|
||||
;
|
||||
|
||||
; Log: printer.asm,v
|
||||
;
|
||||
; Revision 1.2 1999/08/10 17:57:13 jprice
|
||||
; ror4 2011-02 patch
|
||||
;
|
||||
; Revision 1.1.1.1 1999/03/29 15:41:26 jprice
|
||||
; New version without IPL.SYS
|
||||
;
|
||||
; Revision 1.1 1999/02/08 05:55:57 jprice
|
||||
; Added Pat's 1937 kernel patches
|
||||
;
|
||||
; EndLog
|
||||
;
|
||||
|
||||
|
|
|
@ -34,13 +34,13 @@
|
|||
extern _user_r:wrt DGROUP
|
||||
|
||||
extern _break_flg:wrt DGROUP ; break detected flag
|
||||
extern _int21_handler:wrt TGROUP ; far call system services
|
||||
extern _int21_handler:wrt LGROUP ; far call system services
|
||||
|
||||
%include "stacks.inc"
|
||||
|
||||
segment HMA_TEXT
|
||||
segment _TEXT
|
||||
|
||||
extern _DGROUP_:wrt TGROUP
|
||||
extern _DGROUP_:wrt LGROUP
|
||||
|
||||
;
|
||||
; Special call for switching processes
|
||||
|
@ -70,7 +70,7 @@ _exec_user:
|
|||
extern _ExecUserDisableA20
|
||||
jmp far _ExecUserDisableA20
|
||||
|
||||
segment _TEXT
|
||||
segment _LOWTEXT
|
||||
|
||||
|
||||
;; Called whenever the BIOS detects a ^Break state
|
||||
|
@ -85,7 +85,7 @@ _got_cbreak:
|
|||
pop ds
|
||||
iret
|
||||
|
||||
segment HMA_TEXT
|
||||
segment _TEXT
|
||||
|
||||
;
|
||||
; Special call for switching processes during break handling
|
||||
|
@ -273,46 +273,3 @@ _spawn_int23:
|
|||
; cli
|
||||
; ret
|
||||
;_disable endp
|
||||
|
||||
; Log: procsupt.asm,v
|
||||
; Revision 1.4 1999/08/10 17:57:13 jprice
|
||||
; ror4 2011-02 patch
|
||||
;
|
||||
; Revision 1.3 1999/04/23 22:38:36 jprice
|
||||
; Fixed got_cbreak function.
|
||||
;
|
||||
; Revision 1.2 1999/04/16 12:21:22 jprice
|
||||
; Steffen c-break handler changes
|
||||
;
|
||||
; Revision 1.1.1.1 1999/03/29 15:41:27 jprice
|
||||
; New version without IPL.SYS
|
||||
;
|
||||
; Revision 1.4 1999/02/08 05:55:57 jprice
|
||||
; Added Pat's 1937 kernel patches
|
||||
;
|
||||
; Revision 1.3 1999/02/01 01:48:41 jprice
|
||||
; Clean up; Now you can use hex numbers in config.sys. added config.sys screen function to change screen mode (28 or 43/50 lines)
|
||||
;
|
||||
; Revision 1.2 1999/01/22 04:13:27 jprice
|
||||
; Formating
|
||||
;
|
||||
; Revision 1.1.1.1 1999/01/20 05:51:01 jprice
|
||||
; Imported sources
|
||||
;
|
||||
; Rev 1.4 06 Dec 1998 8:46:44 patv
|
||||
;Bug fixes.
|
||||
;
|
||||
; Rev 1.3 07 Feb 1998 20:42:08 patv
|
||||
;Modified stack fram to match DOS standard
|
||||
;
|
||||
; Rev 1.2 29 May 1996 21:03:36 patv
|
||||
;bug fixes for v0.91a
|
||||
;
|
||||
; Rev 1.1 01 Sep 1995 17:54:24 patv
|
||||
;First GPL release.
|
||||
;
|
||||
; Rev 1.0 02 Jul 1995 9:05:58 patv
|
||||
;Initial revision.
|
||||
; EndLog
|
||||
;
|
||||
|
||||
|
|
|
@ -34,10 +34,9 @@ static BYTE *Proto_hRcsId =
|
|||
#endif
|
||||
|
||||
/* blockio.c */
|
||||
ULONG getblkno(struct buffer FAR *);
|
||||
VOID setblkno(struct buffer FAR *, ULONG);
|
||||
struct buffer FAR *getblock(ULONG blkno, COUNT dsk);
|
||||
struct buffer FAR *getblockOver(ULONG blkno, COUNT dsk);
|
||||
struct buffer FAR *getblk(ULONG blkno, COUNT dsk, BOOL overwrite);
|
||||
#define getblock(blkno, dsk) getblk(blkno, dsk, FALSE);
|
||||
#define getblockOver(blkno, dsk) getblk(blkno, dsk, TRUE);
|
||||
VOID setinvld(REG COUNT dsk);
|
||||
BOOL flush_buffers(REG COUNT dsk);
|
||||
BOOL flush(void);
|
||||
|
@ -391,94 +390,3 @@ VOID ASMCFUNC exec_user(iregs FAR * irp);
|
|||
|
||||
#define ASSERT_CONST(x) { typedef struct { char _xx[x ? 1 : -1]; } xx ; }
|
||||
|
||||
/*
|
||||
* Log: proto.h,v
|
||||
*
|
||||
* Revision 1.17 2000/03/31 05:40:09 jtabor
|
||||
* Added Eric W. Biederman Patches
|
||||
*
|
||||
* Revision 1.16 2000/03/17 22:59:04 kernel
|
||||
* Steffen Kaiser's NLS changes
|
||||
*
|
||||
* Revision 1.15 2000/03/09 06:07:11 kernel
|
||||
* 2017f updates by James Tabor
|
||||
*
|
||||
* Revision 1.14 1999/09/23 04:40:48 jprice
|
||||
* *** empty log message ***
|
||||
*
|
||||
* Revision 1.10 1999/08/25 03:18:09 jprice
|
||||
* ror4 patches to allow TC 2.01 compile.
|
||||
*
|
||||
* Revision 1.9 1999/05/03 06:25:45 jprice
|
||||
* Patches from ror4 and many changed of signed to unsigned variables.
|
||||
*
|
||||
* Revision 1.8 1999/04/23 04:24:39 jprice
|
||||
* Memory manager changes made by ska
|
||||
*
|
||||
* Revision 1.7 1999/04/16 21:43:40 jprice
|
||||
* ror4 multi-sector IO
|
||||
*
|
||||
* Revision 1.6 1999/04/16 12:21:22 jprice
|
||||
* Steffen c-break handler changes
|
||||
*
|
||||
* Revision 1.5 1999/04/12 03:21:17 jprice
|
||||
* more ror4 patches. Changes for multi-block IO
|
||||
*
|
||||
* Revision 1.4 1999/04/11 04:33:39 jprice
|
||||
* ror4 patches
|
||||
*
|
||||
* Revision 1.2 1999/04/04 18:51:43 jprice
|
||||
* no message
|
||||
*
|
||||
* Revision 1.1.1.1 1999/03/29 15:41:30 jprice
|
||||
* New version without IPL.SYS
|
||||
*
|
||||
* Revision 1.4 1999/02/08 05:55:57 jprice
|
||||
* Added Pat's 1937 kernel patches
|
||||
*
|
||||
* Revision 1.3 1999/02/01 01:48:41 jprice
|
||||
* Clean up; Now you can use hex numbers in config.sys. added config.sys screen function to change screen mode (28 or 43/50 lines)
|
||||
*
|
||||
* Revision 1.2 1999/01/22 04:13:27 jprice
|
||||
* Formating
|
||||
*
|
||||
* Revision 1.1.1.1 1999/01/20 05:51:01 jprice
|
||||
* Imported sources
|
||||
*
|
||||
*
|
||||
* Rev 1.11 06 Dec 1998 8:47:18 patv
|
||||
*Expanded due to new I/O subsystem.
|
||||
*
|
||||
* Rev 1.10 07 Feb 1998 20:38:00 patv
|
||||
*Modified stack fram to match DOS standard
|
||||
*
|
||||
* Rev 1.9 22 Jan 1998 4:09:26 patv
|
||||
*Fixed pointer problems affecting SDA
|
||||
*
|
||||
* Rev 1.8 11 Jan 1998 2:06:22 patv
|
||||
*Added functionality to ioctl.
|
||||
*
|
||||
* Rev 1.7 04 Jan 1998 23:16:22 patv
|
||||
*Changed Log for strip utility
|
||||
*
|
||||
* Rev 1.6 03 Jan 1998 8:36:48 patv
|
||||
*Converted data area to SDA format
|
||||
*
|
||||
* Rev 1.5 16 Jan 1997 12:46:44 patv
|
||||
*pre-Release 0.92 feature additions
|
||||
*
|
||||
* Rev 1.4 29 May 1996 21:03:40 patv
|
||||
*bug fixes for v0.91a
|
||||
*
|
||||
* Rev 1.3 19 Feb 1996 3:23:06 patv
|
||||
*Added NLS, int2f and config.sys processing
|
||||
*
|
||||
* Rev 1.2 01 Sep 1995 17:54:26 patv
|
||||
*First GPL release.
|
||||
*
|
||||
* Rev 1.1 30 Jul 1995 20:51:58 patv
|
||||
*Eliminated version strings in ipl
|
||||
*
|
||||
* Rev 1.0 05 Jul 1995 11:32:16 patv
|
||||
*Initial revision.
|
||||
*/
|
||||
|
|
|
@ -28,15 +28,15 @@
|
|||
;
|
||||
|
||||
group PGROUP PSP
|
||||
group TGROUP _TEXT _IO_TEXT _IO_FIXED_DATA
|
||||
group LGROUP _LOWTEXT _IO_TEXT _IO_FIXED_DATA
|
||||
group DGROUP _FIXED_DATA _BSS _DATA _DATAEND CONST CONST2 DCONST DYN_DATA
|
||||
group I_GROUP INIT_TEXT_START INIT_TEXT INIT_TEXT_END ID_B ID ID_E IC IDATA ICONST ICONST2 I_DATA I_BSS IB_B IB IB_E
|
||||
group HGROUP HMA_TEXT_START HMA_TEXT HMA_TEXT_END
|
||||
group I_GROUP INIT_TEXT_START INIT_TEXT INIT_TEXT_END ID_B ID ID_E IC IDATA ICONST ICONST2 I_DATA IB_B I_BSS IB IB_E
|
||||
group TGROUP HMA_TEXT_START _TEXT HMA_TEXT_END
|
||||
|
||||
segment PSP class=PSP
|
||||
segment _TEXT class=CODE
|
||||
segment _IO_TEXT class=CODE
|
||||
segment _IO_FIXED_DATA class=CODE align=2
|
||||
segment _LOWTEXT class=LCODE
|
||||
segment _IO_TEXT class=LCODE
|
||||
segment _IO_FIXED_DATA class=LCODE align=2
|
||||
segment _FIXED_DATA class=FDATA align=16
|
||||
segment _BSS class=BSS align=2
|
||||
segment _DATA class=DATA align=2
|
||||
|
@ -47,9 +47,9 @@ segment CONST2 class=DATA align=2
|
|||
;for MSC
|
||||
segment DCONST class=DCONST align=2
|
||||
segment DYN_DATA class=DYN_DATA
|
||||
segment HMA_TEXT_START class=HMA align=16
|
||||
segment HMA_TEXT class=HMA
|
||||
segment HMA_TEXT_END class=HMA
|
||||
segment HMA_TEXT_START class=CODE align=16
|
||||
segment _TEXT class=CODE
|
||||
segment HMA_TEXT_END class=CODE
|
||||
segment INIT_TEXT_START class=INIT align=16
|
||||
segment INIT_TEXT class=INIT
|
||||
segment INIT_TEXT_END class=INIT
|
||||
|
@ -63,25 +63,8 @@ segment IC class=IC align=2
|
|||
segment ICONST class=FAR_DATA align=2
|
||||
segment ICONST2 class=FAR_DATA align=2
|
||||
segment I_DATA class=FAR_DATA align=2
|
||||
segment I_BSS class=FAR_DATA align=2
|
||||
|
||||
segment IB_B class=IB align=2
|
||||
segment I_BSS class=FAR_DATA align=2
|
||||
segment IB class=IB align=2
|
||||
segment IB_E class=IB align=2
|
||||
|
||||
; Log: segs.inc,v
|
||||
;
|
||||
; Revision 1.2 1999/08/10 17:57:13 jprice
|
||||
; ror4 2011-02 patch
|
||||
;
|
||||
; Revision 1.1.1.1 1999/03/29 15:41:30 jprice
|
||||
; New version without IPL.SYS
|
||||
;
|
||||
; Revision 1.1 1999/02/08 05:55:57 jprice
|
||||
; Added Pat's 1937 kernel patches
|
||||
;
|
||||
;
|
||||
; Rev 1.0 06 Dec 1998 8:12:36 patv
|
||||
; Initial revision.
|
||||
; EndLog
|
||||
;
|
||||
|
|
|
@ -50,7 +50,7 @@ ComTable db 0Ah
|
|||
|
||||
segment _IO_TEXT
|
||||
|
||||
extern CommonNdRdExit:wrt TGROUP
|
||||
extern CommonNdRdExit:wrt LGROUP
|
||||
|
||||
ComRead:
|
||||
jcxz ComRd3
|
||||
|
|
|
@ -154,52 +154,3 @@ void *memchr(const void * s, int c)
|
|||
}
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Log: strings.c,v - see "cvs log strings.c" for newer entries
|
||||
*
|
||||
* Revision 1.4 2000/03/09 06:07:11 kernel
|
||||
* 2017f updates by James Tabor
|
||||
*
|
||||
* Revision 1.3 1999/08/25 03:18:09 jprice
|
||||
* ror4 patches to allow TC 2.01 compile.
|
||||
*
|
||||
* Revision 1.2 1999/04/04 18:51:43 jprice
|
||||
* no message
|
||||
*
|
||||
* Revision 1.1.1.1 1999/03/29 15:41:32 jprice
|
||||
* New version without IPL.SYS
|
||||
*
|
||||
* Revision 1.4 1999/02/04 03:14:07 jprice
|
||||
* Formating. Added comments.
|
||||
*
|
||||
* Revision 1.3 1999/02/01 01:48:41 jprice
|
||||
* Clean up; Now you can use hex numbers in config.sys. added config.sys screen function to change screen mode (28 or 43/50 lines)
|
||||
*
|
||||
* Revision 1.2 1999/01/22 04:13:27 jprice
|
||||
* Formating
|
||||
*
|
||||
* Revision 1.1.1.1 1999/01/20 05:51:01 jprice
|
||||
* Imported sources
|
||||
*
|
||||
*
|
||||
* Rev 1.6 04 Jan 1998 23:15:16 patv
|
||||
* Changed Log for strip utility
|
||||
*
|
||||
* Rev 1.5 31 Dec 1997 3:59:30 patv
|
||||
* Added new far string functions.
|
||||
*
|
||||
* Rev 1.4 29 May 1996 21:03:30 patv
|
||||
* bug fixes for v0.91a
|
||||
*
|
||||
* Rev 1.3 19 Feb 1996 3:21:36 patv
|
||||
* Added NLS, int2f and config.sys processing
|
||||
*
|
||||
* Rev 1.2 01 Sep 1995 17:54:22 patv
|
||||
* First GPL release.
|
||||
*
|
||||
* Rev 1.1 30 Jul 1995 20:51:58 patv
|
||||
* Eliminated version strings in ipl
|
||||
*
|
||||
* Rev 1.0 02 Jul 1995 8:33:46 patv
|
||||
* Initial revision.
|
||||
*/
|
||||
|
|
|
@ -44,12 +44,12 @@ STATIC int ByteToBcd(int x)
|
|||
{
|
||||
return ((x / 10) << 4) | (x % 10);
|
||||
}
|
||||
|
||||
/*
|
||||
STATIC int BcdToByte(int x)
|
||||
{
|
||||
return ((x >> 4) & 0xf) * 10 + (x & 0xf);
|
||||
}
|
||||
|
||||
*/
|
||||
STATIC void DayToBcd(BYTE * x, unsigned mon, unsigned day, unsigned yr)
|
||||
{
|
||||
x[1] = ByteToBcd(mon);
|
||||
|
@ -65,6 +65,8 @@ WORD ASMCFUNC FAR clk_driver(rqptr rp)
|
|||
switch (rp->r_command)
|
||||
{
|
||||
case C_INIT:
|
||||
|
||||
#if 0
|
||||
/* If AT clock exists, copy AT clock time to system clock */
|
||||
if (!ReadATClock(bcd_days, &bcd_hours, &bcd_minutes, &bcd_seconds))
|
||||
{
|
||||
|
@ -89,6 +91,7 @@ WORD ASMCFUNC FAR clk_driver(rqptr rp)
|
|||
BcdToByte(bcd_seconds);
|
||||
WritePCClock(seconds * 0x12 + ((seconds * 0x34dc) >> 16));
|
||||
}
|
||||
#endif
|
||||
/* rp->r_endaddr = device_end(); not needed - bart */
|
||||
rp->r_nunits = 0;
|
||||
return S_DONE;
|
||||
|
@ -156,14 +159,14 @@ WORD ASMCFUNC FAR clk_driver(rqptr rp)
|
|||
else
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
/* Day contains the days left and count the number of */
|
||||
/* days for that year. Use this to index the table. */
|
||||
for (Month = 1; Month < 13; ++Month)
|
||||
{
|
||||
if (pdays[Month] > Day)
|
||||
{
|
||||
Day -= pdays[Month - 1] + 1;
|
||||
Day = Day - pdays[Month - 1] + 1;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -189,46 +192,3 @@ WORD ASMCFUNC FAR clk_driver(rqptr rp)
|
|||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Log: sysclk.c,v - for newer entries do "cvs log sysclk.c"
|
||||
*
|
||||
* Revision 1.3 2000/03/09 06:07:11 kernel
|
||||
* 2017f updates by James Tabor
|
||||
*
|
||||
* Revision 1.2 1999/04/12 03:21:17 jprice
|
||||
* more ror4 patches. Changes for multi-block IO
|
||||
*
|
||||
* Revision 1.1.1.1 1999/03/29 15:41:33 jprice
|
||||
* New version without IPL.SYS
|
||||
*
|
||||
* Revision 1.5 1999/02/08 05:55:58 jprice
|
||||
* Added Pat's 1937 kernel patches
|
||||
*
|
||||
* Revision 1.4 1999/02/04 03:14:07 jprice
|
||||
* Formating. Added comments.
|
||||
*
|
||||
* Revision 1.3 1999/02/01 01:48:41 jprice
|
||||
* Clean up; Now you can use hex numbers in config.sys. added config.sys screen function to change screen mode (28 or 43/50 lines)
|
||||
*
|
||||
* Revision 1.2 1999/01/22 04:13:27 jprice
|
||||
* Formating
|
||||
*
|
||||
* Revision 1.1.1.1 1999/01/20 05:51:01 jprice
|
||||
* Imported sources
|
||||
*
|
||||
*
|
||||
* Rev 1.4 04 Jan 1998 23:15:16 patv
|
||||
* Changed Log for strip utility
|
||||
*
|
||||
* Rev 1.3 29 May 1996 21:03:48 patv
|
||||
* bug fixes for v0.91a
|
||||
*
|
||||
* Rev 1.2 19 Feb 1996 3:21:34 patv
|
||||
* Added NLS, int2f and config.sys processing
|
||||
*
|
||||
* Rev 1.1 01 Sep 1995 17:54:18 patv
|
||||
* First GPL release.
|
||||
*
|
||||
* Rev 1.0 02 Jul 1995 8:32:30 patv
|
||||
* Initial revision.
|
||||
*/
|
||||
|
|
|
@ -121,34 +121,3 @@ VOID putdirent(struct dirent FAR * dp, UBYTE FAR * vp)
|
|||
}
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Log: syspack.c,v - for newer entries see "cvs log syspack.c"
|
||||
*
|
||||
* Revision 1.1.1.1 1999/03/29 15:42:21 jprice
|
||||
* New version without IPL.SYS
|
||||
*
|
||||
* Revision 1.3 1999/02/01 01:43:28 jprice
|
||||
* Fixed findfirst function to find volume label with Windows long filenames
|
||||
*
|
||||
* Revision 1.2 1999/01/22 04:15:28 jprice
|
||||
* Formating
|
||||
*
|
||||
* Revision 1.1.1.1 1999/01/20 05:51:00 jprice
|
||||
* Imported sources
|
||||
*
|
||||
*
|
||||
* Rev 1.4 04 Jan 1998 23:14:38 patv
|
||||
* Changed Log for strip utility
|
||||
*
|
||||
* Rev 1.3 29 May 1996 21:15:12 patv
|
||||
* bug fixes for v0.91a
|
||||
*
|
||||
* Rev 1.2 01 Sep 1995 17:48:42 patv
|
||||
* First GPL release.
|
||||
*
|
||||
* Rev 1.1 30 Jul 1995 20:50:26 patv
|
||||
* Eliminated version strings in ipl
|
||||
*
|
||||
* Rev 1.0 02 Jul 1995 8:05:34 patv
|
||||
* Initial revision.
|
||||
*/
|
||||
|
|
|
@ -172,52 +172,3 @@ int DosSetDate(const struct dosdate *dd)
|
|||
return SUCCESS;
|
||||
}
|
||||
|
||||
/*
|
||||
* Log: systime.c,v - see "cvs log systime.c" for newer entries
|
||||
*
|
||||
* Revision 1.3 1999/05/04 16:40:30 jprice
|
||||
* ror4 date fix
|
||||
*
|
||||
* Revision 1.2 1999/04/12 03:21:18 jprice
|
||||
* more ror4 patches. Changes for multi-block IO
|
||||
*
|
||||
* Revision 1.1.1.1 1999/03/29 15:41:34 jprice
|
||||
* New version without IPL.SYS
|
||||
*
|
||||
* Revision 1.5 1999/02/08 05:55:58 jprice
|
||||
* Added Pat's 1937 kernel patches
|
||||
*
|
||||
* Revision 1.4 1999/02/04 03:14:07 jprice
|
||||
* Formating. Added comments.
|
||||
*
|
||||
* Revision 1.3 1999/02/01 01:48:41 jprice
|
||||
* Clean up; Now you can use hex numbers in config.sys. added config.sys screen function to change screen mode (28 or 43/50 lines)
|
||||
*
|
||||
* Revision 1.2 1999/01/22 04:13:27 jprice
|
||||
* Formating
|
||||
*
|
||||
* Revision 1.1.1.1 1999/01/20 05:51:01 jprice
|
||||
* Imported sources
|
||||
*
|
||||
*
|
||||
* Rev 1.6 06 Dec 1998 8:47:30 patv
|
||||
* Bug fixes.
|
||||
*
|
||||
* Rev 1.5 04 Jan 1998 23:15:22 patv
|
||||
* Changed Log for strip utility
|
||||
*
|
||||
* Rev 1.4 03 Jan 1998 8:36:50 patv
|
||||
* Converted data area to SDA format
|
||||
*
|
||||
* Rev 1.3 29 May 1996 21:03:40 patv
|
||||
* bug fixes for v0.91a
|
||||
*
|
||||
* Rev 1.2 19 Feb 1996 3:21:34 patv
|
||||
* Added NLS, int2f and config.sys processing
|
||||
*
|
||||
* Rev 1.1 01 Sep 1995 17:54:16 patv
|
||||
* First GPL release.
|
||||
*
|
||||
* Rev 1.0 02 Jul 1995 8:32:20 patv
|
||||
* Initial revision.
|
||||
*/
|
||||
|
|
|
@ -320,6 +320,8 @@ int load_transfer(UWORD ds, exec_blk *exp, UWORD fcbcode, COUNT mode)
|
|||
fatal("KERNEL RETURNED!!!"); */
|
||||
}
|
||||
/* mode == LOAD */
|
||||
exp->exec.stack -= 2;
|
||||
*((UWORD FAR *)(exp->exec.stack)) = fcbcode;
|
||||
return SUCCESS;
|
||||
}
|
||||
|
||||
|
@ -767,91 +769,3 @@ COUNT DosExec(COUNT mode, exec_blk FAR * ep, BYTE FAR * lp)
|
|||
return rc;
|
||||
}
|
||||
|
||||
/*
|
||||
* Log: task.c,v - for newer log entries do "cvs log task.c"
|
||||
*
|
||||
* Revision 1.8 2000/03/31 05:40:09 jtabor
|
||||
* Added Eric W. Biederman Patches
|
||||
*
|
||||
* Revision 1.7 2000/03/09 06:07:11 kernel
|
||||
* 2017f updates by James Tabor
|
||||
*
|
||||
* Revision 1.6 1999/08/25 03:18:10 jprice
|
||||
* ror4 patches to allow TC 2.01 compile.
|
||||
*
|
||||
* Revision 1.5 1999/04/23 04:24:39 jprice
|
||||
* Memory manager changes made by ska
|
||||
*
|
||||
* Revision 1.4 1999/04/16 00:53:33 jprice
|
||||
* Optimized FAT handling
|
||||
*
|
||||
* Revision 1.3 1999/04/11 04:33:39 jprice
|
||||
* ror4 patches
|
||||
*
|
||||
* Revision 1.2 1999/03/29 17:05:09 jprice
|
||||
* ror4 changes
|
||||
*
|
||||
* Revision 1.1.1.1 1999/03/29 15:41:41 jprice
|
||||
* New version without IPL.SYS
|
||||
*
|
||||
* Revision 1.5 1999/02/08 05:55:58 jprice
|
||||
* Added Pat's 1937 kernel patches
|
||||
*
|
||||
* Revision 1.4 1999/02/04 03:14:07 jprice
|
||||
* Formating. Added comments.
|
||||
*
|
||||
* Revision 1.3 1999/02/01 01:48:41 jprice
|
||||
* Clean up; Now you can use hex numbers in config.sys. added config.sys screen function to change screen mode (28 or 43/50 lines)
|
||||
*
|
||||
* Revision 1.2 1999/01/22 04:13:27 jprice
|
||||
* Formating
|
||||
*
|
||||
* Revision 1.1.1.1 1999/01/20 05:51:01 jprice
|
||||
* Imported sources
|
||||
*
|
||||
*
|
||||
* Rev 1.15 06 Dec 1998 8:46:28 patv
|
||||
* Bug fixes.
|
||||
*
|
||||
* Rev 1.14 07 Feb 1998 20:38:32 patv
|
||||
* Modified stack fram to match DOS standard
|
||||
*
|
||||
* Rev 1.13 31 Jan 1998 14:39:20 patv
|
||||
* Corrected type in load high code.
|
||||
*
|
||||
* Rev 1.12 31 Jan 1998 14:02:52 patv
|
||||
* Added load high in memory option in DosExeLoader.
|
||||
*
|
||||
* Rev 1.11 22 Jan 1998 22:17:14 patv
|
||||
* Eliminated warnings.
|
||||
*
|
||||
* Rev 1.10 22 Jan 1998 21:31:36 patv
|
||||
* Corrected short .COM problem.
|
||||
*
|
||||
* Rev 1.9 04 Jan 1998 23:15:16 patv
|
||||
* Changed Log for strip utility
|
||||
*
|
||||
* Rev 1.8 22 Jan 1997 13:18:14 patv
|
||||
* pre-0.92 Svante Frey bug fixes.
|
||||
*
|
||||
* Rev 1.7 16 Jan 1997 12:46:56 patv
|
||||
* pre-Release 0.92 feature additions
|
||||
*
|
||||
* Rev 1.5 29 Aug 1996 13:07:22 patv
|
||||
* Bug fixes for v0.91b
|
||||
*
|
||||
* Rev 1.4 29 May 1996 21:03:36 patv
|
||||
* bug fixes for v0.91a
|
||||
*
|
||||
* Rev 1.3 19 Feb 1996 3:21:48 patv
|
||||
* Added NLS, int2f and config.sys processing
|
||||
*
|
||||
* Rev 1.2 01 Sep 1995 17:54:22 patv
|
||||
* First GPL release.
|
||||
*
|
||||
* Rev 1.1 30 Jul 1995 20:51:58 patv
|
||||
* Eliminated version strings in ipl
|
||||
*
|
||||
* Rev 1.0 02 Jul 1995 8:34:06 patv
|
||||
* Initial revision.
|
||||
*/
|
||||
|
|
|
@ -50,4 +50,4 @@ MATH_INSERT=+H_LDIV +H_LLSH +H_LURSH +N_LXMUL +F_LXMUL +H_LRSH
|
|||
#
|
||||
ALLCFLAGS=$(TARGETOPT) $(ALLCFLAGS)
|
||||
INITCFLAGS=$(ALLCFLAGS) -zAINIT -zCINIT_TEXT -zDIB -zRID -zTID -zPI_GROUP -zBIB -zGI_GROUP -zSI_GROUP
|
||||
CFLAGS=$(ALLCFLAGS) -zAHMA -zCHMA_TEXT
|
||||
CFLAGS=$(ALLCFLAGS)
|
||||
|
|
|
@ -43,6 +43,6 @@ TARGET=KMS
|
|||
ALLCFLAGS=-I..\hdr $(TARGETOPT) $(ALLCFLAGS) -nologo -Zl -Fc -WX -Gr -f- -Os -Gs -Ob1 -OV4 -Gy -Oe -Zp1
|
||||
|
||||
INITCFLAGS=$(ALLCFLAGS) -NTINIT_TEXT -AT
|
||||
CFLAGS=$(ALLCFLAGS) -NTHMA_TEXT
|
||||
CFLAGS=$(ALLCFLAGS)
|
||||
INITPATCH = ..\utils\patchobj CODE=INIT _DATA=IDATA DATA=ID BSS=ID DGROUP=I_GROUP CONST=IC
|
||||
STDPATCH = ..\utils\patchobj CODE=HMA CONST=DCONST
|
||||
STDPATCH = ..\utils\patchobj CONST=DCONST
|
||||
|
|
|
@ -50,4 +50,4 @@ MATH_INSERT=+LDIV +LXMUL +LURSH +LLSH +LRSH
|
|||
#
|
||||
ALLCFLAGS=$(TARGETOPT) $(ALLCFLAGS)
|
||||
INITCFLAGS=$(ALLCFLAGS) -zAINIT -zCINIT_TEXT -zDIB -zRID -zTID -zPI_GROUP -zBIB -zGI_GROUP -zSI_GROUP
|
||||
CFLAGS=$(ALLCFLAGS) -zAHMA -zCHMA_TEXT
|
||||
CFLAGS=$(ALLCFLAGS)
|
||||
|
|
|
@ -50,4 +50,4 @@ MATH_INSERT=+H_LDIV +H_LLSH +H_LURSH +N_LXMUL +F_LXMUL +H_LRSH
|
|||
#
|
||||
ALLCFLAGS=$(TARGETOPT) $(ALLCFLAGS)
|
||||
INITCFLAGS=$(ALLCFLAGS) -zAINIT -zCINIT_TEXT -zDIB -zRID -zTID -zPI_GROUP -zBIB -zGI_GROUP -zSI_GROUP
|
||||
CFLAGS=$(ALLCFLAGS) -zAHMA -zCHMA_TEXT
|
||||
CFLAGS=$(ALLCFLAGS)
|
||||
|
|
|
@ -50,4 +50,4 @@ MATH_INSERT=+H_LDIV +F_LXMUL +H_LURSH +H_LLSH +H_LRSH
|
|||
#
|
||||
ALLCFLAGS=$(TARGETOPT) $(ALLCFLAGS)
|
||||
INITCFLAGS=$(ALLCFLAGS) -zAINIT -zCINIT_TEXT -zDIB -zRID -zTID -zPI_GROUP -zBIB -zGI_GROUP -zSI_GROUP
|
||||
CFLAGS=$(ALLCFLAGS) -zAHMA -zCHMA_TEXT
|
||||
CFLAGS=$(ALLCFLAGS)
|
||||
|
|
|
@ -63,6 +63,6 @@ MATH_INSERT= +i4d +i4m
|
|||
|
||||
ALLCFLAGS=-I..\hdr $(TARGETOPT) $(ALLCFLAGS)-zq-os-s-e5-j-zl-zp1-wx-we-zgf-zff
|
||||
INITCFLAGS=$(ALLCFLAGS)-ntINIT_TEXT-ncINIT-ndI-gI_GROUP
|
||||
CFLAGS=$(ALLCFLAGS)-ntHMA_TEXT-ncHMA-gHGROUP
|
||||
CFLAGS=$(ALLCFLAGS)
|
||||
INITPATCH=..\utils\patchobj __U4D=_IU4D __U4M=_IU4M
|
||||
|
||||
|
|
40
sys/sys.c
40
sys/sys.c
|
@ -862,3 +862,43 @@ BOOL copy(COUNT drive, BYTE * srcPath, BYTE * rootPath, BYTE * file)
|
|||
return TRUE;
|
||||
}
|
||||
|
||||
/* version 2.2 jeremyd 2001/9/20
|
||||
Changed so if no source given or only source drive (no path)
|
||||
given, then checks for kernel.sys & command.com in current
|
||||
path (of current drive or given drive) and if not there
|
||||
uses root (but only if source & destination drive are different).
|
||||
Fix printf to include count(ret) if copy can't write all requested bytes
|
||||
*/
|
||||
/* version 2.1a jeremyd 2001/8/19
|
||||
modified so takes optional 2nd parameter (similar to PC DOS)
|
||||
where if only 1 argument is given, assume to be destination drive,
|
||||
but if two arguments given, 1st is source (drive and/or path)
|
||||
and second is destination drive
|
||||
*/
|
||||
|
||||
/* Revision 2.1 tomehlert 2001/4/26
|
||||
|
||||
changed the file system detection code.
|
||||
|
||||
|
||||
*/
|
||||
|
||||
/* Revision 2.0 tomehlert 2001/4/26
|
||||
|
||||
no direct access to the disk any more, this is FORMAT's job
|
||||
no floppy.asm anymore, no segmentation problems.
|
||||
no access to partition tables
|
||||
|
||||
instead copy boot sector using int25/int26 = absdiskread()/write
|
||||
|
||||
if xxDOS is able to handle the disk, SYS should work
|
||||
|
||||
additionally some space savers:
|
||||
|
||||
replaced fopen() by open()
|
||||
|
||||
included (slighly modified) PRF.c from kernel
|
||||
|
||||
size is no ~7500 byte vs. ~13690 before
|
||||
|
||||
*/
|
||||
|
|
Loading…
Reference in New Issue