diff --git a/Asuro.iso b/Asuro.iso
index f662712d..eb783cac 100644
Binary files a/Asuro.iso and b/Asuro.iso differ
diff --git a/bin/kernel.bin b/bin/kernel.bin
index fc0ac39b..f8c3ce53 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 fc0ac39b..f8c3ce53 100755
Binary files a/iso/boot/asuro.bin and b/iso/boot/asuro.bin differ
diff --git a/lib/arp.ppu b/lib/arp.ppu
index 29b6182e..973b83cc 100644
Binary files a/lib/arp.ppu and b/lib/arp.ppu differ
diff --git a/lib/asuro.ppu b/lib/asuro.ppu
index 292d9dd2..95c73da1 100644
Binary files a/lib/asuro.ppu and b/lib/asuro.ppu differ
diff --git a/lib/eth2.ppu b/lib/eth2.ppu
index e870da8f..b73ba1f2 100644
Binary files a/lib/eth2.ppu and b/lib/eth2.ppu differ
diff --git a/lib/libpconsole.a b/lib/libpconsole.a
index 10e8193f..9e6f54e0 100644
Binary files a/lib/libpconsole.a and b/lib/libpconsole.a differ
diff --git a/lib/libpmultiboot.a b/lib/libpmultiboot.a
index 3025a1e3..82185242 100644
Binary files a/lib/libpmultiboot.a and b/lib/libpmultiboot.a differ
diff --git a/lib/libpsystem.a b/lib/libpsystem.a
index 2c153c13..b8bd105a 100644
Binary files a/lib/libpsystem.a and b/lib/libpsystem.a differ
diff --git a/lib/shell.ppu b/lib/shell.ppu
index 0613b3a0..cbe941db 100644
Binary files a/lib/shell.ppu and b/lib/shell.ppu differ
diff --git a/lib/terminal.ppu b/lib/terminal.ppu
index 3055aaa9..e2e90637 100644
Binary files a/lib/terminal.ppu and b/lib/terminal.ppu differ
diff --git a/src/driver/net/l2/eth2.pas b/src/driver/net/l2/eth2.pas
index a6771bf4..a1723f9d 100644
--- a/src/driver/net/l2/eth2.pas
+++ b/src/driver/net/l2/eth2.pas
@@ -47,7 +47,7 @@ begin
     push_trace('eth2.send');
     writeToLogLn('    L2: eth2.send');
     if p_context <> nil then begin
-        size:= sizeof(TEthernetHeader) + p_len + pad + 4;
+        size:= sizeof(TEthernetHeader) + p_len {+ pad} + 4;
         buffer:= kalloc(size);
         copyMAC(@p_context^.MAC.Source[0], @hdr.src[0]);
         copyMAC(@p_context^.MAC.Destination[0], @hdr.dst[0]);
@@ -57,9 +57,7 @@ begin
         memcpy(uint32(p_data), uint32(buffer)+sizeof(TEthernetHeader), p_len);
         FCS:= puint32((uint32(buffer) + size) - 4);
         FCS^:= crc32(puint8(buffer), size - 4);
-        //writehexlnWND(FCS^, getTerminalHWND);
         net.send(buffer, size);
-        //printmemoryWND(uint32(buffer), size, 16, ' ', true, getTerminalHWND);
         kfree(buffer);
     end;
 end;
diff --git a/src/driver/net/l3/arp.pas b/src/driver/net/l3/arp.pas
index 45da3122..5221918f 100644
--- a/src/driver/net/l3/arp.pas
+++ b/src/driver/net/l3/arp.pas
@@ -220,19 +220,28 @@ procedure terminal_command_arp(Params : PParamList);
 var
     i : uint32;
     elm : PARPCacheRecord;
+    sIP : pchar;
+    _IP : puint8;
 
 begin
-    if LL_Size(Cache) > 0 then begin
-        writestringlnWND('MAC                IPv4', getTerminalHWND);
-        For i:=0 to LL_Size(Cache)-1 do begin
-            elm:= PARPCacheRecord(LL_Get(Cache, i));
-            writeMACAddressEx(@elm^.MAC[0], getTerminalHWND);
-            writestringWND('  ', getTerminalHWND);
-            writeIPv4AddressEx(@elm^.IP[0], getTerminalHWND);
-            writestringlnWND(' ', getTerminalHWND);
-        end;
+    if ParamCount(Params) > 0 then begin
+        sIP:= getParam(0, Params);
+        _IP:= stringToIPv4(sIP);
+        sendRequest(_IP);
+        writestringlnWND('ARP Request Sent.', getTerminalHWND);
     end else begin
-        writestringlnWND('No entries in ARP table.', getTerminalHWND);
+        if LL_Size(Cache) > 0 then begin
+            writestringlnWND('MAC                IPv4', getTerminalHWND);
+            For i:=0 to LL_Size(Cache)-1 do begin
+                elm:= PARPCacheRecord(LL_Get(Cache, i));
+                writeMACAddressEx(@elm^.MAC[0], getTerminalHWND);
+                writestringWND('  ', getTerminalHWND);
+                writeIPv4AddressEx(@elm^.IP[0], getTerminalHWND);
+                writestringlnWND(' ', getTerminalHWND);
+            end;
+        end else begin
+            writestringlnWND('No entries in ARP table.', getTerminalHWND);
+        end;
     end;
 end;
 
diff --git a/src/include/asuro.pas b/src/include/asuro.pas
index 733a2186..abad7e7d 100644
--- a/src/include/asuro.pas
+++ b/src/include/asuro.pas
@@ -9,14 +9,14 @@ const
      VERSION_SUB   = '1';
      REVISION      = '677';
      RELEASE       = 'ia';
-     LINE_COUNT    = 28025;
+     LINE_COUNT    = 28032;
      FILE_COUNT    = 90;
      DRIVER_COUNT  = 32;
      FPC_VERSION   = '2.6.4';
      NASM_VERSION  = '2.10.09';
      MAKE_VERSION  = '3.81';
      COMPILE_DATE  = '11/05/18';
-     COMPILE_TIME  = '08:34:35';
+     COMPILE_TIME  = '09:12:36';
  
 implementation