--- a
+++ b/start_page.php
@@ -0,0 +1,198 @@
+<?php
+print("<?xml version=\"1.0\" encoding=\"iso-8859-1\"?>\n");
+// the above is kind of hacky but ...
+
+$top="./";
+while (!file_exists("$top" . "start_page.php")) {
+	$top= "$top" . "../";
+}
+
+function doctype() {
+	global $top;
+	print("<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n");
+	print("<html xmlns=\"http://www.w3.org/1999/xhtml\" lang=\"en\" xml:lang=\"en\">\n");
+	print("<?xml-stylesheet href=\"$top/style.css\" type=\"text/css\"?>\n\n");
+}
+ 
+function br() {
+	print("<br />\n");
+}
+ 
+function title($title) {
+	print("<title>$title</title>\n\n");
+}
+
+function stylesheet($file) {
+	print("<link rel=\"stylesheet\" href=\"$file\" />\n");
+}
+
+function meta($name, $content) {
+	print("<meta name=\"$name\" content=\"$content\"/>\n");
+}
+ 
+function div($name) {
+	print("\n<div class=\"$name\"> <!-- start div $name -->\n\n");
+}
+ 
+function enddiv($name) {
+	print("\n\n</div> <!-- end div $name -->\n\n");
+}
+ 
+function img($file, $alt, $width, $height) {
+	print("<img src=\"$file\" alt=\"$alt\" width=\"$width\" height=\"$height\" />\n");
+}
+
+function rlink($path, $text) {
+
+	global $top;
+
+	$path = "$top" . "$path";
+	print("<a href=\"$path\">$text</a>");
+}
+
+function href($link, $text = "", $key = "") {
+	print("<a href=\"$link\"");
+	if ($key != "") {
+		print(" accesskey=\"$key\"");
+	}
+	print(">");
+	if ($text == "") {
+		return;
+	}
+	print("$text</a>");
+}
+ 
+function endhref($link) {
+	print("</a>");
+}
+
+function menu_entry($file, $name, $link, $key = "") {
+
+	global $top;
+
+	$file = "$top" . "$file";
+	$link = "$top" . "$link";
+
+	print ("<li>\n");
+	
+	if ($file != $link) {
+		href($link, "", $key);
+	}
+	print ("$name\n");
+	if ($file != $link) {
+		endhref($link);
+	}
+	print("</li>\n"); 
+}
+
+function sourceforge_logo() {
+	href("http://sourceforge.net/projects/oprofile/");
+	img("http://sourceforge.net/sflogo.php?group_id=16191&amp;type=1", "", 88, 31);
+	endhref("http://sourceforge.net/projects/oprofile/");
+}
+
+function start_page($file, $title) {
+
+	global $top;
+
+	doctype();
+ 
+	print("<head>\n\n");
+	stylesheet("$top/style.css");
+	title($title);
+	meta("description", "About oprofile, a continuous system-wide profiler for Linux");
+	meta("keywords",  "unix, linux, profile, profiler, profiling, kernel, module");
+	print("</head>\n\n");
+
+	print("<body>\n");
+ 
+	div("topbar");
+ 
+	div("logo");
+	img("$top" . "oprofile.png", "", 402, 80);
+	enddiv("logo");
+
+	div("note");
+	href("$top" . "browser.php", "Page doesn't render properly ?");
+	enddiv("note");
+
+	enddiv("topbar");
+
+	div("pinmenu");
+ 
+	print("<ul>\n");
+	menu_entry($file, "News", "news/", "N");
+	menu_entry($file, "About", "about/", "A");
+	menu_entry($file, "Download &amp; CVS", "download/", "C");
+	menu_entry($file, "Examples", "examples/", "E");
+	menu_entry($file, "Performance", "performance/", "P");
+	menu_entry($file, "Docs", "docs/", "D");
+	menu_entry($file, "FAQ", "faq/", "F");
+	menu_entry($file, "Mailing lists", "mail/", "M");
+	menu_entry($file, "IRC", "irc/", "I");
+	menu_entry($file, "Contribute", "contribute/", "O");
+	menu_entry($file, "Bugs", "bugs/", "B");
+	menu_entry($file, "Links", "links/", "L");
+	menu_entry($file, "Credits", "credits/", "R");
+	print("</ul>\n");
+
+	div("badges");
+
+	sourceforge_logo();
+/*
+	br();
+ 
+	href("http://validator.w3.org/check/referer");
+	img("http://www.w3.org/Icons/valid-xhtml10", "Valid XHTML 1.0!", 88, 31);
+	endhref("http://validator.w3.org/check/referer");
+	br();
+ 
+	href("http://jigsaw.w3.org/css-validator/check/referer");
+	img("http://jigsaw.w3.org/css-validator/images/vcss", "Valid CSS!", 88, 31);
+	endhref("http://jigsaw.w3.org/css-validator/check/referer");
+
+*/
+	enddiv("badges");
+
+	enddiv("pinmenu");
+ 
+	/*
+	 * This supposedly helps IE7 render the page, at the cost of
+	 * some pointless whitespace.
+	 */
+	br();
+ 
+	div("page");
+ 
+}
+
+function news($date, $head, $body) {
+	print("<h2><span class=\"newsdate\">$date</span> ");
+	print("<span class=\"newshead\">$head</span></h2> \n");
+	print("<p><span class=\"newsbody\">$body</span></p> \n");
+}
+
+function dorelease($version) {
+
+	global $top;
+
+	print("<p>\n");
+	print("<a href=\"http://prdownloads.sourceforge.net/oprofile/oprofile-$version.tar.gz\">oprofile-$version.tar.gz</a>\n");
+	$rel = "$top" . "release-notes/oprofile-" . "$version";
+	print("| <a href=\"$rel\">Release notes</a>\n");
+	print("</p>\n");
+}
+
+function start_event_table() {
+	print("<table class=\"eventtable\">\n");
+	print("<tr class=\"tablehead\"><td>Name</td><td>Description</td><td>Counters usable</td><td>Unit mask options</td></tr>\n");
+}
+
+function start_event_table_ppc64() {
+	print("<table class=\"eventtable\">\n");
+	print("<tr class=\"tablehead\"><td>Name</td><td>Description</td><td>Counters usable</td><td>Group</td></tr>\n");
+}
+
+function end_table() {
+	print("</table>");
+}