changeset 2688:8d9ca53903e3 lwtools-port

Merged with latest tip
author Boisy Pitre <boisy.pitre@nuance.com>
date Wed, 18 Jul 2012 18:07:53 -0500
parents 5d700d9b9511 (current diff) f3b7ca8083fd (diff)
children 80d85940d03b
files level1/coco/modules/makefile level1/modules/rfmdrv.asm level2/coco3/modules/makefile
diffstat 11 files changed, 498 insertions(+), 194 deletions(-) [+]
line wrap: on
line diff
--- a/defs/drivewire.d	Sat Jul 14 18:18:59 2012 -0600
+++ b/defs/drivewire.d	Wed Jul 18 18:07:53 2012 -0500
@@ -71,7 +71,7 @@
 E_CRC      equ   $F3            Same as NitrOS-9 E$CRC
 
 * DW Globals Page Definitions (must be 256 bytes max)
-DW.StatCnt equ   15
+DW.StatCnt equ   15+16
            org   $00
 DW.StatTbl rmb   DW.StatCnt     page pointers for terminal device static storage
 DW.VIRQPkt rmb   Vi.PkSz
--- a/defs/os9.d	Sat Jul 14 18:18:59 2012 -0600
+++ b/defs/os9.d	Wed Jul 18 18:07:53 2012 -0500
@@ -328,8 +328,8 @@
 SS.MpGPB       RMB       1                   SetStat to request a Get/Put Buffer be mapped in workspace
 SS.Slots       RMB       1                   Network 4 slots? getstat
 
-               IFGT      Level-1
-
+*               IFGT      Level-1
+               IFNE      1
 * Level 2 Windowing
 SS.WnSet       RMB       1                   Set up High Level Windowing Information
 SS.MnSel       RMB       1                   Request High level Menu Handler take determine next event
--- a/level1/coco/bootfiles/makefile	Sat Jul 14 18:18:59 2012 -0600
+++ b/level1/coco/bootfiles/makefile	Wed Jul 18 18:07:53 2012 -0500
@@ -62,12 +62,15 @@
 		$(MD)/ddx0.dd $(MD)/x1.dd $(MD)/x2.dd $(MD)/x3.dd \
 		$(MD)/scf.mn \
 		$(MD)/scdwn.dr \
-		$(MD)/term_scdwn.dt \
 		$(MD)/n_scdwn.dd $(MD)/n1_scdwn.dd $(MD)/n2_scdwn.dd \
 		$(MD)/n3_scdwn.dd $(MD)/n4_scdwn.dd $(MD)/n5_scdwn.dd \
 		$(MD)/n6_scdwn.dd $(MD)/n7_scdwn.dd $(MD)/n8_scdwn.dd \
 		$(MD)/n9_scdwn.dd $(MD)/n10_scdwn.dd $(MD)/n11_scdwn.dd \
 		$(MD)/n12_scdwn.dd $(MD)/n13_scdwn.dd $(MD)/midi_scdwn.dd \
+		$(MD)/term_z_scdwn.dd \
+		$(MD)/z1_scdwn.dd $(MD)/z2_scdwn.dd $(MD)/z3_scdwn.dd \
+		$(MD)/z4_scdwn.dd $(MD)/z5_scdwn.dd $(MD)/z6_scdwn.dd \
+		$(MD)/z7_scdwn.dd \
 		$(MD)/scdwp.dr $(MD)/p_scdwp.dd \
 		$(MD)/pipeman.mn $(MD)/piper.dr $(MD)/pipe.dd \
 		$(MD)/clock_60hz $(MD)/clock2_dw3 \
@@ -86,6 +89,9 @@
 		$(MD)/n6_scdwn.dd $(MD)/n7_scdwn.dd $(MD)/n8_scdwn.dd \
 		$(MD)/n9_scdwn.dd $(MD)/n10_scdwn.dd $(MD)/n11_scdwn.dd \
 		$(MD)/n12_scdwn.dd $(MD)/n13_scdwn.dd $(MD)/midi_scdwn.dd \
+		$(MD)/z1_scdwn.dd $(MD)/z2_scdwn.dd $(MD)/z3_scdwn.dd \
+		$(MD)/z4_scdwn.dd $(MD)/z5_scdwn.dd $(MD)/z6_scdwn.dd \
+		$(MD)/z7_scdwn.dd \
 		$(MD)/scdwp.dr $(MD)/p_scdwp.dd \
 		$(MD)/pipeman.mn $(MD)/piper.dr $(MD)/pipe.dd \
 		$(MD)/clock_60hz $(MD)/clock2_dw3 \
@@ -97,12 +103,14 @@
 		$(MD)/ddx0.dd $(MD)/x1.dd $(MD)/x2.dd $(MD)/x3.dd \
 		$(MD)/scf.mn \
 		$(MD)/scdwn.dr \
-		$(MD)/term_scdwn.dt \
 		$(MD)/n_scdwn.dd $(MD)/n1_scdwn.dd $(MD)/n2_scdwn.dd \
 		$(MD)/n3_scdwn.dd $(MD)/n4_scdwn.dd $(MD)/n5_scdwn.dd \
 		$(MD)/n6_scdwn.dd $(MD)/n7_scdwn.dd $(MD)/n8_scdwn.dd \
 		$(MD)/n9_scdwn.dd $(MD)/n10_scdwn.dd $(MD)/n11_scdwn.dd \
 		$(MD)/n12_scdwn.dd $(MD)/n13_scdwn.dd $(MD)/midi_scdwn.dd \
+		$(MD)/term_z_scdwn.dd \
+		$(MD)/z1_scdwn.dd $(MD)/z2_scdwn.dd $(MD)/z3_scdwn.dd \
+		$(MD)/z4_scdwn.dd $(MD)/z5_scdwn.dd $(MD)/z6_scdwn.dd \
 		$(MD)/scdwp.dr $(MD)/p_scdwp.dd \
 		$(MD)/pipeman.mn $(MD)/piper.dr $(MD)/pipe.dd \
 		$(MD)/clock_60hz $(MD)/clock2_dw3 \
@@ -121,6 +129,9 @@
 		$(MD)/n6_scdwn.dd $(MD)/n7_scdwn.dd $(MD)/n8_scdwn.dd \
 		$(MD)/n9_scdwn.dd $(MD)/n10_scdwn.dd $(MD)/n11_scdwn.dd \
 		$(MD)/n12_scdwn.dd $(MD)/n13_scdwn.dd $(MD)/midi_scdwn.dd \
+		$(MD)/z1_scdwn.dd $(MD)/z2_scdwn.dd $(MD)/z3_scdwn.dd \
+		$(MD)/z4_scdwn.dd $(MD)/z5_scdwn.dd $(MD)/z6_scdwn.dd \
+		$(MD)/z7_scdwn.dd \
 		$(MD)/scdwp.dr $(MD)/p_scdwp.dd \
 		$(MD)/pipeman.mn $(MD)/piper.dr $(MD)/pipe.dd \
 		$(MD)/clock_60hz $(MD)/clock2_dw3 \
--- a/level1/coco/modules/makefile	Sat Jul 14 18:18:59 2012 -0600
+++ b/level1/coco/modules/makefile	Wed Jul 18 18:07:53 2012 -0500
@@ -5,18 +5,18 @@
 
 AFLAGS		+= -I$(LEVEL1)/modules
 
