diff options
author | Pascal Rigaux <pixel@mandriva.com> | 1999-11-15 13:02:13 +0000 |
---|---|---|
committer | Pascal Rigaux <pixel@mandriva.com> | 1999-11-15 13:02:13 +0000 |
commit | 510378574d4d0a97bae46ab21fdf76395b2af1a8 (patch) | |
tree | c4f5ef419e9f539bbfaace4990bdf332a097f1a2 /tools/ddcprobe/lrmi.h | |
parent | 45c48c55488e62177a3d6a2eb6928a716daf1213 (diff) | |
download | drakx-510378574d4d0a97bae46ab21fdf76395b2af1a8.tar drakx-510378574d4d0a97bae46ab21fdf76395b2af1a8.tar.gz drakx-510378574d4d0a97bae46ab21fdf76395b2af1a8.tar.bz2 drakx-510378574d4d0a97bae46ab21fdf76395b2af1a8.tar.xz drakx-510378574d4d0a97bae46ab21fdf76395b2af1a8.zip |
no_comment
Diffstat (limited to 'tools/ddcprobe/lrmi.h')
-rw-r--r-- | tools/ddcprobe/lrmi.h | 85 |
1 files changed, 85 insertions, 0 deletions
diff --git a/tools/ddcprobe/lrmi.h b/tools/ddcprobe/lrmi.h new file mode 100644 index 000000000..c9c186365 --- /dev/null +++ b/tools/ddcprobe/lrmi.h @@ -0,0 +1,85 @@ +/* +Linux Real Mode Interface - A library of DPMI-like functions for Linux. + +Copyright (C) 1998 by Josh Vanderhoof + +You are free to distribute and modify this file, as long as you +do not remove this copyright notice and clearly label modified +versions as being modified. + +This software has NO WARRANTY. Use it at your own risk. +*/ + +#ifndef LRMI_H +#define LRMI_H + +struct LRMI_regs + { + unsigned int edi; + unsigned int esi; + unsigned int ebp; + unsigned int reserved; + unsigned int ebx; + unsigned int edx; + unsigned int ecx; + unsigned int eax; + unsigned short int flags; + unsigned short int es; + unsigned short int ds; + unsigned short int fs; + unsigned short int gs; + unsigned short int ip; + unsigned short int cs; + unsigned short int sp; + unsigned short int ss; + }; + + +#ifndef LRMI_PREFIX +#define LRMI_PREFIX LRMI_ +#endif + +#define LRMI_CONCAT2(a, b) a ## b +#define LRMI_CONCAT(a, b) LRMI_CONCAT2(a, b) +#define LRMI_MAKENAME(a) LRMI_CONCAT(LRMI_PREFIX, a) + +/* + Initialize + returns 1 if sucessful, 0 for failure +*/ +#define LRMI_init LRMI_MAKENAME(init) +int +LRMI_init(void); + +/* + Simulate a 16 bit far call + returns 1 if sucessful, 0 for failure +*/ +#define LRMI_call LRMI_MAKENAME(call) +int +LRMI_call(struct LRMI_regs *r); + +/* + Simulate a 16 bit interrupt + returns 1 if sucessful, 0 for failure +*/ +#define LRMI_int LRMI_MAKENAME(int) +int +LRMI_int(int interrupt, struct LRMI_regs *r); + +/* + Allocate real mode memory + The returned block is paragraph (16 byte) aligned +*/ +#define LRMI_alloc_real LRMI_MAKENAME(alloc_real) +void * +LRMI_alloc_real(int size); + +/* + Free real mode memory +*/ +#define LRMI_free_real LRMI_MAKENAME(free_real) +void +LRMI_free_real(void *m); + +#endif |