Initial import from FreeBSD RELENG_4:
[dragonfly.git] / sys / boot / pc32 / libi386 / pxetramp.s
1 #
2 # Copyright (c) 2000 Peter Wemm
3 # All rights reserved.
4 #
5 # Redistribution and use in source and binary forms are freely
6 # permitted provided that the above copyright notice and this
7 # paragraph and the following disclaimer are duplicated in all
8 # such forms.
9 #
10 # This software is provided "AS IS" and without any express or
11 # implied warranties, including, without limitation, the implied
12 # warranties of merchantability and fitness for a particular
13 # purpose.
14 #
15 # $FreeBSD: src/sys/boot/i386/libi386/pxetramp.s,v 1.2.2.1 2000/05/04 13:51:24 ps Exp $
16
17 # ph33r this
18
19                 .globl  __bangpxeentry, __bangpxeseg, __bangpxeoff
20                 .globl  __pxenventry, __pxenvseg, __pxenvoff
21
22                 .code16
23                 .p2align 4,0x90
24 __bangpxeentry:
25                 push    %dx                     # seg:data
26                 push    %ax                     # off:data
27                 push    %bx                     # int16 func
28                 .byte   0x9a                    # far call
29 __bangpxeoff:   .word   0x0000                  # offset
30 __bangpxeseg:   .word   0x0000                  # segment
31                 add $6, %sp                     # restore stack
32                 .byte 0xcb                      # to vm86int
33 #
34 __pxenventry:
35                 .byte   0x9a                    # far call
36 __pxenvoff:     .word   0x0000                  # offset
37 __pxenvseg:     .word   0x0000                  # segment
38                 .byte 0xcb                      # to vm86int