Mercurial > hg > Members > kono > nitros9-code
view level1/makefile.dragon @ 2010:a9560d9f59d1
Fixed bug where SP wasn't properly set when invoking F$Debug from system state. Now the stack pointer is retrieved some known offset from the current SP value. Kind of a kludge, but it works (so far).
author | boisy |
---|---|
date | Mon, 06 Mar 2006 00:39:16 +0000 |
parents | cbb405567d04 |
children |
line wrap: on
line source
# #6809l1/makefile.dragon # # 2005-04-24, P.Harvey-Smith. # Brought into line with CoCo makefile, for generating disk # names baded on CPU/Level/Release number. # # # 2005-05-31, P.Harvey-Smith. # Added options to specify the step rate of the created # floppy devices. # # 2006-01-08, P.Harvey-Smith. # Added option to compile for a Dragon 32 that has been upgraded # to 64K, this is almost the same as the 64, except that it lacks # a serial port. # # 2006-01-08, P.Harvey-Smith. # Determined experementally the correct step rate for Dragon Data # 5.25" drives, which is 12ms, this is over half the time of the # value determined by using dmode under Dragon OS9. It seems that # the Dragon OS9 dis driver ignored the value set for stp, and always # used 12ms !!!! # # 2006-01-18, P.Harvey-Smith. # Updates to support Tano Dragon 64, using RS-DOS controler. #x include ../rules.mak CPU = 6809 LEVEL = 1 # TERMWIDTH can be either 32 or 51 TERMWIDTH = 51 #Dragon 32+/64 BOOTFILE = bootfiles/bootfile_d64_DS40_$(TERMWIDTH) BOOTFILE_DS80 = bootfiles/bootfile_d64_DS80_$(TERMWIDTH) BOOTFILE_SS40 = bootfiles/bootfile_d64_SS40_$(TERMWIDTH) KERNELFILE = bootfiles/kernel_d64 #Tano Dragon 64. BOOTFILE_TANO = bootfiles/bootfile_d64tano_DS40_$(TERMWIDTH) BOOTFILE_DS80_TANO = bootfiles/bootfile_d64tano_DS80_$(TERMWIDTH) KERNELFILE_TANO = bootfiles/kernel_d64tano DIRS = cmds sys #modules bootfiles DDIRS = modules bootfiles defs DISTRO = nos9$(CPU)l$(LEVEL) DISTROVER = $(DISTRO)$(NITROS9VER)_dragon DISTROVERTANO = $(DISTRO)$(NITROS9VER)_tano # Specify which shell should be used #WHICHSHELL = shellplus WHICHSHELL = shell_21 #Default step rate for floppy drives #Step can be one of : 0=30ms, 1=20ms, 2=12ms, 3=6ms #Note old drives often require 30ms #After experimenting with a real Dragon Data 5.25" drive I #have determined that the drive will cope with 12ms step. #Therefore setting this as the default for 32/64 also. STEP = 2 #Is this machine a real 64, or a 32, upgraded to 64K. #Set to 1 for upgraded machine. UPGRADED32 = 0 CMDS = $(shell $(CD) cmds; make showcocoobjs) CMDS525 = $(shell $(CD) cmds; make showdragon525objs) CMDS525_2 = $(shell $(CD) cmds; make showdragon525objs2) BOOTTRACK = $(shell $(CD) modules; make -f makefile.dragon showboottrack) KERNEL = $(shell $(CD) modules; make -f makefile.dragon showkernel) SYSMODS = $(shell $(CD) modules; make -f makefile.dragon showsysmods) CLOCKS = $(shell $(CD) modules; make -f makefile.dragon showclocks) RBF = $(shell $(CD) modules; make -f makefile.dragon showrbf) SCF = $(shell $(CD) modules; make -f makefile.dragon showscf) PIPE = $(shell $(CD) modules; make -f makefile.dragon showpipe) MODULECMDS = $(WHICHSHELL) del echo format makdir merge os9gen prompt tmode SYS = $(shell $(CD) sys; make showobjs) DEFS = $(shell $(CD) defs; make -f makefile.dragon showobjs) ROOTFILES = STARTUP = startup.dragon PACKAGENAME = $(DISTROVER).zip DSK360K_1 = $(DISTROVER)_40d_1.dsk LDSK360K_1 = $(DISTRO)_40d_1.dsk DSK360K_2 = $(DISTROVER)_40d_2.dsk LDSK360K_2 = $(DISTRO)_40d_2.dsk DSK720K = $(DISTROVER)_80d.dsk LDSK720K = $(DISTRO)_80d.dsk DSK180K_1 = $(DISTROVER)_40s_1.dsk DSK180K_2 = $(DISTROVER)_40s_2.dsk DSK360KTANO_1 = $(DISTROVERTANO)_tano_40d_1.dsk DSK720KTANO = $(DISTROVERTANO)_tano_80d.dsk # Make all components all: @$(ECHO) "**************************************************" @$(ECHO) "* *" @$(ECHO) "* NitrOS-9/6809 Level 1 Distribution *" @$(ECHO) "* *" @$(ECHO) "**************************************************" $(foreach dir, $(DIRS), ($(CD) $(dir); make alldragon);) $(foreach dir, $(DDIRS), ($(CD) $(dir); make -f makefile.dragon STEP=$(STEP) UPGRADED32=$(UPGRADED32));) # Clean all components clean: dskclean $(foreach dir, $(DIRS), ($(CD) $(dir); make clean);) $(foreach dir, $(DDIRS), ($(CD) $(dir); make -f makefile.dragon clean);) dskclean: -$(RM) $(PACKAGENAME) $(DSK360K_1) $(DSK360K_2) $(DSK720K) $(DSK180K_1) $(DSK180K_2) $(DSK360KTANO_1) $(DSK720KTANO) dsk: all $(PACKAGENAME) dskcopy: dsk $(CP) $(DSK360K_1) $(DSK360K_2) $(DSK720K) $(DSK360KTANO_1) $(DSK720KTANO) $(PACKAGENAME) $(DSKDIR) scp: dsk scp $(PACKAGENAME) boisy@cvs.nitros9.org:/home/nitros9/public_html $(PACKAGENAME): $(DSK360K_1) $(DSK360K_2) $(DSK720K) $(DSK180K_1) $(DSK180K_2) $(DSK360KTANO_1) $(DSK720KTANO) ReadMe ChangeLog $(ARCHIVE) $@ $^ #Dragon 64/32+ $(DSK360K_1): $(RM) $@ $(OS9FORMAT_DS40) -e -dr -q $@ -n"NitrOS-9/6809 Level 1 Disk 1" $(OS9GEN) $@ -d -b=$(BOOTFILE) -t=$(KERNELFILE) $(MAKDIR) $@,CMDS $(MAKDIR) $@,SYS $(CD) cmds; $(CP) $(CMDS) ../$@,CMDS $(foreach file, $(CMDS), $(OS9ATTR_EXEC) $@,CMDS/$(file);) $(OS9RENAME) $@,CMDS/$(WHICHSHELL) shell $(CD) sys; $(CPL) $(SYS) ../$@,SYS $(foreach file, $(SYS), $(OS9ATTR_TEXT) $@,SYS/$(file);) $(MAKDIR) $@,DEFS $(CD) defs; $(CPL) $(DEFS) ../$@,DEFS $(foreach file, $(DEFS), $(OS9ATTR_TEXT) $@,DEFS/$(file);) $(CPL) $(ROOTFILES) $@,. $(foreach file, $(ROOTFILES), $(OS9ATTR_TEXT) $@,$(file);) $(CPL) $(STARTUP) $@,startup $(OS9ATTR_TEXT) $@,startup $(DSK360K_2): $(RM) $@ $(OS9FORMAT_DS40) -e -dr -q $@ -n"NitrOS-9/6809 Level 1 Disk 2" $(MAKDIR) $@,NITROS9 $(MAKDIR) $@,NITROS9/6809L1 $(MAKDIR) $@,NITROS9/6809L1/CMDS $(CD) cmds; $(CP) $(MODULECMDS) ../$@,NITROS9/6809L1/CMDS $(foreach file, $(MODULECMDS), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/CMDS/$(file);) $(OS9RENAME) $@,NITROS9/6809L1/CMDS//$(WHICHSHELL) shell $(MAKDIR) $@,NITROS9/6809L1/MODULES $(MAKDIR) $@,NITROS9/6809L1/MODULES/BOOTTRACK $(CD) modules; $(CP) $(BOOTTRACK) ../$@,NITROS9/6809L1/MODULES/BOOTTRACK $(foreach file, $(BOOTTRACK), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/BOOTTRACK/$(file);) $(MAKDIR) $@,NITROS9/6809L1/MODULES/KERNEL $(CD) modules; $(CP) $(KERNEL) ../$@,NITROS9/6809L1/MODULES/KERNEL $(foreach file, $(KERNEL), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/KERNEL/$(file);) $(MAKDIR) $@,NITROS9/6809L1/MODULES/SYSMODS $(CD) modules; $(CP) $(SYSMODS) ../$@,NITROS9/6809L1/MODULES/SYSMODS $(foreach file, $(SYSMODS), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/SYSMODS/$(file);) $(MAKDIR) $@,NITROS9/6809L1/MODULES/CLOCKS $(CD) modules; $(CP) $(CLOCKS) ../$@,NITROS9/6809L1/MODULES/CLOCKS $(foreach file, $(CLOCKS), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/CLOCKS/$(file);) $(MAKDIR) $@,NITROS9/6809L1/MODULES/RBF $(CD) modules; $(CP) $(RBF) ../$@,NITROS9/6809L1/MODULES/RBF $(foreach file, $(RBF), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/RBF/$(file);) $(MAKDIR) $@,NITROS9/6809L1/MODULES/SCF $(CD) modules; $(CP) $(SCF) ../$@,NITROS9/6809L1/MODULES/SCF $(foreach file, $(SCF), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/SCF/$(file);) $(MAKDIR) $@,NITROS9/6809L1/MODULES/PIPE $(CD) modules; $(CP) $(PIPE) ../$@,NITROS9/6809L1/MODULES/PIPE $(foreach file, $(PIPE), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/PIPE/$(file);) $(MAKDIR) $@,NITROS9/6809L1/BOOTLISTS $(CD) bootlists; $(CPL) *.bl ../$@,NITROS9/6809L1/BOOTLISTS $(MAKDIR) $@,NITROS9/6809L1/SCRIPTS $(CD) scripts; $(CPL) mb* ../$@,NITROS9/6809L1/SCRIPTS $(DSK720K): $(RM) $@ $(OS9FORMAT_DS80) -e -dr -c2 -q $@ -n"NitrOS-9/6809 Level 1" $(OS9GEN) $@ -d -b=$(BOOTFILE_DS80) -t=$(KERNELFILE) $(MAKDIR) $@,CMDS $(MAKDIR) $@,SYS $(MAKDIR) $@,DEFS $(CD) cmds; $(CP) $(CMDS) ../$@,CMDS $(foreach file, $(CMDS), $(OS9ATTR_EXEC) $@,CMDS/$(file);) $(OS9RENAME) $@,CMDS/$(WHICHSHELL) shell $(CD) sys; $(CPL) $(SYS) ../$@,SYS $(foreach file, $(SYS), $(OS9ATTR_TEXT) $@,SYS/$(file);) $(CD) defs; $(CPL) $(DEFS) ../$@,DEFS $(foreach file, $(DEFS), $(OS9ATTR_TEXT) $@,DEFS/$(file);) $(CPL) $(ROOTFILES) $@,. $(foreach file, $(ROOTFILES), $(OS9ATTR_TEXT) $@,$(file);) $(CPL) $(STARTUP) $@,startup $(OS9ATTR_TEXT) $@,startup $(MAKDIR) $@,NITROS9 $(MAKDIR) $@,NITROS9/6809L1 $(MAKDIR) $@,NITROS9/6809L1/CMDS $(CD) cmds; $(CP) $(MODULECMDS) ../$@,NITROS9/6809L1/CMDS $(foreach file, $(MODULECMDS), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/CMDS/$(file);) $(OS9RENAME) $@,NITROS9/6809L1/CMDS/$(WHICHSHELL) shell $(MAKDIR) $@,NITROS9/6809L1/MODULES $(MAKDIR) $@,NITROS9/6809L1/MODULES/BOOTTRACK $(CD) modules; $(CP) $(BOOTTRACK) ../$@,NITROS9/6809L1/MODULES/BOOTTRACK $(foreach file, $(BOOTTRACK), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/BOOTTRACK/$(file);) $(MAKDIR) $@,NITROS9/6809L1/MODULES/KERNEL $(CD) modules; $(CP) $(KERNEL) ../$@,NITROS9/6809L1/MODULES/KERNEL $(foreach file, $(KERNEL), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/KERNEL/$(file);) $(MAKDIR) $@,NITROS9/6809L1/MODULES/SYSMODS $(CD) modules; $(CP) $(SYSMODS) ../$@,NITROS9/6809L1/MODULES/SYSMODS $(foreach file, $(SYSMODS), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/SYSMODS/$(file);) $(MAKDIR) $@,NITROS9/6809L1/MODULES/CLOCKS $(CD) modules; $(CP) $(CLOCKS) ../$@,NITROS9/6809L1/MODULES/CLOCKS $(foreach file, $(CLOCKS), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/CLOCKS/$(file);) $(MAKDIR) $@,NITROS9/6809L1/MODULES/RBF $(CD) modules; $(CP) $(RBF) ../$@,NITROS9/6809L1/MODULES/RBF $(foreach file, $(RBF), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/RBF/$(file);) $(MAKDIR) $@,NITROS9/6809L1/MODULES/SCF $(CD) modules; $(CP) $(SCF) ../$@,NITROS9/6809L1/MODULES/SCF $(foreach file, $(SCF), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/SCF/$(file);) $(MAKDIR) $@,NITROS9/6809L1/MODULES/PIPE $(CD) modules; $(CP) $(PIPE) ../$@,NITROS9/6809L1/MODULES/PIPE $(foreach file, $(PIPE), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/PIPE/$(file);) $(MAKDIR) $@,NITROS9/6809L1/BOOTLISTS $(CD) bootlists; $(CPL) *.bl ../$@,NITROS9/6809L1/BOOTLISTS $(MAKDIR) $@,NITROS9/6809L1/SCRIPTS $(CD) scripts; $(CPL) mb* ../$@,NITROS9/6809L1/SCRIPTS $(DSK180K_1): $(RM) $@ $(OS9FORMAT_SS40) -e -dr -q $@ -n"NitrOS-9/6809 Level 1 Disk 1" $(OS9GEN) $@ -d -b=$(BOOTFILE) -t=$(KERNELFILE) $(MAKDIR) $@,CMDS $(MAKDIR) $@,SYS $(CD) cmds; $(CP) $(CMDS525) ../$@,CMDS $(foreach file, $(CMDS525), $(OS9ATTR_EXEC) $@,CMDS/$(file);) $(OS9RENAME) $@,CMDS/$(WHICHSHELL) shell $(CD) sys; $(CPL) $(SYS) ../$@,SYS $(foreach file, $(SYS), $(OS9ATTR_TEXT) $@,SYS/$(file);) $(MAKDIR) $@,DEFS $(CD) defs; $(CPL) $(DEFS) ../$@,DEFS $(foreach file, $(DEFS), $(OS9ATTR_TEXT) $@,DEFS/$(file);) $(CPL) $(ROOTFILES) $@,. $(foreach file, $(ROOTFILES), $(OS9ATTR_TEXT) $@,$(file);) $(CPL) $(STARTUP) $@,startup $(OS9ATTR_TEXT) $@,startup $(DSK180K_2): $(RM) $@ $(OS9FORMAT_SS40) -e -dr -q $@ -n"NitrOS-9/6809 Level 1 Disk 2" $(MAKDIR) $@,CMDS $(CD) cmds; $(CP) $(CMDS525_2) ../$@,CMDS $(foreach file, $(CMDS525_2), $(OS9ATTR_EXEC) $@,CMDS/$(file);) #TANO Dragon 64 $(DSK360KTANO_1): $(RM) $@ $(OS9FORMAT_DS40) -e -dr -q $@ -n"NitrOS-9/6809 Level 1 Disk 1" $(OS9GEN) $@ -d -b=$(BOOTFILE_TANO) -t=$(KERNELFILE_TANO) $(MAKDIR) $@,CMDS $(MAKDIR) $@,SYS $(CD) cmds; $(CP) $(CMDS) ../$@,CMDS $(foreach file, $(CMDS), $(OS9ATTR_EXEC) $@,CMDS/$(file);) $(OS9RENAME) $@,CMDS/$(WHICHSHELL) shell $(CD) sys; $(CPL) $(SYS) ../$@,SYS $(foreach file, $(SYS), $(OS9ATTR_TEXT) $@,SYS/$(file);) $(MAKDIR) $@,DEFS $(CD) defs; $(CPL) $(DEFS) ../$@,DEFS $(foreach file, $(DEFS), $(OS9ATTR_TEXT) $@,DEFS/$(file);) $(CPL) $(ROOTFILES) $@,. $(foreach file, $(ROOTFILES), $(OS9ATTR_TEXT) $@,$(file);) $(CPL) $(STARTUP) $@,startup $(OS9ATTR_TEXT) $@,startup $(DSK720KTANO): $(RM) $@ $(OS9FORMAT_DS80) -e -dr -c2 -q $@ -n"NitrOS-9/6809 Level 1" $(OS9GEN) $@ -d -b=$(BOOTFILE_DS80_TANO) -t=$(KERNELFILE_TANO) $(MAKDIR) $@,CMDS $(MAKDIR) $@,SYS $(MAKDIR) $@,DEFS $(CD) cmds; $(CP) $(CMDS) ../$@,CMDS $(foreach file, $(CMDS), $(OS9ATTR_EXEC) $@,CMDS/$(file);) $(OS9RENAME) $@,CMDS/$(WHICHSHELL) shell $(CD) sys; $(CPL) $(SYS) ../$@,SYS $(foreach file, $(SYS), $(OS9ATTR_TEXT) $@,SYS/$(file);) $(CD) defs; $(CPL) $(DEFS) ../$@,DEFS $(foreach file, $(DEFS), $(OS9ATTR_TEXT) $@,DEFS/$(file);) $(CPL) $(ROOTFILES) $@,. $(foreach file, $(ROOTFILES), $(OS9ATTR_TEXT) $@,$(file);) $(CPL) $(STARTUP) $@,startup $(OS9ATTR_TEXT) $@,startup $(MAKDIR) $@,NITROS9 $(MAKDIR) $@,NITROS9/6809L1 $(MAKDIR) $@,NITROS9/6809L1/CMDS $(CD) cmds; $(CP) $(MODULECMDS) ../$@,NITROS9/6809L1/CMDS $(foreach file, $(MODULECMDS), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/CMDS/$(file);) $(OS9RENAME) $@,NITROS9/6809L1/CMDS/$(WHICHSHELL) shell $(MAKDIR) $@,NITROS9/6809L1/MODULES $(MAKDIR) $@,NITROS9/6809L1/MODULES/BOOTTRACK $(CD) modules; $(CP) $(BOOTTRACK) ../$@,NITROS9/6809L1/MODULES/BOOTTRACK $(foreach file, $(BOOTTRACK), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/BOOTTRACK/$(file);) $(MAKDIR) $@,NITROS9/6809L1/MODULES/KERNEL $(CD) modules; $(CP) $(KERNEL) ../$@,NITROS9/6809L1/MODULES/KERNEL $(foreach file, $(KERNEL), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/KERNEL/$(file);) $(MAKDIR) $@,NITROS9/6809L1/MODULES/SYSMODS $(CD) modules; $(CP) $(SYSMODS) ../$@,NITROS9/6809L1/MODULES/SYSMODS $(foreach file, $(SYSMODS), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/SYSMODS/$(file);) $(MAKDIR) $@,NITROS9/6809L1/MODULES/CLOCKS $(CD) modules; $(CP) $(CLOCKS) ../$@,NITROS9/6809L1/MODULES/CLOCKS $(foreach file, $(CLOCKS), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/CLOCKS/$(file);) $(MAKDIR) $@,NITROS9/6809L1/MODULES/RBF $(CD) modules; $(CP) $(RBF) ../$@,NITROS9/6809L1/MODULES/RBF $(foreach file, $(RBF), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/RBF/$(file);) $(MAKDIR) $@,NITROS9/6809L1/MODULES/SCF $(CD) modules; $(CP) $(SCF) ../$@,NITROS9/6809L1/MODULES/SCF $(foreach file, $(SCF), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/SCF/$(file);) $(MAKDIR) $@,NITROS9/6809L1/MODULES/PIPE $(CD) modules; $(CP) $(PIPE) ../$@,NITROS9/6809L1/MODULES/PIPE $(foreach file, $(PIPE), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/PIPE/$(file);) $(MAKDIR) $@,NITROS9/6809L1/BOOTLISTS $(CD) bootlists; $(CPL) *.bl ../$@,NITROS9/6809L1/BOOTLISTS $(MAKDIR) $@,NITROS9/6809L1/SCRIPTS $(CD) scripts; $(CPL) mb* ../$@,NITROS9/6809L1/SCRIPTS