|
|
1.1 ! root 1: # Makefile to build the Atari test program and other required files ! 2: # for the TOS tester and to run it with minimal or fairly full ! 3: # set of options. ! 4: ! 5: # default target is 'test', everything else gets build as its deps ! 6: all: test ! 7: ! 8: # targets without corresponding file ! 9: .PHONY: clean test test-all ! 10: ! 11: ! 12: # tos/ subdir should be either symlink to where you have your TOS ! 13: # images, or real directory with symlinks to TOS images you want ! 14: # to test with this. Or TOSDIR variable needs to point where they are: ! 15: # TOSDIR=/path/to/toses/ make ! 16: ! 17: TOSDIR ?= tos ! 18: ! 19: # TOSDIR should contain at least this! ! 20: BUILD_TOS = $(TOSDIR)/etos512k.img ! 21: ! 22: # Hatari machine config for AHCC build ! 23: BUILD_CONFIG = -m --machine tt --tos $(BUILD_TOS) ! 24: ! 25: # where the code & test programs are ! 26: DIR = disk ! 27: ! 28: # AHCC related files expected for building by disk/ahcc-* hconsole scripts ! 29: AHCC_FILES = $(DIR)/ahcc_p.ttp $(DIR)/include $(DIR)/lib ! 30: ! 31: ! 32: GEMDOS_TEST = $(DIR)/GEMDOS.PRG ! 33: GEMDOS_SCRIPT = $(DIR)/ahcc-gemdos ! 34: GEMDOS_DEP = $(DIR)/gemdos.c $(DIR)/common.c $(DIR)/gemdos.prj $(AHCC_FILES) $(BUILD_TOS) ! 35: ! 36: # build the full GEMDOS emu tester. ! 37: # requires: ! 38: # - EmuTOS, AHCC and installed Hatari ! 39: # before running make: ! 40: # - symlink etos512k.img and ahcc_p.ttp + its include & lib dirs ! 41: # under $(DIR)/ subdir ! 42: $(GEMDOS_TEST): $(GEMDOS_DEP) ! 43: $(RM) $(DIR)/*.O $(DIR)/*.MAP $(DIR)/*.tmp ! 44: ../../tools/hconsole/hconsole.py $(GEMDOS_SCRIPT) -- $(BUILD_CONFIG) $(DIR) ! 45: [ -f $(DIR)/GEMDOS.O ] && [ \! -f $(DIR)/ldfile.tmp ] # verify compiling & linking succeeded ! 46: ! 47: ! 48: MINIMAL_TEST = $(DIR)/MINIMAL.PRG ! 49: MINIMAL_SCRIPT = $(DIR)/ahcc-minimal ! 50: MINIMAL_DEP = $(DIR)/minimal.c $(DIR)/common.c $(DIR)/minimal.prj $(AHCC_FILES) $(BUILD_TOS) ! 51: ! 52: # build the minimal tester ! 53: $(MINIMAL_TEST): $(MINIMAL_DEP) ! 54: $(RM) $(DIR)/*.O $(DIR)/*.MAP $(DIR)/*.tmp ! 55: ../../tools/hconsole/hconsole.py $(MINIMAL_SCRIPT) -- $(BUILD_CONFIG) $(DIR) ! 56: [ -f $(DIR)/MINIMAL.O ] && [ \! -f $(DIR)/ldfile.tmp ] # verify compiling & linking succeeded ! 57: ! 58: ! 59: clean: ! 60: $(RM) $(DIR)/*.O $(DIR)/*.MAP $(DIR)/*.tmp ! 61: ! 62: ! 63: # create blank DD floppy image ! 64: blank-a.st.gz: ! 65: dd if=/dev/zero of=blank-a.st bs=1024 count=720 ! 66: mformat -a -t 80 -h 2 -n 9 -i blank-a.st :: ! 67: gzip blank-a.st ! 68: ! 69: ! 70: # create 360KB (single side) test floppy that autoruns test program using *.INF file. ! 71: # requires: ! 72: # - mformat & mcopy from mtools ! 73: bootdesk.st.gz: $(MINIMAL_TEST) $(DIR)/TEXT floppy/*.INF ! 74: dd if=/dev/zero of=bootdesk.st bs=1024 count=360 ! 75: mformat -a -t 80 -h 1 -n 9 -i bootdesk.st :: ! 76: MTOOLS_NO_VFAT=1 mcopy -i bootdesk.st -spmv $+ :: ! 77: $(RM) $@ ! 78: gzip bootdesk.st ! 79: ! 80: # create 360KB (single side) test floppy that autoruns test program from auto/ ! 81: # as very old TOS versions don't like the *.INF file autorun feature. ! 82: # requires: ! 83: # - mformat, mcopy & mmd from mtools ! 84: bootauto.st.gz: $(MINIMAL_TEST) $(DIR)/TEXT ! 85: dd if=/dev/zero of=bootauto.st bs=1024 count=360 ! 86: mformat -a -t 80 -h 1 -n 9 -i bootauto.st :: ! 87: MTOOLS_NO_VFAT=1 mmd -i bootauto.st ::AUTO ! 88: MTOOLS_NO_VFAT=1 mcopy -i bootauto.st -pmv $(DIR)/TEXT :: ! 89: MTOOLS_NO_VFAT=1 mcopy -i bootauto.st -pmv $(MINIMAL_TEST) ::AUTO ! 90: $(RM) $@ ! 91: gzip bootauto.st ! 92: ! 93: ! 94: # optional 16MB HD image for EmuTOS/ACSI testing without HD drivers ! 95: # converts floppy desktop infos for HD (A: -> C:) ! 96: hd.img: $(MINIMAL_TEST) $(DIR)/TEXT floppy/*.INF ! 97: mkdir tmp ! 98: cp -a $(MINIMAL_TEST) $(DIR)/TEXT tmp/ ! 99: for i in floppy/*.INF; do sed -e 's/A:/C:/g' < $$i > tmp/$${i##*/}; done ! 100: ../../tools/atari-hd-image.sh 16 $@ LABEL tmp ! 101: $(RM) -r tmp ! 102: ! 103: ! 104: # requires: ! 105: # - Building of floppies & GEMDOS_TEST to have succeeded ! 106: # - Latest Hatari to be installed, or to run this with something like: ! 107: # PATH=../../build/src:$PATH make ! 108: test: blank-a.st.gz bootauto.st.gz bootdesk.st.gz $(GEMDOS_TEST) ! 109: ./tos_tester.py --disks floppy,gemdos --graphics mono --memsizes 4 --machines ste $(BUILD_TOS) ! 110: ! 111: # run all default tests ! 112: test-full: blank-a.st.gz bootauto.st.gz bootdesk.st.gz ! 113: ./tos_tester.py $(TOSDIR)/*.img
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.