home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Graphics 16,000
/
graphics-16000.iso
/
msdos
/
animutil
/
flilib
/
aados.h
next >
Wrap
C/C++ Source or Header
|
1990-02-20
|
3KB
|
96 lines
/* aados.h Copyright 1990 Dancing Flame, San Francisco */
#ifndef AADOS_H
#define AADOS_H
#ifndef AATYPES_H
#include "aatypes.h"
#endif /* AATYPES_H */
typedef int Jfile;
dos_key_is(void); /* return 1 if a key is ready to read, 0 if not */
dos_key_in(void); /* return next keyboard input. Wait for it. */
Jfile dos_open(char *title, int mode); /* open a file that already exists.*/
/* defines for mode parameter to dos_open */
#define DOS_READ_ONLY 0
#define DOS_WRITE_ONLY 1
#define DOS_READ_WRITE 2
Jfile dos_create(char *title); /* Create a new read/write file */
void dos_close(Jfile f); /* close file */
/* File read/write. Normally don't use dos_rw, but go through macros */
long dos_rw(Jfile f,void *buf,long size,int ah);
#define dos_read(f,b,size) dos_rw(f,b,size,0x3f)
#define dos_write(f,b,size) dos_rw(f,b,size,0x40)
long dos_seek (Jfile f, long offset, int mode);
long dos_tell (Jfile f);
/* defines for mode parameter to dos_seek */
#define DOS_SEEK_START 0
#define DOS_SEEK_RELATIVE 1
#define DOS_SEEK_END 2
/* size of a buffer long enough to hold any MS-DOS path */
#define DOS_PATH_SIZE 80
/* this is the data structure used by dos_first() dos_next () in searching
directories */
typedef struct fndata
{
char reserved[21];
char attribute;
USHORT time, date;
long size;
char name[13];
char fordos[128-43];
} Fndata;
Fndata *dos_get_dta (void); /* get the 'DTA' area for directory search */
Boolean dos_first(char *pattern, int attributes);
/* defines for attributes parameters */
#define DOS_ATTR_DIR 16
#define DOS_ATTR_NORMAL 0
Boolean dos_next (void);
/* A list of dos_devices that are actually connected,
made by dos_get_devlist () */
extern char dos_devices[26];
extern int dos_dev_count;
void dos_get_devlist (void);
/* This gets rid of the ms-dos abort/retry/fail message. Afterwards
ms-dos acts like it was always a fail. dos_get_devlist () calls this... */
void dos_no_abort_retry_cancel (void);
/* Hey dos - I want to go to this directory. Actually this changes
both device and directory at once. eg name could be
C:\VPAINT\FISHIES */
Boolean dos_change_dir(char *name);
/* Tell DOS it's time to go to another drive mon. 0 = A:, 1 = B: ...
you get the idea */
Boolean dos_change_dev(int newdev);
/* Hey DOS, what drive is we on? 0 = A: */
int dos_get_dev (void);
/* Get the current device and directory into path */
Boolean dos_get_dir (char path[DOS_PATH_SIZE]);
/* Create a directory. (Don't include device info. If needed
do a dos_change_dev(dev) first.) */
Boolean dos_make_dir(char *name);
/* Delete a directory. */
Boolean dos_del_dir(char *name);
/* Figure how much free space is on a device. 0 = current device. 1 = A:... */
long dos_dfree(int dev);
#endif /* AADOS_H */