|
|
1.1 root 1: /*++
2:
3: Copyright (c) 1993 - Colorado Memory Systems, Inc.
4: All Rights Reserved
5:
6: Module Name:
7:
8: drvintr.h
9:
10: Abstract:
11:
12:
13: Revision History:
14:
15:
16:
17:
18: --*/
19:
20: /***********************************************************************/
21: /* Task manager types */
22: /***********************************************************************/
23: typedef struct IRQ_struct far *IntPtr;
24: typedef void (interrupt far *vecptr)();
25:
26: /***********************************************************************/
27: /* Task manager externals */
28: /***********************************************************************/
29:
30: void far _chain_intr(void (interrupt far *)());
31: vecptr far _dos_getvect(int);
32: #define HZ 18
33: #define PRIBIO 20
34:
35: /***********************************************************************/
36: /* Task manager interrupt structure */
37: /***********************************************************************/
38:
39: /* IRQ format (See IBM PS/2 interrupt sharing documentation) */
40:
41: struct IRQ_struct {
42: unsigned int irq_entry; /* short jump around entry */
43: union {
44: IntPtr irq_struct; /* pointer to next */
45: void (interrupt far *irq_fptr)();
46: } link;
47: unsigned int irq_sig; /* signature */
48: unsigned char irq_flags; /* flags */
49: unsigned int irq_reset; /* short jump to reset code */
50: unsigned char irq_reserved[7]; /* reserved */
51: char irq_jump; /* long jump op code */
52: vecptr irq_routine; /* pointer to our interrupt routine */
53: char irq_rst_jump; /* long jump op code (to reset vector) */
54: void (far * irq_rst_vector)();/* pointer to reset vector */
55: unsigned int CMS_signature; /* signature for multiple driver check */
56: };
57:
58: /***********************************************************************/
59: /* Task manager interrupt routines */
60: /***********************************************************************/
61:
62: extern void far _interrupt mt_hardware_start();
63: extern void far _interrupt mt_timer_start();
64: extern void far _interrupt mt_ctrl_c_start();
65: extern void far mt_ctrl_c_sub();
66: extern void far _interrupt mt_crit_int_start();
67: extern void interrupt far mt_hardware_start();
68: extern void interrupt far mt_timer_start();
69: extern void interrupt far mt_ctrl_c_start();
70: extern void far mt_ctrl_c_sub();
71: extern void interrupt far mt_crit_int_start();
72:
73: extern struct IRQ_struct mt_hardware;
74: extern struct IRQ_struct mt_timer;
75: extern struct IRQ_struct mt_ctrl_c;
76: extern struct IRQ_struct mt_crit_int;
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.