changeset 1587:5f18094d961d

kernel modules renamed to krn, updated makefiles, clock2_tc3 now clock2_cloud9...
author boisy
date Mon, 24 May 2004 14:51:21 +0000
parents e26f7d2e40df
children 2d7cac2bf9be
files defs/releasedefs defs/vdgdefs level1/ChangeLog level1/cmds/grfo.asm level1/makefile level1/modules/kernel/krn.asm level1/modules/kernel/krnp2.asm level1/modules/makefile level1/modules/sc6551.asm level1/modules/sysgo.asm level2/coco3/ChangeLog level2/coco3/bootfiles/makefile level2/coco3/bootfiles/makefile.cust level2/coco3/bootlists/standard.bl level2/coco3_6309/ChangeLog level2/coco3_6309/bootfiles/makefile level2/coco3_6309/bootfiles/makefile.cust level2/coco3_6309/bootlists/standard.bl level2/makefile level2/modules/cc3io.asm level2/modules/kernel/krn.asm level2/modules/kernel/krnp2.asm level2/modules/kernel/makefile level2/modules/krnp3_perr.asm level2/modules/krnp4_regdump.asm level2/modules/makefile level2/modules/windint.asm rules.mak
diffstat 28 files changed, 387 insertions(+), 313 deletions(-) [+]
line wrap: on
line diff
--- a/defs/releasedefs	Sat May 22 03:54:25 2004 +0000
+++ b/defs/releasedefs	Mon May 24 14:51:21 2004 +0000
@@ -4,4 +4,4 @@
 * NitrOS-9 Version equates
 NOS9Vrsn  equ   3
 NOS9Major equ   2
-NOS9Minor equ   1
+NOS9Minor equ   2
--- a/defs/vdgdefs	Sat May 22 03:54:25 2004 +0000
+++ b/defs/vdgdefs	Mon May 24 14:51:21 2004 +0000
@@ -1,5 +1,4 @@
          IFNE   VDGDEFS-1
-
 VDGDEFS  set    1
 
 ********************************************************************
@@ -46,62 +45,65 @@
 *
 * Total of 22 (150 in whole page) bytes unneeded or unused.
 
-VD.Start equ   $1E start of VD.XXXX data: number of VDG screens in use
-VD.Strt1 equ   $1F (2) and another start
-VD.Caps  equ   $21 caps lock info: $00=lower $FF=upper
-VD.DFlag equ   $23 0=current screen is valid, $01-$FF = update video
+         org   $1E
+VD.Start rmb   1  start of VD.XXXX data: number of VDG screens in use
+VD.Strt1 rmb   2  (2) and another start
+VD.Caps  rmb   2  caps lock info: $00=lower $FF=upper
+VD.DFlag rmb   1  0=current screen is valid, $01-$FF = update video
 * $24-$2B unused
-VD.NGChr equ   $2C number of additional characters to get
-VD.RTAdd equ   $2D (2) return address after getting characters
-VD.EPlt1 equ   $2F (2) pointer to where to put next character
-VD.EPlt2 equ   $31 (2) as above.
+         rmb   8
+VD.NGChr rmb   1  number of additional characters to get
+VD.RTAdd rmb   2  (2) return address after getting characters
+VD.EPlt1 rmb   2  (2) pointer to where to put next character
+VD.EPlt2 rmb   2  (2) as above.
 * $33-$34 unused
