Category : Utilities for DOS and Windows Machines
Archive   : FILLDISK.ZIP
Filename : DFILL.LST

 
Output of file : DFILL.LST contained in archive : FILLDISK.ZIP
 Microsoft MACRO Assembler Version 3.00 Page 1-1
D F I L L . A S M (SUBROUTINE TO FILLDISK.SRC) 10-10-86


1 PAGE 57,132
2 TITLE D F I L L . A S M (SUBROUTINE TO FILLDISK.SRC)
3 ;
4 ; DFILL CREATE, WRITE AND CLOSE FILE VIA INT 33, FUNCTIONS 60, 64 AND 62
5 ;
6 ; IN PARM 1, STACK FILE NAME (inclusive drive letter)
7 ; PARM 2, " BLOCK 512 BYTES (already filled)
8 ; PARM 3, " NUMBER OF SECTORS (to be written)
9
10 PARM STRUC
11
12 0000 0000 SAVEBP DW 0
13 0002 0000 RETOFF DW 0
14 0004 0000 RETSEG DW 0
15 0006 0000 PARM3 DW 0
16 0008 0000 PARM2 DW 0
17 000A 0000 PARM1 DW 0
18
19 000C PARM ENDS
20
21 = PARMSIZE EQU OFFSET PARM1 - OFFSET RETSEG
22
23 0000 CODE SEGMENT BYTE PUBLIC 'CODE'
24 ASSUME CS:CODE
25
26 0000 DFILL PROC FAR
27 PUBLIC DFILL
28
29 0000 55 PUSH BP ; SET UP BP FOR PARM ADDRESSING
30 0001 8B EC MOV BP, SP
31
32 0003 8B 5E 0A MOV BX, [BP].PARM1 ; GET PTR(DFNAME$)
33 0006 8B 57 02 MOV DX, [BX+2]
34
35 ; MOV AH, 9 ; TEST FOR STRING TRANSFER OK
36 ; INT 33
37
38 0009 B9 0000 MOV CX, 0 ; FILE ATTRIBUTE
39 000C B4 3C MOV AH, 60 ; DOS FUNCTION CREATE FILE
40 000E CD 21 INT 33 ; ------------------------
41 0010 8B D8 MOV BX, AX ; SAVE FILE HANDLE
42
43 0012 8B 76 08 MOV SI, [BP].PARM2 ; GET BLOCK$
44 0015 8B 54 02 MOV DX, [SI+2]
45 0018 8B 76 06 MOV SI, [BP].PARM3 ; GET RECORDS%
46 001B 8B 3C MOV DI, [SI]
47
48 001D B9 0200 LOOP: MOV CX, 512 ; BLOCK LENGTH
49 0020 B4 40 MOV AH, 64 ; DOS FUNCTION WRITE FILE

50 0022 CD 21 INT 33 ; -----------------------
51 0024 4F DEC DI ; RECORDS%
52 0025 75 F6 JNZ LOOP
53
 Microsoft MACRO Assembler Version 3.00 Page 1-2
D F I L L . A S M (SUBROUTINE TO FILLDISK.SRC) 10-10-86


54 0027 B4 3E MOV AH, 62 ; DOS FUNCTION CLOSE FILE
55 0029 CD 21 INT 33 ; -----------------------
56
57 002B 5D POP BP
58
59 002C CA 0006 RET PARMSIZE
60
61 002F DFILL ENDP
62 002F CODE ENDS
63 END

 Microsoft MACRO Assembler Version 3.00 Page Symbols-1
D F I L L . A S M (SUBROUTINE TO FILLDISK.SRC) 10-10-86


Structures and records:

N a m e Width # fields
Shift Width Mask Initial

PARM . . . . . . . . . . . . . . 000C 0006
SAVEBP . . . . . . . . . . . . . 0000
RETOFF . . . . . . . . . . . . . 0002
RETSEG . . . . . . . . . . . . . 0004
PARM3. . . . . . . . . . . . . . 0006
PARM2. . . . . . . . . . . . . . 0008
PARM1. . . . . . . . . . . . . . 000A

Segments and Groups:

N a m e Size Align Combine Class

CODE . . . . . . . . . . . . . . 002F BYTE PUBLIC 'CODE'

Symbols:

N a m e Type Value Attr

DFILL. . . . . . . . . . . . . . F PROC 0000 CODE Global Length =002F
LOOP . . . . . . . . . . . . . . L NEAR 001D CODE
PARMSIZE . . . . . . . . . . . . Text OFFSET PARM1 - OFFSET RETSEG

49698 Bytes free

Warning Severe
Errors Errors
0 0


  3 Responses to “Category : Utilities for DOS and Windows Machines
Archive   : FILLDISK.ZIP
Filename : DFILL.LST

  1. Very nice! Thank you for this wonderful archive. I wonder why I found it only now. Long live the BBS file archives!

  2. This is so awesome! 😀 I’d be cool if you could download an entire archive of this at once, though.

  3. But one thing that puzzles me is the “mtswslnkmcjklsdlsbdmMICROSOFT” string. There is an article about it here. It is definitely worth a read: http://www.os2museum.com/wp/mtswslnk/