[CMAKE]
[reactos.git] / boot / freeldr / freeldr / include / arch / amd64 / machpc.h
1 /* $Id: machpc.h 32135 2008-02-05 11:13:17Z ros-arm-bringup $
2 *
3 * FreeLoader
4 *
5 * Copyright (C) 2003 Eric Kohl
6 *
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License as published by
9 * the Free Software Foundation; either version 2 of the License, or
10 * (at your option) any later version.
11 *
12 * This program is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU General Public License for more details.
16 *
17 * You should have received a copy of the GNU General Public License along
18 * with this program; if not, write to the Free Software Foundation, Inc.,
19 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
20 */
21
22 #pragma once
23
24 #ifndef __MEMORY_H
25 #include "mm.h"
26 #endif
27
28 #define MachInit PcMachInit
29 VOID PcMachInit(const char *CmdLine);
30
31 VOID PcConsPutChar(int Ch);
32 BOOLEAN PcConsKbHit(VOID);
33 int PcConsGetCh(VOID);
34
35 VOID PcVideoClearScreen(UCHAR Attr);
36 VIDEODISPLAYMODE PcVideoSetDisplayMode(char *DisplayMode, BOOLEAN Init);
37 VOID PcVideoGetDisplaySize(PULONG Width, PULONG Height, PULONG Depth);
38 ULONG PcVideoGetBufferSize(VOID);
39 VOID PcVideoSetTextCursorPosition(ULONG X, ULONG Y);
40 VOID PcVideoHideShowTextCursor(BOOLEAN Show);
41 VOID PcVideoPutChar(int Ch, UCHAR Attr, unsigned X, unsigned Y);
42 VOID PcVideoCopyOffScreenBufferToVRAM(PVOID Buffer);
43 BOOLEAN PcVideoIsPaletteFixed(VOID);
44 VOID PcVideoSetPaletteColor(UCHAR Color, UCHAR Red, UCHAR Green, UCHAR Blue);
45 VOID PcVideoGetPaletteColor(UCHAR Color, UCHAR* Red, UCHAR* Green, UCHAR* Blue);
46 VOID PcVideoSync(VOID);
47 VOID PcVideoPrepareForReactOS(IN BOOLEAN Setup);
48 VOID PcPrepareForReactOS(IN BOOLEAN Setup);
49
50 ULONG PcMemGetMemoryMap(PBIOS_MEMORY_MAP BiosMemoryMap, ULONG MaxMemoryMapSize);
51
52 BOOLEAN PcDiskReadLogicalSectors(ULONG DriveNumber, ULONGLONG SectorNumber, ULONG SectorCount, PVOID Buffer);
53 BOOLEAN PcDiskGetPartitionEntry(ULONG DriveNumber, ULONG PartitionNumber, PPARTITION_TABLE_ENTRY PartitionTableEntry);
54 BOOLEAN PcDiskGetDriveGeometry(ULONG DriveNumber, PGEOMETRY DriveGeometry);
55 ULONG PcDiskGetCacheableBlockCount(ULONG DriveNumber);
56
57 TIMEINFO* PcGetTime(VOID);
58
59 PCONFIGURATION_COMPONENT_DATA PcHwDetect(VOID);
60
61 /* EOF */