From 4d15449c6ceda66cbdef77dd6ef1d9ff1cf42a92 Mon Sep 17 00:00:00 2001 From: harbaum Date: Tue, 16 Dec 2014 15:10:25 +0000 Subject: [PATCH] Automated test image creation --- tests/verilator/sdcard/Makefile | 23 ++++++++++++++++++++--- 1 file changed, 20 insertions(+), 3 deletions(-) diff --git a/tests/verilator/sdcard/Makefile b/tests/verilator/sdcard/Makefile index 1cfcfe2..4e9f30b 100644 --- a/tests/verilator/sdcard/Makefile +++ b/tests/verilator/sdcard/Makefile @@ -1,9 +1,13 @@ PROJECT=sd_card -NOWARN = # --report-unoptflat # -Wno-UNOPTFLAT +NOWARN = -Wno-UNOPTFLAT # --report-unoptflat # -Wno-UNOPTFLAT XTRA_OBJS = mmc2.o utils.o diskio_mmc.o pff.o pff_file.o ODIR = obj_dir XTRA_OBJS_PATH=$(addprefix $(ODIR)/, $(XTRA_OBJS)) +# useful values for a 16 bit fat +FAT?=16 +SIZE?=32k + all: $(PROJECT).vcd $(ODIR)/%.o: %.c $(DEPS) @@ -16,10 +20,10 @@ $(ODIR)/stamp: $(PROJECT).v $(PROJECT)_tb.cpp $(ODIR)/V$(PROJECT): $(ODIR)/stamp $(XTRA_OBJS_PATH) make -j -C $(ODIR)/ -f V$(PROJECT).mk V$(PROJECT) -$(PROJECT).vcd: $(ODIR)/V$(PROJECT) +$(PROJECT).vcd: $(ODIR)/V$(PROJECT) card.img $(ODIR)/V$(PROJECT) -run: $(ODIR)/V$(PROJECT) +run: $(ODIR)/V$(PROJECT) card.img $(ODIR)/V$(PROJECT) clean: @@ -27,5 +31,18 @@ clean: rm -f $(PROJECT).vcd rm -f *~ +card.img: Makefile +# create file system + dd if=/dev/zero of=part bs=512 count=$(SIZE) + mkdosfs -F$(FAT) part + mmd -o -i part ::/atari800 + mmd -o -i part ::/atari800/rom + mcopy -o -i part sd_card.v ::/atari800/rom/atarixl.rom +# prepend partition table + dd if=/dev/zero of=ptable bs=512 count=16 2> /dev/null + cat ptable part > $@ + echo "n\np\n1\n16\n\nt\n6\nw\n" | fdisk -c=dos -C64 -H2 -S16 $@ + rm part ptable + view: $(PROJECT).vcd gtkwave $< $(PROJECT).sav &