Skip to content

Commit 4d4834d

Browse files
committed
update devload to version 3.17
git-svn-id: http://svn.code.sf.net/p/fdos/code/trunk@74 d9247ac3-808d-4053-b241-f1a6b6229609
1 parent 5d43b11 commit 4d4834d

File tree

1 file changed

+21
-6
lines changed

1 file changed

+21
-6
lines changed

devload.asm

Lines changed: 21 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,14 @@
33

44
; TITLE DEVLOAD to load device drivers from command line.
55
; FORMAT EXE ; *** changed to COM in 3.12/newer ***
6-
; VERSION 3.16
6+
; VERSION 3.17
77
; CODE 80x86
88
; OPTIONS /ML
99
; TIME CHECK
1010
; DATE 12/3/92 - 31/3/98
1111
; AUTHOR David Woodhouse
1212
; (C) 1992, 1993 David Woodhouse.
13-
; Patches for 3.12 to 3.16: 2004 and 2005 by Eric Auer
13+
; Patches for 3.12 to 3.16, 3.17: 2004 and 2005, 2007 by Eric Auer
1414

1515
; EXPLANATION...
1616
; The program first relocates itself to the top of the available memory
@@ -129,13 +129,15 @@
129129
; message and the message which tells whether /H (UMB) worked.
130130
; Inspired by Erwin Veermans' patches.
131131

132-
; Version 3.16 04/11/2005 - contributed patches and some cleaning
132+
; Version 3.16 4/11/2005 - contributed patches and some cleaning
133133
; improved TASM compile (normal DEVLOAD compiler is ArrowASM),
134134
; fixed the "UMB needs DOS 5+" version check, improved texts.
135135
; comment style: added spaces after ; where ; starts a comment.
136136
; Added some "short" and "ds:" as suggested by Diego Rodriguez.
137137
; DR DOS version check based on research by Diego Rodriguez.
138138

139+
; Version 3.16 9/5/2007 - allocate more space for DPB if DOS 7+ (FAT32)
140+
139141
; .............................IMPROVEMENT IDEAS.............................
140142

141143

@@ -1570,9 +1572,9 @@ LASTBYTE equ $
15701572

15711573
; ................DATA WHICH ISN'T NEEDED AFTER RELOCATION...................
15721574

1573-
SignOnMsg db 'DEVLOAD v3.16 (C) 1992 - 1996 David Woodhouse '
1575+
SignOnMsg db 'DEVLOAD v3.17 (C) 1992 - 1996 David Woodhouse '
15741576
db ' <[email protected]>',13,10
1575-
db ' Patches for v3.12-3.16 by Eric Auer 2004/2005'
1577+
db ' Patches for v3.12-3.17 by Eric Auer 2004-2007'
15761578
db ' <Eric*CoLi.uni-sb.de>',13,10
15771579
db ' Loads device drivers from the shell.',13,10
15781580
; kind of obvious...: db ' Needs DOS 3 or newer.'
@@ -1671,13 +1673,26 @@ ver3: ; DR DOS up to 7.00 "are DOS 3.31" but pre-DR-6.0 fail:
16711673
cmp al,71h ; first tested-to-work kernel
16721674
jb badver ; 72h+ report MS version 6...
16731675

1676+
; DOS CDS (current directory structure) array has LASTDRIVE entries of
1677+
; 58h bytes each, 51h for DOS 3.x ... DOS Block headers are the DPB
1678+
; (drive parameter block) items, 20h bytes in DOS 3.x, 21h in 4.0-6.0
1679+
; FAT32 DPB start like FAT1x ones, but are 1ch bytes longer ... (3.17)
16741680
realver3: mov LDrSize,51h
16751681
mov byte ptr BlHSize,20h
16761682
mov NextBlHOfs,18h
1683+
jmp short classicver
1684+
1685+
okver: cmp al,7 ; new 3.17
1686+
jb classicver
1687+
1688+
; FAT32 aware version: larger DPB, but same DPB pointer / CDS size
1689+
mov byte ptr BlHSize,003dh ; new 3.17
1690+
1691+
classicver:
16771692

16781693
; Check command line.
16791694

1680-
okver: mov ds,PSPSeg
1695+
mov ds,PSPSeg
16811696
xor bh,bh
16821697
mov bl,byte ptr ds:[80h]
16831698
or bx,bx

0 commit comments

Comments
 (0)