Initial revision
[h316.git] / bin / asm
1 #!/bin/bash
2 # Assembler wrapper for simh h316
3
4 if [ ! $1 ] ; then
5 echo "Argument fehlt!"
6 exit 2
7 fi
8
9 name=`basename $1 .asm`
10 listfile=$name.lst
11
12 cat $1 | tab | paron > $name.par
13 rm -f $name.lst
14 rm -f $name.obj
15
16 echo "rest $H316/sys/dap.sys" > $name.go
17 echo "d a 120420" >> $name.go
18 echo "at ptr $name.par" >> $name.go
19 echo "at ptp $name.obj" >> $name.go
20 echo "at tty3 $listfile" >> $name.go
21 echo "set tty3 uascii" >> $name.go
22 echo "set tty3 start" >> $name.go
23 echo "go" >> $name.go
24 echo "d ptr pos 0" >> $name.go
25 echo "go" >> $name.go
26 echo "quit" >> $name.go
27 h316 $name.go > /dev/null
28
29 rm -f $name.par
30 rm -f $name.go
31
32 if cat $name.lst | grep "NO ERRORS IN ABOVE ASSEMBLY">/dev/null 2>&1; then
33 if [ ! $2 ]; then
34 rm $name.lst
35 fi
36 echo "DAP-16 assembly successfull :-)"
37 exit 0
38 fi
39 cat $name.lst
40 echo -e "\nDAP-16 assembly FAILED!"
41 rm -f $name.obj
42 exit 77
43