changeset 1315:23c681a015e1

cc3go has been renamed to SysGo
author boisy
date Thu, 04 Sep 2003 19:11:31 +0000
parents b6490bc55a3d
children 50e9ec54e7e6
files defs/os9defs defs/releasedefs level1/modules/sysgo.asm level2/coco3/ChangeLog level2/coco3/bootlists/standard.bl level2/coco3_6309/ChangeLog level2/coco3_6309/bootlists/standard.bl level2/makefile level2/modules/cc3go.asm level2/modules/init.asm level2/modules/makefile
diffstat 11 files changed, 175 insertions(+), 295 deletions(-) [+]
line wrap: on
line diff
--- a/defs/os9defs	Thu Sep 04 18:33:46 2003 +0000
+++ b/defs/os9defs	Thu Sep 04 19:11:31 2003 +0000
@@ -442,6 +442,7 @@
 D.CLTb   rmb   2          Pointer to clock interrupt table (VIRQ) $86
 D.MDREG  rmb   1          6309 MD (mode) shadow register $88 (added in V2.01.00)
 D.CRC    rmb   1          CRC checking mode flag $89 (added in V2.01.00)
+D.Clock2 rmb   2          CC Clock2 entry address
 
          org   $100
 D.XSWI3  rmb   3
--- a/defs/releasedefs	Thu Sep 04 18:33:46 2003 +0000
+++ b/defs/releasedefs	Thu Sep 04 19:11:31 2003 +0000
@@ -4,4 +4,4 @@
 * OS-9 Version equates
 OS9Vrsn  equ   3
 OS9Major equ   1
-OS9Minor equ   4
+OS9Minor equ   5
--- a/level1/modules/sysgo.asm	Thu Sep 04 18:33:46 2003 +0000
+++ b/level1/modules/sysgo.asm	Thu Sep 04 19:11:31 2003 +0000
@@ -1,182 +1,245 @@
 ********************************************************************
-* SysGo - OS-9 Level One 2 SysGo
+* SysGo - Kickstart program module
 *
 * $Id$
 *
 * Ed.    Comments                                       Who YY/MM/DD
 * ------------------------------------------------------------------
-*  12    From Tandy OS-9 Level One VR 02.00.00
-*  13    Incremented version number to reflect Y2K      BGP 99/05/11
-*        fixes
-*  14    Updated to reflect new release, changed /H0    BGP 02/07/19
-*        to /DD
-*  15    Merged ROM and non-ROM sysgos, removed 'tsmon' BGP 02/07/19
-*        and added 'AutoEx' feature ala Level Two
+*   5    Taken from OS-9 L2 Tandy distribution and      BGP 98/10/12
+*        modified banner for V3
+*   5r2  Fixed fork behavior so that if 'shell startup' BGP 03/01/08
+*        fails, system doesn't jmp to Crash, but tries
+*        AutoEx instead.  Also changed /DD back to /H0
+*        for certain boot floppy cases.
+
 
          nam   SysGo
-         ttl   OS-9 Level One 2 SysGo
+         ttl   Kickstart program module
 
          IFP1
          use   defsfile
          use   scfdefs
          ENDC
 
-tylg     set   Systm+Objct
+tylg     set   Prgrm+Objct
 atrv     set   ReEnt+rev
-rev      set   $00
-edition  set   15
+rev      set   $02
+edition  set   $05
 
          mod   eom,name,tylg,atrv,start,size
 
-dataarea rmb   200
+u0000    rmb   32
+u0020    rmb   42
+u004A    rmb   33
+u006B    rmb   6
+u0071    rmb   655
 size     equ   .
 
 name     fcs   /SysGo/
-         fcb   edition
+         fcb  edition
+
+* Default process priority
+DefPrior set   128         
 
