97 lines
1.6 KiB
C
97 lines
1.6 KiB
C
/**
|
|
* PROJECT: ExectOS
|
|
* COPYRIGHT: See COPYING.md in the top level directory
|
|
* FILE: xtoskrnl/includes/hl.h
|
|
* DESCRIPTION: XT hardware abstraction layer routines
|
|
* DEVELOPERS: Rafal Kupiec <belliash@codingworkshop.eu.org>
|
|
*/
|
|
|
|
#ifndef __XTOSKRNL_HL_H
|
|
#define __XTOSKRNL_HL_H
|
|
|
|
#include <xtos.h>
|
|
|
|
|
|
/* HAL library routines forward references */
|
|
XTAPI
|
|
VOID
|
|
HlClearScreen(VOID);
|
|
|
|
XTCDECL
|
|
XTSTATUS
|
|
HlComPortGetByte(IN PCPPORT Port,
|
|
OUT PUCHAR Byte,
|
|
IN BOOLEAN Wait,
|
|
IN BOOLEAN Poll);
|
|
|
|
XTCDECL
|
|
XTSTATUS
|
|
HlComPortPutByte(IN PCPPORT Port,
|
|
IN UCHAR Byte);
|
|
|
|
XTCDECL
|
|
UCHAR
|
|
HlComPortReadLsr(IN PCPPORT Port,
|
|
IN UCHAR Byte);
|
|
|
|
XTAPI
|
|
VOID
|
|
HlDrawPixel(IN ULONG PosX,
|
|
IN ULONG PosY,
|
|
IN ULONG Color);
|
|
|
|
XTFASTCALL
|
|
KRUNLEVEL
|
|
HlGetRunLevel(VOID);
|
|
|
|
|
|
XTCDECL
|
|
XTSTATUS
|
|
HlInitializeComPort(IN OUT PCPPORT Port,
|
|
IN ULONG PortNumber,
|
|
IN PUCHAR PortAddress,
|
|
IN ULONG BaudRate);
|
|
|
|
XTAPI
|
|
XTSTATUS
|
|
HlInitializeFrameBuffer(VOID);
|
|
|
|
XTFASTCALL
|
|
ULONG
|
|
HlReadApicRegister(IN APIC_REGISTER Register);
|
|
|
|
XTFASTCALL
|
|
VOID
|
|
HlSetRunLevel(IN KRUNLEVEL RunLevel);
|
|
|
|
XTFASTCALL
|
|
VOID
|
|
HlWriteApicRegister(IN APIC_REGISTER Register,
|
|
IN ULONG Value);
|
|
|
|
XTAPI
|
|
BOOLEAN
|
|
HlpCheckX2ApicSupport(VOID);
|
|
|
|
XTCDECL
|
|
VOID
|
|
HlpHandleApicSpuriousService();
|
|
|
|
XTCDECL
|
|
VOID
|
|
HlpHandlePicSpuriousService();
|
|
|
|
XTAPI
|
|
VOID
|
|
HlpInitializeApic(VOID);
|
|
|
|
XTFASTCALL
|
|
KRUNLEVEL
|
|
HlpTransformApicTprToRunLevel(IN UCHAR Tpr);
|
|
|
|
XTFASTCALL
|
|
UCHAR
|
|
HlpTransformRunLevelToApicTpr(IN KRUNLEVEL RunLevel);
|
|
|
|
#endif /* __XTOSKRNL_HL_H */
|