diff options
| author | H. Peter Anvin <hpa@zytor.com> | 2009-05-31 22:24:42 -0700 |
|---|---|---|
| committer | H. Peter Anvin <hpa@zytor.com> | 2009-05-31 22:24:42 -0700 |
| commit | 6b2e2742b0ef8b3fb28f008e5f2d63fba8006e68 (patch) | |
| tree | e6a7f5fefbcc3a562f2baa086342ebac37e11c7d /core/com32.inc | |
| parent | 0c2f0bd5b51a037f0a112d1b1a282c7d7ccb83ac (diff) | |
| download | syslinux-6b2e2742b0ef8b3fb28f008e5f2d63fba8006e68.tar.gz | |
core: create an ersatz __com32 structure as expected by libcom32
To make it easier to mix libcom32 code into the core, create a __com32
structure to make the system call functions work correctly.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
Diffstat (limited to 'core/com32.inc')
| -rw-r--r-- | core/com32.inc | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/core/com32.inc b/core/com32.inc index 1f141259..3fa2d31e 100644 --- a/core/com32.inc +++ b/core/com32.inc @@ -113,3 +113,18 @@ not_com32r: section .data16 not_com32r_msg db ': not a COM32R image', CR, LF, 0 + + ; Ersatz com32 invocation structure, to make libcom32 + ; code run the same if linked to the core. This is in + ; the .data16 segment so HighMemSize can live here. + global __com32 + alignz 4 +__com32: + dd 7 ; Argument count + dd 0 ; No command line + dd core_intcall ; Intcall entry point + dd core_xfer_buf ; Bounce buffer address + dd 1 << 16 ; 64K bounce buffer + dd core_farcall ; Farcall entry point + dd core_cfarcall ; Cfarcall entry point +HighMemSize dd 0 ; End of memory pointer (bytes) |
