Annotation of quake1/dosisms.h, revision 1.1.1.1

1.1       root        1: 
                      2: //
                      3: // dosisms.h: I'd call it dos.h, but the name's taken
                      4: //
                      5: 
                      6: #ifndef _DOSISMS_H_
                      7: #define _DOSISMS_H_
                      8: 
                      9: int dos_lockmem(void *addr, int size);
                     10: int dos_unlockmem(void *addr, int size);
                     11: 
                     12: typedef union {
                     13:        struct {
                     14:                unsigned long edi;
                     15:                unsigned long esi;
                     16:                unsigned long ebp;
                     17:                unsigned long res;
                     18:                unsigned long ebx;
                     19:                unsigned long edx;
                     20:                unsigned long ecx;
                     21:                unsigned long eax;
                     22:        } d;
                     23:        struct {
                     24:                unsigned short di, di_hi;
                     25:                unsigned short si, si_hi;
                     26:                unsigned short bp, bp_hi;
                     27:                unsigned short res, res_hi;
                     28:                unsigned short bx, bx_hi;
                     29:                unsigned short dx, dx_hi;
                     30:                unsigned short cx, cx_hi;
                     31:                unsigned short ax, ax_hi;
                     32:                unsigned short flags;
                     33:                unsigned short es;
                     34:                unsigned short ds;
                     35:                unsigned short fs;
                     36:                unsigned short gs;
                     37:                unsigned short ip;
                     38:                unsigned short cs;
                     39:                unsigned short sp;
                     40:                unsigned short ss;
                     41:        } x;
                     42:        struct {
                     43:                unsigned char edi[4];
                     44:                unsigned char esi[4];
                     45:                unsigned char ebp[4];
                     46:                unsigned char res[4];
                     47:                unsigned char bl, bh, ebx_b2, ebx_b3;
                     48:                unsigned char dl, dh, edx_b2, edx_b3;
                     49:                unsigned char cl, ch, ecx_b2, ecx_b3;
                     50:                unsigned char al, ah, eax_b2, eax_b3;
                     51:        } h;
                     52: } regs_t;
                     53: 
                     54: unsigned int ptr2real(void *ptr);
                     55: void *real2ptr(unsigned int real);
                     56: void *far2ptr(unsigned int farptr);
                     57: unsigned int ptr2far(void *ptr);
                     58: 
                     59: int    dos_inportb(int port);
                     60: int    dos_inportw(int port);
                     61: void dos_outportb(int port, int val);
                     62: void dos_outportw(int port, int val);
                     63: 
                     64: void dos_irqenable(void);
                     65: void dos_irqdisable(void);
                     66: void dos_registerintr(int intr, void (*handler)(void));
                     67: void dos_restoreintr(int intr);
                     68: 
                     69: int    dos_int86(int vec);
                     70: 
                     71: void *dos_getmemory(int size);
                     72: void dos_freememory(void *ptr);
                     73: 
                     74: void   dos_usleep(int usecs);
                     75: 
                     76: int dos_getheapsize(void);
                     77: 
                     78: extern regs_t regs;
                     79: 
                     80: #endif // _DOSISMS_H_
                     81: 

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.