-* default OS-9 priority
-DefPrior set   128
-
-BootMsg  fcc   !OS-9 LEVEL ONE VR. 0!
+Banner   equ   *
+         IFNE  NitrOS9
+         fcc   /Nitr/
+         ENDC
+         fcc   /OS-9 Level /
+         IFEQ  Level-3
+         fcc   /Three/
+         ENDC
+         IFEQ  Level-2
+         fcc   /Two/
+         ENDC
+         IFEQ  Level-1
+         fcc   /One/
+         ENDC
+         fcc   / Vr. 0/
          fcb   48+OS9Vrsn
-         fcc   !.0!
+         fcc   /.0/
          fcb   48+OS9Major
-         fcc   !.0!
+         fcc   /.0/
          fcb   48+OS9Minor
-         fdb   C$CR,C$LF
-
+         fcb   C$CR,C$LF
 * For ROM version, cut down on verbage
          IFEQ  ROM
-         fcc   !Release Date: 08/01/2003!
+         fcc   "Release Date: 00/01/2003"
          fcb   C$CR,C$LF
-         fcc   !"A CoCo Community Project"!
+         fcc   /"A CoCo Community Project"/
          fcb   C$CR,C$LF
-         fcc   !Visit us on the web:!
+         fcc   /Visit us on the web:/
          fcb   C$CR,C$LF
-         fcc   !http://cocoos9.sourceforge.net!
+         fcc   !http://cocoos9.sourceforge.net/!
          fcb   C$CR,C$LF
          ENDC
-
          fcb   C$LF
-MsgEnd   equ   *
+BannLen  equ   *-Banner
 
          IFEQ  ROM
-ChdDev   equ   *
+DefDev   equ   *
          IFNE  DD
          fcc   "/DD"
          ELSE
          fcc   "/H0"
          ENDC
          fcb   C$CR
-ChxDev   equ   *
+HDDev    equ   *
          IFNE  DD
          fcc   "/DD/"
          ELSE
          fcc   "/H0/"
          ENDC
-ChxPath  fcc   "CMDS"
+ExecDir  fcc   "CMDS"
          fcb   C$CR
-*         fcc   ",,,,,,,,,,"
+         fcc   ",,,,,"
          ENDC
 
 Shell    fcc   "Shell"
-CrRtn    fcb   C$CR
-
+         fcb   C$CR
+         fcc   ",,,,,"
 AutoEx   fcc   "AutoEx"
          fcb   C$CR
+         fcc   ",,,,,"
 
          IFEQ  ROM
-Startup  fcc   "startup -p"
+Startup  fcc   "STARTUP -P"
          fcb   C$CR
-         fcc   ",,,,,,,,,,"
-StartupL equ   *-Startup
+         fcc   ",,,,,"
          ENDC
 
+ShellPrm equ   *
+         IFGT  Level-1
+         fcc   "i=/1"
+         ENDC
+CRtn     fcb   C$CR
+ShellPL  equ   *-ShellPrm
+
 * Default time packet
-*               YY MM DD HH MM SS
-TimePckt fcb   103,03,07,00,00,59
+*               YY/MM/DD HH:MM:SS
+DefTime  fcb   103,09,01,00,00,59
 
-* BASIC reset code
+         IFEQ  Level-1
+* BASIC reset code      
 BasicRst fcb   $55
          neg   <$0074
          nop
          clr   >PIA0Base+3
-         nop
+         nop       
          nop
-         sta   >$FFDF		turn off ROM mode
-         jmp   >Bt.Start+2	jump to boot
+         sta   >$FFDF           turn off ROM mode
+         jmp   >Bt.Start+2      jump to boot
 BasicRL  equ   *-BasicRst
+         ENDC
 
-* SysGo entry point
+
+* SysGo Entry Point
 start    leax  >IcptRtn,pcr
          os9   F$Icpt
