freebsd-dev/sys/boot/i386/libi386/pxetramp.s
Paul Saab e938899cc3 Use !PXE api over PXENV+ api.
Magic trampoline by: peter (at 4am and after a good whipping at airhockey)
Do a better job of returning and detecting errors.
2000-04-19 11:22:38 +00:00

32 lines
820 B
ArmAsm

#
# Copyright (c) 2000 Peter Wemm
# All rights reserved.
#
# Redistribution and use in source and binary forms are freely
# permitted provided that the above copyright notice and this
# paragraph and the following disclaimer are duplicated in all
# such forms.
#
# This software is provided "AS IS" and without any express or
# implied warranties, including, without limitation, the implied
# warranties of merchantability and fitness for a particular
# purpose.
#
# $FreeBSD$
# ph33r this
.globl __h0h0magic, __pxeseg, __pxeoff
.code16
.p2align 4,0x90
__h0h0magic:
push %dx # seg:data
push %ax # off:data
push %bx # int16 func
.byte 0x9a # far call
__pxeoff: .word 0x0000 # offset
__pxeseg: .word 0x0000 # segment
add $6, %sp # restore stack
.byte 0xcb # to vm86int