Automating assembly for the Atari VCS

Just for the sake of a new post, here is a quick and dirty script to automate the processes of assembling a file from source for the Atari VCS and keep everything organized. This assumes you have WINE installed as it makes use of a Windows binary because I'm too lazy to track down and compile the source for Linux (at least I'm honest). This also assumes you have the folders arranged and named in a similar fashion, the tilde represents your folder's paths, blah blah blah. Ok.

#! /bin/bash
#auto dasm
#matt henderson
export DISPLAY=:0
echo "Auto DASM/MakeWav"
echo "================="
echo "Input (*.asm) files are read from 'asm_input'"
echo "Output (*.bin) is sent to 'bin_output'"
echo "List files are sent to 'list_output'"
echo "Wav files are sent to 'sc_output'"
echo -n "What is the name of the *.asm file? "
read input
cd /~/projects/atari2600/assembler/dasm
./dasm /~/projects/atari2600/asm_input/$input.asm -l/~/projects/atari2600/list_output/$input.txt -f3 -v5 -o/~/projects/atari2600/bin_output/$input.bin
cd /~/projects/atari2600/assembler/makewav4.2
wine makewav -ts -d2 -f0 /~/projects/atari2600/bin_output/$input.bin
mv /~/projects/atari2600/bin_output/$input.wav /~/projects/atari2600/sc_output
echo "Auto DASM/MakeWav"
echo "================="
echo "Run '"$input"' in Stella? (lowercase: y/n)"
read stellarun
if [ $stellarun = "y" ] ; then
    cd /~/projects/atari2600/bin_output
    stella $input.bin

There, nothing special at all, but it saves a lot of typing (as I mentioned, lazy). Also, to avoid having to navigate to the script's folder and typing any prefix to execute the script, you could append the following to bash's rc file (/etc/bash.bashrc) and have the script act as a globally accepted command (I've chosen "asm").

alias asm='sh /~/asm'

  Don't forget to logout/login in order to use the new alias for your script.