mirror of
https://git.k-space.ee/arti/vt1200.git
synced 2026-10-30 12:03:54 +02:00
37 lines
1.2 KiB
Bash
Executable File
37 lines
1.2 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
#
|
|
# Install (or reinstall) the patched TMS34010 processor module into Ghidra.
|
|
#
|
|
# The vendored source in ./ghidra-tms34010 is upstream
|
|
# https://github.com/ZPaul2Fresh8/Ghidra_TMS34010
|
|
# with two fixes needed for Ghidra 12 (see ghidra-tms34010-ghidra12.patch):
|
|
# - pspec <data_space space="ROM"> -> lowercase "rom" (matches the slaspec)
|
|
# - every <memory_block> gains initialized="false" (required by the new schema)
|
|
#
|
|
# Override the install location with GHIDRA_INSTALL_DIR.
|
|
set -euo pipefail
|
|
|
|
HERE="$(cd "$(dirname "$0")" && pwd)"
|
|
GHIDRA="${GHIDRA_INSTALL_DIR:-/opt/ghidra}"
|
|
DEST="$GHIDRA/Ghidra/Processors/TMS34010"
|
|
SUDO="${SUDO:-sudo}"
|
|
|
|
if [[ ! -x "$GHIDRA/support/sleigh" ]]; then
|
|
echo "error: $GHIDRA/support/sleigh not found (set GHIDRA_INSTALL_DIR)" >&2
|
|
exit 1
|
|
fi
|
|
|
|
$SUDO mkdir -p "$DEST/data/languages"
|
|
$SUDO cp "$HERE/ghidra-tms34010"/tms34010.{slaspec,sinc,ldefs,pspec,cspec} \
|
|
"$DEST/data/languages/"
|
|
$SUDO touch "$DEST/Module.manifest"
|
|
|
|
echo "compiling sleigh -> sla ..."
|
|
$SUDO "$GHIDRA/support/sleigh" -a "$DEST/data/languages"
|
|
|
|
# The sleigh compiler writes the .sla as root; make it readable by users.
|
|
$SUDO chmod -R a+rX "$DEST"
|
|
|
|
echo "installed TMS34010 language into $DEST"
|
|
echo "language id: tms34010:LE:32:default"
|