Index: genarch/include/softint/division.h
===================================================================
--- genarch/include/softint/division.h	(revision c624b961df9a4048712600ba1b68ab0e152d54e6)
+++ genarch/include/softint/division.h	(revision 9fa16b204b1d07e1406cbdc9803f00547dcadfa8)
@@ -35,5 +35,5 @@
 
 /* 64bit integer division */
-long __divdi3(long a, long b);
+long long __divdi3(long long a, long long b);
 
 /* 32bit unsigned integer division */
@@ -41,5 +41,5 @@
 
 /* 64bit unsigned integer division */
-unsigned long __udivdi3(unsigned long a, unsigned long b);
+unsigned long long __udivdi3(unsigned long long a, unsigned long long b);
 
 /* 32bit remainder of the signed division */
@@ -47,5 +47,5 @@
 
 /* 64bit remainder of the signed division */
-long __moddi3(long a, long b);
+long long __moddi3(long long a, long long b);
 
 /* 32bit remainder of the unsigned division */
@@ -53,7 +53,7 @@
 
 /* 64bit remainder of the unsigned division */
-unsigned long __umoddi3(unsigned long a, unsigned long b);
+unsigned long long __umoddi3(unsigned long long a, unsigned long long b);
 
-unsigned long __udivmoddi3(unsigned long a, unsigned long b, unsigned long *c); 
+unsigned long long __udivmoddi3(unsigned long long a, unsigned long long b, unsigned long long *c); 
 
 #endif
Index: genarch/src/acpi/acpi.c
===================================================================
--- genarch/src/acpi/acpi.c	(revision c624b961df9a4048712600ba1b68ab0e152d54e6)
+++ genarch/src/acpi/acpi.c	(revision 9fa16b204b1d07e1406cbdc9803f00547dcadfa8)
@@ -97,5 +97,5 @@
 					goto next;
 				*signature_map[j].sdt_ptr = h;
-				printf("%P: ACPI %s\n", *signature_map[j].sdt_ptr, signature_map[j].description);
+				printf("%#zX: ACPI %s\n", *signature_map[j].sdt_ptr, signature_map[j].description);
 			}
 		}
@@ -118,5 +118,5 @@
 					goto next;
 				*signature_map[j].sdt_ptr = h;
-				printf("%P: ACPI %s\n", *signature_map[j].sdt_ptr, signature_map[j].description);
+				printf("%#zX: ACPI %s\n", *signature_map[j].sdt_ptr, signature_map[j].description);
 			}
 		}
@@ -152,5 +152,5 @@
 
 rsdp_found:
-	printf("%P: ACPI Root System Description Pointer\n", acpi_rsdp);
+	printf("%#zX: ACPI Root System Description Pointer\n", acpi_rsdp);
 
 	acpi_rsdt = (struct acpi_rsdt *) (__native) acpi_rsdp->rsdt_address;
Index: genarch/src/acpi/matd.c
===================================================================
--- genarch/src/acpi/matd.c	(revision c624b961df9a4048712600ba1b68ab0e152d54e6)
+++ genarch/src/acpi/matd.c	(revision 9fa16b204b1d07e1406cbdc9803f00547dcadfa8)
@@ -177,13 +177,13 @@
 			case MADT_L_SAPIC:
 			case MADT_PLATFORM_INTR_SRC:
-				printf("MADT: skipping %s entry (type=%d)\n", entry[h->type], h->type);
+				printf("MADT: skipping %s entry (type=%zd)\n", entry[h->type], h->type);
 				break;
 
 			default:
 				if (h->type >= MADT_RESERVED_SKIP_BEGIN && h->type <= MADT_RESERVED_SKIP_END) {
-					printf("MADT: skipping reserved entry (type=%d)\n", h->type);
+					printf("MADT: skipping reserved entry (type=%zd)\n", h->type);
 				}
 				if (h->type >= MADT_RESERVED_OEM_BEGIN) {
-					printf("MADT: skipping OEM entry (type=%d)\n", h->type);
+					printf("MADT: skipping OEM entry (type=%zd)\n", h->type);
 				}
 				break;
