for (slot = cnt = 0; slot < zorro_num_autocon && count > cnt; slot++) {
                struct zorro_dev *z = &zorro_autocon[slot];
                len = sprintf(buf, "%02x\t%08x\t%08lx\t%08lx\t%02x\n", slot,
-                             z->id, zorro_resource_start(z),
-                             zorro_resource_len(z), z->rom.er_Type);
+                             z->id, (unsigned long)zorro_resource_start(z),
+                             (unsigned long)zorro_resource_len(z),
+                             z->rom.er_Type);
                at += len;
                if (at >= pos) {
                        if (!*start) {
 
        struct zorro_dev *z = to_zorro_dev(dev);
 
        return sprintf(buf, "0x%08lx 0x%08lx 0x%08lx\n",
-                      zorro_resource_start(z), zorro_resource_end(z),
+                      (unsigned long)zorro_resource_start(z),
+                      (unsigned long)zorro_resource_end(z),
                       zorro_resource_flags(z));
 }
 
 
        if (request_resource(zorro_find_parent_resource(z), &z->resource))
            printk(KERN_ERR "Zorro: Address space collision on device %s "
                   "[%lx:%lx]\n",
-                  z->name, zorro_resource_start(z), zorro_resource_end(z));
+                  z->name, (unsigned long)zorro_resource_start(z),
+                  (unsigned long)zorro_resource_end(z));
        sprintf(z->dev.bus_id, "%02x", i);
        z->dev.parent = &zorro_bus.dev;
        z->dev.bus = &zorro_bus_type;