From 227e99bf39872f6cc58238976cfa9f70bf6f1160 Mon Sep 17 00:00:00 2001 From: Larry Date: Mon, 14 Aug 2017 10:00:20 -0500 Subject: [PATCH] build system for rewrite now compresses and injects 21990 where it belongs, also truncates excess data from end. Former-commit-id: 3df7367eb6f310bac326ce67c5657f03fbdda7f8 [formerly 95d68e2662bf0a3267d2ca8b992712b55ea02261] [formerly eb138d8c0781e77698dd2ef29286784f509458db [formerly b05a8ab25095a6d62c077b3c241feb6ea2a23c65]] Former-commit-id: 8a2c911608a089174a583da865d08421a7837bf5 [formerly 04ebdfba66887ae65e9aae1d523d55430427de9a] Former-commit-id: e568640ea39ae1d6717ee9f7ac8dadd49f88aed4 --- rewrite/Makefile.REMOVED.git-id | 2 +- rewrite/ge007.u.s.REMOVED.git-id | 2 +- rewrite/readme.md.REMOVED.git-id | 2 +- rewrite/tools/1172compress.sh | 5 +++++ rewrite/tools/data_compress.sh | 24 ++++++++++++++++++++++++ 5 files changed, 32 insertions(+), 3 deletions(-) create mode 100755 rewrite/tools/1172compress.sh create mode 100755 rewrite/tools/data_compress.sh diff --git a/rewrite/Makefile.REMOVED.git-id b/rewrite/Makefile.REMOVED.git-id index 58b8bfb..cbb2fc4 100644 --- a/rewrite/Makefile.REMOVED.git-id +++ b/rewrite/Makefile.REMOVED.git-id @@ -1 +1 @@ -3b31bfab114c15ed2152ed5e5f1f1b8329d946e0 \ No newline at end of file +90130221f1b73c56e574fe8a0bed6eaae42a07dd \ No newline at end of file diff --git a/rewrite/ge007.u.s.REMOVED.git-id b/rewrite/ge007.u.s.REMOVED.git-id index 58d9f2b..6e18cb9 100644 --- a/rewrite/ge007.u.s.REMOVED.git-id +++ b/rewrite/ge007.u.s.REMOVED.git-id @@ -1 +1 @@ -b12ee3776aa4cc7b3962e88a48028d1d54484bed \ No newline at end of file +57a5b3ba07177ebe70deafaa12acfa690884d8ed \ No newline at end of file diff --git a/rewrite/readme.md.REMOVED.git-id b/rewrite/readme.md.REMOVED.git-id index 49ec454..17cf5e7 100644 --- a/rewrite/readme.md.REMOVED.git-id +++ b/rewrite/readme.md.REMOVED.git-id @@ -1 +1 @@ -1f481050dc19d4ea2308e0700120f621cdfdc1ee \ No newline at end of file +19605ed45f40a6da4566e91fe3c8e24e7c70021d \ No newline at end of file diff --git a/rewrite/tools/1172compress.sh b/rewrite/tools/1172compress.sh new file mode 100755 index 0000000..3ceb738 --- /dev/null +++ b/rewrite/tools/1172compress.sh @@ -0,0 +1,5 @@ +#!/bin/bash +echo -n -e \\x11\\x72 > header.tmp +cat $1| gzip --no-name --best | tail --bytes=+11 | head --bytes=-8 > $1.tmp +cat header.tmp $1.tmp > $1.rz +rm header.tmp $1.tmp diff --git a/rewrite/tools/data_compress.sh b/rewrite/tools/data_compress.sh new file mode 100755 index 0000000..166f9aa --- /dev/null +++ b/rewrite/tools/data_compress.sh @@ -0,0 +1,24 @@ +#!/bin/bash +echo "patching $1" +echo "extract data segment" +echo "one byte at a time is slow, sorry" +echo "if you changed size of data segment, change count here" +dd skip=12582912 count=247120 if=$1 of=data_seg bs=1 + +echo "truncate $1 to 0xC00000" +cat $1 | head --bytes=12582912 > $1.tmp + +echo "compress data segment" +tools/1172compress.sh data_seg + + +echo "inject data segment" +RZSIZE=$(stat -c%s "data_seg.rz") +echo "size=$RZSIZE" + +echo "one byte at a time is slow, sorry" +dd if=data_seg.rz of=$1.tmp obs=1 seek=137616 conv=notrunc +rm data_seg data_seg.rz +mv $1.tmp $1 +FILESIZE=$(stat -c%s $1) +echo "romsize=$FILESIZE"