A "make clean" - works ok. ... followed by a "make FIGnition.elf"... recompiles all the .c files and new .o files in the obj directory. Definite progress.
Then it fixates on the missing "obj/Unclassified.s" which is actually in the src directory. I presume that it was not genereated by compiling from a C source file.
E:\FIGnition\Firmware>make clean
rm -f *.hex *.elf obj/Unclassified.s obj/AmicFlashSpi.o obj/FigEdit.o obj/FigKeyDrv.o obj/FIGnition.o obj/FIGnitionMem.o obj/FigVFlash.o obj/ForthDebug.o obj/GraphIO.o obj/LLDebug.o obj/MicrochipSramSpi.o obj/Spi.o obj/StartScreen.o obj/Unclassified.o obj/Video.o obj/VideoScan.o obj/VM.o obj/VMFast.o obj/VMTest.o obj/FigForth.o
E:\FIGnition\Firmware>make FIGnition.elf
avr-gcc -Wall -Os -DF_CPU=20000000 -mmcu=atmega168 -fno-inline -Iinc/ -c src/AmicFlashSpi.c -o obj/AmicFlashSpi.o
avr-gcc -Wall -Os -DF_CPU=20000000 -mmcu=atmega168 -fno-inline -Iinc/ -c src/FigKeyDrv.c -o obj/FigKeyDrv.o
avr-gcc -Wall -Os -DF_CPU=20000000 -mmcu=atmega168 -fno-inline -Iinc/ -c src/FIGnition.c -o obj/FIGnition.o
src/FIGnition.c:195: warning: return type of 'main' is not 'int'
avr-gcc -Wall -Os -DF_CPU=20000000 -mmcu=atmega168 -fno-inline -Iinc/ -c src/FIGnitionMem.c -o obj/FIGnitionMem.o
src/FIGnitionMem.c: In function 'InterruptSpi':
src/FIGnitionMem.c:74: warning: unused variable 'data'
avr-gcc -Wall -Os -DF_CPU=20000000 -mmcu=atmega168 -fno-inline -Iinc/ -c src/FigVFlash.c -o obj/FigVFlash.o
avr-gcc -Wall -Os -DF_CPU=20000000 -mmcu=atmega168 -fno-inline -Iinc/ -c src/MicrochipSramSpi.c -o obj/MicrochipSramSpi.o
src/MicrochipSramSpi.c: In function 'SramAbsBeginRd':
src/MicrochipSramSpi.c:96: warning: unused variable 'data'
avr-gcc -Wall -Os -DF_CPU=20000000 -mmcu=atmega168 -fno-inline -Iinc/ -c src/Spi.c -o obj/Spi.o
avr-gcc -Wall -Os -DF_CPU=20000000 -mmcu=atmega168 -fno-inline -Iinc/ -c src/StartScreen.c -o obj/StartScreen.o
avr-gcc -Wall -Os -DF_CPU=20000000 -mmcu=atmega168 -fno-inline -Iinc/ -DRamBase=0x8000 -x assembler-with-cpp -c src/Unclassified.s -o obj/Unclassified.o