+* Set priority of this process
+         os9   F$ID
+         ldb   #DefPrior
+         os9   F$SPrior
+* Show banner
+         leax  >Banner,pcr
+         ldy   #BannLen
+         lda   #$01                    standard output
+         os9   I$Write                 write out banner
+* Set default time
+         leax  >DefTime,pcr
+         os9   F$STime                 set time to default
+         IFEQ  ROM
+* Change EXEC and DATA dirs
+         leax  >ExecDir,pcr
+         lda   #EXEC.
+         os9   I$ChgDir                change exec. dir
+         leax  >DefDev,pcr
+         lda   #READ.+WRITE.
+         os9   I$ChgDir                change data dir.
+         bcs   L0125
+         leax  >HDDev,pcr
+         lda   #EXEC.
+         os9   I$ChgDir                change exec. dir to HD
+         ENDC
+
+* Setup BASIC code
+L0125    equ   *
+         IFEQ  Level-1
          leax  >BasicRst,pcr
          ldu   #D.CBStrt
          ldb   #BasicRL
-CopyLoop lda   ,x+
+CopyLoop lda   ,x+   
          sta   ,u+
          decb
          bne   CopyLoop
+         ELSE
+         pshs  u,y
+         os9   F$ID
+         bcs   L01A9
+         leax  ,u
+         os9   F$GPrDsc
+         bcs   L01A9
+         leay  ,u
+         ldx   #$0000
+         ldb   #$01
+         os9   F$MapBlk
+         bcs   L01A9
 
-* Print boot message
-         leax  >BootMsg,pcr
-         ldy   #MsgEnd-BootMsg
-         lda   #$01
-         os9   I$Write
-         leax  >TimePckt,pcr
-         os9   F$STime
+         lda   #$55	set flag for Color BASIC
+         sta   <D.CBStrt,u
+* Copy our default I/O ptrs to the system process
+         ldd   <D.SysPrc,u
+         leau  d,u
+         leau  <P$DIO,u
+         leay  <P$DIO,y
+         ldb   #DefIOSiz-1
+L0151    lda   b,y
+         sta   b,u
+         decb
+         bpl   L0151
+         ENDC
 
          IFEQ  ROM
-         leax  >ChxPath,pcr
-         lda   #EXEC.
-         os9   I$ChgDir
-         leax  >ChdDev,pcr
-         lda   #UPDAT.
-         os9   I$ChgDir
-         bcs   DoStrtup
-         leax  >ChxDev,pcr
-         lda   #EXEC.
-         os9   I$ChgDir
-         bcc   DoStrtup
-         ENDC
-
-* Set priority and do startup file
-DoStrtup os9   F$ID
-         ldb   #DefPrior
-         os9   F$SPrior
-
-         IFEQ  ROM
-* First, do startup
+* Fork shell startup here
          leax  >Shell,pcr
          leau  >Startup,pcr
          ldd   #256
-         ldy   #StartupL
+         ldy   #16
+         os9   F$Fork
+         bcs   DoAuto
+         os9   F$Wait
+         ENDC
+* Fork AutoEx here
+DoAuto   leax  >AutoEx,pcr
+         leau  >CRtn,pcr
+         ldd   #$0100
+         ldy   #$0001
          os9   F$Fork
-         bcs   DeadEnd
+         bcs   L0186
          os9   F$Wait
+L0186    puls  u,y
+         leax  >ShellPrm,pcr
+         leay  ,u
+         ldb   #ShellPL
+L0190    lda   ,x+
+         sta   ,y+
+         decb
+         bne   L0190
+* Fork final shell here
+         leax  >Shell,pcr
+         ldd   #$0100
+         ldy   #ShellPL
+         os9   F$Chain
+         IFEQ  Level-1
+DeadEnd  bra   DeadEnd		dead loop
+         ELSE
+         ldb   #$06
+         bra   Crash
+L01A9    ldb   #$04
+Crash    clr   >DPort+$08	turn off disk motor
+         jmp   <D.Crash
          ENDC
 
-* Second, attempt to find AutoEx
-FrkAuto  leax  >AutoEx,pcr
-         leau  >CrRtn,pcr
-         ldd   #256
-         ldy   #1
-         os9   F$Fork
-         bcs   FrkShell
-         os9   F$Wait
-
-* Third, do Shell
-FrkShell leax  >Shell,pcr
-         ldd   #256
-         ldy   #$0000
-         os9   F$Fork
-         bcs   DeadEnd
-         os9   F$Wait
-         bcc   FrkShell
-
-DeadEnd  bra   DeadEnd
-
-* Intercept routine
 IcptRtn  rti
 
          emod
