global: Small fixes to asm scripts ("==" problem)
[h316.git] / bin / asm
CommitLineData
b0031f2a 1#!/bin/sh
c08e22bb 2# Assembler wrapper for simh h316
3
4if [ ! $1 ] ; then
d6a1a234 5 echo -e "Assembler: Input file missing!"
c08e22bb 6 exit 2
7fi
8
d6a1a234 9echo -en "Assembler: Translating \"$1\":"
6f41bb44 10
e5c436a2 11for n in $*; do
2a870fd8 12 if [ $n = "/v" ]; then
e5c436a2 13 VERBOSE=yes
14 fi
15done
16
c08e22bb 17name=`basename $1 .asm`
18listfile=$name.lst
19
20cat $1 | tab | paron > $name.par
b0031f2a 21
c08e22bb 22rm -f $name.lst
23rm -f $name.obj
24
b0031f2a 25cat > $name.go <<EOF
26rest $H316/sys/dap.sys
fa105a9b 27r
e5c436a2 28d a 120420
29d p 1000
b0031f2a 30at ptr $name.par
31at ptp $name.obj
32at tty3 $listfile
33set tty3 uascii
34set tty3 start
35go
36d ptr pos 0
37go
38quit
39EOF
40
2a870fd8 41if [ "$VERBOSE" = "yes" ]; then
e5c436a2 42 h316 $name.go
43else
44 h316 $name.go > /dev/null
45fi
c08e22bb 46
c08e22bb 47
48if cat $name.lst | grep "NO ERRORS IN ABOVE ASSEMBLY">/dev/null 2>&1; then
49 if [ ! $2 ]; then
50 rm $name.lst
6f41bb44 51 rm -f $name.par
52 rm -f $name.go
c08e22bb 53 fi
d6a1a234 54 echo " Success."
c08e22bb 55 exit 0
56fi
57cat $name.lst
d6a1a234 58echo -e " FAILED!"
c08e22bb 59rm -f $name.obj
60exit 77
61