aboutsummaryrefslogtreecommitdiff
path: root/src/tools/genmap.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/tools/genmap.c')
-rw-r--r--src/tools/genmap.c13
1 files changed, 7 insertions, 6 deletions
diff --git a/src/tools/genmap.c b/src/tools/genmap.c
index dc1971c..8a258e1 100644
--- a/src/tools/genmap.c
+++ b/src/tools/genmap.c
@@ -10,7 +10,7 @@
./genmap --preset run -o build/run
./genmap --preset default --check
- ./genmap --mode compiler --heap-lo 8192 --heap 20480 --types 8192 --genome 245760 --frame 2048 --return 512 --mark 512 --data 3072 --snap-cap 1000 --quote-cap 300 -o build/small
+ ./genmap --mode compiler --heap-lo 8192 --heap 20480 --types 8192 --genome 393216 --frame 2048 --return 512 --mark 512 --data 3072 --snap-cap 1000 --quote-cap 300 -o build/small
./genmap --mode run --words 20480 -o build/run
--preset default puts the code area, the compiler tables, the genome and
@@ -194,7 +194,7 @@ static void preset_small(Spec *s)
s->compiler = 1;
s->heap_top = 1; s->code_end = 8192; s->total = 0x8000000;
s->heap_lo = 8192; s->heap = 20480; s->types = 8192;
- s->genome = 245760; s->frame = 2048; s->ret = 512; s->mark = 512; s->data = 3072;
+ s->genome = 393216; s->frame = 2048; s->ret = 512; s->mark = 512; s->data = 3072;
tables_tight(s);
s->snap_cap = 1000; s->quote_cap = 300; s->snap = 1000; s->qbuf = 900; s->type_formula = 8192;
}
@@ -215,7 +215,7 @@ static void preset_default(Spec *s)
s->compiler = 1;
s->heap_top = 1; s->code_end = 0x80000; s->types = 65536;
s->heap = 0x60000; s->total = 0x8000000;
- s->genome = 0x50000; s->frame = 0x40000; s->ret = 0x10000; s->mark = 0x8000;
+ s->genome = 0x60000; s->frame = 0x40000; s->ret = 0x10000; s->mark = 0x8000;
s->data = 0x7FF0;
tables_big(s);
}
@@ -250,7 +250,7 @@ static void mode_defaults(Spec *s, int compiler)
if (compiler) {
s->heap_top = 1; s->code_end = 8192; s->total = 0x8000000;
s->heap_lo = 8192; s->heap = 20480; s->types = 8192; s->type_formula = 8192;
- s->genome = 245760; s->frame = 2048; s->ret = 512; s->mark = 512; s->data = 3072;
+ s->genome = 393216; s->frame = 2048; s->ret = 512; s->mark = 512; s->data = 3072;
tables_tight(s);
} else {
s->heap_top = 1; s->code_end = 512; s->total = 0x8000000;
@@ -682,11 +682,12 @@ static void write_sources(const char *dir, const Spec *s, const Map *m)
static void usage_status(int status)
{
- fprintf(stderr,
+ fprintf(status ? stderr : stdout,
"usage: genmap --preset small|run|default|fixed|lsp [-o DIR] [--check]\n"
" genmap --mode compiler|run [-o DIR] [--words N] [options]\n"
" genmap small|run DIR\n"
"options:\n"
+ " --help, -h show this help and exit\n"
" --code N --total N --heap N --heap-lo N --types N --zfp-pad N --genome N\n"
" --frame N --return N --mark N --data N\n"
" --hash N --pool N --symbols N --locals N --fwd N\n"
@@ -714,7 +715,7 @@ static int take(int argc, char **argv, int *i)
int main(int argc, char **argv)
{
Spec s; Map m;
- if (argc == 2 && !strcmp(argv[1], "--help")) usage_status(0);
+ if (argc == 2 && (!strcmp(argv[1], "--help") || !strcmp(argv[1], "-h"))) usage_status(0);
const char *outdir = 0, *preset = 0, *mode = 0;
int check = 0, grow = 0, i, have = 0;
int total = 0, set_total = 0, set_words = 0, set_heap = 0, set_heap_lo = 0, set_types = 0, set_zfp = 0;