aboutsummaryrefslogtreecommitdiff
path: root/sys/i386/apm/apm_init
diff options
context:
space:
mode:
authorNate Williams <nate@FreeBSD.org>1996-04-18 19:22:59 +0000
committerNate Williams <nate@FreeBSD.org>1996-04-18 19:22:59 +0000
commitd94b02932400ba3414508da5f654f3ba5a8a1f84 (patch)
tree3d498f2cc4fd4b78aeb6fed8558b20f9bad1c380 /sys/i386/apm/apm_init
parentff35cfa1f02b8ee7bf5bdc3c71a8144a8851a2c0 (diff)
downloadsrc-d94b02932400ba3414508da5f654f3ba5a8a1f84.tar.gz
src-d94b02932400ba3414508da5f654f3ba5a8a1f84.zip
- Save/restore the FS data segment.
Reviewed by: bde
Notes
Notes: svn path=/head/; revision=15299
Diffstat (limited to 'sys/i386/apm/apm_init')
-rw-r--r--sys/i386/apm/apm_init/apm_init.S6
-rw-r--r--sys/i386/apm/apm_init/apm_init.inc72
2 files changed, 39 insertions, 39 deletions
diff --git a/sys/i386/apm/apm_init/apm_init.S b/sys/i386/apm/apm_init/apm_init.S
index 33cb6f99d150..028a5e91a3b9 100644
--- a/sys/i386/apm/apm_init/apm_init.S
+++ b/sys/i386/apm/apm_init/apm_init.S
@@ -12,7 +12,7 @@
*
* Sep., 1994 Implemented on FreeBSD 1.1.5.1R (Toshiba AVS001WD)
*
- * $Id: apm_init.S,v 1.5 1996/03/11 21:54:22 nate Exp $
+ * $Id: apm_init.S,v 1.6 1996/03/12 21:23:56 nate Exp $
*/
/*
@@ -72,6 +72,7 @@ ENTRY(apm_init)
/*
* save old data segments: We assume that %ds == %es && %ds == %ss
*/
+ pushl %fs
movw %ds, %ax
movw %ax, %fs
movw $(APM_INIT_DS_SEL), %ax /* initializer data segment */
@@ -186,9 +187,8 @@ finish:
movw %ax, %ss
movw %ax, %es
movw %ax, %ds
- xorl %eax, %eax
- movw %ax, %fs
movl %ebp, %eax
+ popl %fs
popl %ebp /* restore old base pointer */
lret /* restore old code segment */
diff --git a/sys/i386/apm/apm_init/apm_init.inc b/sys/i386/apm/apm_init/apm_init.inc
index e9565b3fd91a..6e9ed523b483 100644
--- a/sys/i386/apm/apm_init/apm_init.inc
+++ b/sys/i386/apm/apm_init/apm_init.inc
@@ -1,42 +1,42 @@
/* This file is automatically generated by bin2asm */
/* Original file is 'apm_init' */
- .byte 0xfa, 0x55, 0x66, 0x8c, 0xd8, 0x66, 0x8e, 0xe0
- .byte 0x66, 0xb8, 0xe8, 0x00, 0x66, 0x8e, 0xd8, 0x66
- .byte 0x8e, 0xc0, 0x66, 0x8e, 0xd0, 0x89, 0x25, 0x94
- .byte 0x01, 0x00, 0x00, 0xbc, 0x00, 0x00, 0x01, 0x00
- .byte 0x0f, 0x01, 0x0d, 0xb0, 0x01, 0x00, 0x00, 0xe8
- .byte 0x24, 0x01, 0x00, 0x00, 0xb4, 0x53, 0xb0, 0x00
- .byte 0x66, 0xbb, 0x00, 0x00, 0x00, 0x00, 0xfb, 0xcd
- .byte 0x15, 0xfa, 0x73, 0x15, 0x66, 0xe8, 0xde, 0x00
- .byte 0x00, 0x00, 0xc7, 0x05, 0x98, 0x01, 0x00, 0x00
- .byte 0xff, 0xff, 0xff, 0xff, 0xe9, 0xa0, 0x00, 0x00
- .byte 0x00, 0x89, 0xc2, 0x66, 0xe8, 0xc7, 0x00, 0x00
- .byte 0x00, 0x66, 0x81, 0xfb, 0x4d, 0x50, 0x74, 0x0f
- .byte 0xc7, 0x05, 0x98, 0x01, 0x00, 0x00, 0xff, 0xff
- .byte 0xff, 0xff, 0xe9, 0x82, 0x00, 0x00, 0x00, 0xf7
- .byte 0xc1, 0x02, 0x00, 0x00, 0x00, 0x75, 0x0c, 0xc7
- .byte 0x05, 0x98, 0x01, 0x00, 0x00, 0xfe, 0xff, 0xff
- .byte 0xff, 0xeb, 0x6e, 0x81, 0xe2, 0xff, 0xff, 0x00
- .byte 0x00, 0x89, 0x15, 0x98, 0x01, 0x00, 0x00, 0x81
- .byte 0xe1, 0xff, 0xff, 0x00, 0x00, 0x89, 0x0d, 0x9c
- .byte 0x01, 0x00, 0x00, 0xe8, 0xb0, 0x00, 0x00, 0x00
- .byte 0xb4, 0x53, 0xb0, 0x04, 0x66, 0xbb, 0x00, 0x00
- .byte 0x00, 0x00, 0xfb, 0xcd, 0x15, 0xfa, 0xb4, 0x53
- .byte 0xb0, 0x03, 0x66, 0xbb, 0x00, 0x00, 0x00, 0x00
- .byte 0xfb, 0xcd, 0x15, 0xfa, 0x73, 0x12, 0x66, 0xe8
- .byte 0x5c, 0x00, 0x00, 0x00, 0xc7, 0x05, 0x98, 0x01
- .byte 0x00, 0x00, 0xfd, 0xff, 0xff, 0xff, 0xeb, 0x21
- .byte 0x89, 0xc5, 0x66, 0xe8, 0x48, 0x00, 0x00, 0x00
- .byte 0xb8, 0xff, 0xff, 0x00, 0x00, 0x21, 0xc5, 0x21
- .byte 0xc1, 0x21, 0xc2, 0x21, 0xc6, 0x21, 0xc7, 0xc1
- .byte 0xe5, 0x10, 0x09, 0xe9, 0xc1, 0xe7, 0x10, 0x09
- .byte 0xfe, 0xfa, 0x0f, 0x01, 0x1d, 0xb0, 0x01, 0x00
- .byte 0x00, 0x8b, 0x25, 0x94, 0x01, 0x00, 0x00, 0x8b
- .byte 0x2d, 0x98, 0x01, 0x00, 0x00, 0x8b, 0x3d, 0x9c
- .byte 0x01, 0x00, 0x00, 0x66, 0x8c, 0xe0, 0x66, 0x8e
- .byte 0xd0, 0x66, 0x8e, 0xc0, 0x66, 0x8e, 0xd8, 0x31
- .byte 0xc0, 0x66, 0x8e, 0xe0, 0x89, 0xe8, 0x5d, 0xcb
+ .byte 0xfa, 0x55, 0x0f, 0xa0, 0x66, 0x8c, 0xd8, 0x66
+ .byte 0x8e, 0xe0, 0x66, 0xb8, 0xe8, 0x00, 0x66, 0x8e
+ .byte 0xd8, 0x66, 0x8e, 0xc0, 0x66, 0x8e, 0xd0, 0x89
+ .byte 0x25, 0x94, 0x01, 0x00, 0x00, 0xbc, 0x00, 0x00
+ .byte 0x01, 0x00, 0x0f, 0x01, 0x0d, 0xb0, 0x01, 0x00
+ .byte 0x00, 0xe8, 0x22, 0x01, 0x00, 0x00, 0xb4, 0x53
+ .byte 0xb0, 0x00, 0x66, 0xbb, 0x00, 0x00, 0x00, 0x00
+ .byte 0xfb, 0xcd, 0x15, 0xfa, 0x73, 0x15, 0x66, 0xe8
+ .byte 0xdc, 0x00, 0x00, 0x00, 0xc7, 0x05, 0x98, 0x01
+ .byte 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xe9, 0xa0
+ .byte 0x00, 0x00, 0x00, 0x89, 0xc2, 0x66, 0xe8, 0xc5
+ .byte 0x00, 0x00, 0x00, 0x66, 0x81, 0xfb, 0x4d, 0x50
+ .byte 0x74, 0x0f, 0xc7, 0x05, 0x98, 0x01, 0x00, 0x00
+ .byte 0xff, 0xff, 0xff, 0xff, 0xe9, 0x82, 0x00, 0x00
+ .byte 0x00, 0xf7, 0xc1, 0x02, 0x00, 0x00, 0x00, 0x75
+ .byte 0x0c, 0xc7, 0x05, 0x98, 0x01, 0x00, 0x00, 0xfe
+ .byte 0xff, 0xff, 0xff, 0xeb, 0x6e, 0x81, 0xe2, 0xff
+ .byte 0xff, 0x00, 0x00, 0x89, 0x15, 0x98, 0x01, 0x00
+ .byte 0x00, 0x81, 0xe1, 0xff, 0xff, 0x00, 0x00, 0x89
+ .byte 0x0d, 0x9c, 0x01, 0x00, 0x00, 0xe8, 0xae, 0x00
+ .byte 0x00, 0x00, 0xb4, 0x53, 0xb0, 0x04, 0x66, 0xbb
+ .byte 0x00, 0x00, 0x00, 0x00, 0xfb, 0xcd, 0x15, 0xfa
+ .byte 0xb4, 0x53, 0xb0, 0x03, 0x66, 0xbb, 0x00, 0x00
+ .byte 0x00, 0x00, 0xfb, 0xcd, 0x15, 0xfa, 0x73, 0x12
+ .byte 0x66, 0xe8, 0x5a, 0x00, 0x00, 0x00, 0xc7, 0x05
+ .byte 0x98, 0x01, 0x00, 0x00, 0xfd, 0xff, 0xff, 0xff
+ .byte 0xeb, 0x21, 0x89, 0xc5, 0x66, 0xe8, 0x46, 0x00
+ .byte 0x00, 0x00, 0xb8, 0xff, 0xff, 0x00, 0x00, 0x21
+ .byte 0xc5, 0x21, 0xc1, 0x21, 0xc2, 0x21, 0xc6, 0x21
+ .byte 0xc7, 0xc1, 0xe5, 0x10, 0x09, 0xe9, 0xc1, 0xe7
+ .byte 0x10, 0x09, 0xfe, 0xfa, 0x0f, 0x01, 0x1d, 0xb0
+ .byte 0x01, 0x00, 0x00, 0x8b, 0x25, 0x94, 0x01, 0x00
+ .byte 0x00, 0x8b, 0x2d, 0x98, 0x01, 0x00, 0x00, 0x8b
+ .byte 0x3d, 0x9c, 0x01, 0x00, 0x00, 0x66, 0x8c, 0xe0
+ .byte 0x66, 0x8e, 0xd0, 0x66, 0x8e, 0xc0, 0x66, 0x8e
+ .byte 0xd8, 0x89, 0xe8, 0x0f, 0xa1, 0x5d, 0xcb, 0x00
.byte 0xfa, 0x0f, 0x20, 0xc0, 0x66, 0x83, 0xc8, 0x01
.byte 0x0f, 0x22, 0xc0, 0x66, 0xea, 0x33, 0x01, 0x00
.byte 0x00, 0xe0, 0x00, 0x66, 0xb8, 0xe8, 0x00, 0x8e