1/*
2 * Copyright 2006, Marcus Overhagen <marcus@overhagen.de. All rights reserved.
3 * Distributed under the terms of the MIT License.
4 */
5
6#include <OS.h>
7#include <KernelExport.h>
8#include <string.h>
9
10#include "pxe_undi.h"
11
12#define TRACE_UNDI
13#ifdef TRACE_UNDI
14#	define TRACE(x...) dprintf(x)
15#else
16#	define TRACE(x...)
17#endif
18
19
20PXE_STRUCT *
21pxe_undi_find_data()
22{
23	PXE_STRUCT *data = NULL;
24	for (char *addr = (char *)0x8D000; addr < (char *)0xA0000; addr += 16) {
25		if (*(uint32 *)addr == 'EXP!' /* '!PXE' */) {
26			TRACE("found !PXE at %p\n", addr);
27			data = (PXE_STRUCT *)addr;
28			break;
29		}
30	}
31	return data;
32}
33