-CLOCKELIM       = -DRTCElim=1
-CLOCKDISTO2     = -DRTCDsto2=1
-CLOCKDISTO4     = -DRTCDsto4=1
-CLOCKBNB        = -DRTCBB=1
-CLOCKSMART      = -DRTCSmart=1 -DMPIFlag=1
-CLOCKHARRIS     = -DRTCHarrs=1
-CLOCKCLOUD9     = -DRTCCloud9=1
-CLOCKSOFT       = -DRTCSoft=1
-CLOCKMESSEMU    = -DRTCMessEmu=1
-CLOCKJVEMU      = -DRTCJVEmu=1
-TC3FLAGS        = $(AFLAGS) -DTC3=1 $(FLAGS)
-IDEFLAGS        = $(AFLAGS) -DIDE=1 $(FLAGS)
+CLOCKELIM       = -aRTCElim=1
+CLOCKDISTO2     = -aRTCDsto2=1
+CLOCKDISTO4     = -aRTCDsto4=1
+CLOCKBNB        = -aRTCBB=1
+CLOCKSMART      = -aRTCSmart=1 -aMPIFlag=1
+CLOCKHARRIS     = -aRTCHarrs=1
+CLOCKCLOUD9     = -aRTCCloud9=1
+CLOCKSOFT       = -aRTCSoft=1
+CLOCKMESSEMU    = -aRTCMessEmu=1
+CLOCKJVEMU      = -aRTCJVEmu=1
+TC3FLAGS        = $(AFLAGS) -aTC3=1 $(FLAGS)
+IDEFLAGS        = $(AFLAGS) -aIDE=1 $(FLAGS)
 
 DEPENDS		= ./makefile
 TPB		= $(3RDPARTY)/booters
@@ -50,10 +50,13 @@
 		nil.dd p_scbbp.dd p_scdwp.dd pipe.dd ssp.dd \
 		term_scbbt.dt term_sc6551.dt t1_scbbt.dd t2_sc6551.dd t3_sc6551.dd \
 		term32.dt term51.dt \
-		scdwn.dr term_scdwn.dt n_scdwn.dd n1_scdwn.dd n2_scdwn.dd \
-		n3_scdwn.dd n4_scdwn.dd n5_scdwn.dd n6_scdwn.dd n7_scdwn.dd \
-		n8_scdwn.dd n9_scdwn.dd n10_scdwn.dd n11_scdwn.dd n12_scdwn.dd \
-		n13_scdwn.dd midi_scdwn.dd
+		scdwn.dr term_scdwn.dt \
+		n_scdwn.dd n1_scdwn.dd n2_scdwn.dd n3_scdwn.dd n4_scdwn.dd n5_scdwn.dd \
+		n6_scdwn.dd n7_scdwn.dd n8_scdwn.dd n9_scdwn.dd n10_scdwn.dd \
+		n11_scdwn.dd n12_scdwn.dd n13_scdwn.dd midi_scdwn.dd \
+		term_z_scdwn.dd \
+		z1_scdwn.dd z2_scdwn.dd z3_scdwn.dd z4_scdwn.dd z5_scdwn.dd \
+		z6_scdwn.dd z7_scdwn.dd
 
 PIPE		= pipeman.mn \
 		piper.dr \
@@ -81,22 +84,22 @@
 
 # DriveWire 3
 boot_dw3_coco1: boot_dw3.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DBAUD38400=1
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aBAUD38400=1
 
 dw3_coco1.sb: dw3.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DBAUD38400=1
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aBAUD38400=1
 
 boot_1773_6ms:	boot_1773.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=0 -DSTEP=0
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aDNum=0 -aSTEP=0
 
 boot_1773_30ms:	boot_1773.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=0 -DSTEP=3
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aDNum=0 -aSTEP=3
 
 rb1773_scii_ff74.dr:	rb1773.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DSCII=1
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aSCII=1
 
 rb1773_scii_ff58.dr:	rb1773.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DSCII=1 -DSCIIALT=1
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aSCII=1 -aSCIIALT=1
 
 # TC^3 SCSI Driver
 lltc3.dr: llscsi.asm
@@ -107,120 +110,144 @@
 	$(AS) $(ASOUT)$@ $< $(IDEFLAGS)
 
 # Floppy descriptors
-SSDD35		= -DCyls=35 -DSides=1 -DSectTrk=18 -DSectTrk0=18 \
-		-DInterlv=3 -DSAS=8 -DDensity=1
-DSDD40		= -DCyls=40 -DSides=2 -DSectTrk=18 -DSectTrk0=18 \
-		-DInterlv=3 -DSAS=8 -DDensity=1
-DSDD80		= -DCyls=80 -DSides=2 -DSectTrk=18 -DSectTrk0=18 \
-		-DInterlv=3 -DSAS=8 -DDensity=1 -DD35
+SSDD35		= -aCyls=35 -aSides=1 -aSectTrk=18 -aSectTrk0=18 \
+		-aInterlv=3 -aSAS=8 -aDensity=1
+DSDD40		= -aCyls=40 -aSides=2 -aSectTrk=18 -aSectTrk0=18 \
+		-aInterlv=3 -aSAS=8 -aDensity=1
+DSDD80		= -aCyls=80 -aSides=2 -aSectTrk=18 -aSectTrk0=18 \
+		-aInterlv=3 -aSAS=8 -aDensity=1 -aD35
 
 ddd0_35s.dd: rb1773desc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) $(SSDD35) -DDNum=0 -DDD=1
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) $(SSDD35) -aDNum=0 -aDD=1
 
 d0_35s.dd: rb1773desc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) $(SSDD35) -DDNum=0
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) $(SSDD35) -aDNum=0
 
 d1_35s.dd: rb1773desc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) $(SSDD35) -DDNum=1
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) $(SSDD35) -aDNum=1
 
 d2_35s.dd: rb1773desc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) $(SSDD35) -DDNum=2
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) $(SSDD35) -aDNum=2
 
 d3_35s.dd: rb1773desc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) $(SSDD35) -DDNum=3
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) $(SSDD35) -aDNum=3
 
 ddd0_40d.dd: rb1773desc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD40) -DDNum=0 -DDD=1
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD40) -aDNum=0 -aDD=1
 
 d0_40d.dd: rb1773desc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD40) -DDNum=0
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD40) -aDNum=0
 
 d1_40d.dd: rb1773desc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD40) -DDNum=1
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD40) -aDNum=1
 
 d2_40d.dd: rb1773desc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD40) -DDNum=2
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD40) -aDNum=2
 
 ddd0_80d.dd: rb1773desc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD80) -DDNum=0 -DDD=1
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD80) -aDNum=0 -aDD=1
 
 d0_80d.dd: rb1773desc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD80) -DDNum=0
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD80) -aDNum=0
 
 d1_80d.dd: rb1773desc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD80) -DDNum=1
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD80) -aDNum=1
 
 d2_80d.dd: rb1773desc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD80) -DDNum=2
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD80) -aDNum=2
 
 # DriveWire 3 SCF descriptors
 term_scdwn.dt: scdwndesc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=0
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aAddr=0
 
 n_scdwn.dd: scdwndesc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=255
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aAddr=255
 
 n1_scdwn.dd: scdwndesc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=1
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aAddr=1
 
 n2_scdwn.dd: scdwndesc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=2
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aAddr=2
 
 n3_scdwn.dd: scdwndesc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=3
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aAddr=3
 
 n4_scdwn.dd: scdwndesc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=4
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aAddr=4
 
 n5_scdwn.dd: scdwndesc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=5
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aAddr=5
 
 n6_scdwn.dd: scdwndesc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=6
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aAddr=6
 
 n7_scdwn.dd: scdwndesc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=7
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aAddr=7
 
 n8_scdwn.dd: scdwndesc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=8
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aAddr=8
 
 n9_scdwn.dd: scdwndesc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=9
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aAddr=9
 
 n10_scdwn.dd: scdwndesc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=10
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aAddr=10
 
 n11_scdwn.dd: scdwndesc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=11
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aAddr=11
 
 n12_scdwn.dd: scdwndesc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=12
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aAddr=12
 
 n13_scdwn.dd: scdwndesc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=13
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aAddr=13
 
 midi_scdwn.dd: scdwndesc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=14
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aAddr=14
+
+term_z_scdwn.dd: scdwndesc.asm
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aAddr=16
+
+z1_scdwn.dd: scdwndesc.asm
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aAddr=17
+
+z2_scdwn.dd: scdwndesc.asm
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aAddr=18
+
+z3_scdwn.dd: scdwndesc.asm
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aAddr=19
+
+z4_scdwn.dd: scdwndesc.asm
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aAddr=20
+
+z5_scdwn.dd: scdwndesc.asm
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aAddr=21
+
+z6_scdwn.dd: scdwndesc.asm
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aAddr=22
+
+z7_scdwn.dd: scdwndesc.asm
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aAddr=23
 
 # DriveWire 3 RBF descriptors
 ddx0.dd: dwdesc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DDD=1 -DDNum=0
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aDD=1 -aDNum=0
 
 x0.dd: dwdesc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=0
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aDNum=0
 
 x1.dd: dwdesc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=1
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aDNum=1
 
 x2.dd: dwdesc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=2
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aDNum=2
 
 x3.dd: dwdesc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=3
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aDNum=3
 
 # TC^3 SCSI Descriptors
 dds0_tc3.dd: superdesc.asm
