ReactOS  0.4.14-dev-854-gb9426a3
archmach.c
Go to the documentation of this file.
1 /*
2  * FreeLoader
3  *
4  * This program is free software; you can redistribute it and/or modify
5  * it under the terms of the GNU General Public License as published by
6  * the Free Software Foundation; either version 2 of the License, or
7  * (at your option) any later version.
8  *
9  * This program is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12  * GNU General Public License for more details.
13  *
14  * You should have received a copy of the GNU General Public License along
15  * with this program; if not, write to the Free Software Foundation, Inc.,
16  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
17  */
18 
19 #include <freeldr.h>
20 
21 VOID
22 MachInit(const char *CmdLine)
23 {
24  ULONG PciId;
25 
26  memset(&MachVtbl, 0, sizeof(MACHVTBL));
27 
28  /* Check for Xbox by identifying device at PCI 0:0:0, if it's
29  * 0x10de/0x02a5 then we're running on an Xbox */
30  WRITE_PORT_ULONG((ULONG*)0xcf8, CONFIG_CMD(0, 0, 0));
31  PciId = READ_PORT_ULONG((ULONG*)0xcfc);
32  if (PciId == 0x02a510de)
33  {
35  }
36  else
37  {
39  }
40 
42 }
43 
44 /* EOF */
VOID MachInit(const char *CmdLine)
Definition: archmach.c:22
VOID HalpCalibrateStallExecution(VOID)
Definition: hardware.c:105
ULONG NTAPI READ_PORT_ULONG(IN PULONG Port)
Definition: portio.c:70
VOID NTAPI WRITE_PORT_ULONG(IN PULONG Port, IN ULONG Value)
Definition: portio.c:123
CHAR CmdLine[MAX_PATH]
Definition: mach.c:34
VOID XboxMachInit(const char *CmdLine)
Definition: machxbox.c:256
VOID PcMachInit(const char *CmdLine)
Definition: machpc.c:1410
MACHVTBL MachVtbl
Definition: arcemul.c:21
#define CONFIG_CMD(bus, dev_fn, where)
Definition: hardware.h:23
unsigned int ULONG
Definition: retypes.h:1
#define memset(x, y, z)
Definition: compat.h:39