13 lines
356 B
Bash
Executable File
13 lines
356 B
Bash
Executable File
#!/bin/bash
|
|
|
|
# Extracts a segment from the binary that was produced by ld.
|
|
|
|
segment=$1
|
|
|
|
pos=$(grep "^\.$segment " $B_DIR/pd.map | awk '{print $6}')
|
|
len=$(grep "^\.$segment " $B_DIR/pd.map | awk '{print $3}')
|
|
|
|
mkdir -p $B_DIR/segments
|
|
dd if=$B_DIR/stage2.bin of=$B_DIR/segments/$segment.bin skip=$(($pos)) iflag=skip_bytes bs=$(($len)) count=1 status=none
|
|
|