Slight reorganisation

This commit is contained in:
XANTRONIX Development 2023-09-13 00:09:23 -04:00
parent 7b71a6dfc1
commit 5bc8a00f02

23
main.c
View file

@ -9,15 +9,10 @@
#include <endian.h>
#include <errno.h>
#define ZX_DUMP_STRIDE_LINE 16
#define ZX_DUMP_STRIDE_GROUP 2
#define ZX_DUMP_CHARSET_LEN 64
#define ZX_DUMP_FLAGS_NONE 0
#define ZX_DUMP_FLAGS_BASIC (1 << 0)
#define ZX_CHARSET_LEN 64
#define ZX_CHAR_LOW(c) \
(c <= ZX_DUMP_CHARSET_LEN)
(c <= ZX_CHARSET_LEN)
#define ZX_CHAR_INVERSE_START 0x80
#define ZX_CHAR_INVERSE_END 0xbf
@ -56,7 +51,7 @@ typedef struct _zx_basic_line {
#define ZX_BASIC_STATE_SIZE 116
#define ZX_BASIC_LINE_LAST 0x7676
static uint32_t zx_charset[ZX_DUMP_CHARSET_LEN] = {
static uint32_t zx_charset[ZX_CHARSET_LEN] = {
0x0020, 0x2598, 0x259d, 0x2580, 0x2596, 0x258c, 0x259e, 0x259b,
0x2592, '.', '.', '"', 0x00a3, '$', ':', '?',
'(', ')', '>', '<', '=', '+', '-', '*',
@ -134,6 +129,9 @@ error_io:
return -1;
}
#define ZX_HEXDUMP_STRIDE_LINE 16
#define ZX_HEXDUMP_STRIDE_GROUP 2
static ssize_t hexdump_line(off_t offset, void *buf, size_t len, int tty) {
size_t i;
@ -142,7 +140,7 @@ static ssize_t hexdump_line(off_t offset, void *buf, size_t len, int tty) {
}
for (i=0; i<len; i++) {
if (i > 0 && (i % ZX_DUMP_STRIDE_GROUP) == 0) {
if (i > 0 && (i % ZX_HEXDUMP_STRIDE_GROUP) == 0) {
if (putchar(' ') < 0) {
goto error_io;
}
@ -209,9 +207,9 @@ static ssize_t zx_dump_hex(int fd) {
break;
}
for (i=0; i<len; i+=ZX_DUMP_STRIDE_LINE) {
for (i=0; i<len; i+=ZX_HEXDUMP_STRIDE_LINE) {
size_t left = len - i,
linesz = left < ZX_DUMP_STRIDE_LINE? left: ZX_DUMP_STRIDE_LINE;
linesz = left < ZX_HEXDUMP_STRIDE_LINE? left: ZX_HEXDUMP_STRIDE_LINE;
if (hexdump_line(offset, buf, linesz, tty) < 0) {
goto error_hexdump_line;
@ -347,6 +345,9 @@ static void usage(const char *prog, char *message, ...) {
exit(1);
}
#define ZX_DUMP_FLAGS_NONE 0
#define ZX_DUMP_FLAGS_BASIC (1 << 0)
int main(int argc, char **argv) {
int fd,
flags = ZX_DUMP_FLAGS_NONE,