summaryrefslogtreecommitdiff
path: root/utils/data2texts/data2texts.c
diff options
context:
space:
mode:
authorCharles Forsyth <charles.forsyth@gmail.com>2024-04-22 07:11:55 +0100
committerGitHub <noreply@github.com>2024-04-22 07:11:55 +0100
commit572a60820a14330c774d1420c1cff39908d628ae (patch)
tree1f029bc4aa5526092fe2618ba84303edf08965ff /utils/data2texts/data2texts.c
parent2a4f32463c927eb546ec4fae678c201b51c7d81f (diff)
parentc94646172c399b31bfc70676feefb90a08c52850 (diff)
Merge pull request #9 from dboddie/add-data2texts
Add data2texts utility
Diffstat (limited to 'utils/data2texts/data2texts.c')
-rw-r--r--utils/data2texts/data2texts.c28
1 files changed, 28 insertions, 0 deletions
diff --git a/utils/data2texts/data2texts.c b/utils/data2texts/data2texts.c
new file mode 100644
index 00000000..7a7f9cb3
--- /dev/null
+++ b/utils/data2texts/data2texts.c
@@ -0,0 +1,28 @@
+#include <lib9.h>
+#include <bio.h>
+
+void
+main(int argc, char *argv[])
+{
+ Biobuf bin, bout;
+ long len;
+ int n;
+ uchar block[4];
+
+ if(argc != 2){
+ fprint(2, "usage: data2texts name\n");
+ exits("usage");
+ }
+ setbinmode();
+ Binit(&bin, 0, OREAD);
+ Binit(&bout, 1, OWRITE);
+ Bprint(&bout, "TEXT %scode(SB), 0, $-4\n", argv[1]);
+ for(len=0; (n=Bread(&bin, block, sizeof(block))) > 0; len += n){
+
+ ulong w = *(ulong *)block;
+ Bprint(&bout, "WORD $0x%08ux\n", w);
+ }
+ Bprint(&bout, "TEXT %slen(SB), 0, $-4\n", argv[1]);
+ Bprint(&bout, "WORD $%ld\n", len);
+ exits(0);
+}