-VD.CFlag equ   $35 true lowercase flag $10=true, $00=false
-VD.CFlg1 equ   $36 VDG display code values
-VD.DGBuf equ   $37 number of currently displayed buffer
-VD.ScrnA equ   $38 (2) screen start address in system memory
-VD.ScrnE equ   $3A (2) address of end of screen
-VD.CrsrA equ   $3C (2) cursor address
-VD.CrsAL equ   $3D cursor address low
-VD.CChar equ   $3E value of character under cursor
-VD.Mode  equ   $3F mode: 0=256x192 x2, 1=128x192 x4
-VD.Chr1  equ   $40 same as under cursor character
-VD.CColr equ   $41 cursor color
-VD.Col   equ   $42 number of columns for this screen
-VD.Row   equ   $43 number of rows
-VD.TFlg1 equ   $44 see WRITE ($0E)
-VD.Alpha equ   $45 0 when in alpha mode
-VD.Rdy   equ   $46 device ready (see SS.DStat 0=not ready)
-VD.SBAdd equ   $47 (2) address of block screen is in
-VD.Blk   equ   $49 Block number of screen
-VD.GBuff equ   $4A allocation for graphics buffers (block#)
-VD.AGBuf equ   $4B (2) additional graphics buffer
-VD.HiRes equ   $4D hi-res screen table (block value)
-VD.NBlk  equ   $4E number of blocks in this screen
-VD.SType equ   $4F screen type 0-4
-VD.HR2   equ   $50 (3) for screen number 2
-VD.HR3   equ   $53 (3) for screen 3 (same 3 bytes as above)
-VD.FFMem equ   $56 (2) bottom of stack for flood fill
-VD.FFSPt equ   $58 (2) flood fill stack pointer
-VD.FFSTp equ   $5A (2) flood fill stack top pointer
-VD.FF6   equ   $5C  flood fill flag
-VD.MTabl equ   $5D (2) address of mask table for pixels in byte
-VD.PixBt equ   $5F bit mask for modes (0=$07, 1=$03 )#pixels/byte
-VD.GCrsX equ   $60 graphics cursor X value
-VD.GCrsY equ   $61 graphics cursor Y
-VD.Msk1  equ   $62 mask byte 1
-VD.Msk2  equ   $63 mask byte 2 (00,55,AA,FF)
-VD.MCol  equ   $64 color? (C003,8001)
-VD.MCol2 equ   $65 color
-VD.PMask equ   $66 pixel mask for colors (i.e. $55, $CC etc)
-VD.FF1   equ   $67 data for flood fill
-VD.FF2   equ   $68 data for flood fill
-VD.FFMsk equ   $69 flood fill mask
-VD.FFFlg equ   $6A flood fill flag
-VD.Palet equ   $6B (16) current palette values
-VD.PlFlg equ   $7B initialized to $08 by L00DB, and then unused!
-VD.NChar equ   $7C character to process
-VD.NChr2 equ   $7D and the next one
+         rmb   2
+VD.CFlag rmb   1  true lowercase flag $10=true, $00=false
+VD.CFlg1 rmb   1  VDG display code values
+VD.DGBuf rmb   1  number of currently displayed buffer
+VD.ScrnA rmb   2  (2) screen start address in system memory
+VD.ScrnE rmb   2  (2) address of end of screen
+VD.CrsrA rmb   1  (2) cursor address
+VD.CrsAL rmb   1  cursor address low
+VD.CChar rmb   1  value of character under cursor
+VD.Mode  rmb   1  mode: 0=256x192 x2, 1=128x192 x4
+VD.Chr1  rmb   1  same as under cursor character
+VD.CColr rmb   1  cursor color
+VD.Col   rmb   1  number of columns for this screen
+VD.Row   rmb   1  number of rows
+VD.TFlg1 rmb   1  see WRITE ($0E)
+VD.Alpha rmb   1  0 when in alpha mode
+VD.Rdy   rmb   1  device ready (see SS.DStat 0=not ready)
+VD.SBAdd rmb   2  (2) address of block screen is in
+VD.Blk   rmb   1  Block number of screen
+VD.GBuff rmb   1  allocation for graphics buffers (block#)
+VD.AGBuf rmb   2  (2) additional graphics buffer
+VD.HiRes rmb   1  hi-res screen table (block value)
+VD.NBlk  rmb   1  number of blocks in this screen
+VD.SType rmb   1  screen type 0-4
+VD.HR2   rmb   3  (3) for screen number 2
+VD.HR3   rmb   3  (3) for screen 3 (same 3 bytes as above)
+VD.FFMem rmb   2  (2) bottom of stack for flood fill
+VD.FFSPt rmb   2  (2) flood fill stack pointer
+VD.FFSTp rmb   2  (2) flood fill stack top pointer
+VD.FF6   rmb   1   flood fill flag
+VD.MTabl rmb   2  (2) address of mask table for pixels in byte
+VD.PixBt rmb   1  bit mask for modes (0=$07, 1=$03 )#pixels/byte
+VD.GCrsX rmb   1  graphics cursor X value
+VD.GCrsY rmb   1  graphics cursor Y
+VD.Msk1  rmb   1  mask byte 1
+VD.Msk2  rmb   1  mask byte 2 (00,55,AA,FF)
+VD.MCol  rmb   1  color? (C003,8001)
+VD.MCol2 rmb   1  color
+VD.PMask rmb   1  pixel mask for colors (i.e. $55, $CC etc)
+VD.FF1   rmb   1  data for flood fill
+VD.FF2   rmb   1  data for flood fill
+VD.FFMsk rmb   1  flood fill mask
+VD.FFFlg rmb   1  flood fill flag
+VD.Palet rmb   16 (16) current palette values
+VD.PlFlg rmb   1  initialized to $08 by L00DB, and then unused!
+VD.NChar rmb   1  character to process
+VD.NChr2 rmb   1  and the next one
 
 * and RMB until we get 256 bytes reserved
 
--- a/level1/ChangeLog	Sat May 22 03:54:25 2004 +0000
+++ b/level1/ChangeLog	Mon May 24 14:51:21 2004 +0000
@@ -1,4 +1,5 @@
 NitrOS-9/6809 Level 1 V03.02.02:
+- kernel and kernelp2 have been renamed to krn and krnp2 respectively.
 - cc3disk has been renamed to rb1773 and has been back-ported to NitrOS-9 Level 1.
 - term_t1.dd has been renamed to term_sio.dd and term_sc6551.dd has been added.
 NitrOS-9/6809 Level 1 V03.02.01 (May 14, 2004):
--- a/level1/cmds/grfo.asm	Sat May 22 03:54:25 2004 +0000
+++ b/level1/cmds/grfo.asm	Mon May 24 14:51:21 2004 +0000
@@ -16,6 +16,7 @@
 
          ifp1
          use   defsfile
+         use   cciodefs
          endc
 
 tylg     set   Systm+Objct   
@@ -26,104 +27,121 @@
          mod   eom,name,tylg,atrv,start,size
 
          org   0
-u0000    rmb   0
 size     equ   .
 
          fcb   $07 
 name     fcs   /GRFO/
          fcb   edition
 
-start    lbra  Entry7
-         lbra  L002C
-         lbra  L0026
-         lbra  L0026
-         lbra  Entry7
+* Dispatch table
+start    lbra  Init
+         lbra  Write
+         lbra  GetStat
+         lbra  SetStat
+         lbra  Term
 
-L0022    fdb   $0055
-L0024    fdb   $aaff
-L0026    comb
+* 128x192 4 color pixel table
+Mode1Clr fdb   $0055,$aaff
+
+GetStat
+SetStat  comb
          ldb   #E$UnkSvc
          rts
 
-L002C    suba  #$15
+Write    suba  #$15
          leax  <Table,pcr
          lsla
          ldd   a,x
          jmp   d,x
 
-Table    fdb   Entry1-Table
-         fdb   Entry2-Table
-         fdb   Entry3-Table
-         fdb   Entry4-Table
-         fdb   Entry5-Table
-         fdb   Entry6-Table
-         fdb   Entry7-Table
-         fdb   Entry8-Table
-         fdb   Entry9-Table
-         fdb   Entry7-Table
-         fdb   Entry7-Table
+Table    fdb   Do15-Table
+         fdb   Do16-Table
+         fdb   Do17-Table
+         fdb   Do18-Table
+         fdb   Do19-Table
+         fdb   Do1A-Table
+         fdb   NoOp-Table
+         fdb   Do1C-Table
+         fdb   Do1D-Table
+         fdb   NoOp-Table
+         fdb   NoOp-Table
 
-L004A    ldd   <$28,u
-         cmpb  #$C0
-         bcs   L0053
-         ldb   #$BF
-L0053    tst   <$24,u
-         bmi   L0059
-         lsra  
-L0059    std   <$28,u
+* Fix X/Y coords:
+* - if Y > 191 then cap it at 191
+* - adjust X coord if in 128x192 mode
+FixXY    ldd   <V.NChar,u	get next 2 charas
+         cmpb  #192		Y greater than max?
+         bcs   L0053		branch if lower than
+         ldb   #191
+L0053    tst   <V.Mode,u	which mode?
+         bmi   L0059		branch if 256x192
+         lsra  			else divide X by 2
+L0059    std   <V.NChar,u	and save
          rts   
 
-Entry1   leax  <L0065,pcr
-L0060    ldb   #$02
-         lbra  L015A
-L0065    bsr   L004A
-         std   <$45,u
+* $15 - set graphics cursor
+Do15     leax  <SetGC,pcr	load X with return address
+GChar2   ldb   #$02		need two parameters
+         lbra  GChar
 
-Entry7   clrb  
+SetGC    bsr   FixXY		fix coords
+         std   <V.GCrsX,u	and save new gfx cursor pos
+
+NoOp
+Init
+Term     clrb  
          rts   
 
-Entry5   clr   <$47,u
-Entry4   leax  <L0074,pcr
-         bra   L0060
-L0074    bsr   L004A
-         std   <$45,u
-         bsr   L007E
+* $19 - erase point
+Do19     clr   <V.Msk1,u
+* $18 - set point
+Do18     leax  <DrawPnt,pcr
+         bra   GChar2
+
+DrawPnt  bsr   FixXY		fix coords
+         std   <V.GCrsX,u	save as new gfx cursor pos
+         bsr   DrwPt2
          lbra  L014A
-L007E    jsr   [<$5D,u]
+DrwPt2   jsr   [<V.CnvVct,u]
 L0081    tfr   a,b
          comb  
          andb  ,x
          stb   ,x
-         anda  <$47,u
+         anda  <V.Msk1,u	and with mask
          ora   ,x
          sta   ,x
          rts   
-Entry3   clr   <$47,u
-Entry2   leax  <L0098,pcr
-         bra   L0060
-L0098    bsr   L004A
-         leas  -$0E,s
-         std   $0C,s
-         jsr   [<$5D,u]
-         stx   $02,s
-         sta   $01,s
-         ldd   <$45,u
-         jsr   [<$5D,u]
+
+* $17 - erase line
+Do17     clr   <V.Msk1,u	clear mask value
+
+* $16 - draw line
+Do16     leax  <DrawLine,pcr	load X with return address
+         bra   GChar2		need two params
+
+DrawLine bsr   FixXY		fix up coords
+         leas  -$0E,s		make room on stack
+         std   $0C,s		save X/Y
+         jsr   [<V.CnvVct,u]	get address given X/Y
+         stx   $02,s		save on stack
+         sta   $01,s		and pixel too
+         ldd   <V.GCrsX,u	get current graphics cursor
+         jsr   [<V.CnvVct,u]	get address given X/Y
          sta   ,s
          clra  
          clrb  
          std   $04,s
          lda   #$BF
-         suba  <$46,u
-         sta   <$46,u
+         suba  <V.GCrsY,u
+         sta   <V.GCrsY,u
          lda   #$BF
-         suba  <$29,u
-         sta   <$29,u
+         suba  <V.NChr2,u
+         sta   <V.NChr2,u
          lda   #$FF
          sta   $06,s
          clra  
-         ldb   <$45,u
-         subb  <$28,u
+         ldb   <V.GCrsX,u
+         subb  <V.NChar,u
          sbca  #$00
          bpl   L00D6
          nega  
@@ -137,8 +155,8 @@
 L00DF    lda   #$E0
          sta   $07,s
          clra  
-         ldb   <$46,u
-         subb  <$29,u
+         ldb   <V.GCrsY,u
+         subb  <V.NChr2,u
          sbca  #$00
          bpl   L00F4
          nega  
@@ -169,38 +187,42 @@
          ldb   $06,s
          bpl   L0133
          lsla  
-         ldb   <$24,u
-         bmi   L012A
+         ldb   <V.Mode,u	which mode?
+         bmi   L012A		branch if 256x192
          lsla  
 L012A    bcc   L00F8
-         lda   <$4A,u
+         lda   <V.4A,u
          leax  -$01,x
          bra   L00F8
 L0133    lsra  
-         ldb   <$24,u
-         bmi   L013A
+         ldb   <V.Mode,u	which mode?
+         bmi   L013A		branch if 256x196
          lsra  
 L013A    bcc   L00F8
-         lda   <$49,u
+         lda   <V.MCol,u
          leax  $01,x
          bra   L00F8
 L0143    ldd   $0C,s
-         std   <$45,u
+         std   <V.GCrsX,u
          leas  $0E,s
-L014A    lda   <$48,u
-         sta   <$47,u
+L014A    lda   <V.Msk2,u
+         sta   <V.Msk1,u
          clrb  
          rts   
-Entry8   clr   <$47,u
-Entry6   leax  <L0162,pcr
-         ldb   #$01
-L015A    stb   <$25,u
-         stx   <$26,u
+
+* $1C - erase circle
+Do1C     clr   <V.Msk1,u	clear mask value
+* $1A - draw circle
+Do1A     leax  <Circle,pcr
+         ldb   #$01		require another param -- radius
+GChar    stb   <V.NGChr,u	one more char
+         stx   <V.RTAdd,u	return address
          clrb  
          rts   
-L0162    leas  -$04,s
-         ldb   <$29,u
-         stb   $01,s
+
+Circle   leas  -$04,s		make room on stack
+         ldb   <V.NChr2,u	get radius
+         stb   $01,s		store on stack
          clra  
          sta   ,s
          addb  $01,s
@@ -287,7 +309,7 @@
          leas  $08,s
          rts   
 L0202    pshs  b,a
-         ldb   <$46,u
+         ldb   <V.GCrsY,u
          clra  
          leax  d,x
          cmpx  #$0000
@@ -295,9 +317,9 @@
          cmpx  #$00BF
          ble   L0216
 L0214    puls  pc,b,a
-L0216    ldb   <$45,u
+L0216    ldb   <V.GCrsX,u
          clra  
-         tst   <$24,u
+         tst   <V.Mode,u
          bmi   L0221
          lslb  
          rola  
@@ -308,32 +330,34 @@
 L0227    pshs  b
          tfr   x,d
          puls  a
-         tst   <$24,u
-         lbmi  L007E
-         lsra  
-         lbra  L007E
-Entry9   clr   <$41,u
+         tst   <V.Mode,u	which mode?
+         lbmi  DrwPt2		branch if 256x192
+         lsra  			else divide A by 2
+         lbra  DrwPt2
+
+* $1D - flood fill
+Do1D     clr   <V.FFFlag,u
          leas  -$07,s
          lbsr  L03AB
          lbcs  L0346
          lda   #$FF
-         sta   <$4F,u
-         ldd   <$45,u
+         sta   <V.4F,u
+         ldd   <V.GCrsX,u
          lbsr  L0351
-         lda   <$4C,u
-         sta   <$4D,u
-         tst   <$24,u
-         bpl   L0261
+         lda   <V.4C,u
+         sta   <V.4D,u
+         tst   <V.Mode,u	which mode?
+         bpl   L0261		branch if 128x192
          tsta  
          beq   L0267
          lda   #$FF
          bra   L0267
-L0261    leax  >L0022,pcr
+L0261    leax  >Mode1Clr,pcr
          lda   a,x
-L0267    sta   <$4E,u
-         cmpa  <$47,u
+L0267    sta   <V.4E,u
+         cmpa  <V.Msk1,u
          lbeq  L0346
-         ldd   <$45,u
+         ldd   <V.GCrsX,u
 L0274    suba  #$01
          bcs   L027F
          lbsr  L0351
@@ -350,11 +374,11 @@
 L0290    deca  
          ldx   $01,s
          lbsr  L03D3
-         neg   <$4F,u
+         neg   <V.4F,u
          lbsr  L03D3
 L029C    lbsr  L03F9
          lbcs  L0346
-         tst   <$4F,u
+         tst   <V.4F,u
          bpl   L02B3
          subb  #$01
          bcs   L029C
@@ -392,10 +416,10 @@
          decb  
          cmpd  $05,s
          beq   L02FB
-         neg   <$4F,u
+         neg   <V.4F,u
          ldx   $05,s
          lbsr  L03D3
-         neg   <$4F,u
+         neg   <V.4F,u
 L02FB    ldd   $05,s
 L02FD    std   $01,s
 L02FF    bsr   L0351
@@ -425,100 +449,103 @@
          ldd   $05,s
          cmpd  $03,s
          lbcs  L029C
-         neg   <$4F,u
+         neg   <V.4F,u
          ldx   $03,s
          lbsr  L03D3
          lbra  L029C
 L0346    leas  $07,s
          clrb  
-         ldb   <$41,u
+         ldb   <V.FFFlag,u
          beq   L0350
 L034E    orcc  #Carry
 L0350    rts   
 L0351    pshs  b,a
          cmpb  #$BF
          bhi   L0380
-         tst   <$24,u
-         bmi   L0360
+         tst   <V.Mode,u	which mode?
+         bmi   L0360		branch if 256x192
          cmpa  #$7F
          bhi   L0380
-L0360    jsr   [<$5D,u]
+L0360    jsr   [<V.CnvVct,u]
          tfr   a,b
          andb  ,x
 L0367    bita  #$01
          bne   L0376
          lsra  
          lsrb  
-         tst   <$24,u
-         bmi   L0367
+         tst   <V.Mode,u	which mode?
+         bmi   L0367		branch if 256x192
          lsra  
          lsrb  
          bra   L0367
-L0376    stb   <$4C,u
-         cmpb  <$4D,u
+L0376    stb   <V.4C,u
+         cmpb  <V.4D,u
          andcc #^Carry
          puls  pc,b,a
 L0380    orcc  #Carry
          puls  pc,b,a
 L0384    pshs  b,a
-         jsr   [<$5D,u]
+         jsr   [<V.CnvVct,u]
          bita  #$80
          beq   L03A6
-         ldb   <$4E,u
+         ldb   <V.4E,u
          cmpb  ,x
          bne   L03A6
-         ldb   <$47,u
+         ldb   <V.Msk1,u
          stb   ,x
          puls  b,a
-         tst   <$24,u
-         bmi   L03A3
+         tst   <V.Mode,u	which mode?
+         bmi   L03A3		branch if 256x192
          adda  #$03
          rts   
 L03A3    adda  #$07
          rts   
 L03A6    lbsr  L0081
          puls  pc,b,a
-L03AB    ldx   <$3F,u
-         beq   L03B5
-         stx   <$3D,u
+L03AB    ldx   <V.FFSTp,u	get top of flood fill stack
+         beq   L03B5		if zero, we need to allocate stack
+         stx   <V.FFSPt,u	else reset flood fill stack ptr
 L03B3    clrb  
          rts   
-L03B5    pshs  u
-         ldd   #$0200
-         os9   F$SRqMem 
-         bcc   L03C1
-         puls  pc,u
-L03C1    tfr   u,d
-         puls  u
-         std   <$3B,u
-         addd  #$0200
-         std   <$3F,u
-         std   <$3D,u
-         bra   L03B3
+
+* Allocate Flood Fill Stack
+L03B5    pshs  u		save U for now
+         ldd   #$0200		get 512 bytes
+         os9   F$SRqMem 	from system
+         bcc   AllocOk		branch if ok
+         puls  pc,u		else pull out with error
+AllocOk  tfr   u,d		move pointer to alloced mem to D
+         puls  u		get stat pointer we saved earlier
+         std   <V.FFMem,u	save pointer to alloc'ed mem
+         addd  #512		point D to end of alloc'ed mem
+         std   <V.FFSTp,u	and save here as top of fill stack
+         std   <V.FFSPt,u	and here
+         bra   L03B3		do a clean return
+
 L03D3    pshs  b,a
-         ldd   <$3D,u
+         ldd   <V.FFSPt,u
          subd  #$0004
-         cmpd  <$3B,u
+         cmpd  <V.FFMem,u
          bcs   L03F2
-         std   <$3D,u
+         std   <V.FFSPt,u
          tfr   d,y
-         lda   <$4F,u
+         lda   <V.4F,u
          sta   ,y
          stx   $01,y
          puls  b,a
          sta   $03,y
          rts   
 L03F2    ldb   #$F5
-         stb   <$41,u
+         stb   <V.FFFlag,u
          puls  pc,b,a
-L03F9    ldd   <$3D,u
-         cmpd  <$3F,u
+L03F9    ldd   <V.FFSPt,u
+         cmpd  <V.FFSTp,u		top of flood fill stack?
          lbcc  L034E
          tfr   d,y
          addd  #$0004
-         std   <$3D,u
+         std   <V.FFSPt,u
          lda   ,y
-         sta   <$4F,u
+         sta   <V.4F,u
          ldd   $01,y
          tfr   d,x
          lda   $03,y
--- a/level1/makefile	Sat May 22 03:54:25 2004 +0000
+++ b/level1/makefile	Mon May 24 14:51:21 2004 +0000
@@ -1,6 +1,6 @@
 include ../rules.mak
 
-RELEASE		= nos96809l1v030201
+RELEASE		= nos96809l1v030202
 BOOTFILE	= bootfiles/bootfile
 BOOTFILE_DS80	= bootfiles/bootfile_ds80
 KERNELFILE	= bootfiles/kernel_1773
--- a/level1/modules/kernel/krn.asm	Sat May 22 03:54:25 2004 +0000
+++ b/level1/modules/kernel/krn.asm	Mon May 24 14:51:21 2004 +0000
@@ -1,5 +1,5 @@
 ********************************************************************
-* Kernel - NitrOS-9 Level 1 Kernel
+* Krn - NitrOS-9 Level 1 Kernel
 *
 * $Id$
 *
@@ -48,8 +48,11 @@
 *  15r1    2003/12/09  Boisy G. Pitre
 * Kernel no longer scans for modules in I/O space.  Also, F$PrsNam now
 * allows _ and 0-9 as first chars of a filename.
+*
+*  15r1    2004/05/23  Boisy G. Pitre
+* Renamed to 'krn'
 
-         nam   Kernel
+         nam   krn
          ttl   NitrOS-9 Level 1 Kernel
 
          ifp1
@@ -66,7 +69,7 @@
 
 size     equ   .
 
-name     fcs   /Kernel/
+name     fcs   /krn/
          fcb   edition
 
 InitNam  fcs   /Init/
--- a/level1/modules/kernel/krnp2.asm	Sat May 22 03:54:25 2004 +0000
+++ b/level1/modules/kernel/krnp2.asm	Mon May 24 14:51:21 2004 +0000
@@ -1,5 +1,5 @@
 ********************************************************************
-* KernelP2 - NitrOS-9 Level 1 Kernel Part 2
+* krnp2 - NitrOS-9 Level 1 Kernel Part 2
 *
 * $Id$
 *
@@ -7,7 +7,7 @@
 * Comment
 * ------------------------------------------------------------------
 
-         nam   KernelP2
+         nam   krnp2
          ttl   NitrOS-9 Level 1 Kernel Part 2
 
          ifp1
@@ -23,7 +23,7 @@
 
 size     equ   .
 
-name     fcs   /KernelP2/
+name     fcs   /krnp2/
          fcb   edition
 
 SvcTbl   fcb   $7F
--- a/level1/modules/makefile	Sat May 22 03:54:25 2004 +0000
+++ b/level1/modules/makefile	Mon May 24 14:51:21 2004 +0000
@@ -6,7 +6,7 @@
 CLOCKBNB        = -aRTCElim=0 -aRTCDsto2=0 -aRTCDsto4=0 -aRTCBB=1 -aRTCSmart=0 -aRTCHarrs=0 -aRTCTc3=0 -aRTCSoft=0 -aMPIFlag=0
 CLOCKSMART      = -aRTCElim=0 -aRTCDsto2=0 -aRTCDsto4=0 -aRTCBB=0 -aRTCSmart=1 -aRTCHarrs=0 -aRTCTc3=0 -aRTCSoft=0 -aMPIFlag=1
 CLOCKHARRIS     = -aRTCElim=0 -aRTCDsto2=0 -aRTCDsto4=0 -aRTCBB=0 -aRTCSmart=0 -aRTCHarrs=1 -aRTCTc3=0 -aRTCSoft=0 -aMPIFlag=0
-CLOCKTC3        = -aRTCElim=0 -aRTCDsto2=0 -aRTCDsto4=0 -aRTCBB=0 -aRTCSmart=0 -aRTCHarrs=0 -aRTCTc3=1 -aRTCSoft=0 -aMPIFlag=0
+CLOCKCLOUD9     = -aRTCElim=0 -aRTCDsto2=0 -aRTCDsto4=0 -aRTCBB=0 -aRTCSmart=0 -aRTCHarrs=0 -aRTCTc3=1 -aRTCSoft=0 -aMPIFlag=0
 CLOCKSOFT       = -aRTCElim=0 -aRTCDsto2=0 -aRTCDsto4=0 -aRTCBB=0 -aRTCSmart=0 -aRTCHarrs=0 -aRTCTc3=0 -aRTCSoft=1 -aMPIFlag=0
 
 DEPENDS		= ./makefile
@@ -15,11 +15,11 @@
 BOOTERS		= boot_1773_6ms boot_1773_30ms \
 		boot_burke boot_idelba boot_rampak boot_wd1002
 BOOTTRACK	= rel $(BOOTERS)
-KERNEL		= kernel kernelp2
+KERNEL		= krn krnp2
 SYSMODS		= ioman init sysgo_dd sysgo_h0
 CLOCKS          = clock_60hz clock_50hz \
 		clock2_elim clock2_disto2 clock2_disto4 clock2_bnb \
-                clock2_smart clock2_harris clock2_tc3 clock2_soft
+                clock2_smart clock2_harris clock2_cloud9 clock2_soft
 
 RBF		= rbf.mn \
 		rb1773.dr \
@@ -31,8 +31,8 @@
 		sc6551.dr vrn.dr printer.dr sio.dr sspak.dr ccio.dr \
 		co32.io co80.io \
 		nil.dd p.dd pipe.dd ssp.dd \
-		term_sio.dd term_sc6551.dd t1.dd t2_sc6551.dd t3_sc6551.dd \
-		term32.dd term80.dd
+		term_sio.dt term_sc6551.dt t1.dd t2_sc6551.dd t3_sc6551.dt \
+		term32.dt term80.dt
 
 PIPE		= pipeman.mn \
 		piper.dr \
@@ -45,9 +45,9 @@
 # Special cases
 
 # Kernel
-kernel kernelp2:
-	$(CD) krnl; make $@
-	$(CP) krnl/$@ .
+krn krnp2:
+	$(CD) kernel; make $@
+	$(CP) kernel/$@ .
 
 boot_1773_6ms:	boot_1773.asm
 	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aDNum=0 -aSTEP=0
@@ -80,8 +80,8 @@
 clock2_harris: clock2.asm
 	$(AS) $(AFLAGS) $(ASOUT)$@ $< $(CLOCKHARRIS)
 
-clock2_tc3: clock2.asm
-	$(AS) $(AFLAGS) $(ASOUT)$@ $< $(CLOCKTC3)  
+clock2_cloud9: clock2.asm
+	$(AS) $(AFLAGS) $(ASOUT)$@ $< $(CLOCKCLOUD9)  
 
 clock2_soft: clock2.asm
 	$(AS) $(AFLAGS) $(ASOUT)$@ $< $(CLOCKSOFT)
@@ -162,8 +162,8 @@
 clock_harris: clock.asm
 	$(AS) $(AFLAGS) $(ASOUT)$@ $< -aRTCHarrs=1 -aTPS=60
 
-clock_tc3: clock.asm
-	$(AS) $(AFLAGS) $(ASOUT)$@ $< -aRTCTC3=1 -aTPS=60
+clock_cloud9: clock.asm
+	$(AS) $(AFLAGS) $(ASOUT)$@ $< -aRTCCloud9=1 -aTPS=60
 
 clock_soft: clock.asm
 	$(AS) $(AFLAGS) $(ASOUT)$@ $< -aTPS=60
@@ -172,7 +172,7 @@
 	$(AS) $(AFLAGS) $(ASOUT)$@ $< -aTPS=50
 
 clean:
-	$(CD) krnl; make $@
+	$(CD) kernel; make $@
 	$(RM) $(ALLOBJS)
 
 showobjs:
--- a/level1/modules/sc6551.asm	Sat May 22 03:54:25 2004 +0000
+++ b/level1/modules/sc6551.asm	Mon May 24 14:51:21 2004 +0000
@@ -500,7 +500,7 @@
 ModEntry   lbra  Init
            bra   Read
            nop
-           bra   Writ
+           bra   Write
            nop
            IFNE  H6309
            bra   GStt
@@ -539,7 +539,7 @@
 UnSvcErr   ldb   #E$UnkSvc
            bra   ErrExit
 
-Writ       clrb                 default to no error...
+Write      clrb                 default to no error...
            pshs  cc,dp          save IRQ/Carry status, Tx character, system DP
            IFNE  H6309
            tfr   u,w            setup our DP
--- a/level1/modules/sysgo.asm	Sat May 22 03:54:25 2004 +0000
+++ b/level1/modules/sysgo.asm	Mon May 24 14:51:21 2004 +0000
@@ -67,7 +67,8 @@
          fcb   C$CR,C$LF
 * For ROM version, cut down on verbage
          IFEQ  ROM
-         fcc   "Release Date: May 14, 2004"
+*         fcc   "Release Date: May 14, 2004"
+         fcc   "ALPHA VERSION!!!!"
          fcb   C$CR,C$LF
          fcc   !http://www.nitros9.org!
          fcb   C$CR,C$LF
--- a/level2/coco3/ChangeLog	Sat May 22 03:54:25 2004 +0000
+++ b/level2/coco3/ChangeLog	Mon May 24 14:51:21 2004 +0000
@@ -1,5 +1,9 @@
 NitrOS-9/6809 Level 2 V03.02.02:
+- kernel, kernelp2, kernelp3_perr and kernelp4_regdump have been renamed to krn,
+  krnp2, krnp3_perr and krnp4_regdump respectively.
 - cc3disk has been renamed to rb1773 and has been back-ported to NitrOS-9 Level 1.
+- grfint.io now exists and can be used to replace windint.io in bootfiles where
+  Multi-Vue windowing functionality is not needed, in order to save system RAM.
 - term_t1.dd has been renamed to term_sio.dd and term_sc6551.dd has been added.
 NitrOS-9/6809 Level 2 V03.02.01 (May 14, 2004):
 - Bugs in the mpi and megaread utilities have been fixed.
--- a/level2/coco3/bootfiles/makefile	Sat May 22 03:54:25 2004 +0000
+++ b/level2/coco3/bootfiles/makefile	Mon May 24 14:51:21 2004 +0000
@@ -7,10 +7,10 @@
 
 DEPENDS		= ./makefile
 
-KERNEL_1773	= $(MD)/rel_80 $(MD)/boot_1773_6ms $(MD)/kernel
+KERNEL_1773	= $(MD)/rel_80 $(MD)/boot_1773_6ms $(MD)/krn
 
 # OS-9 disk bootfile to allow booting from WD1773 disk controller
-BOOTFILE_VDG	= $(MD)/kernelp2 $(MD)/ioman $(MD)/init \
+BOOTFILE_VDG	= $(MD)/krnp2 $(MD)/ioman $(MD)/init \
 		$(MD)/rbf.mn \
 		$(MD)/rb1773.dr $(MD)/d0_40d.dd $(MD)/d1_40d.dd \
 		$(MD)/ddd0_40d.dd \
@@ -23,7 +23,7 @@
 		$(MD)/pipeman.mn $(MD)/piper.dr $(MD)/pipe.dd \
 		$(MD)/clock_60hz $(MD)/clock2_soft
 
-BOOTFILE_WIN40	= $(MD)/kernelp2 $(MD)/ioman $(MD)/init \
+BOOTFILE_WIN40	= $(MD)/krnp2 $(MD)/ioman $(MD)/init \
 		$(MD)/rbf.mn \
 		$(MD)/rb1773.dr $(MD)/d0_40d.dd $(MD)/d1_40d.dd \
 		$(MD)/ddd0_40d.dd \
@@ -36,7 +36,7 @@
 		$(MD)/pipeman.mn $(MD)/piper.dr $(MD)/pipe.dd \
 		$(MD)/clock_60hz $(MD)/clock2_soft
 
-BOOTFILE_WIN80	= $(MD)/kernelp2 $(MD)/ioman $(MD)/init \
+BOOTFILE_WIN80	= $(MD)/krnp2 $(MD)/ioman $(MD)/init \
 		$(MD)/rbf.mn \
 		$(MD)/rb1773.dr $(MD)/d0_40d.dd $(MD)/d1_40d.dd \
 		$(MD)/ddd0_40d.dd \
@@ -84,7 +84,7 @@
 	$(RM) $(ALLOBJS)
 
 # OS-9 disk bootfile to allow booting from WD1773 disk controller
-BOOTFILE_VDG_DS80	= $(MD)/kernelp2 $(MD)/ioman $(MD)/init \
+BOOTFILE_VDG_DS80	= $(MD)/krnp2 $(MD)/ioman $(MD)/init \
 		$(MD)/rbf.mn \
 		$(MD)/rb1773.dr $(MD)/d0_80d.dd $(MD)/d1_40d.dd \
 		$(MD)/ddd0_80d.dd \
@@ -97,7 +97,7 @@
 		$(MD)/pipeman.mn $(MD)/piper.dr $(MD)/pipe.dd \
 		$(MD)/clock_60hz $(MD)/clock2_soft
 
-BOOTFILE_WIN40_DS80	= $(MD)/kernelp2 $(MD)/ioman $(MD)/init \
+BOOTFILE_WIN40_DS80	= $(MD)/krnp2 $(MD)/ioman $(MD)/init \
 		$(MD)/rbf.mn \
 		$(MD)/rb1773.dr $(MD)/d0_80d.dd $(MD)/d1_40d.dd \
 		$(MD)/ddd0_80d.dd \
@@ -110,7 +110,7 @@
 		$(MD)/pipeman.mn $(MD)/piper.dr $(MD)/pipe.dd \
 		$(MD)/clock_60hz $(MD)/clock2_soft
 
-BOOTFILE_WIN80_DS80	= $(MD)/kernelp2 $(MD)/ioman $(MD)/init \
+BOOTFILE_WIN80_DS80	= $(MD)/krnp2 $(MD)/ioman $(MD)/init \
 		$(MD)/rbf.mn \
 		$(MD)/rb1773.dr $(MD)/d0_80d.dd $(MD)/d1_40d.dd \
 		$(MD)/ddd0_80d.dd \
--- a/level2/coco3/bootfiles/makefile.cust	Sat May 22 03:54:25 2004 +0000
+++ b/level2/coco3/bootfiles/makefile.cust	Mon May 24 14:51:21 2004 +0000
@@ -12,13 +12,13 @@
 
 DEPENDS		= ./makefile.cust
 
-KERNEL_1773	= $(MD)/rel_80 $(MD)/boot_1773_6ms $(MD)/kernel
-KERNEL_TC3	= $(MD)/rel_80 $(C9)/Products/SuperDrivers/software/6809l2/boot_id0_tc3 $(MD)/kernel
-KERNEL_IDE	= $(MD)/rel_80 $(MD)/boot_idelba $(MD)/kernel
-KERNEL_DW	= $(MD)/rel_80 $(C9)/Products/DriveWire/software/6809l2/boot_dw $(MD)/kernel
+KERNEL_1773	= $(MD)/rel_80 $(MD)/boot_1773_6ms $(MD)/krn
+KERNEL_TC3	= $(MD)/rel_80 $(C9)/Products/SuperDrivers/software/6809l2/boot_id0_tc3 $(MD)/krn
+KERNEL_IDE	= $(MD)/rel_80 $(MD)/boot_idelba $(MD)/krn
+KERNEL_DW	= $(MD)/rel_80 $(C9)/Products/DriveWire/software/6809l2/boot_dw $(MD)/krn
 
 # OS-9 disk bootfile to allow booting from WD1773 disk controller
-BOOTFILE_1773	= $(MD)/kernelp2 $(MD)/ioman $(MD)/init \
+BOOTFILE_1773	= $(MD)/krnp2 $(MD)/ioman $(MD)/init \
 		$(MD)/rbf.mn \
 		$(MD)/rb1773.dr $(MD)/d0_40d.dd $(MD)/d1_80d.dd \
 		$(MD)/ddd0_40d.dd \
@@ -33,7 +33,7 @@
 
 # OS-9 disk bootfile to allow booting from TC^3 SCSI controller
 # This is a custom bootfile made by Boisy for his system
-BOOTFILE_TC3	= $(MD)/kernelp2 $(MD)/ioman $(MD)/init \
+BOOTFILE_TC3	= $(MD)/krnp2 $(MD)/ioman $(MD)/init \
 		$(MD)/rbf.mn \
 		$(C9)/superscsi/6809l2/superscsi_tc3.dr \
 		$(C9)/superscsi/6809l2/dd_ez135_tc3.dd \
@@ -61,7 +61,7 @@
 
 # OS-9 disk bootfile to allow booting from TC^3 SCSI controller
 # This is a custom bootfile made by Boisy for his system
-BOOTFILE_EXP	= $(MD)/kernelp2 $(MD)/ioman $(MD)/init \
+BOOTFILE_EXP	= $(MD)/krnp2 $(MD)/ioman $(MD)/init \
 		$(MD)/rbf.mn \
 		$(3PD)/sdisk3/sdisk3_dmc_63.dr \
 		$(3PD)/sdisk3/d0_80d.dd $(3PD)/sdisk3/d1_40d.dd \
@@ -80,7 +80,7 @@
 #		$(C9)/products/SuperSCSI/softwarev2/6809l2/lltc3.dr \
 #		$(C9)/products/SuperSCSI/softwarev2/6809l2/h5_ez135_tc3.dd \
 
-BOOTFILE_LUCKEY  = $(MD)/kernelp2 $(MD)/ioman $(MD)/init \
+BOOTFILE_LUCKEY  = $(MD)/krnp2 $(MD)/ioman $(MD)/init \
                 $(MD)/rbf.mn \
                 $(C9)/Products/SuperDrivers/software/6809l2/rbsuper.dr \
                 $(C9)/Products/SuperDrivers/software/6809l2/llide.dr \
@@ -97,7 +97,7 @@
                 $(MD)/clock_60hz \
                 $(MD)/clock2_tc3
 
-BOOTFILE_CUST   = $(MD)/kernelp2 $(MD)/ioman $(MD)/init \
+BOOTFILE_CUST   = $(MD)/krnp2 $(MD)/ioman $(MD)/init \
                 $(MD)/rbf.mn \
                 $(C9)/Products/SuperDrivers/software/6809l2/rbsuper.dr \
                 $(C9)/Products/SuperDrivers/software/6809l2/llide.dr \
@@ -117,7 +117,7 @@
                 $(MD)/rb1773.dr $(MD)/d0_80d.dd $(MD)/d1_40d.dd \
                 $(MD)/scf.mn $(MD)/cc3io.dr \
                 $(MD)/keydrv_cc3.sb $(MD)/joydrv_joy.sb $(MD)/snddrv_cc3.sb \
-                $(MD)/windint.io \
+                $(MD)/grfint.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 \
--- a/level2/coco3/bootlists/standard.bl	Sat May 22 03:54:25 2004 +0000
+++ b/level2/coco3/bootlists/standard.bl	Mon May 24 14:51:21 2004 +0000
@@ -1,5 +1,5 @@
 ***************************************
-* NitrOS-9 Level Two Bootlist
+* NitrOS-9 Level 2 Bootlist
 *
 * $Id$
 *
@@ -11,7 +11,9 @@
 * Kernel/System Section
 *
 * These modules are mandatory.
-../MODULES/KERNEL/kernelp2
+../MODULES/KERNEL/krnp2
+*../MODULES/krnp3_perr
+*../MODULES/krnp4_regdump
 ../MODULES/SYSMODS/ioman
 ../MODULES/SYSMODS/init
 *
@@ -108,9 +110,15 @@
 *../MODULES/SCF/joydrv_6551L.sb
 *../MODULES/SCF/joydrv_6552L.sb
 *
-* WindInt and VDGInt I/O subroutine modules
+* GrfInt/WindInt subroutine module
+* Use WindInt with Multi-Vue; use GrfInt
+* for basic text and graphic window support..
+* Select only one.
+*../MODULES/SCF/grfint.io
+../MODULES/SCF/windint.io
+*
+* VDGInt I/O subroutine module
 * Select one or both
-../MODULES/SCF/windint.io
 *../MODULES/SCF/vdgint.io
 *../MODULES/SCF/vdgint_small.io
 *
@@ -118,6 +126,8 @@
 *../MODULES/SCF/term_vdg.dt
 *../MODULES/SCF/term_win40.dt
 ../MODULES/SCF/term_win80.dt
+*../MODULES/SCF/term_sio.dt
+*../MODULES/SCF/term_sc6551.dt
 *
 * Select as many window descriptors as needed
 ../MODULES/SCF/w.dw
@@ -184,7 +194,7 @@
 * Select one clock2 module that supports your real-time clock, if any.
 * Besides support for the internal software clock, the following
 * hardware clocks are supported: Burke & Burke, Disto 2-N-1, Disto 4-N-1,
-* Eliminator, Harris, SmartWatch, TC^3, DriveWire
+* Eliminator, Harris, SmartWatch, Cloud-9, DriveWire
 ../MODULES/CLOCKS/clock2_soft
 *../MODULES/CLOCKS/clock2_bnb
 *../MODULES/CLOCKS/clock2_disto2
@@ -192,7 +202,7 @@
 *../MODULES/CLOCKS/clock2_elim
 *../MODULES/CLOCKS/clock2_harris
 *../MODULES/CLOCKS/clock2_smart
-*../MODULES/CLOCKS/clock2_tc3
+*../MODULES/CLOCKS/clock2_cloud9
 *../MODULES/CLOCKS/clock2_dw
 *
 ***************************************
--- a/level2/coco3_6309/ChangeLog	Sat May 22 03:54:25 2004 +0000
+++ b/level2/coco3_6309/ChangeLog	Mon May 24 14:51:21 2004 +0000
@@ -1,5 +1,9 @@
 NitrOS-9/6809 Level 2 V03.02.02:
+- kernel, kernelp2, kernelp3_perr and kernelp4_regdump have been renamed to krn,
+  krnp2, krnp3_perr and krnp4_regdump respectively.
 - cc3disk has been renamed to rb1773 and has been back-ported to NitrOS-9 Level 1.
+- grfint.io now exists and can be used to replace windint.io in bootfiles where
+  Multi-Vue windowing functionality is not needed, in order to save system RAM.
 - term_t1.dd has been renamed to term_sio.dd and term_sc6551.dd has been added.
 NitrOS-9/6809 Level 2 V03.02.01 (May 14, 2004):
 - Bugs in the mpi and megaread utilities have been fixed.
--- a/level2/coco3_6309/bootfiles/makefile	Sat May 22 03:54:25 2004 +0000
+++ b/level2/coco3_6309/bootfiles/makefile	Mon May 24 14:51:21 2004 +0000
@@ -7,10 +7,10 @@
 
 DEPENDS		= ./makefile
 
-KERNEL_1773	= $(MD)/rel_80 $(MD)/boot_1773_6ms $(MD)/kernel
+KERNEL_1773	= $(MD)/rel_80 $(MD)/boot_1773_6ms $(MD)/krn
 
 # OS-9 disk bootfile to allow booting from WD1773 disk controller
-BOOTFILE_VDG	= $(MD)/kernelp2 $(MD)/ioman $(MD)/init \
+BOOTFILE_VDG	= $(MD)/krnp2 $(MD)/ioman $(MD)/init \
 		$(MD)/rbf.mn \
 		$(MD)/rb1773.dr $(MD)/d0_40d.dd $(MD)/d1_40d.dd \
 		$(MD)/ddd0_40d.dd \
@@ -23,7 +23,7 @@
 		$(MD)/pipeman.mn $(MD)/piper.dr $(MD)/pipe.dd \
 		$(MD)/clock_60hz $(MD)/clock2_soft
 
-BOOTFILE_WIN40	= $(MD)/kernelp2 $(MD)/ioman $(MD)/init \
+BOOTFILE_WIN40	= $(MD)/krnp2 $(MD)/ioman $(MD)/init \
 		$(MD)/rbf.mn \
 		$(MD)/rb1773.dr $(MD)/d0_40d.dd $(MD)/d1_40d.dd \
 		$(MD)/ddd0_40d.dd \
@@ -36,7 +36,7 @@
 		$(MD)/pipeman.mn $(MD)/piper.dr $(MD)/pipe.dd \
 		$(MD)/clock_60hz $(MD)/clock2_soft
 
-BOOTFILE_WIN80	= $(MD)/kernelp2 $(MD)/ioman $(MD)/init \
+BOOTFILE_WIN80	= $(MD)/krnp2 $(MD)/ioman $(MD)/init \
 		$(MD)/rbf.mn \
 		$(MD)/rb1773.dr $(MD)/d0_40d.dd $(MD)/d1_40d.dd \
 		$(MD)/ddd0_40d.dd \
@@ -84,7 +84,7 @@
 	$(RM) $(ALLOBJS)
 
 # OS-9 disk bootfile to allow booting from WD1773 disk controller
-BOOTFILE_VDG_DS80	= $(MD)/kernelp2 $(MD)/ioman $(MD)/init \
+BOOTFILE_VDG_DS80	= $(MD)/krnp2 $(MD)/ioman $(MD)/init \
 		$(MD)/rbf.mn \
 		$(MD)/rb1773.dr $(MD)/d0_80d.dd $(MD)/d1_40d.dd \
 		$(MD)/ddd0_80d.dd \
@@ -97,7 +97,7 @@
 		$(MD)/pipeman.mn $(MD)/piper.dr $(MD)/pipe.dd \
 		$(MD)/clock_60hz $(MD)/clock2_soft
 
-BOOTFILE_WIN40_DS80	= $(MD)/kernelp2 $(MD)/ioman $(MD)/init \
+BOOTFILE_WIN40_DS80	= $(MD)/krnp2 $(MD)/ioman $(MD)/init \
 		$(MD)/rbf.mn \
 		$(MD)/rb1773.dr $(MD)/d0_80d.dd $(MD)/d1_40d.dd \
 		$(MD)/ddd0_80d.dd \
@@ -110,7 +110,7 @@
 		$(MD)/pipeman.mn $(MD)/piper.dr $(MD)/pipe.dd \
 		$(MD)/clock_60hz $(MD)/clock2_soft
 
-BOOTFILE_WIN80_DS80	= $(MD)/kernelp2 $(MD)/ioman $(MD)/init \
+BOOTFILE_WIN80_DS80	= $(MD)/krnp2 $(MD)/ioman $(MD)/init \
 		$(MD)/rbf.mn \
 		$(MD)/rb1773.dr $(MD)/d0_80d.dd $(MD)/d1_40d.dd \
 		$(MD)/ddd0_80d.dd \
--- a/level2/coco3_6309/bootfiles/makefile.cust	Sat May 22 03:54:25 2004 +0000
+++ b/level2/coco3_6309/bootfiles/makefile.cust	Mon May 24 14:51:21 2004 +0000
@@ -12,13 +12,13 @@
 
 DEPENDS		= ./makefile.cust
 
-KERNEL_1773	= $(MD)/rel_80 $(MD)/boot_1773_6ms $(MD)/kernel
-KERNEL_TC3	= $(MD)/rel_80 $(C9)/Products/SuperDrivers/software/6809l2/boot_id0_tc3 $(MD)/kernel
-KERNEL_IDE	= $(MD)/rel_80 $(MD)/boot_idelba $(MD)/kernel
-KERNEL_DW	= $(MD)/rel_80 $(C9)/Products/DriveWire/software/6809l2/boot_dw $(MD)/kernel
+KERNEL_1773	= $(MD)/rel_80 $(MD)/boot_1773_6ms $(MD)/krn
+KERNEL_TC3	= $(MD)/rel_80 $(C9)/Products/SuperDrivers/software/6809l2/boot_id0_tc3 $(MD)/krn
+KERNEL_IDE	= $(MD)/rel_80 $(MD)/boot_idelba $(MD)/krn
+KERNEL_DW	= $(MD)/rel_80 $(C9)/Products/DriveWire/software/6809l2/boot_dw $(MD)/krn
 
 # OS-9 disk bootfile to allow booting from WD1773 disk controller
-BOOTFILE_1773	= $(MD)/kernelp2 $(MD)/ioman $(MD)/init \
+BOOTFILE_1773	= $(MD)/krnp2 $(MD)/ioman $(MD)/init \
 		$(MD)/rbf.mn \
 		$(MD)/rb1773.dr $(MD)/d0_40d.dd $(MD)/d1_80d.dd \
 		$(MD)/ddd0_40d.dd \
@@ -33,7 +33,7 @@
 
 # OS-9 disk bootfile to allow booting from TC^3 SCSI controller
 # This is a custom bootfile made by Boisy for his system
-BOOTFILE_TC3	= $(MD)/kernelp2 $(MD)/ioman $(MD)/init \
+BOOTFILE_TC3	= $(MD)/krnp2 $(MD)/ioman $(MD)/init \
 		$(MD)/rbf.mn \
 		$(C9)/superscsi/6809l2/superscsi_tc3.dr \
 		$(C9)/superscsi/6809l2/dd_ez135_tc3.dd \
@@ -61,7 +61,7 @@
 
 # OS-9 disk bootfile to allow booting from TC^3 SCSI controller
 # This is a custom bootfile made by Boisy for his system
-BOOTFILE_EXP	= $(MD)/kernelp2 $(MD)/ioman $(MD)/init \
+BOOTFILE_EXP	= $(MD)/krnp2 $(MD)/ioman $(MD)/init \
 		$(MD)/rbf.mn \
 		$(3PD)/sdisk3/sdisk3_dmc_63.dr \
 		$(3PD)/sdisk3/d0_80d.dd $(3PD)/sdisk3/d1_40d.dd \
@@ -80,7 +80,7 @@
 #		$(C9)/products/SuperSCSI/softwarev2/6809l2/lltc3.dr \
 #		$(C9)/products/SuperSCSI/softwarev2/6809l2/h5_ez135_tc3.dd \
 
-BOOTFILE_LUCKEY  = $(MD)/kernelp2 $(MD)/ioman $(MD)/init \
+BOOTFILE_LUCKEY  = $(MD)/krnp2 $(MD)/ioman $(MD)/init \
                 $(MD)/rbf.mn \
                 $(C9)/Products/SuperDrivers/software/6809l2/rbsuper.dr \
                 $(C9)/Products/SuperDrivers/software/6809l2/llide.dr \
@@ -97,7 +97,7 @@
                 $(MD)/clock_60hz \
                 $(MD)/clock2_tc3
 
-BOOTFILE_CUST   = $(MD)/kernelp2 $(MD)/ioman $(MD)/init \
+BOOTFILE_CUST   = $(MD)/krnp2 $(MD)/ioman $(MD)/init \
                 $(MD)/rbf.mn \
                 $(C9)/Products/SuperDrivers/software/6809l2/rbsuper.dr \
                 $(C9)/Products/SuperDrivers/software/6809l2/llide.dr \
@@ -117,7 +117,7 @@
                 $(MD)/rb1773.dr $(MD)/d0_80d.dd $(MD)/d1_40d.dd \
                 $(MD)/scf.mn $(MD)/cc3io.dr \
                 $(MD)/keydrv_cc3.sb $(MD)/joydrv_joy.sb $(MD)/snddrv_cc3.sb \
-                $(MD)/windint.io \
+                $(MD)/grfint.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 \
--- a/level2/coco3_6309/bootlists/standard.bl	Sat May 22 03:54:25 2004 +0000
+++ b/level2/coco3_6309/bootlists/standard.bl	Mon May 24 14:51:21 2004 +0000
@@ -1,5 +1,5 @@
 ***************************************
-* NitrOS-9 Level Two Bootlist
+* NitrOS-9 Level 2 Bootlist
 *
 * $Id$
 *
@@ -11,7 +11,9 @@
 * Kernel/System Section
 *
 * These modules are mandatory.
-../MODULES/KERNEL/kernelp2
+../MODULES/KERNEL/krnp2
+*../MODULES/krnp3_perr
+*../MODULES/krnp4_regdump
 ../MODULES/SYSMODS/ioman
 ../MODULES/SYSMODS/init
 *
@@ -108,9 +110,15 @@
 *../MODULES/SCF/joydrv_6551L.sb
 *../MODULES/SCF/joydrv_6552L.sb
 *
-* WindInt and VDGInt I/O subroutine modules
+* GrfInt/WindInt subroutine module
+* Use WindInt with Multi-Vue; use GrfInt
+* for basic text and graphic window support..
+* Select only one.
+*../MODULES/SCF/grfint.io
+../MODULES/SCF/windint.io
+*
+* VDGInt I/O subroutine module
 * Select one or both
-../MODULES/SCF/windint.io
 *../MODULES/SCF/vdgint.io
 *../MODULES/SCF/vdgint_small.io
 *
@@ -118,6 +126,8 @@
 *../MODULES/SCF/term_vdg.dt
 *../MODULES/SCF/term_win40.dt
 ../MODULES/SCF/term_win80.dt
+*../MODULES/SCF/term_sio.dt
+*../MODULES/SCF/term_sc6551.dt
 *
 * Select as many window descriptors as needed
 ../MODULES/SCF/w.dw
@@ -184,7 +194,7 @@
 * Select one clock2 module that supports your real-time clock, if any.
 * Besides support for the internal software clock, the following
 * hardware clocks are supported: Burke & Burke, Disto 2-N-1, Disto 4-N-1,
-* Eliminator, Harris, SmartWatch, TC^3, DriveWire
+* Eliminator, Harris, SmartWatch, Cloud-9, DriveWire
 ../MODULES/CLOCKS/clock2_soft
 *../MODULES/CLOCKS/clock2_bnb
 *../MODULES/CLOCKS/clock2_disto2
@@ -192,7 +202,7 @@
 *../MODULES/CLOCKS/clock2_elim
 *../MODULES/CLOCKS/clock2_harris
 *../MODULES/CLOCKS/clock2_smart
-*../MODULES/CLOCKS/clock2_tc3
+*../MODULES/CLOCKS/clock2_cloud9
 *../MODULES/CLOCKS/clock2_dw
 *
 ***************************************
--- a/level2/makefile	Sat May 22 03:54:25 2004 +0000
+++ b/level2/makefile	Mon May 24 14:51:21 2004 +0000
@@ -2,7 +2,7 @@
 
 CPU		= 6809
 DISTRO		= L2
-RELEASE		= nos9$(CPU)l2v030201
+RELEASE		= nos9$(CPU)l2v030202
 BOOTFILE	= bootfiles/bootfile_win80
 BOOTFILE_DS80	= bootfiles/bootfile_win80_ds80
 KERNELFILE	= bootfiles/kernel_1773
--- a/level2/modules/cc3io.asm	Sat May 22 03:54:25 2004 +0000
+++ b/level2/modules/cc3io.asm	Mon May 24 14:51:21 2004 +0000
@@ -191,6 +191,14 @@
          std   <V.MSmpl,u	(Mouse sample rate & fire button timeout value)
          ldd   <IT.PAR,y	get parity/baud bytes from dev desc
          std   <V.DevPar,u	save it off in our static
+*** Find CC3GfxInt
+         pshs  u,y,a		..else VDG
+         lda   #$02		get code for VDG type window
+         sta   <V.WinType,u	save it
+         leax  <CC3GfxInt,pcr	point to CC3GfxInt name
+         lbsr  L08D4		link to it if it exists
+         puls  u,y,a		restore regs & return
+***
          lbra  FindCoMod	go find and init co-module
 
 KeyDrv   fcs   /KeyDrv/
@@ -1439,6 +1447,7 @@
 
 WindInt  fcs   /WindInt/
 GrfInt   fcs   /GrfInt/ ++
+CC3GfxInt fcs   /CC3GfxInt/ ++
 
 *
 * Try WindInt
--- a/level2/modules/kernel/krn.asm	Sat May 22 03:54:25 2004 +0000
+++ b/level2/modules/kernel/krn.asm	Mon May 24 14:51:21 2004 +0000
@@ -1,5 +1,5 @@
 ********************************************************************
-* Kernel - NitrOS-9 Level 2 Kernel
+* krn - NitrOS-9 Level 2 Kernel
 *
 * $Id$
 *
@@ -14,8 +14,11 @@
 *
 *  19r8    2003/09/22  Boisy G. Pitre
 * Back-ported to OS-9 Level Two.
+*
+*  19r8    2004/05/22  Boisy G. Pitre
+* Renamed to 'krn'
 
-         nam   Kernel
+         nam   krn
          ttl   NitrOS-9 Level 2 Kernel
 
          IFP1
@@ -29,7 +32,7 @@
 
          mod   eom,MName,Systm,ReEnt+Revision,entry,0
 
-MName    fcs   /Kernel/
+MName    fcs   /krn/
          fcb   Edition 
 
 * FILL - all unused bytes are now here
@@ -37,9 +40,9 @@
          IFNE  H6309
          fcc   /0123456789ABCDEF/
          fcc   /0123456789ABCDEF/
-         fcc   /0/
+         fcc   /0123456/
          ELSE
-         fcc   /123/
+         fcc   /012345678/
          ENDC
 
 * Might as well have this here as just past the end of Kernel...
@@ -377,7 +380,7 @@
 L01B8    os9   F$Boot      error linking init, try & load boot file
          bcc   L01B0       got it, try init again
          bra   L01CE       error, re-booting do D.Crash
-* Save pointer to init module and execute kernelp2
+* Save pointer to init module and execute krnp2
 L01BF    stu   <D.Init     Save init module pointer
          lda   Feature1,u  Get feature byte #1 from init module
          bita  #CRCOn      CRC feature on?
@@ -386,13 +389,13 @@
 ShowI    lda   #'i         found init module
          jsr   <D.BtBug
 
-L01C1    leax  <kernelp2,pc   Point to it's name
+L01C1    leax  <krnp2,pc   Point to it's name
          bsr   link        Try to link it
          bcc   L01D0       It worked, execute it
          os9   F$Boot      It doesn't exist try re-booting
          bcc   L01C1       No error's, let's try to link it again
 L01CE    jmp   <D.Crash    obviously can't do it, crash machine
-L01D0    jmp   ,y          execute kernelp2
+L01D0    jmp   ,y          execute krnp2
 
 * Mark kernel in system memory map as used memory (256 byte blocks)
 L01D2    ldx   <D.SysMem   Get system mem ptr
@@ -414,7 +417,7 @@
          rts
 
 init     fcs   'Init'
-kernelp2 fcs   'KernelP2'
+krnp2    fcs   'krnp2'
 
 * Service vector call pointers
 SysCalls fcb   F$Link
--- a/level2/modules/kernel/krnp2.asm	Sat May 22 03:54:25 2004 +0000
+++ b/level2/modules/kernel/krnp2.asm	Mon May 24 14:51:21 2004 +0000
@@ -1,5 +1,5 @@
 ********************************************************************
-* KernelP2 - NitrOS-9 Level 2 Kernel Part 2
+* krnp2 - NitrOS-9 Level 2 Kernel Part 2
 *
 * $Id$
 *
@@ -57,7 +57,7 @@
 *
 * 18r6  Back-ported to OS-9 Level Two from NitrOS-9 Level Two
 
-         nam    KernelP2
+         nam    krnp2
          ttl    NitrOS-9 Level 2 Kernel Part 2
 
 ** If Network I/O ptrs are disabled, F$Fork runs 72 cycles faster
@@ -72,9 +72,9 @@
 Revision equ    6
 *DAT.Free equ   $333E      --- remove this def later
 
-         mod    eom,MName,Systm,ReEnt+Revision,KernelP2,$0100
+         mod    eom,MName,Systm,ReEnt+Revision,krnp2,$0100
 
-MName    fcs    /KernelP2/
+MName    fcs    /krnp2/
          fcb    Edition
 
          ifeq   TC9-1
@@ -168,7 +168,7 @@
          puls   cc,u,pc     restore IRQ's, register stack pointer & return
      endc
 
-KernelP2 lda   #'2        into KernelP2
+krnp2    lda   #'2        into krnp2
          jsr   <D.BtBug
 
          leay   SvcTab,pc   install system calls
@@ -237,7 +237,7 @@
          bra    L009B       crash machine
 L0093    os9    F$NProc     let it take over
 
-L0096    fcs    /KernelP3/
+L0096    fcs    /krnp3/
 
 L009B    jmp    <D.Crash
 
--- a/level2/modules/kernel/makefile	Sat May 22 03:54:25 2004 +0000
+++ b/level2/modules/kernel/makefile	Mon May 24 14:51:21 2004 +0000
@@ -1,12 +1,12 @@
 include ../../../rules.mak
 
-vpath %.asm $(6809L1)/modules/krnl
+vpath %.asm $(6809L1)/modules/kernel
 
 DEPENDS		= ./makefile
-AFLAGS		+= -I$(6809L1)/modules/krnl
+AFLAGS		+= -I$(6809L1)/modules/kernel
 
-KERNEL		= kernel
-KERNELP2	= kernelp2
+KERNEL		= krn
+KERNELP2	= krnp2
 SYSCALLS	= fallimg.asm fallram.asm falltsk.asm faproc.asm fcmpnam.asm \
 		fcpymem.asm fdatlog.asm fdelram.asm ffmodul.asm ffreehb.asm \
 		fld.asm fldabx.asm flink.asm fmove.asm fnproc.asm fprsnam.asm \
@@ -21,9 +21,9 @@
 
 all:	$(ALLOBJS)
 
-$(KERNEL):	kernel.asm $(SYSCALLS)
+$(KERNEL):	krn.asm $(SYSCALLS)
 
-$(KERNELP2):	kernelp2.asm $(SYSCALLS)
+$(KERNELP2):	krnp2.asm $(SYSCALLS)
 
 clean:
 	$(RM) $(ALLOBJS)
--- a/level2/modules/krnp3_perr.asm	Sat May 22 03:54:25 2004 +0000
+++ b/level2/modules/krnp3_perr.asm	Mon May 24 14:51:21 2004 +0000
@@ -1,5 +1,5 @@
 ********************************************************************
-* KernelP3 - Printerr functionality for Level 2
+* krnp3 - Printerr functionality for Level 2
 *
 * $Id$
 *
@@ -53,7 +53,7 @@
 *   1      1987/06/23  Peter E. Durham
 * First release.
 
-         nam   KernelP3
+         nam   krnp3
          ttl   Printerr functionality for Level 2
 
          ifp1
@@ -66,7 +66,7 @@
 
          mod   eom,name,type,ReEnt+revs,entry,256
 
-name     fcs   "KernelP3"
+name     fcs   "krnp3"
          fcb   edition
 
 *+
@@ -310,7 +310,7 @@
 ClosFil  equ   *
          os9   I$Close    ;Close file
          rts              ;Return
-P4Name   fcc   "KernelP4"
+P4Name   fcc   "krnp4"
          fcb   $D
 ErrMsg   fcc   "Error #000"
 ErrLen   equ   *-ErrMsg
--- a/level2/modules/krnp4_regdump.asm	Sat May 22 03:54:25 2004 +0000
+++ b/level2/modules/krnp4_regdump.asm	Mon May 24 14:51:21 2004 +0000
@@ -1,5 +1,5 @@
 ********************************************************************
-* KernelP4 - User Register Dump System Call for NitrOS9 Level 2
+* krnp4 - User Register Dump System Call for NitrOS9 Level 2
 *
 * $Id$
 *
@@ -23,7 +23,7 @@
 *   1      1989/02/??  Ron Lammardo
 * Started.
 
-         nam   KernelP4 
+         nam   krnp4 
          ttl   User Register Dump System Call for NitrOS9 Level 2
 
          ifp1  
@@ -37,7 +37,7 @@
 
          mod   eom,name,tylg,atrv,start,0
 
-name     fcs   /KernelP4/    name of this module
+name     fcs   /krnp4/    name of this module
          fcb   edition
 
 svctabl  fcb   F$RegDmp   F$RegDmp code
@@ -53,7 +53,7 @@
          jsr   ,y         else go execute it
 endsetup rts              return back to previous module
 
-nextname fcc   /KernelP5/    next module name to link to
+nextname fcc   /krnp5/    next module name to link to
          fcb   $0d
 
 regdmp   equ   *
--- a/level2/modules/makefile	Sat May 22 03:54:25 2004 +0000
+++ b/level2/modules/makefile	Mon May 24 14:51:21 2004 +0000
@@ -1,6 +1,6 @@
 include ../../rules.mak
 
-vpath %.asm krnl:$(6809L1)/modules
+vpath %.asm kernel:$(6809L1)/modules
 
 CLOCKELIM       = -aRTCElim=1 -aRTCDsto2=0 -aRTCDsto4=0 -aRTCBB=0 -aRTCSmart=0 -aRTCHarrs=0 -aRTCTc3=0 -aRTCSoft=0 -aMPIFlag=0
 CLOCKDISTO2     = -aRTCElim=0 -aRTCDsto2=1 -aRTCDsto4=0 -aRTCBB=0 -aRTCSmart=0 -aRTCHarrs=0 -aRTCTc3=0 -aRTCSoft=0 -aMPIFlag=0
@@ -8,7 +8,7 @@
 CLOCKBNB        = -aRTCElim=0 -aRTCDsto2=0 -aRTCDsto4=0 -aRTCBB=1 -aRTCSmart=0 -aRTCHarrs=0 -aRTCTc3=0 -aRTCSoft=0 -aMPIFlag=0
 CLOCKSMART      = -aRTCElim=0 -aRTCDsto2=0 -aRTCDsto4=0 -aRTCBB=0 -aRTCSmart=1 -aRTCHarrs=0 -aRTCTc3=0 -aRTCSoft=0 -aMPIFlag=1
 CLOCKHARRIS     = -aRTCElim=0 -aRTCDsto2=0 -aRTCDsto4=0 -aRTCBB=0 -aRTCSmart=0 -aRTCHarrs=1 -aRTCTc3=0 -aRTCSoft=0 -aMPIFlag=0
-CLOCKTC3        = -aRTCElim=0 -aRTCDsto2=0 -aRTCDsto4=0 -aRTCBB=0 -aRTCSmart=0 -aRTCHarrs=0 -aRTCTc3=1 -aRTCSoft=0 -aMPIFlag=0
+CLOCKCLOUD9     = -aRTCElim=0 -aRTCDsto2=0 -aRTCDsto4=0 -aRTCBB=0 -aRTCSmart=0 -aRTCHarrs=0 -aRTCTc3=1 -aRTCSoft=0 -aMPIFlag=0
 CLOCKSOFT       = -aRTCElim=0 -aRTCDsto2=0 -aRTCDsto4=0 -aRTCBB=0 -aRTCSmart=0 -aRTCHarrs=0 -aRTCTc3=0 -aRTCSoft=1 -aMPIFlag=0
 
 DEPENDS		= ./makefile
@@ -16,12 +16,12 @@
 
 BOOTERS		= boot_1773_6ms boot_1773_30ms \
 		 boot_burke boot_idelba boot_rampak boot_wd1002
-BOOTTRACK	= rel_32 rel_40 rel_80 $(BOOTERS) kernel
-KERNEL		= kernelp2 kernelp3_perr kernelp4_regdump
+BOOTTRACK	= rel_32 rel_40 rel_80 $(BOOTERS) krn
+KERNEL		= krnp2 krnp3_perr krnp4_regdump
 SYSMODS		= ioman init sysgo_h0 sysgo_dd
 CLOCKS          = clock_60hz clock_50hz \
 		clock2_elim clock2_disto2 clock2_disto4 clock2_bnb \
-		clock2_smart clock2_harris clock2_tc3 clock2_soft
+		clock2_smart clock2_harris clock2_cloud9 clock2_soft
 
 RBF		= rbf.mn \
 		rb1773.dr rammer.dr \
@@ -40,7 +40,7 @@
 		joydrv_6551M.sb joydrv_6552M.sb \
 		nil.dd p.dd \
 		t1.dd t2_sc6551.dd t3_sc6551.dd \
-		ftdd.dd vi.dd ssp.dd term_sio.dd term_sc6551.dd \
+		ftdd.dd vi.dd ssp.dd term_sio.dt term_sc6551.dt \
 		term_vdg.dt term_win40.dt term_win80.dt w.dw w1.dw w2.dw \
 		w3.dw w4.dw w5.dw w6.dw w7.dw v1.dw v2.dw v3.dw v4.dw v5.dw \
 		v6.dw v7.dw
@@ -53,19 +53,19 @@
 # The following macros represent a collection of modules for various
 # kernel tracks and bootfile configurations.
 #
-KERNEL_1773	= rel_32 boot_1773 kernel
-KERNEL_RAMPAK	= rel_32 $(TPB)/boot_rampak kernel
-KERNEL_KENTON	= rel_32 $(TPB)/boot_kenton kernel
-KERNEL_IDE	= rel_32 $(TPB)/boot_ide kernel
+KERNEL_1773	= rel_32 boot_1773 krn
+KERNEL_RAMPAK	= rel_32 $(TPB)/boot_rampak krn
+KERNEL_KENTON	= rel_32 $(TPB)/boot_kenton krn
+KERNEL_IDE	= rel_32 $(TPB)/boot_ide krn
 
 ALLOBJS		=  $(BOOTTRACK) $(KERNEL) $(SYSMODS) $(CLOCKS) $(RBF) $(SCF) $(PIPE)
 
 all:	$(ALLOBJS)
 
 # Kernel
-kernel kernelp2:
-	$(CD) krnl; make $@
-	$(CP) krnl/$@ .
+krn krnp2:
+	$(CD) kernel; make $@
+	$(CP) kernel/$@ .
 
 # Special cases
 rel_32: rel.asm
@@ -196,14 +196,14 @@
 clock2_harris: clock2.asm
 	$(AS) $(AFLAGS) $(ASOUT)$@ $< $(CLOCKHARRIS)
 
-clock2_tc3: clock2.asm
-	$(AS) $(AFLAGS) $(ASOUT)$@ $< $(CLOCKTC3)
+clock2_cloud9: clock2.asm
+	$(AS) $(AFLAGS) $(ASOUT)$@ $< $(CLOCKCLOUD9)
 
 clock2_soft: clock2.asm
 	$(AS) $(AFLAGS) $(ASOUT)$@ $< $(CLOCKSOFT)
 
 clean:
-	$(CD) krnl; make $@
+	$(CD) kernel; make $@
 	$(RM) $(ALLOBJS)
 
 showobjs:
--- a/level2/modules/windint.asm	Sat May 22 03:54:25 2004 +0000
+++ b/level2/modules/windint.asm	Mon May 24 14:51:21 2004 +0000
@@ -2453,8 +2453,8 @@
          ldu   >WGlobal+G.PrWMPt     get previous device static mem pointer
          beq   L0CB3      nothing there, skip ahead
          pshs  y          preserve new window table pointer
+         bsr   L0CF2      any overlay windows or frames?
          IFNE  GrfInt-1
-         bsr   L0CF2      any overlay windows or frames?
          bcs   L0CA3      no, skip ahead
          lbsr  L1034      set menu bar to in-active state
          ENDC
@@ -2471,8 +2471,8 @@
          tst   ,s         did we de-activate last used window?
          beq   L0CE1      no, skip activate
          pshs  y,u        Preserve regs
+         bsr   L0CF2      any overlay or framed windows?
          IFNE  GrfInt-1
-         bsr   L0CF2      any overlay or framed windows?
          bcs   L0CCA      no, skip ahead
          lbsr  L13E9      set menu bar to active state
          ENDC
--- a/rules.mak	Sat May 22 03:54:25 2004 +0000
+++ b/rules.mak	Mon May 24 14:51:21 2004 +0000
@@ -5,7 +5,7 @@
 # your project source tree is located.
 BASEDIR		= $(HOME)/nitros9
 OS9TOOLSDIR	= $(HOME)/bin
-#OS9TOOLSDIR	= /usr/local/bin
+OS9TOOLSDIR	= /usr/local/bin
 DEFDIR		= $(BASEDIR)/defs
 DSKDIR		= $(BASEDIR)/dsks