summaryrefslogtreecommitdiff
path: root/com32/include/com32.h
diff options
context:
space:
mode:
authorH. Peter Anvin <hpa@zytor.com>2007-11-20 18:51:54 -0800
committerH. Peter Anvin <hpa@zytor.com>2007-11-20 18:51:54 -0800
commit033b7497db0d920bdc9f776ef3a65a7b65723ff0 (patch)
tree4406117dcc52d863b53c79cd3d41fa395cc79c50 /com32/include/com32.h
parent0188c20b01e4c5702108390eae6ea60a0af0a8e5 (diff)
downloadsyslinux-033b7497db0d920bdc9f776ef3a65a7b65723ff0.tar.gz
Add support for thunking cdecl/stdcall-style real-mode code
Add support for thunking cdecl/stdcall-style 16-bit functions which pass parameters on the stack. This is necessary in order to be able to call PnPBIOS functions without using the (rather scary) PM interface.
Diffstat (limited to 'com32/include/com32.h')
-rw-r--r--com32/include/com32.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/com32/include/com32.h b/com32/include/com32.h
index 264f6091..7e618977 100644
--- a/com32/include/com32.h
+++ b/com32/include/com32.h
@@ -74,14 +74,17 @@ extern struct com32_sys_args {
void *cs_bounce;
uint32_t cs_bounce_size;
void __cdecl (*cs_farcall)(uint32_t, const com32sys_t *, com32sys_t *);
+ int __cdecl (*cs_cfarcall)(uint32_t, const void *, uint32_t);
} __com32;
/*
* System call wrapper functions
*/
void __intcall(uint8_t __i, const com32sys_t *__sr, com32sys_t *__dr);
-void __farcall(uint16_t __es, uint16_t __eo,
+void __farcall(uint16_t __cs, uint16_t __ip,
const com32sys_t *__sr, com32sys_t *__dr);
+int __cfarcall(uint16_t __cs, uint16_t __ip,
+ const void *__stack, uint32_t __stack_size);
extern const com32sys_t __com32_zero_regs;
/*