@@ -229,5 +229,5 @@
 {
 	ASSERT(override->source < sizeof(isa_irq_map)/sizeof(int));
-	printf("MADT: ignoring %s entry: bus=%d, source=%d, global_int=%d, flags=%W\n",
+	printf("MADT: ignoring %s entry: bus=%zd, source=%zd, global_int=%zd, flags=%#hX\n",
 		entry[override->header.type], override->bus, override->source,
 		override->global_int, override->flags);
Index: genarch/src/i8042/i8042.c
===================================================================
--- genarch/src/i8042/i8042.c	(revision c624b961df9a4048712600ba1b68ab0e152d54e6)
+++ genarch/src/i8042/i8042.c	(revision 9fa16b204b1d07e1406cbdc9803f00547dcadfa8)
@@ -33,5 +33,4 @@
 #include <arch/asm.h>
 #include <arch.h>
-#include <print.h>
 #include <synch/spinlock.h>
 #include <typedefs.h>
Index: genarch/src/softint/division.c
===================================================================
--- genarch/src/softint/division.c	(revision c624b961df9a4048712600ba1b68ab0e152d54e6)
+++ genarch/src/softint/division.c	(revision 9fa16b204b1d07e1406cbdc9803f00547dcadfa8)
@@ -66,8 +66,8 @@
 
 
-static unsigned long divandmod64(unsigned long a, unsigned long b, unsigned long *remainder)
+static unsigned long long divandmod64(unsigned long long a, unsigned long long b, unsigned long long *remainder)
 {
-	unsigned long result;
-	int steps = sizeof(unsigned long) * 8; 
+	unsigned long long result;
+	int steps = sizeof(unsigned long long) * 8; 
 	
 	*remainder = 0;
@@ -112,10 +112,10 @@
 
 /* 64bit integer division */
-long __divdi3(long a, long b) 
+long long __divdi3(long long a, long long b) 
 {
-	unsigned long rem;
-	long result;
+	unsigned long long rem;
+	long long result;
 	
-	result = (long)divandmod64(ABSVAL(a), ABSVAL(b), &rem);
+	result = (long long)divandmod64(ABSVAL(a), ABSVAL(b), &rem);
 
 	if ( SGN(a) == SGN(b)) return result;
@@ -131,7 +131,7 @@
 
 /* 64bit unsigned integer division */
-unsigned long __udivdi3(unsigned long a, unsigned long b)
+unsigned long long __udivdi3(unsigned long long a, unsigned long long b)
 {
-	unsigned long rem;
+	unsigned long long  rem;
 	return divandmod64(a, b, &rem);
 }
@@ -152,15 +152,15 @@
 
 /* 64bit remainder of the signed division */
-long __moddi3(long a, long b)
+long long __moddi3(long long a,long  long b)
 {
-	unsigned long rem;
+	unsigned long long rem;
 	divandmod64(a, b, &rem);
 	
 	/* if divident is negative, remainder must be too */
 	if (!(SGN(a))) {
-		return -((long)rem);
+		return -((long long)rem);
 	}
 	
-	return (long)rem;
+	return (long long)rem;
 }
 
@@ -174,12 +174,12 @@
 
 /* 64bit remainder of the unsigned division */
-unsigned long __umoddi3(unsigned long a, unsigned long b)
+unsigned long long __umoddi3(unsigned long long a, unsigned long long b)
 {
-	unsigned long rem;
+	unsigned long long rem;
 	divandmod64(a, b, &rem);
 	return rem;
 }
 
-unsigned long __udivmoddi3(unsigned long a, unsigned long b, unsigned long *c)
+unsigned long long __udivmoddi3(unsigned long long a, unsigned long long b, unsigned long long *c)
 {
 	return divandmod64(a, b, c);
