summaryrefslogtreecommitdiff
path: root/cmd/cmd_dumpx.c
diff options
context:
space:
mode:
authorFreeArtMan <dos21h@gmail.com>2016-05-15 22:30:26 +0100
committerFreeArtMan <dos21h@gmail.com>2016-05-15 22:30:26 +0100
commit852c7ad1af2e3283425dccd79b0923b7df12a388 (patch)
treef97e6498f87380091bf6848d06482bf12c258b63 /cmd/cmd_dumpx.c
parent44dedb90f005bb0de9bddbd592a5c78f28bc67d1 (diff)
downloadihe-852c7ad1af2e3283425dccd79b0923b7df12a388.tar.gz
ihe-852c7ad1af2e3283425dccd79b0923b7df12a388.zip
Moved to new cmd.
Diffstat (limited to 'cmd/cmd_dumpx.c')
-rw-r--r--cmd/cmd_dumpx.c55
1 files changed, 55 insertions, 0 deletions
diff --git a/cmd/cmd_dumpx.c b/cmd/cmd_dumpx.c
new file mode 100644
index 0000000..d6228fd
--- /dev/null
+++ b/cmd/cmd_dumpx.c
@@ -0,0 +1,55 @@
+#include <ctype.h>
+#include <string.h>
+
+#include "buf.h"
+#include "core.h"
+
+#include "libcmd/cmd.h"
+#include "libcmd/cmd_parse.h"
+
+extern file_t *g_file;
+extern buf_t *g_buf;
+extern int g_flags;
+
+int c_dumpx( cmd_arg_t *arg )
+{
+ int i,j;
+
+ if ( g_buf->buf == NULL)
+ {
+ printf("Buffer to print empty\n");
+ return -1;
+ }
+
+ for (i=0; i<g_buf->size; i+=16)
+ {
+ for (j=i; j<i+16; j++)
+ {
+ if ( j<g_buf->size )
+ {
+ printf("%02x ",(unsigned char)g_buf->buf[j]);
+ } else
+ {
+ printf(" ");
+ }
+ }
+
+ for (j=i; j<i+16; j++)
+ {
+ if ( j<g_buf->size ) //wrong place move to cycle?
+ {
+ if ( isprint(g_buf->buf[j]) )
+ {
+ printf("%c",(unsigned char)g_buf->buf[j]);
+ } else
+ {
+ printf("\e[7m.\e[0m");
+ }
+ }
+ }
+ printf("\n");
+ }
+ printf("\n");
+
+ return 0;
+} \ No newline at end of file