exectos/xtoskrnl/includes/i686/ar.h
belliash 3f520c8e0f
All checks were successful
Builds / ExectOS (i686) (push) Successful in 30s
Builds / ExectOS (amd64) (push) Successful in 27s
Rename xtoskrnl headers
2023-10-28 22:35:33 +02:00

169 lines
2.4 KiB
C

/**
* PROJECT: ExectOS
* COPYRIGHT: See COPYING.md in the top level directory
* FILE: xtoskrnl/includes/i686/ar.h
* DESCRIPTION: Private i686 routine definitions for architecture library
* DEVELOPERS: Rafal Kupiec <belliash@codingworkshop.eu.org>
*/
#ifndef __XTOSKRNL_I686_AR_H
#define __XTOSKRNL_I686_AR_H
#include <xtos.h>
XTAPI
VOID
ArSetGdtEntryBase(IN PKGDTENTRY Gdt,
IN USHORT Selector,
IN ULONG_PTR Base);
XTCDECL
VOID
ArpHandleTrap00();
XTCDECL
VOID
ArpHandleTrap01();
XTCDECL
VOID
ArpHandleTrap02();
XTCDECL
VOID
ArpHandleTrap03();
XTCDECL
VOID
ArpHandleTrap04();
XTCDECL
VOID
ArpHandleTrap05();
XTCDECL
VOID
ArpHandleTrap06();
XTCDECL
VOID
ArpHandleTrap07();
XTCDECL
VOID
ArpHandleTrap08();
XTCDECL
VOID
ArpHandleTrap09();
XTCDECL
VOID
ArpHandleTrap0A();
XTCDECL
VOID
ArpHandleTrap0B();
XTCDECL
VOID
ArpHandleTrap0C();
XTCDECL
VOID
ArpHandleTrap0D();
XTCDECL
VOID
ArpHandleTrap0E();
XTCDECL
VOID
ArpHandleTrap10();
XTCDECL
VOID
ArpHandleTrap11();
XTCDECL
VOID
ArpHandleTrap12();
XTCDECL
VOID
ArpHandleTrap13();
XTCDECL
VOID
ArpHandleTrap2C();
XTCDECL
VOID
ArpHandleTrap2D();
XTCDECL
VOID
ArpHandleTrapFF();
XTAPI
VOID
ArpIdentifyProcessor(VOID);
XTAPI
VOID
ArpInitializeGdt(IN PKPROCESSOR_BLOCK ProcessorBlock);
XTAPI
VOID
ArpInitializeIdt(IN PKPROCESSOR_BLOCK ProcessorBlock);
XTAPI
VOID
ArpInitializeProcessorBlock(OUT PKPROCESSOR_BLOCK ProcessorBlock,
IN PKGDTENTRY Gdt,
IN PKIDTENTRY Idt,
IN PKTSS Tss,
IN PVOID DpcStack);
XTAPI
VOID
ArpInitializeProcessorRegisters(VOID);
XTAPI
VOID
ArpInitializeSegments(VOID);
XTAPI
VOID
ArpInitializeTss(IN PKPROCESSOR_BLOCK ProcessorBlock);
XTAPI
VOID
ArpSetDoubleFaultTssEntry(IN PKPROCESSOR_BLOCK ProcessorBlock);
XTAPI
VOID
ArpSetGdtEntry(IN PKGDTENTRY Gdt,
IN USHORT Selector,
IN ULONG_PTR Base,
IN ULONG Limit,
IN UCHAR Type,
IN UCHAR Dpl,
IN UCHAR SegmentMode);
XTAPI
VOID
ArpSetIdtGate(IN PKIDTENTRY Idt,
IN USHORT Vector,
IN PVOID Handler,
IN USHORT Selector,
IN USHORT Ist,
IN USHORT Access);
XTAPI
VOID
ArpSetNonMaskableInterruptTssEntry(IN PKPROCESSOR_BLOCK ProcessorBlock);
#endif /* __XTOSKRNL_I686_AR_H */