diff options
author | mdodd <mdodd@FreeBSD.org> | 2003-01-18 04:36:12 +0000 |
---|---|---|
committer | mdodd <mdodd@FreeBSD.org> | 2003-01-18 04:36:12 +0000 |
commit | 9fa1ba53a7e414fa814408783a9a6c41a48594be (patch) | |
tree | b82e93446ecc6a72c84a07ba6a69f8829c128f48 /sys/i386/smapi/smapi_bios.S | |
parent | 7284e7e47fdb035b53f5295db77ccf14025b4d16 (diff) | |
download | FreeBSD-src-9fa1ba53a7e414fa814408783a9a6c41a48594be.zip FreeBSD-src-9fa1ba53a7e414fa814408783a9a6c41a48594be.tar.gz |
- Removed unecesary code.
- Correct smapi32_new() asm (still doesn't work.)
- Attach to mainboard not isa.
Diffstat (limited to 'sys/i386/smapi/smapi_bios.S')
-rw-r--r-- | sys/i386/smapi/smapi_bios.S | 17 |
1 files changed, 8 insertions, 9 deletions
diff --git a/sys/i386/smapi/smapi_bios.S b/sys/i386/smapi/smapi_bios.S index 2ada5c6..010d9cd 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 |