-	$(AS) $(ASOUT)$@ $< $(TC3FLAGS) $(ID0) -DDD=1
+	$(AS) $(ASOUT)$@ $< $(TC3FLAGS) $(ID0) -aDD=1
 
 s0_tc3.dd: superdesc.asm
 	$(AS) $(ASOUT)$@ $< $(TC3FLAGS) $(ID0) $(SCSI_HD)
@@ -248,7 +275,7 @@
 
 # IDE Descriptors
 ddi0_ide.dd: superdesc.asm
-	$(AS) $(ASOUT)$@ $< $(IDEFLAGS) $(MASTER) -DDD=1
+	$(AS) $(ASOUT)$@ $< $(IDEFLAGS) $(MASTER) -aDD=1
 
 i0_ide.dd: superdesc.asm
 	$(AS) $(ASOUT)$@ $< $(IDEFLAGS) $(MASTER)
@@ -261,41 +288,41 @@
 
 # RFM descriptors
 ddy0.dd: rfmdesc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DDD=1 -DDNum=0
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aDD=1 -aDNum=0
 
 y0.dd: rfmdesc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=0
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aDNum=0
 
 y1.dd: rfmdesc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=1
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aDNum=1
 
 y2.dd: rfmdesc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=2
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aDNum=2
 
 y3.dd: rfmdesc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=3
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aDNum=3
 
 rel: rel.asm
-	$(AS) $(AFLAGS) $(ASOUT)$@ $< -DDragon64=0
+	$(AS) $(AFLAGS) $(ASOUT)$@ $< -aDragon64=0
 
 sysgo_dd: sysgo.asm
-	$(AS) $(AFLAGS) $(ASOUT)$@ $< -DDD=1
+	$(AS) $(AFLAGS) $(ASOUT)$@ $< -aDD=1
 
 sysgo_h0: sysgo.asm
 	$(AS) $(AFLAGS) $(ASOUT)$@ $<
 
 # Clocks
 clock_60hz: clock.asm
-	$(AS) $(AFLAGS) $(ASOUT)$@ $< -DPwrLnFrq=60
+	$(AS) $(AFLAGS) $(ASOUT)$@ $< -aPwrLnFrq=60
 
 clock_50hz: clock.asm
-	$(AS) $(AFLAGS) $(ASOUT)$@ $< -DPwrLnFrq=50
+	$(AS) $(AFLAGS) $(ASOUT)$@ $< -aPwrLnFrq=50
 
 clock2_bnb: clock2_ds1315.asm
-	$(AS) $(AFLAGS) $(ASOUT)$@ $< -DBNB=1
+	$(AS) $(AFLAGS) $(ASOUT)$@ $< -aBNB=1
 
 clock2_cloud9: clock2_ds1315.asm
-	$(AS) $(AFLAGS) $(ASOUT)$@ $< -DCLOUD9=1
+	$(AS) $(AFLAGS) $(ASOUT)$@ $< -aCLOUD9=1
 
 clean:
 	$(CD) kernel; make $@
--- a/level1/modules/dw3.asm	Sat Jul 14 18:18:59 2012 -0600
+++ b/level1/modules/dw3.asm	Wed Jul 18 18:07:53 2012 -0500
@@ -352,12 +352,40 @@
 
 ; save back D on stack and build our U
 IRQGotOp       pshs      d
-          * mode switch on bits 7+6 of A: 00 = vserial, 01 = system, 10 = wirebug?, 11 = ?							
+          * mode switch on bits 7+6 of A: 00 = vserial, 01 = vwindow, 10 = wirebug?, 11 = ?							
                anda      #$C0                ; mask last 6 bits
                beq       mode00              ; virtual serial mode
           					; future - handle other modes
+               cmpa      #%01000000          ; vwindow?
+               beq       mode01
                lbra      IRQExit             ; for now, bail
 
+* Virtual Window Handler
+mode01
+               lda       ,s
+               anda      #%00110000
+               beq       key
+               lbra      IRQExit
+
+key
+               lda       ,s
+               anda      #$0F
+               ora       #$10
+               ifgt      Level-1
+               ldx       <D.DWStat
+               else      
+               ldx       >D.DWStat
+               endc      
+; cheat: we know DW.StatTbl is at offset $00 from D.DWStat, do not bother with leax
+;			leax    DW.StatTbl,x
+               lda       a,x
+               clrb      
+               tfr       d,u
+               puls      d
+               lbra      IRQPutch
+
+               
+* Virtual Serial Handler
 mode00         lda       ,s                  ; restore A		  
                anda      #$0F                ; mask first 4 bits, a is now port #+1
                beq       IRQCont             ; if we're here with 0 in the port, its not really a port # (can we jump straight to status?)
--- a/level1/modules/rfmdrv.asm	Sat Jul 14 18:18:59 2012 -0600
+++ b/level1/modules/rfmdrv.asm	Wed Jul 18 18:07:53 2012 -0500
@@ -7,8 +7,7 @@
 
          ifp1
          	use   defsfile
-;         	use   rfmdefs
-		use   rfm.d
+         	use   rfm.d
          endc
          
 tylg     set   Drivr+Objct   
--- a/level1/modules/scdwn.asm	Sat Jul 14 18:18:59 2012 -0600
+++ b/level1/modules/scdwn.asm	Wed Jul 18 18:07:53 2012 -0500
@@ -1,5 +1,5 @@
 ********************************************************************
-* scdwn - CoCo DriveWire Network Driver
+* scdwn - DriveWire Network Driver
 *
 * $Id$
 *
@@ -50,14 +50,13 @@
 * Added FASTSERWRITE support
 *
                nam       scdwn
