Dec 222017
Diskette formatter. Includes full ASM source code.
File FMTA100.ZIP from The Programmer’s Corner in
Category Utilities for DOS and Windows Machines
Diskette formatter. Includes full ASM source code.
File Name File Size Zip Size Zip Type
FMT.ASM 78380 10442 deflated
FMT.COM 5993 2817 deflated
FMT.DOC 5725 2109 deflated

Download File FMTA100.ZIP Here

Contents of the FMT.DOC file


FMT version 1.00, Copyright (C) 1990 Clair Alan Hardesty

Floppy disk formatter for AT compatible computers


1: Format verification is an option, allowing fast formatting on
known good media.

2: The system files may be copied, producing a bootable floppy

3: The `insert disk' prompt may be bypassed, easing use in batch files

4: All program output is to STDOUT, allowing redirection

5: Extensively commented source code included

6: The boot sector data is coded entirely in assembly language

7: A plethora of error messages and exit codes provide detailed
program fault information

8: Program progress display is informative without being verbose

9: Small code size: less than 6 Kb

10: The floppy boot sector contains the drive parameter table,
this should help in making nonstandard formats bootable,
(something for the next revision)

11: A liberal source code license is available at resonable cost


The source code for FMT has been included for several major reasons:

1: To provide the user with peace of mind, (you are encouraged to
examine the source and compile it yourself), as any program
that does low level disk I/O is a potential nemesis

2: To share what I have learned from writing it with others

3: To encourage others to do likewise

4: To show off (not too boisterously, but I am proud of my work)

The source code is copyrighted, unlicensed users are not permitted to
use any portion of the source code in programs they distribute, they
are, however, permitted to use any part or all of the source code in
programs written and maintained for personal use.

Licensed users are permitted to use any portion of the source code in
any program written for distribution, commercial or otherwise,
including distribution of the source code, providing credit is given
where credit is due.

You are encouraged to distribute the original files, provided they
are unaltered and distributed as a set. The files are:


If you use and enjoy this program, any contribution to encourage my
efforts would br greatly appriciated.

If you send $10 or more, you will be receive:

1: The latest version of the source code on your choice of media

(3" 720 Kb or 5" 1.2 Mb)

2: A selection of other utilities I have written (with source code)

If you send $25 or more, you will also receive:

1: A signed and dated source code license

2: The next major release (with source) when available

Make check or money order payable to: Clair Hardesty

Send to:

Clair Alan Hardesty
10301 Johnson Av
Cupertino, CA 95014

I may be contacted at:

(408) 446-0550 Voice,

CompuServe 75350,16,

or in writing at the above address


command line syntax: fmt d: size [v] [s] [n]

where: d = drive (A or B), size = floppy size in Kb,

the optional v enables format verification,

the optional s copies the system files,

and the optional n bypasses the `insert floppy' prompt

supported sizes are:

360 for a 360 Kb floppy in a 360 Kb or 1.2 Mb drive
720 for a 720 Kb floppy in a 720 Kb or 1.44 Mb drive
1200 for a 1.2 Mb floppy in a 1.2 Mb drive
1440 for a 1.44 Mb floppy in a 1.44 Mb drive


Exit codes:

0 = successful format
1 = failure during format, verify, or write
2 = disk size / drive type combination is not supported
3 = requested drive does not exist
4 = invalid or null command line
5 = system files not found or error writing system files
6 = computer is not AT compatible
7 = insufficient memory for file copy buffer (system transfer)


In order to use the system transfer option, the following files

must be in the root directory of the default drive:

1: IBMBIO.COM (should be a hidden file)

2: IBMDOS.COM (should be a hidden file)



To ease use in batch files:

1: use the no prompt option
2: redirect output to the NUL file
3: test the exit code


fmt b: 360 n > nul
if errorlevel 1 goto failure
echo Format succeeded
goto success
echo Format failed


To compile with Borland Turbo Assembler version 1.0 or greater:

tasm /t fmt

tlink /t /x fmt


tasm /t /zi fmt

tlink /v /x fmt

tdstrip -c -s fmt

for use with Turbo Debugger


To compile with Microsoft Macro Assembler version 5.1 or greater:

masm /t fmt;

link fmt;

exe2bin fmt

del fmt.exe


Microsoft(R) is a registered trademark of Microsoft Corporation

IBM(R) and PS/2 are registered trademarks of International

Business Machines Corporation

Turbo Assembler(R) and Turbo Debugger(R) are registered trademarks

of Borland International


 December 22, 2017  Add comments

Leave a Reply