diff options
| author | David Boddie <david@boddie.org.uk> | 2023-03-19 02:03:31 +0100 |
|---|---|---|
| committer | David Boddie <david@boddie.org.uk> | 2023-11-16 12:52:08 +0100 |
| commit | c94646172c399b31bfc70676feefb90a08c52850 (patch) | |
| tree | 969a08a9fedf81236d5c8cec1c10b526bf636372 /utils | |
| parent | 7337d0325a69949a580e60f26852e144cab9ed6a (diff) | |
Added a variant of data2s that puts data in the text section.
Diffstat (limited to 'utils')
| -rw-r--r-- | utils/data2texts/data2texts.c | 28 | ||||
| -rw-r--r-- | utils/data2texts/mkfile | 13 |
2 files changed, 41 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); +} diff --git a/utils/data2texts/mkfile b/utils/data2texts/mkfile new file mode 100644 index 00000000..179e1e43 --- /dev/null +++ b/utils/data2texts/mkfile @@ -0,0 +1,13 @@ +<../../mkconfig + +TARG=data2texts + +OFILES= data2texts.$O\ + +HFILES=../../include/bio.h + +LIBS=bio 9 #order matters + +BIN=$ROOT/$OBJDIR/bin + +<$ROOT/mkfiles/mkone-$SHELLTYPE |