-               ttl       CoCo DriveWire Network Driver
+               ttl       DriveWire Network Driver
 
                ifp1      
                use       defsfile
                use       drivewire.d
                endc      
 
-
 tylg           set       Drivr+Objct
 atrv           set       ReEnt+Rev
 rev            set       $00
@@ -431,18 +430,25 @@
 
 GetKySns
                cmpa      #SS.KySns
-               bne       UnSvcErr            ; no, we have no more answers, report error
+               bne       GetSSMntr           ; no, we have no more answers, report error
 * Get key sense byte from server and return to caller
-               pshs      u
+               pshs      a,x,u
+               leax      ,s
+               ldy       #$001
                ifgt      Level-1
                ldu       <D.DWSubAddr
                else      
                ldu       >D.DWSubAddr
-               jsr       3,u
+               jsr       DW$Read,u
                endc      
-               puls      u
+               puls      a,x,u
                sta       R$A,x
+               puls      cc,dp,pc            ; restore Carry status, system DP, return			
 
+GetSSMntr      cmpa      #SS.Montr
+               bne       UnSvcErr            ; no, we have no more answers, report error
+               lda       #$01
+               sta       R$A,x
                puls      cc,dp,pc            ; restore Carry status, system DP, return			
 
 * Advertise Stat Code to server
@@ -463,7 +469,7 @@
                else      
                ldu       >D.DWSubAddr
                endc      
-               jsr       6,u
+               jsr       DW$Write,u
                leas      3,s
                puls      a,y,x,u,pc
 
@@ -495,6 +501,8 @@
                beq       ex
                cmpa      #SS.SSig
                beq       ssig
+               cmpa      #SS.Montr
+               beq       ex
                cmpa      #SS.Relea
                bne       donebad
 relea          lda       PD.CPR,y            get curr proc #
@@ -528,7 +536,7 @@
                else      
                ldu       >D.DWSubAddr
                endc      
-               jsr       6,u
+               jsr       DW$Write,u
                clrb      
 ssbye          rts       
 
--- a/level1/modules/scdwndesc.asm	Sat Jul 14 18:18:59 2012 -0600
+++ b/level1/modules/scdwndesc.asm	Wed Jul 18 18:07:53 2012 -0500
@@ -53,9 +53,14 @@
          fcb   $01        echo:0=no echo
          fcb   $01        auto line feed:0=off
          ELSE
+         IFGT  Addr-14
+         fcb   $01        echo:0=no echo
+         fcb   $01        auto line feed:0=off
+         ELSE
          fcb   $00        echo:0=no echo
          fcb   $00        auto line feed:0=off
          ENDC
+         ENDC
          fcb   $00        end of line null count
          fcb   $00        pause:0=no end of page pause
          fcb   24         lines per page (not a safe assumption anymore!)
@@ -100,7 +105,17 @@
          IFEQ  Addr-14
          fcs  /MIDI/
          ELSE
-         IFNE  Addr-255
+         IFEQ  Addr-255
+         fcs   'N'
+         ELSE
+         IFGT  Addr-15
+         IFEQ  Addr-16
+         fcs   /Term/
+         ELSE
+         fcc   /Z/
+         fcb   176+Addr-16
+         ENDC
+         ELSE
          fcc   /N/
          IFGT  Addr-9
          fcc   '1'
@@ -108,8 +123,7 @@
          ELSE
          fcb   176+Addr
          ENDC
-         ELSE
-         fcs   /N/
+         ENDC
          ENDC
          ENDC
          ENDC
--- a/level2/coco3/bootfiles/makefile	Sat Jul 14 18:18:59 2012 -0600
+++ b/level2/coco3/bootfiles/makefile	Wed Jul 18 18:07:53 2012 -0500
@@ -32,6 +32,9 @@
 		$(MD)/n6_scdwn.dd $(MD)/n7_scdwn.dd $(MD)/n8_scdwn.dd \
 		$(MD)/n9_scdwn.dd $(MD)/n10_scdwn.dd $(MD)/n11_scdwn.dd \
 		$(MD)/n12_scdwn.dd $(MD)/n13_scdwn.dd $(MD)/midi_scdwn.dd \
+		$(MD)/z1_scdwn.dd $(MD)/z2_scdwn.dd $(MD)/z3_scdwn.dd \
+		$(MD)/z4_scdwn.dd $(MD)/z5_scdwn.dd $(MD)/z6_scdwn.dd \
+		$(MD)/z7_scdwn.dd \
 		$(MD)/scdwp.dr $(MD)/p_scdwp.dd \
 		$(MD)/pipeman.mn $(MD)/piper.dr $(MD)/pipe.dd \
 		$(MD)/clock_60hz $(MD)/clock2_dw3_becker
@@ -41,23 +44,24 @@
 		$(MD)/rbf.mn \
 		$(MD)/rbdw3.dr $(MD)/dw3.sb \
 		$(MD)/ddx0.dd $(MD)/x1.dd $(MD)/x2.dd $(MD)/x3.dd \
-		$(MD)/rb1773.dr $(MD)/d0_40d.dd $(MD)/d1_40d.dd \
-		$(MD)/d2_40d.dd $(MD)/ddd0_40d.dd \
 		$(MD)/scf.mn $(MD)/vtio.dr \
 		$(MD)/keydrv_cc3.sb $(MD)/joydrv_joy.sb $(MD)/snddrv_cc3.sb \
 		$(MD)/cowin.io \
 		$(MD)/term_win80.dt \
 		$(MD)/w.dw $(MD)/w1.dw $(MD)/w2.dw $(MD)/w3.dw $(MD)/w4.dw \
 		$(MD)/w5.dw $(MD)/w6.dw $(MD)/w7.dw \
+		$(MD)/scdwn.dr \
+		$(MD)/n_scdwn.dd $(MD)/n1_scdwn.dd $(MD)/n2_scdwn.dd \
+		$(MD)/n3_scdwn.dd $(MD)/n4_scdwn.dd $(MD)/n5_scdwn.dd \
+		$(MD)/n6_scdwn.dd $(MD)/n7_scdwn.dd $(MD)/n8_scdwn.dd \
+		$(MD)/n9_scdwn.dd $(MD)/n10_scdwn.dd $(MD)/n11_scdwn.dd \
+		$(MD)/n12_scdwn.dd $(MD)/n13_scdwn.dd $(MD)/midi_scdwn.dd \
+		$(MD)/z1_scdwn.dd $(MD)/z2_scdwn.dd $(MD)/z3_scdwn.dd \
+		$(MD)/z4_scdwn.dd $(MD)/z5_scdwn.dd $(MD)/z6_scdwn.dd \
+		$(MD)/z7_scdwn.dd \
 		$(MD)/scdwp.dr $(MD)/p_scdwp.dd \
 		$(MD)/pipeman.mn $(MD)/piper.dr $(MD)/pipe.dd \
 		$(MD)/clock_60hz $(MD)/clock2_dw3
-#		$(MD)/scdwn.dr \
-#		$(MD)/n_scdwn.dd $(MD)/n1_scdwn.dd $(MD)/n2_scdwn.dd \
-#		$(MD)/n3_scdwn.dd $(MD)/n4_scdwn.dd $(MD)/n5_scdwn.dd \
-#		$(MD)/n6_scdwn.dd $(MD)/n7_scdwn.dd $(MD)/n8_scdwn.dd \
-#		$(MD)/n9_scdwn.dd $(MD)/n10_scdwn.dd $(MD)/n11_scdwn.dd \
-#		$(MD)/n12_scdwn.dd $(MD)/n13_scdwn.dd $(MD)/midi_scdwn.dd \
 
 # NitrOS-9 disk bootfile to allow booting from DriveWire 3 server
 # Headless mode
