1/* 2 * FILE: hal/halx86/generic/v86.S 3 * COPYRIGHT: See COPYING in the top level directory 4 * PURPOSE: System Traps, Entrypoints and Exitpoints 5 * PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org) 6 * NOTE: See asmmacro.S for the shared entry/exit code. 7 */ 8 9/* INCLUDES ******************************************************************/ 10 11#include <asm.inc> 12 13#include <ks386.inc> 14 15.code 16 17PUBLIC @HalpExitToV86@4 18@HalpExitToV86@4: 19 /* Point esp to the iret frame and return */ 20 lea esp, [ecx + KTRAP_FRAME_EIP] 21 iretd 22 23/* Here starts the real mode code */ 24.code16 25PUBLIC _HalpRealModeStart 26_HalpRealModeStart: 27 /* INT 0x10: AH = 0 (Set video Mode), AL = 0x12 (Mode 12) */ 28 mov eax, HEX(12) 29 int HEX(10) 30 31 /* BOP */ 32 .byte HEX(C4), HEX(C4) 33 34/* The real mode stack */ 35.align 4 36.space 2048 37_HalpRealModeEnd: 38PUBLIC _HalpRealModeEnd 39.endcode16 40 41END 42