MML Diskstat                                          John Elliott, 9 May 2015
                             (Original program by D. Powys-Lybbe, 20 June 1983)
===============================================================================

  DISKSTAT is a program to display the characteristics of a disk drive under 
CP/M: its DPB (Disk Parameter Block), DPH (Disk Parameter Header) and usage 
statistics (used / free blocks).

  This archive contains the following builds of DISKSTAT:

DSTAT10.COM: DISKSTAT 1.0, the original. The source code for this (DSTAT10.ASM)
            is a copy of DISKSTAT.MAC from the Simtel CP/M CDROM. This version
            supports CP/M 2.2 and CP/M Plus. It was was the version 
            distributed with Epson QX-10 CP/M Plus.

DSTAT11.COM: DISKSTAT 1.1: Distributed by some PCW PD libraries. I am not 
            aware of published source code for this version; DSTAT11.ASM has
            been reverse-engineered to generate the correct .COM file. 
            Includes bug fixes for displaying large numbers, a graphical
	    display of the first 256 allocation blocks on the disk, and 
            support for MP/M II.

DSTAT12.COM: DISKSTAT 1.2: Added terminal customisation, allowing the 
            characters used in the screen display to be changed.

DSTAT80.COM: DISKSTAT 1.2 (8080): The original DISKSTAT uses Z80 instructions.
            This version was created by using XZI to translate the source code
            to 8080, and then tidied up manually.

DSTAT86.CMD: DISKSTAT 1.2 (8086): XLT86 was used to convert DISKSTAT to 8086
            instructions, and the source was tidied up manually. Supports the
            following CP/M-86 versions: CP/M-86 2.2, CP/M-86 Plus, Personal
            CP/M-86, Concurrent CP/M-86 3.1, Concurrent CP/M-86 4.1, DOS Plus
            1.2 and DOS Plus 2.1. 

Source code for the above versions is included:

DSTAT10.ZSM }
DSTAT11.ZSM } for M80
DSTAT12.ZSM }
DSTAT80.ASM   for RMAC
DSTAT86.A86   for NASM. NASM cannot directly output CP/M-86 CMD files, so 
              the utility bin2cmd has been supplied to generate them.

Customisation
=============

  The three builds of DISKSTAT 1.2 can be customised, by editing a 12-byte 
area of the program. This is located at:

DSTAT12.COM: 003Bh   (013Bh when loaded)
DSTAT80.COM: 003Ch   (013Ch when loaded)
DSTAT86.CMD: 01BEh   (013Eh when loaded)

  The area is laid out:

	DB	'.'	;Character used to represent empty space
	DB	'#'	;Character used to represent directory blocks
	DB	'+'	;Character used to represent data blocks
	DB	'-'	;Character used to represent erased blocks
	DS	8	;Clear screen escape sequence, terminated with '$'
			;If it is just '$', the screen will be cleared by
			;writing linefeeds to it.

  For example, on the Amstrad PCW, the area could be set to:

	DB	90h			;Small dot
	DB	80h			;Block
	DB	0BCh			;Solid bullet
	DB	0BBh			;Hollow bullet
	DB	27,'E',27,'H','$'	;Clear screen and home cursor