@@ -68,13 +72,17 @@
 		$(MD)/rb1773.dr $(MD)/d0_40d.dd $(MD)/d1_40d.dd \
 		$(MD)/d2_40d.dd $(MD)/ddd0_40d.dd \
 		$(MD)/scf.mn $(MD)/vtio.dr \
-		$(MD)/scdwn.dr $(MD)/term_scdwn.dt \
+		$(MD)/scdwn.dr \
 		$(MD)/n_scdwn.dd $(MD)/n1_scdwn.dd $(MD)/n2_scdwn.dd \
 		$(MD)/n3_scdwn.dd $(MD)/n4_scdwn.dd $(MD)/n5_scdwn.dd \
 		$(MD)/n6_scdwn.dd $(MD)/n7_scdwn.dd $(MD)/n8_scdwn.dd \
 		$(MD)/n9_scdwn.dd $(MD)/n10_scdwn.dd $(MD)/n11_scdwn.dd \
 		$(MD)/n12_scdwn.dd $(MD)/n13_scdwn.dd $(MD)/midi_scdwn.dd \
 		$(MD)/scdwp.dr $(MD)/p_scdwp.dd \
+		$(MD)/term_z_scdwn.dd \
+		$(MD)/z1_scdwn.dd $(MD)/z2_scdwn.dd $(MD)/z3_scdwn.dd \
+		$(MD)/z4_scdwn.dd $(MD)/z5_scdwn.dd $(MD)/z6_scdwn.dd \
+		$(MD)/z7_scdwn.dd \
 		$(MD)/pipeman.mn $(MD)/piper.dr $(MD)/pipe.dd \
 		$(MD)/clock_60hz $(MD)/clock2_dw3
 
--- a/level2/coco3/modules/makefile	Sat Jul 14 18:18:59 2012 -0600
+++ b/level2/coco3/modules/makefile	Wed Jul 18 18:07:53 2012 -0500
@@ -5,18 +5,18 @@
 
 AFLAGS		+= -I$(LEVEL1)/modules
 
-CLOCKELIM       = -DRTCElim=1
-CLOCKDISTO2     = -DRTCDsto2=1
-CLOCKDISTO4     = -DRTCDsto4=1
-CLOCKBNB        = -DRTCBB=1
-CLOCKSMART      = -DRTCSmart=1 -DMPIFlag=1
-CLOCKHARRIS     = -DRTCHarrs=1
-CLOCKCLOUD9     = -DRTCCloud9=1
-CLOCKSOFT       = -DRTCSoft=1
-CLOCKMESSEMU    = -DRTCMessEmu=1
-CLOCKJVEMU      = -DRTCJVEmu=1
-TC3FLAGS        = $(AFLAGS) -DTC3=1 $(FLAGS)
-IDEFLAGS        = $(AFLAGS) -DIDE=1 $(FLAGS)
+CLOCKELIM       = -aRTCElim=1
+CLOCKDISTO2     = -aRTCDsto2=1
+CLOCKDISTO4     = -aRTCDsto4=1
+CLOCKBNB        = -aRTCBB=1
+CLOCKSMART      = -aRTCSmart=1 -aMPIFlag=1
+CLOCKHARRIS     = -aRTCHarrs=1
+CLOCKCLOUD9     = -aRTCCloud9=1
+CLOCKSOFT       = -aRTCSoft=1
+CLOCKMESSEMU    = -aRTCMessEmu=1
+CLOCKJVEMU      = -aRTCJVEmu=1
+TC3FLAGS        = $(AFLAGS) -aTC3=1 $(FLAGS)
+IDEFLAGS        = $(AFLAGS) -aIDE=1 $(FLAGS)
 
 DEPENDS		= ./makefile
 TPB		= $(3RDPARTY)/booters
@@ -65,7 +65,10 @@
 		n1_scdwn.dd n2_scdwn.dd n3_scdwn.dd \
                 n4_scdwn.dd n5_scdwn.dd n6_scdwn.dd n7_scdwn.dd \
 		n8_scdwn.dd n9_scdwn.dd n10_scdwn.dd n11_scdwn.dd \
-                n12_scdwn.dd n13_scdwn.dd midi_scdwn.dd
+                n12_scdwn.dd n13_scdwn.dd midi_scdwn.dd \
+		term_z_scdwn.dd \
+		z1_scdwn.dd z2_scdwn.dd z3_scdwn.dd z4_scdwn.dd z5_scdwn.dd \
+		z6_scdwn.dd z7_scdwn.dd
 
 PIPE		= pipeman.mn pipeman_named.mn \
 		piper.dr \
@@ -102,64 +105,64 @@
 
 # DriveWire 3 Becker Booter
 boot_dw3_becker: boot_dw3.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DBECKER=1
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aBECKER=1
 
 # DriveWire 3 Becker Submodule
 dw3_becker.sb: dw3.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DBECKER=1
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aBECKER=1
 
 # CoGrf/CoVDG Modules
 cogrf.io: cowin.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DCoGrf=1
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aCoGrf=1
 
 covdg.io: covdg.asm
-	$(AS) $(AFLAGS) $(ASOUT)$@ $< -DCOCO2=1
+	$(AS) $(AFLAGS) $(ASOUT)$@ $< -aCOCO2=1
 
 covdg_small.io: covdg.asm
 	$(AS) $(AFLAGS) $(ASOUT)$@ $<
 
 # Disto SC-II Drivers
 rb1773_scii_ff74.dr:    rb1773.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DSCII=1
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aSCII=1
                                                                             
 rb1773_scii_ff58.dr:    rb1773.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DSCII=1 -DSCIIALT=1
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aSCII=1 -aSCIIALT=1
                                                                             
 # REL Modules
 rel_32: rel.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DWidth=32
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aWidth=32
 
 rel_40: rel.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DWidth=40
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aWidth=40
 
 rel_80: rel.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DWidth=80
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aWidth=80
 
 rel_32_50hz: rel.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DWidth=32 -DTkPerSec=50
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aWidth=32 -aTkPerSec=50
 
 rel_40_50hz: rel.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DWidth=40 -DTkPerSec=50
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aWidth=40 -aTkPerSec=50
 
 rel_80_50hz: rel.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DWidth=80 -DTkPerSec=50
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aWidth=80 -aTkPerSec=50
 
 # Floppy Booters
 boot_1773_6ms: boot_1773.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DSTEP=0
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aSTEP=0
 
 boot_1773_30ms: boot_1773.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DSTEP=3
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aSTEP=3
 
 # SysGo Modules
 sysgo_dd: sysgo.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DDD=1
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aDD=1
 	
 sysgo_h0: sysgo.asm
 	$(AS) $< $(ASOUT)$@ $(AFLAGS)
 	
 sysgo_rom: sysgo.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DROM=1
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aROM=1
 	
 # TC^3 SCSI Driver
 lltc3.dr: llscsi.asm
@@ -170,145 +173,169 @@
 	$(AS) $(ASOUT)$@ $< $(IDEFLAGS)
 
 # Floppy descriptors