--- a/level2/coco3/ChangeLog	Thu Sep 04 18:33:46 2003 +0000
+++ b/level2/coco3/ChangeLog	Thu Sep 04 19:11:31 2003 +0000
@@ -1,4 +1,5 @@
 OS-9 Level Two V03.01.05:
+- CC3Go has been renamed to SysGo.
 - The clock module has been divided into two modules: clock and clock2.
   clock_60hz and clock_50hz support 60Hz and 50Hz power configurations.
   clock2 contains code specific to a real-time clock or software clock.
--- a/level2/coco3/bootlists/standard.bl	Thu Sep 04 18:33:46 2003 +0000
+++ b/level2/coco3/bootlists/standard.bl	Thu Sep 04 19:11:31 2003 +0000
@@ -198,10 +198,10 @@
 ***************************************
 * System Kick-Start Module
 *
-* Choose which startup module you wish to use. (cc3go_dd is recommended
+* Choose which startup module you wish to use. (sysgo_dd is recommended
 * for most configurations.)
 * 
 * Alternatively, this module can reside in the root directory of the
 * boot device, saving precious system RAM.
-../MODULES/SYSMODS/cc3go_dd
-*../MODULES/SYSMODS/cc3go_h0
+../MODULES/SYSMODS/sysgo_dd
+*../MODULES/SYSMODS/sysgo_h0
--- a/level2/coco3_6309/ChangeLog	Thu Sep 04 18:33:46 2003 +0000
+++ b/level2/coco3_6309/ChangeLog	Thu Sep 04 19:11:31 2003 +0000
@@ -1,4 +1,5 @@
 OS-9 Level Two V03.01.05:
+- CC3Go has been renamed to SysGo.
 - The clock module has been divided into two modules: clock and clock2.
   clock_60hz and clock_50hz support 60Hz and 50Hz power configurations.
   clock2 contains code specific to a real-time clock or software clock.
--- a/level2/coco3_6309/bootlists/standard.bl	Thu Sep 04 18:33:46 2003 +0000
+++ b/level2/coco3_6309/bootlists/standard.bl	Thu Sep 04 19:11:31 2003 +0000
@@ -198,10 +198,10 @@
 ***************************************
 * System Kick-Start Module
 *
-* Choose which startup module you wish to use. (cc3go_dd is recommended
+* Choose which startup module you wish to use. (sysgo_dd is recommended
 * for most configurations.)
 * 
 * Alternatively, this module can reside in the root directory of the
 * boot device, saving precious system RAM.
-../MODULES/SYSMODS/cc3go_dd
-*../MODULES/SYSMODS/cc3go_h0
+../MODULES/SYSMODS/sysgo_dd
+*../MODULES/SYSMODS/sysgo_h0
--- a/level2/makefile	Thu Sep 04 18:33:46 2003 +0000
+++ b/level2/makefile	Thu Sep 04 19:11:31 2003 +0000
@@ -21,7 +21,7 @@
 SYSBIN		= $(shell $(CD) SYS; make showbinobjs)
 SYSTEXT		= $(shell $(CD) SYS; make showtextobjs)
 ROOTFILES	= startup
-SYSGO		= cc3go_dd
+SYSGO		= sysgo_dd
 
 PACKAGENAME	= $(RELEASE).zip
 DSK1		= $(RELEASE)_ds40_1.dsk
@@ -60,8 +60,8 @@
 	$(MAKDIR) $@,CMDS
 	$(MAKDIR) $@,SYS
 	$(MAKDIR) $@,DEFS
-	$(CP) MODULES/$(SYSGO) $@,cc3go
-	$(OS9ATTR_EXEC) $@,cc3go
+	$(CP) MODULES/$(SYSGO) $@,sysgo
+	$(OS9ATTR_EXEC) $@,sysgo
 	$(CD) CMDS; $(CP) $(CMDS) ../$@,CMDS
 	$(foreach file, $(CMDS), $(OS9ATTR_EXEC) $@,CMDS/$(file);)
 	$(CD) SYS; $(CP) $(SYSBIN) ../$@,SYS
--- a/level2/modules/cc3go.asm	Thu Sep 04 18:33:46 2003 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,186 +0,0 @@
-********************************************************************
-* CC3Go - Kickstart program module
-*
-* $Id$ 
-*
-* Ed.    Comments                                       Who YY/MM/DD
-* ------------------------------------------------------------------
-*   5    Taken from OS-9 L2 Tandy distribution and      BGP 98/10/12
-*        modified banner for V3
-*   5r2  Fixed fork behavior so that if 'shell startup' BGP 03/01/08
-*        fails, system doesn't jmp to Crash, but tries
-*        AutoEx instead.  Also changed /DD back to /H0
-*        for certain boot floppy cases.
-
-
-         nam   CC3Go
-         ttl   Kickstart program module
-
-         IFP1
-         use   defsfile
-         ENDC
-
-tylg     set   Prgrm+Objct
-atrv     set   ReEnt+rev
-rev      set   $02
-edition  set   $05
-
-         mod   eom,name,tylg,atrv,start,size
-
-u0000    rmb   32
-u0020    rmb   42
-u004A    rmb   33
-u006B    rmb   6
-u0071    rmb   655
-size     equ   .
-
-name     fcs   /CC3Go/
-         fcb  edition
-
-Banner
-         IFNE  NitrOS9
-         fcc   /NitrOS-9 Level Two Vr. 0/
-         ELSE
-         fcc   /  OS-9 Level Two Vr. 0/
-         ENDC
-         fcb   48+OS9Vrsn
-         fcc   /.0/
-         fcb   48+OS9Major
-         fcc   /.0/
-         fcb   48+OS9Minor
-         fcb   C$CR,C$LF
-         fcc   "    Release Date: 08/01/2003"
-         fcb   C$CR,C$LF
-         fcc   /   "A CoCo Community Project"/
-         fcb   C$CR,C$LF
-         fcc   /      Visit us on the web:/
-         fcb   C$CR,C$LF
-         fcc   !http://cocoos9.sourceforge.net/!
-         fcb   C$CR,C$LF
-         fcb   C$LF
-BannLen  equ   *-Banner
-         IFEQ  ROM
-DefDev   equ   *
-         IFNE  DD
-         fcc   "/DD"
-         ELSE
-         fcc   "/H0"
-         ENDC
-         fcb   C$CR
-HDDev    equ   *
-         IFNE  DD
-         fcc   "/DD/"
-         ELSE
-         fcc   "/H0/"
-         ENDC
-ExecDir  fcc   "CMDS"
-         fcb   C$CR
-         fcc   ",,,,,"
-         ENDC
-Shell    fcc   "Shell"
-         fcb   C$CR
-         fcc   ",,,,,"
-AutoEx   fcc   "AutoEx"
-         fcb   C$CR
-         fcc   ",,,,,"
-         IFEQ  ROM
-Startup  fcc   "STARTUP -P"
-         fcb   C$CR
-         fcc   ",,,,,"
-         ENDC
-ShellPrm fcc   "i=/1"
-CRtn     fcb   C$CR
-         fcc   ",,,,,"
-ShellPL  equ   *-ShellPrm
-
-DefTime  fcb   103,3,07,00,00,59
-
-start    leax  >IcptRtn,pcr
-         os9   F$Icpt
-         os9   F$ID
-         ldb   #$80
-         os9   F$SPrior
-         leax  >Banner,pcr
-         ldy   #BannLen
-         lda   #$01                    standard output
-         os9   I$Write                 write out banner
-         leax  >DefTime,pcr
-         os9   F$STime                 set time to default
-         IFEQ  ROM
-         leax  >ExecDir,pcr
-         lda   #EXEC.
-         os9   I$ChgDir                change exec. dir
-         leax  >DefDev,pcr
-         lda   #READ.+WRITE.
-         os9   I$ChgDir                change data dir.
-         bcs   L0125
-         leax  >HDDev,pcr
-         lda   #EXEC.
-         os9   I$ChgDir                change exec. dir to HD
-         ENDC
-L0125    pshs  u,y
-         os9   F$ID
-         bcs   L01A9
-         leax  ,u
-         os9   F$GPrDsc
-         bcs   L01A9
-         leay  ,u
-         ldx   #$0000
-         ldb   #$01
-         os9   F$MapBlk
-         bcs   L01A9
-* Set flag for Color BASIC
-         lda   #$55
-         sta   <D.CBStrt,u
-* Copy our default I/O ptrs to the system process
-         ldd   <D.SysPrc,u
-         leau  d,u
-         leau  <P$DIO,u
-         leay  <P$DIO,y
-         ldb   #DefIOSiz-1
-L0151    lda   b,y
-         sta   b,u
-         decb
-         bpl   L0151
-         IFEQ  ROM
-* Fork shell startup here
-         leax  >Shell,pcr
-         leau  >Startup,pcr
-         ldd   #256
-         ldy   #16
-         os9   F$Fork
-         bcs   DoAuto
-         os9   F$Wait
-         ENDC
-* Fork AutoEx here
-DoAuto   leax  >AutoEx,pcr
-         leau  >CRtn,pcr
-         ldd   #$0100
-         ldy   #$0001
-         os9   F$Fork
-         bcs   L0186
-         os9   F$Wait
-L0186    puls  u,y
-         leax  >ShellPrm,pcr
-         leay  ,u
-         ldb   #ShellPL
-L0190    lda   ,x+
-         sta   ,y+
-         decb
-         bne   L0190
-* Fork final shell here
-         leax  >Shell,pcr
-         ldd   #$0100
-         ldy   #ShellPL
-         os9   F$Chain
-L01A5    ldb   #$06
-         bra   Crash
-L01A9    ldb   #$04
-Crash    clr   $FFA8                   turn off disk motor
-         jmp   <D.Crash
-
-IcptRtn  rti
-
-         emod
-eom      equ   *
-         end
--- a/level2/modules/init.asm	Thu Sep 04 18:33:46 2003 +0000
+++ b/level2/modules/init.asm	Thu Sep 04 19:11:31 2003 +0000
@@ -56,7 +56,7 @@
 name     fcs   "Init"
          fcb   edition
 
-DefProg  fcs   "CC3Go"
+DefProg  fcs   "SysGo"
 DefDev   fcs   "/DD"
 DefCons  fcs   "/Term"
 DefBoot  fcs   "Boot"
--- a/level2/modules/makefile	Thu Sep 04 18:33:46 2003 +0000
+++ b/level2/modules/makefile	Thu Sep 04 19:11:31 2003 +0000
@@ -20,7 +20,7 @@
 		 boot_burke boot_idelba boot_rampak boot_wd1002
 BOOTTRACK	= rel_32 rel_40 rel_80 $(BOOTERS) os9p1
 KERNEL		= os9p2 os9p3_perr os9p4_regdump
-SYSMODS		= ioman init cc3go_h0 cc3go_dd
+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
@@ -88,10 +88,10 @@
 cc3hdisk.dr: $(LEVEL1)/MODULES/cchdisk.asm
 	$(AS) $< $(ASOUT)$@ $(AFLAGS)
 
-cc3go_dd: cc3go.asm
+sysgo_dd: sysgo.asm
 	$(AS) $< $(ASOUT)$@ $(AFLAGS) -aDD=1
 	
-cc3go_h0: cc3go.asm
+sysgo_h0: sysgo.asm
 	$(AS) $< $(ASOUT)$@ $(AFLAGS)
 	
 # Floppy descriptors