diff --git a/Asuro.iso b/Asuro.iso
index 1ee96580..1c7d7e9f 100644
Binary files a/Asuro.iso and b/Asuro.iso differ
diff --git a/bin/kernel.bin b/bin/kernel.bin
index fbb9f0bf..0544c08f 100755
Binary files a/bin/kernel.bin and b/bin/kernel.bin differ
diff --git a/iso/boot/asuro.bin b/iso/boot/asuro.bin
index fbb9f0bf..0544c08f 100755
Binary files a/iso/boot/asuro.bin and b/iso/boot/asuro.bin differ
diff --git a/lib/PCI.ppu b/lib/PCI.ppu
index c07c971d..715e1862 100644
Binary files a/lib/PCI.ppu and b/lib/PCI.ppu differ
diff --git a/lib/libpconsole.a b/lib/libpconsole.a
index b0f8690f..7c871360 100644
Binary files a/lib/libpconsole.a and b/lib/libpconsole.a differ
diff --git a/lib/libpmultiboot.a b/lib/libpmultiboot.a
index c8424e7d..bbd4bf7c 100644
Binary files a/lib/libpmultiboot.a and b/lib/libpmultiboot.a differ
diff --git a/lib/libpsystem.a b/lib/libpsystem.a
index 7ae2276a..1470376a 100644
Binary files a/lib/libpsystem.a and b/lib/libpsystem.a differ
diff --git a/src/driver/PCI.pas b/src/driver/PCI.pas
index ed6ed86c..793230f0 100644
--- a/src/driver/PCI.pas
+++ b/src/driver/PCI.pas
@@ -347,14 +347,14 @@ begin
     console.writeintln(device_count);
     count := 0;
     if prog_if <> $FF then begin
-        for i:=0 to device_count do begin
+        for i:=0 to device_count+1 do begin
             if (devices[i].class_code = class_code) and (devices[i].subclass_class = subclass_code) and (devices[i].prog_if = prog_if) then begin
                 devices_out[count] := devices[i];
                 count := count + 1;
             end;
         end;
     end else begin
-        for i:=0 to device_count do begin
+        for i:=0 to device_count+1 do begin
             if (devices[i].class_code = class_code) and (devices[i].subclass_class = subclass_code) then begin
                 devices_out[count] := devices[i];
                 count := count + 1;