exectos/xtoskrnl/includes/hl.h
Rafal Kupiec bed49fa0ac
Some checks failed
Builds / ExectOS (amd64) (push) Successful in 28s
Builds / ExectOS (i686) (push) Failing after 16s
Fix function prototypes using fastcall and stdcall calling convensions
2023-11-25 23:25:44 +01:00

81 lines
1.5 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);
XTFASTCALL
KRUNLEVEL
HlpTransformApicTprToRunLevel(IN UCHAR Tpr);
XTFASTCALL
UCHAR
HlpTransformRunLevelToApicTpr(IN KRUNLEVEL RunLevel);
#endif /* __XTOSKRNL_HL_H */