diff os9/level1/Makefile @ 33:7c5379eb406e

nitors9 version
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Sat, 14 Jul 2018 15:22:54 +0900
parents bd2b07db8917
children 7baffb867d70
line wrap: on
line diff
--- a/os9/level1/Makefile	Sat Jul 14 15:16:39 2018 +0900
+++ b/os9/level1/Makefile	Sat Jul 14 15:22:54 2018 +0900
@@ -1,39 +1,83 @@
-BINEX=../utils/binex
+
+OS9SRC=../../../../nitros9-code
+SRCDIR=$(OS9SRC)/level1/modules
+SRCCMD=$(OS9SRC)/level1/cmds
+
+A09 = ../../a09 -I $(OS9SRC)/defs/
+
+MOD =  pdisk init os9p1 os9p2 ioman pipe piper rbf scf term pty d0 d1 clock shell dir mdir sysgo boot shell
 
-all: Term Pty pdisk Init rom.s1
+all : ${MOD}
+
+clean : 
+	rm -f $(MOD) *.lst krn.asm 
+
+LST = -l $@.lst
+
+# our own module for sbc09
+# CoCoOS9's level1/os9p1.asm has wrong vector value, use our own
 
-Term: pty-dd.asm
-	os9asm pty-dd.asm -o=Term
-Pty: pty.asm
-	os9asm pty.asm -o=Pty
-pdisk: pdisk.asm
-	os9asm pdisk.asm -o=pdisk
-d0: d0.asm
-	os9asm d0.asm -o=d0
-p:  printer.asm
-	os9asm printer.asm -o=printer
+pdisk : 
+	$(A09) pdisk.asm -o pdisk $(LST) $(LST)
+
+boot : boot.asm
+	$(A09) boot.asm -o boot $(LST)
+
+#sysgo : sysgo.asm
+#	$(A09) sysgo.asm -o sysgo $(LST)
+
+init : init.asm
+	$(A09) ${SRCDIR}/init.asm -o $@ $(LST)
+#	$(A09) init.asm -o init $(LST)
+
+pty : pty.asm
+	$(A09) pty.asm -o pty $(LST)
+
+term : pty-dd.asm
+	$(A09) pty-dd.asm -o term $(LST)
+
+d0 : d0.asm
+	$(A09) d0.asm -o d0 $(LST)
 
-# Init can't be assembled by the cross assembler
-#Init: init.asm
-#	os9asm init.asm -o=Init
-Init: 
-	tr '\12' '\15' < init.asm > $(HOME)/OS9/init.asm
-	os9l1 asm init.asm o=Init
-	mv $(HOME)/OS9/CMDS/Init .
+d1 : d1.asm
+	$(A09) d1.asm -o d1 $(LST)
+
+clock :  clock.asm
+	$(A09) clock.asm -o clock $(LST)
+
+# os9 level1 moduels
 
-# part1.s1 is the core module "P1" - must be loaded at $f800
-# according to os9sysprog section 3.0
-# part2.s1 are all the other position independent modules
+shell : ${SRCCMD}/shell_21.asm 
+	$(A09) $< -o $@ $(LST)
+
+mdir : ${SRCCMD}/mdir.asm
+	$(A09) $< -o $@ $(LST)
+
+dir : ${SRCCMD}/dir.asm
+	$(A09) ${SRCCMD}/dir.asm -o dir $(LST)
+
+os9p1 :
+	cat  ${OS9SRC}//defs/coco.d ${SRCDIR}/kernel/krn.asm > krn.asm
+	$(A09) -I ../../../../nitros9-code/level1/modules/kernel/ krn.asm  -o os9p1 $(LST)
 
-part1.s1: OS9
-	$(BINEX) -o part1.s1 -a f000 -x f076 OS9
-part2.s1: OS9p2 SysGo Init IOMan SCF Shell Pty Term
-	$(BINEX) -o part2.s1 -a d000 OS9p2 SysGo Init IOMan SCF Shell Pty Term
-d64intrvect.s1: D64Intrvect
-	$(BINEX) -o d64intrvect.s1 -a ffe0 D64Intrvect
+os9p2 :
+	$(A09) ${SRCDIR}/kernel/krnp2.asm -o os9p2 $(LST)
+
+sysgo :
+	$(A09) sysgo.asm -o sysgo $(LST)
+
+ioman :
+	$(A09) ${SRCDIR}/ioman.asm -o ioman $(LST)
 
-rom.s1: part1.s1 part2.s1 d64intrvect.s1
-	cat part2.s1 d64intrvect.s1 part1.s1 >rom.s1
+pipe :
+	$(A09) ${SRCDIR}/pipe.asm -o pipe $(LST)
+
+piper :
+	$(A09) ${SRCDIR}/piper.asm -o piper $(LST)
 
-install: rom.s1
-	mv rom.s1 ../rom.s1
+rbf :
+	$(A09) ${SRCDIR}/rbf.asm -o rbf $(LST)
+
+scf :
+	$(A09) ${SRCDIR}/scf.asm -o scf $(LST)
+