-revert janderwalds change until because it breaks the gcc 4.x build
[reactos.git] / reactos / boot / freeldr / freeldr / include / arch / i386 / machpc.h
1 /* $Id$
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
18 * along with this program; if not, write to the Free Software
19 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
20 */
21
22 #ifndef __I386_MACHPC_H_
23 #define __I386_MACHPC_H_
24
25 #ifndef __MEMORY_H
26 #include "mm.h"
27 #endif
28
29 VOID PcMachInit(const char *CmdLine);
30
31 VOID PcConsPutChar(int Ch);
32 BOOLEAN PcConsKbHit();
33 int PcConsGetCh();
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(VOID);
48
49 ULONG PcMemGetMemoryMap(PBIOS_MEMORY_MAP BiosMemoryMap, ULONG MaxMemoryMapSize);
50
51 BOOLEAN PcDiskReadLogicalSectors(ULONG DriveNumber, ULONGLONG SectorNumber, ULONG SectorCount, PVOID Buffer);
52 BOOLEAN PcDiskGetPartitionEntry(ULONG DriveNumber, ULONG PartitionNumber, PPARTITION_TABLE_ENTRY PartitionTableEntry);
53 BOOLEAN PcDiskGetDriveGeometry(ULONG DriveNumber, PGEOMETRY DriveGeometry);
54 ULONG PcDiskGetCacheableBlockCount(ULONG DriveNumber);
55
56 VOID PcRTCGetCurrentDateTime(PULONG Year, PULONG Month, PULONG Day, PULONG Hour, PULONG Minute, PULONG Second);
57
58 VOID PcHwDetect(VOID);
59
60 #endif /* __I386_MACHPC_H_ */
61
62 /* EOF */