home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Simtel MSDOS 1992 September
/
Simtel20_Sept92.cdr
/
msdos
/
turbo_c
/
tchk21.arc
/
INCLUDE.ARC
/
MULTIHK.H
< prev
next >
Wrap
C/C++ Source or Header
|
1989-06-06
|
4KB
|
67 lines
/* TCHK 2.1 - Howard Kapustein's Turbo C library 6-6-89 */
/* Copyright (C) 1988,1989 Howard Kapustein. All rights reserved. */
/* multihk.h - header file for multihk.h - multitasking routines */
#ifndef MULTIHK_HEADER
#define MULTIHK_HEADER 1
#include <howard.h>
#include <alloc.h> /* for size_t */
/* NOTE: most DESQ functions are really DESQview/TopView/TaskView(Omniview) */
typedef struct DESQmemory {
int memavail; /* memory available */
int largestblockavail; /* largest block available */
int totalmem; /* total memory */
};
#define DVERROR_BEEP 0x8000 /* make a beep */
#define DVERROR_LEFT 0x2000 /* left button removes window */
#define DVERROR_RIGHT 0x4000 /* right button removes window */
#define DVERROR_EITHER 0x0000 /* either button removes window (also 0x6000) */
/* function prototypes - DESQview */
unsigned DESQappnum(void); /* program number as it appears on "Switch Windows" menu */
void DESQbeginc(void); /* DESQview begin critical region */
void DESQcommonmem(struct DESQmemory *dm); /* common memory available */
void DESQconvenmem(struct DESQmemory *dm); /* conventional memory available */
unsigned DESQdisperror(char *msg, unsigned char width, unsigned char height, unsigned segment, unsigned flags); /* popup error window */
void DESQendc(void); /* DESQview end critical region */
void DESQexit(void); /* DESQview (Topview???) exit program */
void DESQexpandedmem(struct DESQmemory *dm);/* expanded memory available */
char far *DESQgetbuf(unsigned segment, unsigned *size); /* get DESQview virtual screen info */
char far *DESQgetmem(size_t size); /* DESQview allocate "system" memory */
void DESQjustify(boolean enable); /* enable/disable automatic window justification */
boolean DESQiskmouse(void); /* using keyboard mouse ? */
void DESQkmouse_on(void); /* turn keyboard mouse on */
void DESQkmouse_off(void); /* turn keyboard mouse off */
void DESQostack(void); /* switch to task's internal stack */
void DESQpause(void); /* give up CPU time */
char DESQpoke(char c); /* display character on status line */
void DESQposttask(unsigned segment); /* awaken DESQview task */
void DESQpushkey(unsigned scancode); /* put key into keyboard input stream */
void DESQputmem(char far *block); /* DESQview deallocate "system" memory */
void DESQsound(int frequency, int duration); /* Make Tone under DESQview (Topview???) */
void DESQstart(unsigned segment); /* indicated task is started up again */
void DESQstop(unsigned segment); /* indicated task no longer gets cpu time */
void DESQustack(void); /* switch back to user's stack */
unsigned int DESQversion(void); /* get version */
char far *getDESQvidbuffer(unsigned segment, unsigned offset); /* get ptr to video buffer under DESQview */
void updateDESQdisplay(unsigned n, unsigned segment, unsigned offset); /* update display from DESQview video buffer */
unsigned int DESQapilevel(unsigned char major, unsigned char minor); /* define minimum API level required */
/* function prototypes - Double DOS */
void DoubleDOSfreeCPU(byte slices); /* gives up slices * 55ms */
unsigned int DoubleDOSGetVirtual(void); /* get Double DOS virtual screen address */
void DoubleDOSTaskSwitch(boolean on); /* set Double DOS task switching on/off */
boolean isDoubleDOS(void); /* is Double DOS active */
boolean isInvisible(void); /* is this the invisible program under Double DOS */
/* function prototypes - Taskview (Omniview ?) */
void TVprintc(char c, char attribute, unsigned segment); /* display a character/attribute on screen */
#endif /* MULTIHK_HEADER */