Update to support shifting, JP, ai macro work and more.

This commit is contained in:
KholdFuzion committed 2019-11-13 07:46:56 -06:00
1 parent 3516197a71
commit c09009d3f4
217 files changed
+90964 -41500

No files matched your search

+8 -9
View File
@@ -1,15 +1,14 @@
#!/bin/bash
MAPFILE="./build/ge007."$2".map"
#this script is a hacky mess that can most definately be improved
#fixme as I will fail if vaddr of data gets moved!!!
#DATASEG_START=$(printf "%d\n" 0x$(grep './build/ge007.u.map' -e '.data 0x0000000080020d90' | cut -d "x" -f 4 ))
#DATASEG_LEN=$(printf "%d\n" 0x$(grep './build/ge007.u.map' -e '.data 0x0000000080020d90' | cut -d "x" -f 3 | cut -d " " -f 1))
DATASEG_START=12582912
DATASEG_LEN=247120
DATASEG_START=$(printf "%d\n" 0x$(grep ${MAPFILE} -e '__csegtempPos =' | cut -d "x" -f3))
DATASEG_LEN=$(printf "%d\n" 0x$(grep ${MAPFILE} -e 'load address 0x0000000000c00000' | cut -d "x" -f3 | cut -d " " -f1))
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=${DATASEG_START} count=${DATASEG_LEN} if=$1 of=data_seg bs=1
echo "truncate $1 to 0x$(printf "%x\n" ${DATASEG_START})"
@@ -24,8 +23,8 @@ RZSIZE=$(stat -c%s "data_seg.rz")
echo "size=${RZSIZE}"
#fixme as I will fail if position of c_data gets moved!!!
CDATA_POS=$(printf "%d\n" 0x$(grep './build/ge007.u.map' -e 'c_data_array' | cut -d "x" -f 2 | cut -d " " -f 1 ))
#CDATA_MAX_SIZE=$(printf "%d\n" 0x$(grep './build/ge007.u.map' -e '.c_data 0x0000000000021990' | cut -d "x" -f 2 ))
CDATA_POS=$(printf "%d\n" 0x$(grep ${MAPFILE} -e 'c_data_array' | cut -d "x" -f 2 | cut -d " " -f 1 ))
#CDATA_MAX_SIZE=$(printf "%d\n" 0x$(grep '${MAPFILE}' -e '.c_data 0x0000000000021990' | cut -d "x" -f 2 ))
#CDATA_POS=137616
CDATA_MAX_SIZE=72704
@@ -33,7 +32,7 @@ echo "maxsize=${CDATA_MAX_SIZE}"
echo "one byte at a time is slow, sorry"
dd if=data_seg.rz of=$1.tmp obs=1 seek=${CDATA_POS} conv=notrunc
rm data_seg data_seg.rz
#rm data_seg data_seg.rz
mv $1.tmp $1