-SSDD35		= -DCyls=35 -DSides=1 -DSectTrk=18 -DSectTrk0=18 \
-		-DInterlv=3 -DSAS=8 -DDensity=1
-DSDD40		= -DCyls=40 -DSides=2 -DSectTrk=18 -DSectTrk0=18 \
-		-DInterlv=3 -DSAS=8 -DDensity=1
-DSDD80		= -DCyls=80 -DSides=2 -DSectTrk=18 -DSectTrk0=18 \
-		-DInterlv=3 -DSAS=8 -DDensity=1 -DD35
+SSDD35		= -aCyls=35 -aSides=1 -aSectTrk=18 -aSectTrk0=18 \
+		-aInterlv=3 -aSAS=8 -aDensity=1
+DSDD40		= -aCyls=40 -aSides=2 -aSectTrk=18 -aSectTrk0=18 \
+		-aInterlv=3 -aSAS=8 -aDensity=1
+DSDD80		= -aCyls=80 -aSides=2 -aSectTrk=18 -aSectTrk0=18 \
+		-aInterlv=3 -aSAS=8 -aDensity=1 -aD35
 
 ddd0_35s.dd: rb1773desc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) $(SSDD35) -DDNum=0 -DDD=1
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) $(SSDD35) -aDNum=0 -aDD=1
 
 d0_35s.dd: rb1773desc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) $(SSDD35) -DDNum=0
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) $(SSDD35) -aDNum=0
 
 d1_35s.dd: rb1773desc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) $(SSDD35) -DDNum=1
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) $(SSDD35) -aDNum=1
 
 d2_35s.dd: rb1773desc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) $(SSDD35) -DDNum=2
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) $(SSDD35) -aDNum=2
 
 d3_35s.dd: rb1773desc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) $(SSDD35) -DDNum=3
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) $(SSDD35) -aDNum=3
 
 ddd0_40d.dd: rb1773desc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD40) -DDNum=0 -DDD=1
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD40) -aDNum=0 -aDD=1
 
 d0_40d.dd: rb1773desc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD40) -DDNum=0
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD40) -aDNum=0
 
 d1_40d.dd: rb1773desc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD40) -DDNum=1
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD40) -aDNum=1
 
 d2_40d.dd: rb1773desc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD40) -DDNum=2
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD40) -aDNum=2
 
 ddd0_80d.dd: rb1773desc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD80) -DDNum=0 -DDD=1
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD80) -aDNum=0 -aDD=1
 
 d0_80d.dd: rb1773desc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD80) -DDNum=0
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD80) -aDNum=0
 
 d1_80d.dd: rb1773desc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD80) -DDNum=1
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD80) -aDNum=1
 
 d2_80d.dd: rb1773desc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD80) -DDNum=2
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD80) -aDNum=2
 
 # RAM Disk descriptors
 r0_8k.dd: r0.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DRAMSize=8
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aRAMSize=8
 
 ddr0_8k.dd: r0.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DRAMSize=8 -DDD=1
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aRAMSize=8 -aDD=1
 
 r0_96k.dd: r0.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DRAMSize=96
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aRAMSize=96
 
 ddr0_96k.dd: r0.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DRAMSize=96 -DDD=1
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aRAMSize=96 -aDD=1
 
 r0_128k.dd: r0.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DRAMSize=128
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aRAMSize=128
 
 ddr0_128k.dd: r0.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DRAMSize=128 -DDD=1
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aRAMSize=128 -aDD=1
 
 r0_192k.dd: r0.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DRAMSize=192
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aRAMSize=192
 
 ddr0_192k.dd: r0.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DRAMSize=192 -DDD=1
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aRAMSize=192 -aDD=1
 
 # DriveWire 3 SCF descriptors
 term_scdwn.dt: scdwndesc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=0
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aAddr=0
 
 n_scdwn.dd: scdwndesc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=255
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aAddr=255
 
 n1_scdwn.dd: scdwndesc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=1
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aAddr=1
 
 n2_scdwn.dd: scdwndesc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=2
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aAddr=2
 
 n3_scdwn.dd: scdwndesc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=3
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aAddr=3
 
 n4_scdwn.dd: scdwndesc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=4
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aAddr=4
 
 n5_scdwn.dd: scdwndesc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=5
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aAddr=5
 
 n6_scdwn.dd: scdwndesc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=6
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aAddr=6
 
 n7_scdwn.dd: scdwndesc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=7
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aAddr=7
 
 n8_scdwn.dd: scdwndesc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=8
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aAddr=8
 
 n9_scdwn.dd: scdwndesc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=9
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aAddr=9
 
 n10_scdwn.dd: scdwndesc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=10
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aAddr=10
 
 n11_scdwn.dd: scdwndesc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=11
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aAddr=11
 
 n12_scdwn.dd: scdwndesc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=12
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aAddr=12
 
 n13_scdwn.dd: scdwndesc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=13
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aAddr=13
 
 midi_scdwn.dd: scdwndesc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=14
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aAddr=14
+
+term_z_scdwn.dd: scdwndesc.asm
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aAddr=16
+
+z1_scdwn.dd: scdwndesc.asm
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aAddr=17
+
+z2_scdwn.dd: scdwndesc.asm
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aAddr=18
+
+z3_scdwn.dd: scdwndesc.asm
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aAddr=19
+
+z4_scdwn.dd: scdwndesc.asm
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aAddr=20
+
+z5_scdwn.dd: scdwndesc.asm
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aAddr=21
+
+z6_scdwn.dd: scdwndesc.asm
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aAddr=22
+
+z7_scdwn.dd: scdwndesc.asm
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aAddr=23
 
 # DriveWire 3 RBF descriptors
 ddx0.dd: dwdesc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DDD=1 -DDNum=0
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aDD=1 -aDNum=0
 
 x0.dd: dwdesc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=0
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aDNum=0
 
 x1.dd: dwdesc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=1
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aDNum=1
 
 x2.dd: dwdesc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=2
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aDNum=2
 
 x3.dd: dwdesc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=3
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aDNum=3
 
 # TC^3 SCSI Descriptors
 dds0_tc3.dd: superdesc.asm
-	$(AS) $(ASOUT)$@ $< $(TC3FLAGS) $(ID0) -DDD=1
+	$(AS) $(ASOUT)$@ $< $(TC3FLAGS) $(ID0) -aDD=1
 
 s0_tc3.dd: superdesc.asm
 	$(AS) $(ASOUT)$@ $< $(TC3FLAGS) $(ID0) $(SCSI_HD)
@@ -336,7 +363,7 @@
 
 # IDE Descriptors
 ddi0_ide.dd: superdesc.asm
-	$(AS) $(ASOUT)$@ $< $(IDEFLAGS) $(MASTER) -DDD=1
+	$(AS) $(ASOUT)$@ $< $(IDEFLAGS) $(MASTER) -aDD=1
 
 i0_ide.dd: superdesc.asm
 	$(AS) $(ASOUT)$@ $< $(IDEFLAGS) $(MASTER)
@@ -349,35 +376,35 @@
 
 # RFM descriptors
 ddy0.dd: rfmdesc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DDD=1 -DDNum=0
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aDD=1 -aDNum=0
 
 y0.dd: rfmdesc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=0
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aDNum=0
 
 y1.dd: rfmdesc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=1
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aDNum=1
 
 y2.dd: rfmdesc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=2
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aDNum=2
 
 y3.dd: rfmdesc.asm
