/* -*-C-*-
********************************************************************************
*
* File:         emaxio.h
* RCS:          $Header: emaxio.h,v 1.1 93/03/19 14:24:18 mjp Exp $
* Description:  E-mu Emax Sampler - raw disk IO routines
* Author:       Mike Prudence. (mjp@hplb.hpl.hp.com)
* Created:      Wed Mar 17 14:29:00 1993
* Modified:     Sat Mar 20 13:51:39 1993 (Mike Prudence) mjp@prudence
* Language:     C
*
* (c) Copyright 1993, Mike Prudence.
*
********************************************************************************
*/


#ifndef __EMAXIO_H
#define __EMAXIO_H

#include <bios.h>

typedef unsigned char byte;
typedef unsigned int word;
typedef unsigned long int longword;

#define SCTR_SIZE	512
#define HEADS		2
#define SCTR_TRK	10
#define TRK_CYL		80
#define START_SCTR      1
#define END_SCTR        10

typedef byte TRACK_BUF[SCTR_TRK][SCTR_SIZE];

extern int DriveReset
    (int drive);

extern int SetupDrive
    (int drive);

extern int DriveCheck
    (int drive);

extern int ReadAbsSectors
    (int drive, int head, int track, int sector, int nsects, void* buffer);

extern int WriteAbsSectors
    (int drive, int head, int track, int sector, int nsects, void* buffer);

extern int VerifyAbsSectors
    (int drive, int head, int track, int sector, int nsects, void* buffer);

extern char* emax_io_error
     (int result);

#endif
