aboutsummaryrefslogtreecommitdiff
path: root/sys/i386/smapi/smapi_bios.S
diff options
context:
space:
mode:
Diffstat (limited to 'sys/i386/smapi/smapi_bios.S')
-rw-r--r--sys/i386/smapi/smapi_bios.S17
1 files changed, 8 insertions, 9 deletions
diff --git a/sys/i386/smapi/smapi_bios.S b/sys/i386/smapi/smapi_bios.S
index 2ada5c6b25ea..010d9cdfae80 100644
--- a/sys/i386/smapi/smapi_bios.S
+++ b/sys/i386/smapi/smapi_bios.S
@@ -2,9 +2,6 @@
#include <machine/asmacros.h>
- .data
-smapi32_segment_tmp: .word 0
-smapi32_offset_tmp: .long 0
.text
/*
* smapi32(input_param, output_param)
@@ -36,10 +33,12 @@ ENTRY(smapi32)
*/
ENTRY(smapi32_new)
pushl %ebp /* Save frame */
- movl 0x08(%esp),%ebp
- movl %ebp,smapi32_offset_tmp
- movw 0x0c(%esp),%bp
- movw %bp,smapi32_segment_tmp
+ movl %esp,%ebp
+
+ movl 0x08(%ebp),%eax
+ movl %eax,smapi32_offset
+ movw 0x0c(%ebp),%ax
+ movw %ax,smapi32_segment
pushl %ds
pushl 0x20(%ebp) /* Output Param */
@@ -47,8 +46,8 @@ ENTRY(smapi32_new)
pushl 0x10(%ebp) /* Input Param */
movl $0,%eax
- movw %cs,smapi32_segment_tmp
- lcall *(smapi32_offset_tmp)
+ movw %cs,smapi32_segment
+ lcall *(smapi32_offset)
leave
ret