-	$(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=3
+	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aDNum=3
 
 # Clocks
 clock_60hz: clock.asm
-	$(AS) $(AFLAGS) $(ASOUT)$@ $< -DPwrLnFrq=60
+	$(AS) $(AFLAGS) $(ASOUT)$@ $< -aPwrLnFrq=60
 
 clock_50hz: clock.asm
-	$(AS) $(AFLAGS) $(ASOUT)$@ $< -DPwrLnFrq=50
+	$(AS) $(AFLAGS) $(ASOUT)$@ $< -aPwrLnFrq=50
 
 clock2_cloud9: clock2_ds1315.asm
-	$(AS) $(AFLAGS) $(ASOUT)$@ $< -DCLOUD9=1
+	$(AS) $(AFLAGS) $(ASOUT)$@ $< -aCLOUD9=1
 
 clock2_bnb: clock2_ds1315.asm
-	$(AS) $(AFLAGS) $(ASOUT)$@ $< -DBNB=1
+	$(AS) $(AFLAGS) $(ASOUT)$@ $< -aBNB=1
 
 clock2_dw3_becker: clock2_dw3.asm
-	$(AS) $(AFLAGS) $(ASOUT)$@ $< -DBECKER=1
+	$(AS) $(AFLAGS) $(ASOUT)$@ $< -aBECKER=1
 
 clean:
 	$(CD) kernel; make $@
--- a/level2/coco3_6309/bootfiles/makefile	Sat Jul 14 18:18:59 2012 -0600
+++ b/level2/coco3_6309/bootfiles/makefile	Wed Jul 18 18:07:53 2012 -0500
@@ -1,1 +1,183 @@
-include ../../coco3/bootfiles/makefile
+include $(NITROS9DIR)/rules.mak
+
+# Module directory
+MD		= ../modules
+# Commands directory
+CD		= ../cmds
+
+DEPENDS		= ./makefile
+
+KERNEL_1773	= $(MD)/rel_80 $(MD)/boot_1773_6ms $(MD)/krn
+KERNEL_1773_50HZ	= $(MD)/rel_80_50hz $(MD)/boot_1773_6ms $(MD)/krn
+KERNEL_DW3	= $(MD)/rel_80 $(MD)/boot_dw3 $(MD)/krn
+KERNEL_BECKER	= $(MD)/rel_80 $(MD)/boot_dw3_becker $(MD)/krn
+
+# NitrOS-9 disk bootfile to allow booting from DriveWire server
+# on a DE1 or Xilinx using Gary Becker's CoCo 3 FGPA
+BOOTFILE_BECKER	= $(MD)/krnp2 $(MD)/ioman $(MD)/init \
+		$(MD)/rbf.mn \
+		$(MD)/rbdw3.dr $(MD)/dw3_becker.sb \
+		$(MD)/ddx0.dd $(MD)/x1.dd $(MD)/x2.dd $(MD)/x3.dd \
+		$(MD)/rb1773.dr $(MD)/d0_40d.dd $(MD)/d1_40d.dd \
+		$(MD)/d2_40d.dd $(MD)/ddd0_40d.dd \
+		$(MD)/scf.mn $(MD)/vtio.dr \
+		$(MD)/keydrv_cc3.sb $(MD)/joydrv_joy.sb $(MD)/snddrv_cc3.sb \
+		$(MD)/cowin.io \
+		$(MD)/term_win80.dt \
+		$(MD)/w.dw $(MD)/w1.dw $(MD)/w2.dw $(MD)/w3.dw $(MD)/w4.dw \
+		$(MD)/w5.dw $(MD)/w6.dw $(MD)/w7.dw \
+		$(MD)/scdwn.dr \
+		$(MD)/n_scdwn.dd $(MD)/n1_scdwn.dd $(MD)/n2_scdwn.dd \
+		$(MD)/n3_scdwn.dd $(MD)/n4_scdwn.dd $(MD)/n5_scdwn.dd \
+		$(MD)/n6_scdwn.dd $(MD)/n7_scdwn.dd $(MD)/n8_scdwn.dd \
+		$(MD)/n9_scdwn.dd $(MD)/n10_scdwn.dd $(MD)/n11_scdwn.dd \
+		$(MD)/n12_scdwn.dd $(MD)/n13_scdwn.dd $(MD)/midi_scdwn.dd \
+		$(MD)/scdwp.dr $(MD)/p_scdwp.dd \
+		$(MD)/pipeman.mn $(MD)/piper.dr $(MD)/pipe.dd \
+		$(MD)/clock_60hz $(MD)/clock2_dw3_becker
+
+# NitrOS-9 disk bootfile to allow booting from DriveWire 3 server
+BOOTFILE_DW3	= $(MD)/krnp2 $(MD)/ioman $(MD)/init \
+		$(MD)/rbf.mn \
+		$(MD)/rbdw3.dr $(MD)/dw3.sb \
+		$(MD)/ddx0.dd $(MD)/x1.dd $(MD)/x2.dd $(MD)/x3.dd \
+		$(MD)/scf.mn $(MD)/vtio.dr \
+		$(MD)/keydrv_cc3.sb $(MD)/joydrv_joy.sb $(MD)/snddrv_cc3.sb \
+		$(MD)/cowin.io \
+		$(MD)/term_win80.dt \
+		$(MD)/w.dw $(MD)/w1.dw $(MD)/w2.dw $(MD)/w3.dw $(MD)/w4.dw \
+		$(MD)/w5.dw $(MD)/w6.dw $(MD)/w7.dw \
+		$(MD)/scdwn.dr \
+		$(MD)/n_scdwn.dd $(MD)/n1_scdwn.dd $(MD)/n2_scdwn.dd \
+		$(MD)/n3_scdwn.dd $(MD)/n4_scdwn.dd $(MD)/n5_scdwn.dd \
+		$(MD)/n6_scdwn.dd $(MD)/n7_scdwn.dd $(MD)/n8_scdwn.dd \
+		$(MD)/n9_scdwn.dd $(MD)/n10_scdwn.dd $(MD)/n11_scdwn.dd \
+		$(MD)/n12_scdwn.dd $(MD)/n13_scdwn.dd $(MD)/midi_scdwn.dd \
+		$(MD)/z1_scdwn.dd $(MD)/z2_scdwn.dd $(MD)/z3_scdwn.dd \
+		$(MD)/z4_scdwn.dd $(MD)/z5_scdwn.dd $(MD)/z6_scdwn.dd \
+		$(MD)/z7_scdwn.dd \
+		$(MD)/scdwp.dr $(MD)/p_scdwp.dd \
+		$(MD)/pipeman.mn $(MD)/piper.dr $(MD)/pipe.dd \
+		$(MD)/clock_60hz $(MD)/clock2_dw3
+
+# NitrOS-9 disk bootfile to allow booting from DriveWire 3 server
+# Headless mode
+BOOTFILE_DW3_HEADLESS	= $(MD)/krnp2 $(MD)/ioman $(MD)/init \
+		$(MD)/rbf.mn \
+		$(MD)/rbdw3.dr $(MD)/dw3.sb \
+		$(MD)/ddx0.dd $(MD)/x1.dd $(MD)/x2.dd $(MD)/x3.dd \
+		$(MD)/rb1773.dr $(MD)/d0_40d.dd $(MD)/d1_40d.dd \
+		$(MD)/d2_40d.dd $(MD)/ddd0_40d.dd \
+		$(MD)/scf.mn $(MD)/vtio.dr \
+		$(MD)/scdwn.dr \
+		$(MD)/n_scdwn.dd $(MD)/n1_scdwn.dd $(MD)/n2_scdwn.dd \
+		$(MD)/n3_scdwn.dd $(MD)/n4_scdwn.dd $(MD)/n5_scdwn.dd \
+		$(MD)/n6_scdwn.dd $(MD)/n7_scdwn.dd $(MD)/n8_scdwn.dd \
+		$(MD)/n9_scdwn.dd $(MD)/n10_scdwn.dd $(MD)/n11_scdwn.dd \
+		$(MD)/n12_scdwn.dd $(MD)/n13_scdwn.dd $(MD)/midi_scdwn.dd \
+		$(MD)/scdwp.dr $(MD)/p_scdwp.dd \
+		$(MD)/term_z_scdwn.dd \
+		$(MD)/z1_scdwn.dd $(MD)/z2_scdwn.dd $(MD)/z3_scdwn.dd \
+		$(MD)/z4_scdwn.dd $(MD)/z5_scdwn.dd $(MD)/z6_scdwn.dd \
+		$(MD)/z7_scdwn.dd \
+		$(MD)/pipeman.mn $(MD)/piper.dr $(MD)/pipe.dd \
+		$(MD)/clock_60hz $(MD)/clock2_dw3
+
+# NitrOS-9 disk bootfile to allow booting from WD1773 disk controller
+BOOTFILE_40D	= $(MD)/krnp2 $(MD)/ioman $(MD)/init \
+		$(MD)/rbf.mn \
+		$(MD)/rb1773.dr $(MD)/d0_40d.dd $(MD)/d1_40d.dd \
+		$(MD)/d2_40d.dd $(MD)/ddd0_40d.dd \
+		$(MD)/scf.mn $(MD)/vtio.dr \
+		$(MD)/keydrv_cc3.sb $(MD)/joydrv_joy.sb $(MD)/snddrv_cc3.sb \
+		$(MD)/cowin.io $(MD)/covdg.io \
+		$(MD)/term_win80.dt \
+		$(MD)/w.dw $(MD)/w1.dw $(MD)/w2.dw $(MD)/w3.dw $(MD)/w4.dw \
+		$(MD)/w5.dw $(MD)/w6.dw $(MD)/w7.dw \
+		$(MD)/pipeman.mn $(MD)/piper.dr $(MD)/pipe.dd \
+		$(MD)/clock_60hz $(MD)/clock2_soft
+
+BOOTFILE_80D	= $(MD)/krnp2 $(MD)/ioman $(MD)/init \
+		$(MD)/rbf.mn \
+		$(MD)/rb1773.dr $(MD)/d0_80d.dd $(MD)/d1_40d.dd \
+		$(MD)/d2_40d.dd $(MD)/ddd0_80d.dd \
+		$(MD)/scf.mn $(MD)/vtio.dr \
+		$(MD)/keydrv_cc3.sb $(MD)/joydrv_joy.sb $(MD)/snddrv_cc3.sb \
+		$(MD)/cowin.io $(MD)/covdg.io \
+		$(MD)/term_win80.dt \
+		$(MD)/w.dw $(MD)/w1.dw $(MD)/w2.dw $(MD)/w3.dw $(MD)/w4.dw \
+		$(MD)/w5.dw $(MD)/w6.dw $(MD)/w7.dw \
+		$(MD)/pipeman.mn $(MD)/piper.dr $(MD)/pipe.dd \
+		$(MD)/clock_60hz $(MD)/clock2_soft
+
+BOOTFILE_40D_50HZ	= $(MD)/krnp2 $(MD)/ioman $(MD)/init \
+		$(MD)/rbf.mn \
+		$(MD)/rb1773.dr $(MD)/d0_40d.dd $(MD)/d1_40d.dd \
+		$(MD)/d2_40d.dd $(MD)/ddd0_40d.dd \
+		$(MD)/scf.mn $(MD)/vtio.dr \
+		$(MD)/keydrv_cc3.sb $(MD)/joydrv_joy.sb $(MD)/snddrv_cc3.sb \
+		$(MD)/cowin.io $(MD)/covdg.io \
+		$(MD)/term_win80.dt \
+		$(MD)/w.dw $(MD)/w1.dw $(MD)/w2.dw $(MD)/w3.dw $(MD)/w4.dw \
+		$(MD)/w5.dw $(MD)/w6.dw $(MD)/w7.dw \
+		$(MD)/pipeman.mn $(MD)/piper.dr $(MD)/pipe.dd \
+		$(MD)/clock_50hz $(MD)/clock2_soft
+
+BOOTFILE_80D_50HZ	= $(MD)/krnp2 $(MD)/ioman $(MD)/init \
+		$(MD)/rbf.mn \
+		$(MD)/rb1773.dr $(MD)/d0_80d.dd $(MD)/d1_40d.dd \
+		$(MD)/d2_40d.dd $(MD)/ddd0_80d.dd \
+		$(MD)/scf.mn $(MD)/vtio.dr \
+		$(MD)/keydrv_cc3.sb $(MD)/joydrv_joy.sb $(MD)/snddrv_cc3.sb \
+		$(MD)/cowin.io $(MD)/covdg.io \
+		$(MD)/term_win80.dt \
+		$(MD)/w.dw $(MD)/w1.dw $(MD)/w2.dw $(MD)/w3.dw $(MD)/w4.dw \
+		$(MD)/w5.dw $(MD)/w6.dw $(MD)/w7.dw \
+		$(MD)/pipeman.mn $(MD)/piper.dr $(MD)/pipe.dd \
+		$(MD)/clock_50hz $(MD)/clock2_soft
+
+BOOTFILES	= bootfile_40d bootfile_40d_50hz bootfile_80d bootfile_80d_50hz bootfile_dw3 bootfile_dw3_headless bootfile_becker
+KERNELS		= kernel_1773 kernel_1773_50hz kernel_dw3 kernel_becker
+
+ALLOBJS		= $(BOOTFILES) $(KERNELS)
+
+all:	$(ALLOBJS)
+
+# Bootfiles
+bootfile_becker: $(BOOTFILE_BECKER) $(DEPENDS)
+	$(MERGE) $(BOOTFILE_BECKER)>$@
+
+bootfile_40d: $(BOOTFILE_40D) $(DEPENDS)
+	$(MERGE) $(BOOTFILE_40D)>$@
+
+bootfile_40d_50hz: $(BOOTFILE_40D_50HZ) $(DEPENDS)
+	$(MERGE) $(BOOTFILE_40D_50HZ)>$@
+
+bootfile_80d: $(BOOTFILE_80D) $(DEPENDS)
+	$(MERGE) $(BOOTFILE_80D)>$@
+
+bootfile_80d_50hz: $(BOOTFILE_80D_50HZ) $(DEPENDS)
+	$(MERGE) $(BOOTFILE_80D_50HZ)>$@
+
+bootfile_dw3: $(BOOTFILE_DW3) $(DEPENDS)
+	$(MERGE) $(BOOTFILE_DW3)>$@
+
+bootfile_dw3_headless: $(BOOTFILE_DW3_HEADLESS) $(DEPENDS)
+	$(MERGE) $(BOOTFILE_DW3_HEADLESS)>$@
+
+# Kernels
+kernel_becker: $(KERNEL_BECKER) $(DEPENDS)
+	$(MERGE) $(KERNEL_BECKER)>$@
+
+kernel_1773: $(KERNEL_1773) $(DEPENDS)
+	$(MERGE) $(KERNEL_1773)>$@
+
+kernel_1773_50hz: $(KERNEL_1773_50HZ) $(DEPENDS)
+	$(MERGE) $(KERNEL_1773_50HZ)>$@
+
+kernel_dw3: $(KERNEL_DW3) $(DEPENDS)
+	$(MERGE) $(KERNEL_DW3)>$@
+
+clean:
+	$(RM) $(ALLOBJS)
+