Mercurial > hg > Members > kono > nitros9-code
changeset 2690:6e40b043d3e0 lwtools-port
Removed coco port, added coco1 and coco2 ports.
Cleaned term* descriptors to make unified between Level 1 and Level 2
line wrap: on
line diff
--- a/defs/dragon.d Wed Jul 18 20:28:37 2012 -0500 +++ b/defs/dragon.d Thu Jul 19 10:09:15 2012 -0500 @@ -61,6 +61,18 @@ RIGHTBIT EQU %01000000 SPACEBIT EQU %10000000 +****************** +* VDG Devices +* +A.TermV SET $FFC0 VDG Term +A.V1 SET $FFC1 Possible additional VDG Devices +A.V2 SET $FFC2 +A.V3 SET $FFC3 +A.V4 SET $FFC4 +A.V5 SET $FFC5 +A.V6 SET $FFC6 +A.V7 SET $FFC7 + ******************** * VTIO Static Memory *
--- a/level1/coco/bootfiles/defsfile Wed Jul 18 20:28:37 2012 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,2 +0,0 @@ - use ../defsfile - use scfdefs
--- a/level1/coco/bootfiles/makefile Wed Jul 18 20:28:37 2012 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,258 +0,0 @@ -PORT = coco -include $(NITROS9DIR)/rules.mak - -# Module directory -MD = ../modules -# Commands directory -CD = ../cmds - -DEPENDS = ./makefile - -KERNEL_1773 = $(MD)/rel $(MD)/krn $(MD)/krnp2 $(MD)/init \ - $(MD)/boot_1773_6ms - -KERNEL_DW3_COCO1 = $(MD)/rel $(MD)/krn $(MD)/krnp2 $(MD)/init \ - $(MD)/boot_dw3_coco1 - -KERNEL_DW3_COCO2 = $(MD)/rel $(MD)/krn $(MD)/krnp2 $(MD)/init \ - $(MD)/boot_dw3 - -IDE = $(3PD)/ide -SCSI = $(3PD)/scsisys - -BOOTFILE_COVDG = $(MD)/ioman \ - $(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)/covdg.io $(MD)/term32.dt \ - $(MD)/scbbp.dr $(MD)/p_scbbp.dd \ - $(MD)/scbbt.dr $(MD)/t1_scbbt.dd \ - $(MD)/pipeman.mn $(MD)/piper.dr $(MD)/pipe.dd \ - $(MD)/clock_60hz $(MD)/clock2_soft \ - $(MD)/sysgo_dd - -BOOTFILE_COHR = $(MD)/ioman \ - $(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)/cohr.io $(MD)/term51.dt \ - $(MD)/scbbp.dr $(MD)/p_scbbp.dd \ - $(MD)/scbbt.dr $(MD)/t1_scbbt.dd \ - $(MD)/pipeman.mn $(MD)/piper.dr $(MD)/pipe.dd \ - $(MD)/clock_60hz $(MD)/clock2_soft \ - $(MD)/sysgo_dd - -BOOTFILE_COWP = $(MD)/ioman \ - $(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)/cowp.io $(MD)/term80.dt \ - $(MD)/scbbp.dr $(MD)/p_scbbp.dd \ - $(MD)/scbbt.dr $(MD)/t1_scbbt.dd \ - $(MD)/pipeman.mn $(MD)/piper.dr $(MD)/pipe.dd \ - $(MD)/clock_60hz $(MD)/clock2_soft \ - $(MD)/sysgo_dd - -BOOTFILE_HEADLESS_DW3_COCO1 = $(MD)/ioman \ - $(MD)/rbf.mn \ - $(MD)/rbdw3.dr $(MD)/dw3_coco1.sb \ - $(MD)/ddx0.dd $(MD)/x1.dd $(MD)/x2.dd $(MD)/x3.dd \ - $(MD)/scf.mn \ - $(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)/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 \ - $(MD)/sysgo_dd - -BOOTFILE_COVDG_DW3_COCO1 = $(MD)/ioman \ - $(MD)/rbf.mn $(MD)/rb1773.dr \ - $(MD)/d0_80d.dd $(MD)/d1_40d.dd $(MD)/d2_40d.dd \ - $(MD)/rbdw3.dr $(MD)/dw3_coco1.sb \ - $(MD)/ddx0.dd $(MD)/x1.dd $(MD)/x2.dd $(MD)/x3.dd \ - $(MD)/scf.mn \ - $(MD)/vtio.dr $(MD)/covdg.io $(MD)/term32.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)/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)/sysgo_dd - -BOOTFILE_HEADLESS_DW3_COCO2 = $(MD)/ioman \ - $(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)/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)/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 \ - $(MD)/sysgo_dd - -BOOTFILE_COVDG_DW3_COCO2 = $(MD)/ioman \ - $(MD)/rbf.mn $(MD)/rb1773.dr \ - $(MD)/d0_80d.dd $(MD)/d1_40d.dd $(MD)/d2_40d.dd \ - $(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)/covdg.io $(MD)/term32.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)/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)/sysgo_dd - -BOOTFILE_COVDG_DS80 = $(MD)/ioman \ - $(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)/covdg.io $(MD)/term32.dt \ - $(MD)/scbbp.dr $(MD)/p_scbbp.dd \ - $(MD)/scbbt.dr $(MD)/t1_scbbt.dd \ - $(MD)/pipeman.mn $(MD)/piper.dr $(MD)/pipe.dd \ - $(MD)/clock_60hz $(MD)/clock2_soft \ - $(MD)/sysgo_dd - -BOOTFILE_COHR_DW3_COCO1 = $(MD)/ioman \ - $(MD)/rbf.mn $(MD)/rb1773.dr \ - $(MD)/d0_80d.dd $(MD)/d1_40d.dd $(MD)/d2_40d.dd \ - $(MD)/rbdw3.dr $(MD)/dw3_coco1.sb \ - $(MD)/ddx0.dd $(MD)/x1.dd $(MD)/x2.dd $(MD)/x3.dd \ - $(MD)/scf.mn \ - $(MD)/vtio.dr $(MD)/cohr.io $(MD)/term51.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)/pipeman.mn $(MD)/piper.dr $(MD)/pipe.dd \ - $(MD)/clock_60hz $(MD)/clock2_dw3 \ - $(MD)/sysgo_dd - -BOOTFILE_COHR_DW3_COCO2 = $(MD)/ioman \ - $(MD)/rbf.mn $(MD)/rb1773.dr \ - $(MD)/d0_80d.dd $(MD)/d1_40d.dd $(MD)/d2_40d.dd \ - $(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)/cohr.io $(MD)/term51.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)/pipeman.mn $(MD)/piper.dr $(MD)/pipe.dd \ - $(MD)/clock_60hz $(MD)/clock2_dw3 \ - $(MD)/sysgo_dd - -BOOTFILE_COHR_DS80 = $(MD)/ioman \ - $(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)/cohr.io $(MD)/term51.dt \ - $(MD)/scbbp.dr $(MD)/p_scbbp.dd \ - $(MD)/scbbt.dr $(MD)/t1_scbbt.dd \ - $(MD)/pipeman.mn $(MD)/piper.dr $(MD)/pipe.dd \ - $(MD)/clock_60hz $(MD)/clock2_soft \ - $(MD)/sysgo_dd - -BOOTFILES = bootfile_covdg bootfile_cohr bootfile_covdg_dw3_coco1 bootfile_covdg_dw3_coco2 \ - bootfile_headless_dw3_coco1 bootfile_headless_dw3_coco2 \ - bootfile_cohr_dw3_coco1 bootfile_cohr_dw3_coco2 bootfile_covdg_ds80 bootfile_cohr_ds80 -KERNELS = kernel_1773 kernel_dw3_coco1 kernel_dw3_coco2 - -ALLOBJS = $(BOOTFILES) $(KERNELS) - -all: $(ALLOBJS) - -bootfile_covdg: $(BOOTFILE_COVDG) $(DEPENDS) - $(MERGE) $(BOOTFILE_COVDG)>$@ - -bootfile_cohr: $(BOOTFILE_COHR) $(DEPENDS) - $(MERGE) $(BOOTFILE_COHR)>$@ - -bootfile_cowp: $(BOOTFILE_COWP) $(DEPENDS) - $(MERGE) $(BOOTFILE_COWP)>$@ - -bootfile_covdg_ds80: $(BOOTFILE_COVDG_DS80) $(DEPENDS) - $(MERGE) $(BOOTFILE_COVDG_DS80)>$@ - -bootfile_headless_dw3_coco1: $(BOOTFILE_HEADLESS_DW3_COCO1) $(DEPENDS) - $(MERGE) $(BOOTFILE_HEADLESS_DW3_COCO1)>$@ - -bootfile_covdg_dw3_coco1: $(BOOTFILE_COVDG_DW3_COCO1) $(DEPENDS) - $(MERGE) $(BOOTFILE_COVDG_DW3_COCO1)>$@ - -bootfile_headless_dw3_coco2: $(BOOTFILE_HEADLESS_DW3_COCO2) $(DEPENDS) - $(MERGE) $(BOOTFILE_HEADLESS_DW3_COCO2)>$@ - -bootfile_covdg_dw3_coco2: $(BOOTFILE_COVDG_DW3_COCO2) $(DEPENDS) - $(MERGE) $(BOOTFILE_COVDG_DW3_COCO2)>$@ - -bootfile_cohr_ds80: $(BOOTFILE_COHR_DS80) $(DEPENDS) - $(MERGE) $(BOOTFILE_COHR_DS80)>$@ - -bootfile_cohr_dw3_coco1: $(BOOTFILE_COHR_DW3_COCO1) $(DEPENDS) - $(MERGE) $(BOOTFILE_COHR_DW3_COCO1)>$@ - -bootfile_cohr_dw3_coco2: $(BOOTFILE_COHR_DW3_COCO2) $(DEPENDS) - $(MERGE) $(BOOTFILE_COHR_DW3_COCO2)>$@ - -# WD1773 Kernel -kernel_1773: $(KERNEL_1773) $(DEPENDS) - $(MERGE) $(KERNEL_1773)>$@ - $(PADROM) 4608 $@ - -# DriveWire 3 Kernel -kernel_dw3_coco1: $(KERNEL_DW3_COCO1) $(DEPENDS) - $(MERGE) $(KERNEL_DW3_COCO1)>$@ - $(PADROM) 4608 $@ - -kernel_dw3_coco2: $(KERNEL_DW3_COCO2) $(DEPENDS) - $(MERGE) $(KERNEL_DW3_COCO2)>$@ - $(PADROM) 4608 $@ - -clean: - $(RM) $(ALLOBJS) -
--- a/level1/coco/bootlists/dw3.bl Wed Jul 18 20:28:37 2012 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,191 +0,0 @@ -*************************************** -* NitrOS-9 Level 1 CoCo Bootlist -* -* $Id$ -* -* This bootlist is presented as an example for creating custom bootfiles. -* A module may be excluded from the bootfile if an asterisk (*) is the -* first character of the line. -* -*************************************** -* Kernel/System Section -* -* These modules are mandatory. -../MODULES/SYSMODS/ioman -* -*************************************** -* CDF Section (HawkSoft) -* -*../MODULES/CDF/cdf.mn -* -* CDF descriptors - select as needed -* SCSI descriptors (IDs 0-6) -*../MODULES/CDF/sc0.dd -*../MODULES/CDF/sc1.dd -*../MODULES/CDF/sc2.dd -*../MODULES/CDF/sc3.dd -*../MODULES/CDF/sc4.dd -*../MODULES/CDF/sc5.dd -*../MODULES/CDF/sc6.dd -* IDE descriptors (master/slave) -*../MODULES/CDF/ic0.dd -*../MODULES/CDF/ic1.dd -* -*************************************** -* RBF Section -* -../MODULES/RBF/rbf.mn -* -* DriveWire 3 RBF driver -../MODULES/RBF/rbdw3.dr -../MODULES/RBF/dw3.sb -*../MODULES/RBF/dw3_coco1.sb -* DriveWire descriptors - select as needed -../MODULES/RBF/ddx0.dd -*../MODULES/RBF/x0.dd -../MODULES/RBF/x1.dd -../MODULES/RBF/x2.dd -../MODULES/RBF/x3.dd -* -* SuperDriver Package -*../MODULES/RBF/rbsuper.dr -* Select Low level SCSI and/or IDE driver -*../MODULES/RBF/lltc3.dr -*../MODULES/RBF/llide.dr -* SuperDriver descriptors - select as needed -* TC^3 SCSI DD Descriptor (ID 0) -*../MODULES/RBF/dds0_tc3.dd -* TC^3 SCSI descriptors (IDs 0-6) -*../MODULES/RBF/s0_tc3.dd -*../MODULES/RBF/s1_tc3.dd -*../MODULES/RBF/s2_tc3.dd -*../MODULES/RBF/s3_tc3.dd -*../MODULES/RBF/s4_tc3.dd -*../MODULES/RBF/s5_tc3.dd -*../MODULES/RBF/s6_tc3.dd -* TC^3 SCSI HDB-DOS descriptor -*../MODULES/RBF/sh_tc3.dd -* IDE DD descriptor (Master) -*../MODULES/RBF/ddi0_ide.dd -* IDE descriptors (master/slave) -*../MODULES/RBF/i0_ide.dd -*../MODULES/RBF/i1_ide.dd -* IDE HDB-DOS descriptor -*../MODULES/RBF/ih_ide.dd -* -* WD1773 floppy support for Tandy and compatible disk controllers -../MODULES/RBF/rb1773.dr -* WD1773 floppy support for Disto Super Controller II -*../MODULES/RBF/rb1773_scii_ff74.dr -*../MODULES/RBF/rb1773_scii_ff58.dr -* Floppy device descriptors -* DD - default device - choose one if needed -*../MODULES/RBF/ddd0_35s.dd -*../MODULES/RBF/ddd0_40d.dd -*../MODULES/RBF/ddd0_80d.dd -* D0 - drive 0 - choose one if needed -*../MODULES/RBF/d0_35s.dd -../MODULES/RBF/d0_40d.dd -*../MODULES/RBF/d0_80d.dd -* D1 - drive 1 - choose one if needed -*../MODULES/RBF/d1_35s.dd -../MODULES/RBF/d1_40d.dd -*../MODULES/RBF/d1_80d.dd -* D2 - drive 2 - choose one if needed -*../MODULES/RBF/d2_35s.dd -../MODULES/RBF/d2_40d.dd -*../MODULES/RBF/d2_80d.dd -* D3 - drive 3 - choose if needed -*../MODULES/RBF/d3_35s.dd -*************************************** -* SCF Section -* -../MODULES/SCF/scf.mn -* -* Video Terminal I/O driver and subroutine modules -../MODULES/SCF/vtio.dr -* Choose from CoVDG (32x16 VDG) or CoHR (Hi-Res 51x24 graphics screen) -../MODULES/SCF/covdg.io -*../MODULES/SCF/cohr.io -* -* Select only one term descriptor -../MODULES/SCF/term32.dt -*../MODULES/SCF/term51.dt -*../MODULES/SCF/term_scbbt.dt -*../MODULES/SCF/term_sc6551.dt -* -* Serial port drivers -* CoCo Bit-Banger terminal port -*../MODULES/SCF/scbbt.dr -*../MODULES/SCF/t1_scbbt.dd -* 6551 ACIA -*../MODULES/SCF/sc6551.dr -*../MODULES/SCF/t2_sc6551.dd -*../MODULES/SCF/t3_sc6551.dd -* -* Printer drivers -* ../MODULES/SCF/scbbp.dr -* ../MODULES/SCF/p_scbbp.dd -* -* DriveWire 3 Printer drivers -* ../MODULES/SCF/scdwp.dr -* ../MODULES/SCF/p_scdwp.dd -* -* DriveWire Networking -*../MODULES/SCF/scdwn.dr -*../MODULES/SCF/term_scdwn.dt -*../MODULES/SCF/n_scdwn.dd -*../MODULES/SCF/n1_scdwn.dd -*../MODULES/SCF/n2_scdwn.dd -*../MODULES/SCF/n3_scdwn.dd -*../MODULES/SCF/n4_scdwn.dd -*../MODULES/SCF/n5_scdwn.dd -*../MODULES/SCF/n6_scdwn.dd -*../MODULES/SCF/n7_scdwn.dd -*../MODULES/SCF/n8_scdwn.dd -*../MODULES/SCF/n9_scdwn.dd -*../MODULES/SCF/n10_scdwn.dd -*../MODULES/SCF/n11_scdwn.dd -*../MODULES/SCF/n12_scdwn.dd -*../MODULES/SCF/n13_scdwn.dd -*../MODULES/SCF/n14_scdwn.dd -* -*************************************** -* Pipe Section -* -* Pipes are a useful but optional part of a system. -../MODULES/PIPE/pipeman.mn -../MODULES/PIPE/piper.dr -../MODULES/PIPE/pipe.dd -* -*************************************** -* Clock Section -* -* Select one clock module depending upon your power line frequency -* (60Hz = USA/Canada; 50Hz = Europe, Australia) -../MODULES/CLOCKS/clock_60hz -*../MODULES/CLOCKS/clock_50hz -* 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, Cloud-9, the MESS emulator, Jeff -* Vavasour's CoCo emulator, and DriveWire. -*../MODULES/CLOCKS/clock2_soft -*../MODULES/CLOCKS/clock2_bnb -*../MODULES/CLOCKS/clock2_disto2 -*../MODULES/CLOCKS/clock2_disto4 -*../MODULES/CLOCKS/clock2_elim -*../MODULES/CLOCKS/clock2_harris -*../MODULES/CLOCKS/clock2_smart -*../MODULES/CLOCKS/clock2_jvemu -*../MODULES/CLOCKS/clock2_messemu -*../MODULES/CLOCKS/clock2_cloud9 -../MODULES/CLOCKS/clock2_dw3 -* -*************************************** -* System Kick-Start Module -* -* Choose which startup module you wish to use. (sysgo_dd is recommended -* for most configurations.) -../MODULES/SYSMODS/sysgo_dd -*../MODULES/SYSMODS/sysgo_h0
--- a/level1/coco/bootlists/dw3_coco1.bl Wed Jul 18 20:28:37 2012 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,191 +0,0 @@ -*************************************** -* NitrOS-9 Level 1 CoCo Bootlist -* -* $Id$ -* -* This bootlist is presented as an example for creating custom bootfiles. -* A module may be excluded from the bootfile if an asterisk (*) is the -* first character of the line. -* -*************************************** -* Kernel/System Section -* -* These modules are mandatory. -../MODULES/SYSMODS/ioman -* -*************************************** -* CDF Section (HawkSoft) -* -*../MODULES/CDF/cdf.mn -* -* CDF descriptors - select as needed -* SCSI descriptors (IDs 0-6) -*../MODULES/CDF/sc0.dd -*../MODULES/CDF/sc1.dd -*../MODULES/CDF/sc2.dd -*../MODULES/CDF/sc3.dd -*../MODULES/CDF/sc4.dd -*../MODULES/CDF/sc5.dd -*../MODULES/CDF/sc6.dd -* IDE descriptors (master/slave) -*../MODULES/CDF/ic0.dd -*../MODULES/CDF/ic1.dd -* -*************************************** -* RBF Section -* -../MODULES/RBF/rbf.mn -* -* DriveWire 3 RBF driver -../MODULES/RBF/rbdw3.dr -*../MODULES/RBF/dw3.sb -../MODULES/RBF/dw3_coco1.sb -* DriveWire descriptors - select as needed -../MODULES/RBF/ddx0.dd -*../MODULES/RBF/x0.dd -../MODULES/RBF/x1.dd -../MODULES/RBF/x2.dd -../MODULES/RBF/x3.dd -* -* SuperDriver Package -*../MODULES/RBF/rbsuper.dr -* Select Low level SCSI and/or IDE driver -*../MODULES/RBF/lltc3.dr -*../MODULES/RBF/llide.dr -* SuperDriver descriptors - select as needed -* TC^3 SCSI DD Descriptor (ID 0) -*../MODULES/RBF/dds0_tc3.dd -* TC^3 SCSI descriptors (IDs 0-6) -*../MODULES/RBF/s0_tc3.dd -*../MODULES/RBF/s1_tc3.dd -*../MODULES/RBF/s2_tc3.dd -*../MODULES/RBF/s3_tc3.dd -*../MODULES/RBF/s4_tc3.dd -*../MODULES/RBF/s5_tc3.dd -*../MODULES/RBF/s6_tc3.dd -* TC^3 SCSI HDB-DOS descriptor -*../MODULES/RBF/sh_tc3.dd -* IDE DD descriptor (Master) -*../MODULES/RBF/ddi0_ide.dd -* IDE descriptors (master/slave) -*../MODULES/RBF/i0_ide.dd -*../MODULES/RBF/i1_ide.dd -* IDE HDB-DOS descriptor -*../MODULES/RBF/ih_ide.dd -* -* WD1773 floppy support for Tandy and compatible disk controllers -../MODULES/RBF/rb1773.dr -* WD1773 floppy support for Disto Super Controller II -*../MODULES/RBF/rb1773_scii_ff74.dr -*../MODULES/RBF/rb1773_scii_ff58.dr -* Floppy device descriptors -* DD - default device - choose one if needed -*../MODULES/RBF/ddd0_35s.dd -*../MODULES/RBF/ddd0_40d.dd -*../MODULES/RBF/ddd0_80d.dd -* D0 - drive 0 - choose one if needed -*../MODULES/RBF/d0_35s.dd -../MODULES/RBF/d0_40d.dd -*../MODULES/RBF/d0_80d.dd -* D1 - drive 1 - choose one if needed -*../MODULES/RBF/d1_35s.dd -../MODULES/RBF/d1_40d.dd -*../MODULES/RBF/d1_80d.dd -* D2 - drive 2 - choose one if needed -*../MODULES/RBF/d2_35s.dd -../MODULES/RBF/d2_40d.dd -*../MODULES/RBF/d2_80d.dd -* D3 - drive 3 - choose if needed -*../MODULES/RBF/d3_35s.dd -*************************************** -* SCF Section -* -../MODULES/SCF/scf.mn -* -* Video Terminal I/O driver and subroutine modules -../MODULES/SCF/vtio.dr -* Choose from CoVDG (32x16 VDG) or CoHR (Hi-Res 51x24 graphics screen) -../MODULES/SCF/covdg.io -*../MODULES/SCF/cohr.io -* -* Select only one term descriptor -../MODULES/SCF/term32.dt -*../MODULES/SCF/term51.dt -*../MODULES/SCF/term_scbbt.dt -*../MODULES/SCF/term_sc6551.dt -* -* Serial port drivers -* CoCo Bit-Banger terminal port -*../MODULES/SCF/scbbt.dr -*../MODULES/SCF/t1_scbbt.dd -* 6551 ACIA -*../MODULES/SCF/sc6551.dr -*../MODULES/SCF/t2_sc6551.dd -*../MODULES/SCF/t3_sc6551.dd -* -* Printer drivers -* ../MODULES/SCF/scbbp.dr -* ../MODULES/SCF/p_scbbp.dd -* -* DriveWire 3 Printer drivers -* ../MODULES/SCF/scdwp.dr -* ../MODULES/SCF/p_scdwp.dd -* -* DriveWire Networking -*../MODULES/SCF/scdwn.dr -*../MODULES/SCF/term_scdwn.dt -*../MODULES/SCF/n_scdwn.dd -*../MODULES/SCF/n1_scdwn.dd -*../MODULES/SCF/n2_scdwn.dd -*../MODULES/SCF/n3_scdwn.dd -*../MODULES/SCF/n4_scdwn.dd -*../MODULES/SCF/n5_scdwn.dd -*../MODULES/SCF/n6_scdwn.dd -*../MODULES/SCF/n7_scdwn.dd -*../MODULES/SCF/n8_scdwn.dd -*../MODULES/SCF/n9_scdwn.dd -*../MODULES/SCF/n10_scdwn.dd -*../MODULES/SCF/n11_scdwn.dd -*../MODULES/SCF/n12_scdwn.dd -*../MODULES/SCF/n13_scdwn.dd -*../MODULES/SCF/n14_scdwn.dd -* -*************************************** -* Pipe Section -* -* Pipes are a useful but optional part of a system. -../MODULES/PIPE/pipeman.mn -../MODULES/PIPE/piper.dr -../MODULES/PIPE/pipe.dd -* -*************************************** -* Clock Section -* -* Select one clock module depending upon your power line frequency -* (60Hz = USA/Canada; 50Hz = Europe, Australia) -../MODULES/CLOCKS/clock_60hz -*../MODULES/CLOCKS/clock_50hz -* 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, Cloud-9, the MESS emulator, Jeff -* Vavasour's CoCo emulator, and DriveWire. -*../MODULES/CLOCKS/clock2_soft -*../MODULES/CLOCKS/clock2_bnb -*../MODULES/CLOCKS/clock2_disto2 -*../MODULES/CLOCKS/clock2_disto4 -*../MODULES/CLOCKS/clock2_elim -*../MODULES/CLOCKS/clock2_harris -*../MODULES/CLOCKS/clock2_smart -*../MODULES/CLOCKS/clock2_jvemu -*../MODULES/CLOCKS/clock2_messemu -*../MODULES/CLOCKS/clock2_cloud9 -../MODULES/CLOCKS/clock2_dw3 -* -*************************************** -* System Kick-Start Module -* -* Choose which startup module you wish to use. (sysgo_dd is recommended -* for most configurations.) -../MODULES/SYSMODS/sysgo_dd -*../MODULES/SYSMODS/sysgo_h0
--- a/level1/coco/bootlists/standard.bl Wed Jul 18 20:28:37 2012 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,191 +0,0 @@ -*************************************** -* NitrOS-9 Level 1 CoCo Bootlist -* -* $Id$ -* -* This bootlist is presented as an example for creating custom bootfiles. -* A module may be excluded from the bootfile if an asterisk (*) is the -* first character of the line. -* -*************************************** -* Kernel/System Section -* -* These modules are mandatory. -../MODULES/SYSMODS/ioman -* -*************************************** -* CDF Section (HawkSoft) -* -*../MODULES/CDF/cdf.mn -* -* CDF descriptors - select as needed -* SCSI descriptors (IDs 0-6) -*../MODULES/CDF/sc0.dd -*../MODULES/CDF/sc1.dd -*../MODULES/CDF/sc2.dd -*../MODULES/CDF/sc3.dd -*../MODULES/CDF/sc4.dd -*../MODULES/CDF/sc5.dd -*../MODULES/CDF/sc6.dd -* IDE descriptors (master/slave) -*../MODULES/CDF/ic0.dd -*../MODULES/CDF/ic1.dd -* -*************************************** -* RBF Section -* -../MODULES/RBF/rbf.mn -* -* DriveWire 3 RBF driver -*../MODULES/RBF/rbdw3.dr -*../MODULES/RBF/dw3.sb -*../MODULES/RBF/dw3_coco1.sb -* DriveWire descriptors - select as needed -*../MODULES/RBF/ddx0.dd -*../MODULES/RBF/x0.dd -*../MODULES/RBF/x1.dd -*../MODULES/RBF/x2.dd -*../MODULES/RBF/x3.dd -* -* SuperDriver Package -*../MODULES/RBF/rbsuper.dr -* Select Low level SCSI and/or IDE driver -*../MODULES/RBF/lltc3.dr -*../MODULES/RBF/llide.dr -* SuperDriver descriptors - select as needed -* TC^3 SCSI DD Descriptor (ID 0) -*../MODULES/RBF/dds0_tc3.dd -* TC^3 SCSI descriptors (IDs 0-6) -*../MODULES/RBF/s0_tc3.dd -*../MODULES/RBF/s1_tc3.dd -*../MODULES/RBF/s2_tc3.dd -*../MODULES/RBF/s3_tc3.dd -*../MODULES/RBF/s4_tc3.dd -*../MODULES/RBF/s5_tc3.dd -*../MODULES/RBF/s6_tc3.dd -* TC^3 SCSI HDB-DOS descriptor -*../MODULES/RBF/sh_tc3.dd -* IDE DD descriptor (Master) -*../MODULES/RBF/ddi0_ide.dd -* IDE descriptors (master/slave) -*../MODULES/RBF/i0_ide.dd -*../MODULES/RBF/i1_ide.dd -* IDE HDB-DOS descriptor -*../MODULES/RBF/ih_ide.dd -* -* WD1773 floppy support for Tandy and compatible disk controllers -../MODULES/RBF/rb1773.dr -* WD1773 floppy support for Disto Super Controller II -*../MODULES/RBF/rb1773_scii_ff74.dr -*../MODULES/RBF/rb1773_scii_ff58.dr -* Floppy device descriptors -* DD - default device - choose one if needed -*../MODULES/RBF/ddd0_35s.dd -../MODULES/RBF/ddd0_40d.dd -*../MODULES/RBF/ddd0_80d.dd -* D0 - drive 0 - choose one if needed -*../MODULES/RBF/d0_35s.dd -../MODULES/RBF/d0_40d.dd -*../MODULES/RBF/d0_80d.dd -* D1 - drive 1 - choose one if needed -*../MODULES/RBF/d1_35s.dd -../MODULES/RBF/d1_40d.dd -*../MODULES/RBF/d1_80d.dd -* D2 - drive 2 - choose one if needed -*../MODULES/RBF/d2_35s.dd -../MODULES/RBF/d2_40d.dd -*../MODULES/RBF/d2_80d.dd -* D3 - drive 3 - choose if needed -*../MODULES/RBF/d3_35s.dd -*************************************** -* SCF Section -* -../MODULES/SCF/scf.mn -* -* Video Terminal I/O driver and subroutine modules -../MODULES/SCF/vtio.dr -* Choose from CoVDG (32x16 VDG) or CoHR (Hi-Res 51x24 graphics screen) -../MODULES/SCF/covdg.io -*../MODULES/SCF/cohr.io -* -* Select only one term descriptor -../MODULES/SCF/term32.dt -*../MODULES/SCF/term51.dt -*../MODULES/SCF/term_scbbt.dt -*../MODULES/SCF/term_sc6551.dt -* -* Serial port drivers -* CoCo Bit-Banger terminal port -*../MODULES/SCF/scbbt.dr -*../MODULES/SCF/t1_scbbt.dd -* 6551 ACIA -*../MODULES/SCF/sc6551.dr -*../MODULES/SCF/t2_sc6551.dd -*../MODULES/SCF/t3_sc6551.dd -* -* Printer drivers -* ../MODULES/SCF/scbbp.dr -* ../MODULES/SCF/p_scbbp.dd -* -* DriveWire 3 Printer drivers -* ../MODULES/SCF/scdwp.dr -* ../MODULES/SCF/p_scdwp.dd -* -* DriveWire Networking -*../MODULES/SCF/scdwn.dr -*../MODULES/SCF/term_scdwn.dt -*../MODULES/SCF/n_scdwn.dd -*../MODULES/SCF/n1_scdwn.dd -*../MODULES/SCF/n2_scdwn.dd -*../MODULES/SCF/n3_scdwn.dd -*../MODULES/SCF/n4_scdwn.dd -*../MODULES/SCF/n5_scdwn.dd -*../MODULES/SCF/n6_scdwn.dd -*../MODULES/SCF/n7_scdwn.dd -*../MODULES/SCF/n8_scdwn.dd -*../MODULES/SCF/n9_scdwn.dd -*../MODULES/SCF/n10_scdwn.dd -*../MODULES/SCF/n11_scdwn.dd -*../MODULES/SCF/n12_scdwn.dd -*../MODULES/SCF/n13_scdwn.dd -*../MODULES/SCF/n14_scdwn.dd -* -*************************************** -* Pipe Section -* -* Pipes are a useful but optional part of a system. -../MODULES/PIPE/pipeman.mn -../MODULES/PIPE/piper.dr -../MODULES/PIPE/pipe.dd -* -*************************************** -* Clock Section -* -* Select one clock module depending upon your power line frequency -* (60Hz = USA/Canada; 50Hz = Europe, Australia) -../MODULES/CLOCKS/clock_60hz -*../MODULES/CLOCKS/clock_50hz -* 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, Cloud-9, the MESS emulator, Jeff -* Vavasour's CoCo emulator, and DriveWire. -../MODULES/CLOCKS/clock2_soft -*../MODULES/CLOCKS/clock2_bnb -*../MODULES/CLOCKS/clock2_disto2 -*../MODULES/CLOCKS/clock2_disto4 -*../MODULES/CLOCKS/clock2_elim -*../MODULES/CLOCKS/clock2_harris -*../MODULES/CLOCKS/clock2_smart -*../MODULES/CLOCKS/clock2_jvemu -*../MODULES/CLOCKS/clock2_messemu -*../MODULES/CLOCKS/clock2_cloud9 -*../MODULES/CLOCKS/clock2_dw3 -* -*************************************** -* System Kick-Start Module -* -* Choose which startup module you wish to use. (sysgo_dd is recommended -* for most configurations.) -../MODULES/SYSMODS/sysgo_dd -*../MODULES/SYSMODS/sysgo_h0
--- a/level1/coco/bootroms/makefile Wed Jul 18 20:28:37 2012 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,42 +0,0 @@ -include $(NITROS9DIR)/rules.mak - -# Module directory -MD = ../modules -# Commands directory -CD = ../cmds - -DEPENDS = ./makefile - -KERNEL_ROM = $(MD)/rel $(MD)/krn $(MD)/krnp2 $(MD)/init $(MD)/boot_rom - -BOOTFILE_ROM = $(MD)/rominfo $(MD)/ioman \ - $(MD)/scf.mn $(MD)/vtio.dr \ - $(MD)/covdg.io \ - $(MD)/term32.dt \ - $(MD)/clock_60hz $(MD)/clock2_soft - -BOOTROMS = nos96809l1.rom -KERNELS = kernel_rom - -ALLROMS = $(BOOTROMS) - -all: $(ALLROMS) - -# Bootfiles -nos96809l1.rom: $(BOOTFILE_ROM) $(KERNEL_ROM) $(DEPENDS) - $(MERGE) $(BOOTFILE_ROM)>$@.tmp - $(PADROM) 11776 $@.tmp - $(MERGE) $(KERNEL_ROM)>kernel_rom - $(PADROM) 4592 kernel_rom - $(MERGE) $@.tmp kernel_rom>$@.tmp2 - $(MERGE) $@.tmp2 $(MD)/vectors>$@ - $(RM) $@.tmp $@.tmp2 - - -# Kernels -kernel_rom: $(KERNEL_ROM) $(DEPENDS) - $(MERGE) $(KERNEL_ROM)>$@ - -clean: - $(RM) $(ALLROMS) $(KERNELS) -
--- a/level1/coco/cmds/defsfile Wed Jul 18 20:28:37 2012 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ - use ../defsfile
--- a/level1/coco/cmds/makefile Wed Jul 18 20:28:37 2012 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,59 +0,0 @@ -PORT = coco -include $(NITROS9DIR)/rules.mak - -vpath %.a $(LEVEL1)/cmds -vpath %.asm $(LEVEL1)/cmds:$(NITROS9DIR)/3rdparty/packages/basic09 - -DEPENDS = ./makefile - -AFLAGS += --includedir=$(NITROS9DIR)/3rdparty/packages/basic09 -LFLAGS += -l=$(NITROS9DIR)/lib/net.l -l=$(NITROS9DIR)/lib/alib.l -l=$(NITROS9DIR)/lib/sys6809l1.l - -BASIC09FILES = basic09.asm runb.asm gfx.asm inkey.asm syscall.asm -CMDS = asm attr backup binex build calldbg cmp cobbler copy cputype \ - date dcheck debug ded deiniz del deldir devs dir dirsort disasm \ - display dmode dsave dump echo edit error exbin format \ - free grfdrv help ident iniz irqs link list load login makdir \ - megaread mdir merge mfree mpi os9gen padrom park printerr procs prompt pwd pxd \ - rename save setime shellplus shell_21 sleep \ - tee tmode touch tsmon tuneport unlink verify xmode - -CMDS_D2 = basic09 runb gfx inkey syscall copy del echo format \ - merge os9gen prompt tmode - -CMDS_DW = inetd telnet dw - -SUBS = gfx inkey syscall -ALLOBJS = $(CMDS) $(CMDS_D2) $(CMDS_DW) $(SUBS) - -all: $(ALLOBJS) - -pwd: pd.asm - $(AS) $(AFLAGS) $< $(ASOUT)$@ -DPWD=1 - -xmode: xmode.asm - $(AS) $(AFLAGS) $< $(ASOUT)$@ -DXMODE=1 - -tmode: xmode.asm - $(AS) $(AFLAGS) $< $(ASOUT)$@ -DTMODE=1 - -pxd: pd.asm - $(AS) $(AFLAGS) $< $(ASOUT)$@ -DPXD=1 - -clean: - $(RM) $(ALLOBJS) - -identify: - $(IDENT_SHORT) $(ALLOBJS) - -showobjs: - @$(ECHO) $(CMDS) - -showobjs_d2: - @$(ECHO) $(CMDS_D2) - -showobjs_dw: - @$(ECHO) $(CMDS) $(CMDS_DW) - -showallobjs: - @$(ECHO) $(ALLOBJS)
--- a/level1/coco/defs/defsfile.asm Wed Jul 18 20:28:37 2012 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,8 +0,0 @@ -Level equ 1 - - ifp1 - use /dd/defs/os9.d - use /dd/defs/rbf.d - use /dd/defs/scf.d - use /dd/defs/coco.d - endc
--- a/level1/coco/defs/makefile Wed Jul 18 20:28:37 2012 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,35 +0,0 @@ -PORT = coco -include $(NITROS9DIR)/rules.mak - -DEPENDS = ./makefile - -DEFOPTS = --preprocess -DLevel=1 -DEFSDIR = ../../../defs -DEFS = defsfile os9.d rbf.d scf.d coco.d cocovtio.d -ALLOBJS = $(DEFS) - -all: $(ALLOBJS) - -defsfile: defsfile.asm - $(AS) $(DEFOPTS) $< > $@ - -os9.d: $(DEFSDIR)/os9.d - $(AS) $(DEFOPTS) -DOS9.D=0 $< > $@ - -rbf.d: $(DEFSDIR)/rbf.d - $(AS) $(DEFOPTS) -DRBF.D=0 $< > $@ - -scf.d: $(DEFSDIR)/scf.d - $(AS) $(DEFOPTS) -DSCF.D=0 $< > $@ - -coco.d: $(DEFSDIR)/coco.d - $(AS) $(DEFOPTS) -DCOCO.D=0 $< > $@ - -cocovtio.d: $(DEFSDIR)/cocovtio.d - $(AS) $(DEFOPTS) -DCOCOVTIO.D=0 $< > $@ - -clean: - $(RM) $(DEFS) - -showobjs: - @$(ECHO) $(ALLOBJS)
--- a/level1/coco/defsfile Wed Jul 18 20:28:37 2012 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,6 +0,0 @@ -Level equ 1 - - use os9.d - use scf.d - use rbf.d - use coco.d
--- a/level1/coco/diskfix.pat Wed Jul 18 20:28:37 2012 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,124 +0,0 @@ -* Patches Level I Ver. 2 -* CCDisk to read, write -* and format both single -* and double sided disks -* Rainbow, Oct '88, p 157 -t -tmode .1 -pause -save /d0/ccdisk ccdisk -debug -lccdisk -. .+7 -=80 -$load /d0/ccdisk -lccdisk -. .+3 -=82 -lccdisk -. .+1c9 -=16 -=01 -=84 -lccdisk -. .+1f8 -=5f -=17 -=01 -=76 -lccdisk -. .+2ae -=e6 -=c9 -=00 -=a9 -=16 -=00 -=8c -=12 -=23 -=02 -lccdisk -. .+2dd -=40 -=12 -=12 -=12 -=17 -=00 -=90 -. .+3 -=5f -=16 -=00 -=81 -lccdisk -. .+341 -=a6 -=07 -=85 -=01 -=26 -=02 -=ca -=40 -=a6 -=09 -=81 -=15 -=16 -=ff -=66 -=a6 -=88 -=10 -=85 -=01 -=27 -=0e -=64 -=e4 -=24 -=0a -=a6 -=c9 -=00 -=a9 -=8a -=40 -=a7 -=c9 -=00 -=a9 -=35 -=02 -=81 -=15 -=16 -=fe -=61 -=ea -=a8 -=22 -=16 -=ff -=01 -=cb -=10 -=ea -=a8 -=22 -=34 -=02 -=17 -=fe -=f7 -=35 -=02 -=39 -q -del /d0/ccdisk -save /d0/temp ccdisk -verify u</d0/temp >/d0/ccdisk -del temp -tmode .1 pause --t
--- a/level1/coco/makefile Wed Jul 18 20:28:37 2012 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,312 +0,0 @@ -PORT = coco -include $(NITROS9DIR)/rules.mak - -CPU = 6809 -LEVEL = 1 - -# Level 1 - Specify which shell should be used -#WHICHSHELL = shellplus -WHICHSHELL = shell_21 - -DISTRO = $(CPU)L$(LEVEL) -DISTRONAME = nos9$(CPU)l$(LEVEL) -DISTROVER = $(DISTRONAME)$(NITROS9VER)$(PORT) -BOOTFILE_COVDG = bootfiles/bootfile_covdg -BOOTFILE_COHR = bootfiles/bootfile_cohr -BOOTFILE_COVDG_DS80 = bootfiles/bootfile_covdg_ds80 -BOOTFILE_HEADLESS_DW3_COCO1 = bootfiles/bootfile_headless_dw3_coco1 -BOOTFILE_HEADLESS_DW3_COCO2 = bootfiles/bootfile_headless_dw3_coco2 -BOOTFILE_COVDG_DW3_COCO1 = bootfiles/bootfile_covdg_dw3_coco1 -BOOTFILE_COVDG_DW3_COCO2 = bootfiles/bootfile_covdg_dw3_coco2 -BOOTFILE_COHR_DS80 = bootfiles/bootfile_cohr_ds80 -BOOTFILE_COHR_DW3_COCO1 = bootfiles/bootfile_cohr_dw3_coco1 -BOOTFILE_COHR_DW3_COCO2 = bootfiles/bootfile_cohr_dw3_coco2 -KERNELFILE = bootfiles/kernel_1773 -KERNELFILE_DW3_COCO1 = bootfiles/kernel_dw3_coco1 -KERNELFILE_DW3_COCO2 = bootfiles/kernel_dw3_coco2 -DIRS = cmds modules defs sys bootfiles - - -CMDS = $(shell $(CD) cmds; make --no-print-directory showobjs) -CMDS_D2 = $(shell $(CD) cmds; make --no-print-directory showobjs_d2) -CMDS_DW = $(shell $(CD) cmds; make --no-print-directory showobjs_dw) -BOOTTRACK = $(shell $(CD) modules; make --no-print-directory showboottrack) -KERNEL = $(shell $(CD) modules; make --no-print-directory showkernel) -SYSMODS = $(shell $(CD) modules; make --no-print-directory showsysmods) -CLOCKS = $(shell $(CD) modules; make --no-print-directory showclocks) -RBF = $(shell $(CD) modules; make --no-print-directory showrbf) -SCF = $(shell $(CD) modules; make --no-print-directory showscf) -PIPE = $(shell $(CD) modules; make --no-print-directory showpipe) -MODULECMDS = $(WHICHSHELL) del echo format makdir merge os9gen prompt tmode - -SYS = $(shell $(CD) sys; make --no-print-directory showobjs) -DEFS = $(shell $(CD) defs; make --no-print-directory showobjs) -STARTUP = startup -STARTUP_DW = startup.dw - -PACKAGENAME = $(DISTROVER).zip -DSKDW3COCO1 = $(DISTROVER)1_dw3.dsk -LDSKDW3COCO1 = $(DISTRONAME)coco1_dw3.dsk -DSKDW3COCO2 = $(DISTROVER)2_dw3.dsk -LDSKDW3COCO2 = $(DISTRONAME)coco2_dw3.dsk -DSK360K_1 = $(DISTROVER)_40d_1.dsk -LDSK360K_1 = $(DISTRONAME)_40d_1.dsk -DSK360K_2 = $(DISTROVER)_40d_2.dsk -LDSK360K_2 = $(DISTRONAME)_40d_2.dsk -DSK720K = $(DISTROVER)_80d.dsk -LDSK720K = $(DISTRONAME)_80d.dsk - - -DSKS = $(DSKDW3COCO1) $(DSKDW3COCO2) $(DSK360K_1) $(DSK360K_2) $(DSK720K) -LDSKS = $(LDSKDW3COCO1) $(LDSKDW3COCO2) $(LDSK360K_1) $(LDSK360K_2) $(LDSK720K) - -# Make all components -all: - @$(ECHO) "**************************************************" - @$(ECHO) "* *" - @$(ECHO) "* NitrOS-9/$(CPU) Level 1 CoCo Port *" - @$(ECHO) "* *" - @$(ECHO) "**************************************************" - $(foreach dir, $(DIRS), ($(CD) $(dir); make);) - -# Clean all components -clean: dskclean - $(foreach dir, $(DIRS), ($(CD) $(dir); make clean);) - -dskclean: - -$(RM) $(PACKAGENAME) $(DSKS) $(LDSKS) - -dsk: all $(PACKAGENAME) - -dskcopy: dsk - $(CP) $(DSKS) $(DSKDIR) - -scp: dsk - scp $(PACKAGENAME) boisy@cvs.nitros9.org:/home/nitros9/public_html - -$(PACKAGENAME): $(DSKS) ../../ReadMe ../../ChangeLog - $(ARCHIVE) $@ $^ - -$(DSKDW3COCO1): - $(RM) $@ - $(OS9FORMAT_DW3) -q $@ -n"NitrOS-9/$(CPU) Level 1" - $(OS9GEN) $@ -b=$(BOOTFILE_COVDG_DW3_COCO1) -t=$(KERNELFILE_DW3_COCO1) - $(MAKDIR) $@,CMDS - $(MAKDIR) $@,SYS - $(MAKDIR) $@,DEFS - $(CD) cmds; $(CP) $(CMDS_DW) ../$@,CMDS - $(foreach file, $(CMDS_DW), $(OS9ATTR_EXEC) $@,CMDS/$(file);) - $(CD) cmds; $(CP) $(CMDS_D2) ../$@,CMDS - $(foreach file, $(CMDS_D2), $(OS9ATTR_EXEC) $@,CMDS/$(file);) - $(OS9RENAME) $@,CMDS/$(WHICHSHELL) shell - $(CD) sys; $(CPL) $(SYS) ../$@,SYS - $(foreach file, $(SYS), $(OS9ATTR_TEXT) $@,SYS/$(file);) - $(CD) defs; $(CPL) $(DEFS) ../$@,DEFS - $(foreach file, $(DEFS), $(OS9ATTR_TEXT) $@,DEFS/$(file);) - $(CPL) $(STARTUP_DW) $@,startup - $(OS9ATTR_TEXT) $@,startup - $(MAKDIR) $@,NITROS9 - $(MAKDIR) $@,NITROS9/6809L1 - $(MAKDIR) $@,NITROS9/6809L1/CMDS - $(CD) cmds; $(CP) $(MODULECMDS) ../$@,NITROS9/6809L1/CMDS - $(foreach file, $(MODULECMDS), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/CMDS/$(file);) - $(OS9RENAME) $@,NITROS9/6809L1/CMDS/$(WHICHSHELL) shell - $(MAKDIR) $@,NITROS9/6809L1/MODULES - $(MAKDIR) $@,NITROS9/6809L1/MODULES/BOOTTRACK - $(CD) modules; $(CP) $(BOOTTRACK) ../$@,NITROS9/6809L1/MODULES/BOOTTRACK - $(foreach file, $(BOOTTRACK), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/BOOTTRACK/$(file);) - $(MAKDIR) $@,NITROS9/6809L1/MODULES/KERNEL - $(CD) modules; $(CP) $(KERNEL) ../$@,NITROS9/6809L1/MODULES/KERNEL - $(foreach file, $(KERNEL), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/KERNEL/$(file);) - $(MAKDIR) $@,NITROS9/6809L1/MODULES/SYSMODS - $(CD) modules; $(CP) $(SYSMODS) ../$@,NITROS9/6809L1/MODULES/SYSMODS - $(foreach file, $(SYSMODS), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/SYSMODS/$(file);) - $(MAKDIR) $@,NITROS9/6809L1/MODULES/CLOCKS - $(CD) modules; $(CP) $(CLOCKS) ../$@,NITROS9/6809L1/MODULES/CLOCKS - $(foreach file, $(CLOCKS), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/CLOCKS/$(file);) - $(MAKDIR) $@,NITROS9/6809L1/MODULES/RBF - $(CD) modules; $(CP) $(RBF) ../$@,NITROS9/6809L1/MODULES/RBF - $(foreach file, $(RBF), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/RBF/$(file);) - $(MAKDIR) $@,NITROS9/6809L1/MODULES/SCF - $(CD) modules; $(CP) $(SCF) ../$@,NITROS9/6809L1/MODULES/SCF - $(foreach file, $(SCF), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/SCF/$(file);) - $(MAKDIR) $@,NITROS9/6809L1/MODULES/PIPE - $(CD) modules; $(CP) $(PIPE) ../$@,NITROS9/6809L1/MODULES/PIPE - $(foreach file, $(PIPE), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/PIPE/$(file);) - $(MAKDIR) $@,NITROS9/6809L1/BOOTLISTS - $(CD) bootlists; $(CPL) *.bl ../$@,NITROS9/6809L1/BOOTLISTS - $(MAKDIR) $@,NITROS9/6809L1/SCRIPTS - $(CD) scripts; $(CPL) mb* ../$@,NITROS9/6809L1/SCRIPTS - $(RM) $(LDSKDW3COCO1) - $(SOFTLINK) $@ $(LDSKDW3COCO1) - -$(DSKDW3COCO2): - $(RM) $@ - $(OS9FORMAT_DW3) -q $@ -n"NitrOS-9/6809 Level 1" - $(OS9GEN) $@ -b=$(BOOTFILE_COVDG_DW3_COCO2) -t=$(KERNELFILE_DW3_COCO2) - $(MAKDIR) $@,CMDS - $(MAKDIR) $@,SYS - $(MAKDIR) $@,DEFS - $(CD) cmds; $(CP) $(CMDS_DW) ../$@,CMDS - $(foreach file, $(CMDS_DW), $(OS9ATTR_EXEC) $@,CMDS/$(file);) - $(CD) cmds; $(CP) $(CMDS_D2) ../$@,CMDS - $(foreach file, $(CMDS_D2), $(OS9ATTR_EXEC) $@,CMDS/$(file);) - $(OS9RENAME) $@,CMDS/$(WHICHSHELL) shell - $(CD) sys; $(CPL) $(SYS) ../$@,SYS - $(foreach file, $(SYS), $(OS9ATTR_TEXT) $@,SYS/$(file);) - $(CD) defs; $(CPL) $(DEFS) ../$@,DEFS - $(foreach file, $(DEFS), $(OS9ATTR_TEXT) $@,DEFS/$(file);) - $(CPL) $(STARTUP_DW) $@,startup - $(OS9ATTR_TEXT) $@,startup - $(MAKDIR) $@,NITROS9 - $(MAKDIR) $@,NITROS9/6809L1 - $(MAKDIR) $@,NITROS9/6809L1/CMDS - $(CD) cmds; $(CP) $(MODULECMDS) ../$@,NITROS9/6809L1/CMDS - $(foreach file, $(MODULECMDS), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/CMDS/$(file);) - $(OS9RENAME) $@,NITROS9/6809L1/CMDS/$(WHICHSHELL) shell - $(MAKDIR) $@,NITROS9/6809L1/MODULES - $(MAKDIR) $@,NITROS9/6809L1/MODULES/BOOTTRACK - $(CD) modules; $(CP) $(BOOTTRACK) ../$@,NITROS9/6809L1/MODULES/BOOTTRACK - $(foreach file, $(BOOTTRACK), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/BOOTTRACK/$(file);) - $(MAKDIR) $@,NITROS9/6809L1/MODULES/KERNEL - $(CD) modules; $(CP) $(KERNEL) ../$@,NITROS9/6809L1/MODULES/KERNEL - $(foreach file, $(KERNEL), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/KERNEL/$(file);) - $(MAKDIR) $@,NITROS9/6809L1/MODULES/SYSMODS - $(CD) modules; $(CP) $(SYSMODS) ../$@,NITROS9/6809L1/MODULES/SYSMODS - $(foreach file, $(SYSMODS), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/SYSMODS/$(file);) - $(MAKDIR) $@,NITROS9/6809L1/MODULES/CLOCKS - $(CD) modules; $(CP) $(CLOCKS) ../$@,NITROS9/6809L1/MODULES/CLOCKS - $(foreach file, $(CLOCKS), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/CLOCKS/$(file);) - $(MAKDIR) $@,NITROS9/6809L1/MODULES/RBF - $(CD) modules; $(CP) $(RBF) ../$@,NITROS9/6809L1/MODULES/RBF - $(foreach file, $(RBF), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/RBF/$(file);) - $(MAKDIR) $@,NITROS9/6809L1/MODULES/SCF - $(CD) modules; $(CP) $(SCF) ../$@,NITROS9/6809L1/MODULES/SCF - $(foreach file, $(SCF), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/SCF/$(file);) - $(MAKDIR) $@,NITROS9/6809L1/MODULES/PIPE - $(CD) modules; $(CP) $(PIPE) ../$@,NITROS9/6809L1/MODULES/PIPE - $(foreach file, $(PIPE), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/PIPE/$(file);) - $(MAKDIR) $@,NITROS9/6809L1/BOOTLISTS - $(CD) bootlists; $(CPL) *.bl ../$@,NITROS9/6809L1/BOOTLISTS - $(MAKDIR) $@,NITROS9/6809L1/SCRIPTS - $(CD) scripts; $(CPL) mb* ../$@,NITROS9/6809L1/SCRIPTS - $(RM) $(LDSKDW3COCO2) - $(SOFTLINK) $@ $(LDSKDW3COCO2) - -$(DSK360K_1): - $(RM) $@ - $(OS9FORMAT_DS40) -q $@ -n"NitrOS-9/6809 Level 1 Disk 1" - $(OS9GEN) $@ -b=$(BOOTFILE_COVDG) -t=$(KERNELFILE) - $(MAKDIR) $@,CMDS - $(MAKDIR) $@,SYS - $(CD) cmds; $(CP) $(CMDS) ../$@,CMDS - $(foreach file, $(CMDS), $(OS9ATTR_EXEC) $@,CMDS/$(file);) - $(OS9RENAME) $@,CMDS/$(WHICHSHELL) shell - $(CD) sys; $(CPL) $(SYS) ../$@,SYS - $(foreach file, $(SYS), $(OS9ATTR_TEXT) $@,SYS/$(file);) - $(MAKDIR) $@,DEFS - $(CD) defs; $(CPL) $(DEFS) ../$@,DEFS - $(foreach file, $(DEFS), $(OS9ATTR_TEXT) $@,DEFS/$(file);) - $(CPL) $(STARTUP) $@,startup - $(OS9ATTR_TEXT) $@,startup - $(RM) $(LDSK360K_1) - $(SOFTLINK) $@ $(LDSK360K_1) - -$(DSK360K_2): - $(RM) $@ - $(OS9FORMAT_DS40) -q $@ -n"NitrOS-9/6809 Level 1 Disk 2" - $(MAKDIR) $@,CMDS - $(CD) cmds; $(CP) $(CMDS_D2) ../$@,CMDS - $(foreach file, $(CMDS_D2), $(OS9ATTR_EXEC) $@,CMDS/$(file);) - $(MAKDIR) $@,NITROS9 - $(MAKDIR) $@,NITROS9/6809L1 - $(MAKDIR) $@,NITROS9/6809L1/CMDS - $(CD) cmds; $(CP) $(MODULECMDS) ../$@,NITROS9/6809L1/CMDS - $(foreach file, $(MODULECMDS), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/CMDS/$(file);) - $(OS9RENAME) $@,NITROS9/6809L1/CMDS//$(WHICHSHELL) shell - $(MAKDIR) $@,NITROS9/6809L1/MODULES - $(MAKDIR) $@,NITROS9/6809L1/MODULES/BOOTTRACK - $(CD) modules; $(CP) $(BOOTTRACK) ../$@,NITROS9/6809L1/MODULES/BOOTTRACK - $(foreach file, $(BOOTTRACK), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/BOOTTRACK/$(file);) - $(MAKDIR) $@,NITROS9/6809L1/MODULES/KERNEL - $(CD) modules; $(CP) $(KERNEL) ../$@,NITROS9/6809L1/MODULES/KERNEL - $(foreach file, $(KERNEL), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/KERNEL/$(file);) - $(MAKDIR) $@,NITROS9/6809L1/MODULES/SYSMODS - $(CD) modules; $(CP) $(SYSMODS) ../$@,NITROS9/6809L1/MODULES/SYSMODS - $(foreach file, $(SYSMODS), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/SYSMODS/$(file);) - $(MAKDIR) $@,NITROS9/6809L1/MODULES/CLOCKS - $(CD) modules; $(CP) $(CLOCKS) ../$@,NITROS9/6809L1/MODULES/CLOCKS - $(foreach file, $(CLOCKS), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/CLOCKS/$(file);) - $(MAKDIR) $@,NITROS9/6809L1/MODULES/RBF - $(CD) modules; $(CP) $(RBF) ../$@,NITROS9/6809L1/MODULES/RBF - $(foreach file, $(RBF), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/RBF/$(file);) - $(MAKDIR) $@,NITROS9/6809L1/MODULES/SCF - $(CD) modules; $(CP) $(SCF) ../$@,NITROS9/6809L1/MODULES/SCF - $(foreach file, $(SCF), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/SCF/$(file);) - $(MAKDIR) $@,NITROS9/6809L1/MODULES/PIPE - $(CD) modules; $(CP) $(PIPE) ../$@,NITROS9/6809L1/MODULES/PIPE - $(foreach file, $(PIPE), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/PIPE/$(file);) - $(MAKDIR) $@,NITROS9/6809L1/BOOTLISTS - $(CD) bootlists; $(CPL) *.bl ../$@,NITROS9/6809L1/BOOTLISTS - $(MAKDIR) $@,NITROS9/6809L1/SCRIPTS - $(CD) scripts; $(CPL) mb* ../$@,NITROS9/6809L1/SCRIPTS - $(RM) $(LDSK360K_2) - $(SOFTLINK) $@ $(LDSK360K_2) - -$(DSK720K): - $(RM) $@ - $(OS9FORMAT_DS80) -q $@ -n"NitrOS-9/6809 Level 1" - $(OS9GEN) $@ -b=$(BOOTFILE_COVDG_DS80) -t=$(KERNELFILE) - $(MAKDIR) $@,CMDS - $(MAKDIR) $@,SYS - $(MAKDIR) $@,DEFS - $(CD) cmds; $(CP) $(CMDS) ../$@,CMDS - $(foreach file, $(CMDS), $(OS9ATTR_EXEC) $@,CMDS/$(file);) - $(CD) cmds; $(CP) $(CMDS_D2) ../$@,CMDS - $(foreach file, $(CMDS_D2), $(OS9ATTR_EXEC) $@,CMDS/$(file);) - $(OS9RENAME) $@,CMDS/$(WHICHSHELL) shell - $(CD) sys; $(CPL) $(SYS) ../$@,SYS - $(foreach file, $(SYS), $(OS9ATTR_TEXT) $@,SYS/$(file);) - $(CD) defs; $(CPL) $(DEFS) ../$@,DEFS - $(foreach file, $(DEFS), $(OS9ATTR_TEXT) $@,DEFS/$(file);) - $(CPL) $(STARTUP) $@,startup - $(OS9ATTR_TEXT) $@,startup - $(MAKDIR) $@,NITROS9 - $(MAKDIR) $@,NITROS9/6809L1 - $(MAKDIR) $@,NITROS9/6809L1/CMDS - $(CD) cmds; $(CP) $(MODULECMDS) ../$@,NITROS9/6809L1/CMDS - $(foreach file, $(MODULECMDS), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/CMDS/$(file);) - $(OS9RENAME) $@,NITROS9/6809L1/CMDS/$(WHICHSHELL) shell - $(MAKDIR) $@,NITROS9/6809L1/MODULES - $(MAKDIR) $@,NITROS9/6809L1/MODULES/BOOTTRACK - $(CD) modules; $(CP) $(BOOTTRACK) ../$@,NITROS9/6809L1/MODULES/BOOTTRACK - $(foreach file, $(BOOTTRACK), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/BOOTTRACK/$(file);) - $(MAKDIR) $@,NITROS9/6809L1/MODULES/KERNEL - $(CD) modules; $(CP) $(KERNEL) ../$@,NITROS9/6809L1/MODULES/KERNEL - $(foreach file, $(KERNEL), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/KERNEL/$(file);) - $(MAKDIR) $@,NITROS9/6809L1/MODULES/SYSMODS - $(CD) modules; $(CP) $(SYSMODS) ../$@,NITROS9/6809L1/MODULES/SYSMODS - $(foreach file, $(SYSMODS), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/SYSMODS/$(file);) - $(MAKDIR) $@,NITROS9/6809L1/MODULES/CLOCKS - $(CD) modules; $(CP) $(CLOCKS) ../$@,NITROS9/6809L1/MODULES/CLOCKS - $(foreach file, $(CLOCKS), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/CLOCKS/$(file);) - $(MAKDIR) $@,NITROS9/6809L1/MODULES/RBF - $(CD) modules; $(CP) $(RBF) ../$@,NITROS9/6809L1/MODULES/RBF - $(foreach file, $(RBF), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/RBF/$(file);) - $(MAKDIR) $@,NITROS9/6809L1/MODULES/SCF - $(CD) modules; $(CP) $(SCF) ../$@,NITROS9/6809L1/MODULES/SCF - $(foreach file, $(SCF), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/SCF/$(file);) - $(MAKDIR) $@,NITROS9/6809L1/MODULES/PIPE - $(CD) modules; $(CP) $(PIPE) ../$@,NITROS9/6809L1/MODULES/PIPE - $(foreach file, $(PIPE), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/PIPE/$(file);) - $(MAKDIR) $@,NITROS9/6809L1/BOOTLISTS - $(CD) bootlists; $(CPL) *.bl ../$@,NITROS9/6809L1/BOOTLISTS - $(MAKDIR) $@,NITROS9/6809L1/SCRIPTS - $(CD) scripts; $(CPL) mb* ../$@,NITROS9/6809L1/SCRIPTS - $(RM) $(LDSK720K) - $(SOFTLINK) $@ $(LDSK720K) - -info: - @echo "*** NitrOS-9/6809 Level 1 for the Tandy Color Computer ***" - @$(foreach dsk, $(DSKS), $(ECHO) $(dsk);) -
--- a/level1/coco/modules/defsfile Wed Jul 18 20:28:37 2012 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ - use ../defsfile
--- a/level1/coco/modules/kernel/defsfile Wed Jul 18 20:28:37 2012 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ - use ../../defsfile
--- a/level1/coco/modules/kernel/makefile Wed Jul 18 20:28:37 2012 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,32 +0,0 @@ -PORT = coco -include $(NITROS9DIR)/rules.mak - -vpath %.asm $(LEVEL1)/modules/kernel - -DEPENDS = ./makefile - -KERNEL = krn -KERNELP2 = krnp2 -SYSCALLS = fcmpnam.asm fprsnam.asm - -AFLAGS += -I$(LEVEL1)/modules/kernel - -ALLOBJS = $(KERNEL) $(KERNELP2) - -all: $(ALLOBJS) - -$(KERNEL): krn.asm $(SYSCALLS) - -$(KERNELP2): krnp2.asm $(SYSCALLS) - -clean: - $(RM) $(ALLOBJS) - -showobjs: - @$(ECHO) $(ALLOBJS) - -showcopyobjs: - @$(ECHO) $(COPYOBJS) - -identify: - $(IDENT_SHORT) $(ALLOBJS)
--- a/level1/coco/modules/makefile Wed Jul 18 20:28:37 2012 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,331 +0,0 @@ -PORT = coco -include $(NITROS9DIR)/rules.mak - -vpath %.asm $(LEVEL1)/modules - -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) - -DEPENDS = ./makefile -TPB = $(3RDPARTY)/booters - -BOOTERS = boot_1773_6ms boot_1773_30ms \ - boot_burke boot_rampak boot_wd1002 boot_dw3 boot_dw3_coco1 \ - boot_tc3 boot_ide boot_rom -BOOTTRACK = rel $(BOOTERS) -KERNEL = krn krnp2 wbug -SYSMODS = ioman init sysgo_dd sysgo_h0 rominfo vectors -CLOCKS = clock_60hz clock_50hz \ - clock2_elim clock2_disto2 clock2_disto4 clock2_bnb \ - clock2_smart clock2_harris clock2_cloud9 clock2_soft \ - clock2_messemu clock2_jvemu clock2_dw3 - -RBF = rbf.mn \ - rbdw3.dr dw3.sb dw3_coco1.sb \ - rb1773.dr rb1773_scii_ff74.dr rb1773_scii_ff58.dr \ - ddd0_35s.dd d0_35s.dd d1_35s.dd d2_35s.dd d3_35s.dd \ - ddd0_40d.dd d0_40d.dd d1_40d.dd d2_40d.dd \ - ddd0_80d.dd d0_80d.dd d1_80d.dd d2_80d.dd \ - ddx0.dd x0.dd x1.dd x2.dd x3.dd \ - rbsuper.dr lltc3.dr llide.dr \ - ddi0_ide.dd i0_ide.dd i1_ide.dd ih_ide.dd \ - dds0_tc3.dd s0_tc3.dd s1_tc3.dd s2_tc3.dd s3_tc3.dd s4_tc3.dd \ - s5_tc3.dd s6_tc3.dd sh_tc3.dd - -SCF = scf.mn \ - sc6551.dr vrn.dr scbbp.dr scbbt.dr scdwp.dr sspak.dr vtio.dr \ - covdg.io cohr.io \ - 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 - -PIPE = pipeman.mn \ - piper.dr \ - pipe.dd - -RFM = rfm.mn rfmdrv.dr ddy0.dd y0.dd y1.dd y2.dd y3.dd - -ALLOBJS = $(BOOTTRACK) $(KERNEL) $(SYSMODS) $(CLOCKS) $(RBF) $(SCF) $(PIPE) $(RFM) - -all: $(ALLOBJS) - -# Kernel -krn krnp2: - $(CD) kernel; make $@ - $(CP) kernel/$@ . - -# Special cases -# TC^3 SCSI Booter -boot_tc3: boot_scsi.asm - $(AS) $(ASOUT)$@ $< $(TC3FLAGS) - -# SuperIDE/Glenside IDE Booter -boot_ide: boot_ide.asm - $(AS) $(ASOUT)$@ $< $(IDEFLAGS) - -# DriveWire 3 -boot_dw3_coco1: boot_dw3.asm - $(AS) $< $(ASOUT)$@ $(AFLAGS) -DBAUD38400=1 - -dw3_coco1.sb: dw3.asm - $(AS) $< $(ASOUT)$@ $(AFLAGS) -DBAUD38400=1 - -boot_1773_6ms: boot_1773.asm - $(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=0 -DSTEP=0 - -boot_1773_30ms: boot_1773.asm - $(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=0 -DSTEP=3 - -rb1773_scii_ff74.dr: rb1773.asm - $(AS) $< $(ASOUT)$@ $(AFLAGS) -DSCII=1 - -rb1773_scii_ff58.dr: rb1773.asm - $(AS) $< $(ASOUT)$@ $(AFLAGS) -DSCII=1 -DSCIIALT=1 - -# TC^3 SCSI Driver -lltc3.dr: llscsi.asm - $(AS) $(ASOUT)$@ $< $(TC3FLAGS) - -# IDE Driver -llide.dr: llide.asm - $(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 - -ddd0_35s.dd: rb1773desc.asm - $(AS) $< $(ASOUT)$@ $(AFLAGS) $(SSDD35) -DDNum=0 -DDD=1 - -d0_35s.dd: rb1773desc.asm - $(AS) $< $(ASOUT)$@ $(AFLAGS) $(SSDD35) -DDNum=0 - -d1_35s.dd: rb1773desc.asm - $(AS) $< $(ASOUT)$@ $(AFLAGS) $(SSDD35) -DDNum=1 - -d2_35s.dd: rb1773desc.asm - $(AS) $< $(ASOUT)$@ $(AFLAGS) $(SSDD35) -DDNum=2 - -d3_35s.dd: rb1773desc.asm - $(AS) $< $(ASOUT)$@ $(AFLAGS) $(SSDD35) -DDNum=3 - -ddd0_40d.dd: rb1773desc.asm - $(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD40) -DDNum=0 -DDD=1 - -d0_40d.dd: rb1773desc.asm - $(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD40) -DDNum=0 - -d1_40d.dd: rb1773desc.asm - $(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD40) -DDNum=1 - -d2_40d.dd: rb1773desc.asm - $(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD40) -DDNum=2 - -ddd0_80d.dd: rb1773desc.asm - $(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD80) -DDNum=0 -DDD=1 - -d0_80d.dd: rb1773desc.asm - $(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD80) -DDNum=0 - -d1_80d.dd: rb1773desc.asm - $(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD80) -DDNum=1 - -d2_80d.dd: rb1773desc.asm - $(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD80) -DDNum=2 - -# DriveWire 3 SCF descriptors -term_scdwn.dt: scdwndesc.asm - $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=0 - -n_scdwn.dd: scdwndesc.asm - $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=255 - -n1_scdwn.dd: scdwndesc.asm - $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=1 - -n2_scdwn.dd: scdwndesc.asm - $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=2 - -n3_scdwn.dd: scdwndesc.asm - $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=3 - -n4_scdwn.dd: scdwndesc.asm - $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=4 - -n5_scdwn.dd: scdwndesc.asm - $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=5 - -n6_scdwn.dd: scdwndesc.asm - $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=6 - -n7_scdwn.dd: scdwndesc.asm - $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=7 - -n8_scdwn.dd: scdwndesc.asm - $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=8 - -n9_scdwn.dd: scdwndesc.asm - $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=9 - -n10_scdwn.dd: scdwndesc.asm - $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=10 - -n11_scdwn.dd: scdwndesc.asm - $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=11 - -n12_scdwn.dd: scdwndesc.asm - $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=12 - -n13_scdwn.dd: scdwndesc.asm - $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=13 - -midi_scdwn.dd: scdwndesc.asm - $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=14 - -# DriveWire 3 RBF descriptors -ddx0.dd: dwdesc.asm - $(AS) $< $(ASOUT)$@ $(AFLAGS) -DDD=1 -DDNum=0 - -x0.dd: dwdesc.asm - $(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=0 - -x1.dd: dwdesc.asm - $(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=1 - -x2.dd: dwdesc.asm - $(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=2 - -x3.dd: dwdesc.asm - $(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=3 - -# TC^3 SCSI Descriptors -dds0_tc3.dd: superdesc.asm - $(AS) $(ASOUT)$@ $< $(TC3FLAGS) $(ID0) -DDD=1 - -s0_tc3.dd: superdesc.asm - $(AS) $(ASOUT)$@ $< $(TC3FLAGS) $(ID0) $(SCSI_HD) - -s1_tc3.dd: superdesc.asm - $(AS) $(ASOUT)$@ $< $(TC3FLAGS) $(ID1) $(SCSI_HD) - -s2_tc3.dd: superdesc.asm - $(AS) $(ASOUT)$@ $< $(TC3FLAGS) $(ID2) $(SCSI_HD) - -s3_tc3.dd: superdesc.asm - $(AS) $(ASOUT)$@ $< $(TC3FLAGS) $(ID3) $(SCSI_HD) - -s4_tc3.dd: superdesc.asm - $(AS) $(ASOUT)$@ $< $(TC3FLAGS) $(ID4) $(SCSI_HD) - -s5_tc3.dd: superdesc.asm - $(AS) $(ASOUT)$@ $< $(TC3FLAGS) $(ID5) $(SCSI_HD) - -s6_tc3.dd: superdesc.asm - $(AS) $(ASOUT)$@ $< $(TC3FLAGS) $(ID6) $(SCSI_HD) - -sh_tc3.dd: superdesc.asm - $(AS) $(ASOUT)$@ $< $(TC3FLAGS) $(HDBDOS) - -# IDE Descriptors -ddi0_ide.dd: superdesc.asm - $(AS) $(ASOUT)$@ $< $(IDEFLAGS) $(MASTER) -DDD=1 - -i0_ide.dd: superdesc.asm - $(AS) $(ASOUT)$@ $< $(IDEFLAGS) $(MASTER) - -i1_ide.dd: superdesc.asm - $(AS) $(ASOUT)$@ $< $(IDEFLAGS) $(SLAVE) - -ih_ide.dd: superdesc.asm - $(AS) $(ASOUT)$@ $< $(IDEFLAGS) $(HDBDOS) - -# RFM descriptors -ddy0.dd: rfmdesc.asm - $(AS) $< $(ASOUT)$@ $(AFLAGS) -DDD=1 -DDNum=0 - -y0.dd: rfmdesc.asm - $(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=0 - -y1.dd: rfmdesc.asm - $(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=1 - -y2.dd: rfmdesc.asm - $(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=2 - -y3.dd: rfmdesc.asm - $(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=3 - -rel: rel.asm - $(AS) $(AFLAGS) $(ASOUT)$@ $< -DDragon64=0 - -sysgo_dd: sysgo.asm - $(AS) $(AFLAGS) $(ASOUT)$@ $< -DDD=1 - -sysgo_h0: sysgo.asm - $(AS) $(AFLAGS) $(ASOUT)$@ $< - -# Clocks -clock_60hz: clock.asm - $(AS) $(AFLAGS) $(ASOUT)$@ $< -DPwrLnFrq=60 - -clock_50hz: clock.asm - $(AS) $(AFLAGS) $(ASOUT)$@ $< -DPwrLnFrq=50 - -clock2_bnb: clock2_ds1315.asm - $(AS) $(AFLAGS) $(ASOUT)$@ $< -DBNB=1 - -clock2_cloud9: clock2_ds1315.asm - $(AS) $(AFLAGS) $(ASOUT)$@ $< -DCLOUD9=1 - -clean: - $(CD) kernel; make $@ - $(RM) $(ALLOBJS) - -showobjs: - @$(ECHO) $(ALLOBJS) - -showboottrack: - @$(ECHO) $(BOOTTRACK) - -showkernel: - @$(ECHO) $(KERNEL) - -showsysmods: - @$(ECHO) $(SYSMODS) - -showclocks: - @$(ECHO) $(CLOCKS) - -showrbf: - @$(ECHO) $(RBF) - -showscf: - @$(ECHO) $(SCF) - -showpipe: - @$(ECHO) $(PIPE) - -identify: - $(IDENT_SHORT) $(ALLOBJS) - -
--- a/level1/coco/scripts/mb.dw3 Wed Jul 18 20:28:37 2012 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,30 +0,0 @@ --t --x -tmode .1 pau=0 -echo * NitrOS-9 Level 1 Boot Creation Script -echo * -echo * This script creates a bootable DriveWire 3 disk image -echo * using the dw3.bl bootlist file. -echo * -echo * The resulting disk will boot NitrOS-9 from DriveWire drive 0. -echo * -prompt Insert a blank disk in /x1 and press a key: -echo * -echo * Step 1: Format disk in /x1 -format /x1 "NitrOS-9 Level 1 Boot Disk" r -ynn -echo * -echo * Step 2: Create a custom boot track -del bttemp -merge ../MODULES/BOOTTRACK/rel ../MODULES/KERNEL/krn ../MODULES/KERNEL/krnp2 ../MODULES/SYSMODS/init ../MODULES/BOOTTRACK/boot_dw3>bttemp -echo * -echo * Step 3: Create the bootfile and boot track -os9gen /x1 -t=bttemp<../BOOTLISTS/dw3.bl -del bttemp -echo * -echo * Step 4: Populate the disk with essential files -copy ../MODULES/SYSMODS/sysgo_dd /x1/sysgo -makdir /x1/CMDS -copy -w=/x1/CMDS ../CMDS/shell -echo * -echo * We're done
--- a/level1/coco/scripts/mb.dw3_coco1 Wed Jul 18 20:28:37 2012 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,30 +0,0 @@ --t --x -tmode .1 pau=0 -echo * NitrOS-9 Level 1 Boot Creation Script -echo * -echo * This script creates a bootable DriveWire 3 disk image -echo * using the dw3_coco1.bl bootlist file. -echo * -echo * The resulting disk will boot NitrOS-9 from DriveWire disk 0. -echo * -echo "Please type the destination device (e.g. /x0, /x1)" -var.1 -prompt Insert a blank disk in %1 and press a key: -echo * -echo * Step 1: Format disk in %1 -format %1 "NitrOS-9 Level 1 Boot Disk" r -echo * -echo * Step 2: Create a custom boot track -merge ../MODULES/BOOTTRACK/rel ../MODULES/KERNEL/krn ../MODULES/KERNEL/krnp2 ../MODULES/SYSMODS/init ../MODULES/BOOTTRACK/boot_dw3_coco1>-bttemp -echo * -echo * Step 3: Create the bootfile and boot track -os9gen %1 -t=bttemp<../BOOTLISTS/dw3_coco1.bl -del bttemp -echo * -echo * Step 4: Populate the disk with essential files -copy ../MODULES/SYSMODS/sysgo_dd %1/sysgo -makdir %1/CMDS -copy -w=%1/CMDS ../CMDS/shell -echo * -echo * We're done
--- a/level1/coco/scripts/mb.floppy Wed Jul 18 20:28:37 2012 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,29 +0,0 @@ --t --x -tmode .1 pau=0 -echo * NitrOS-9 Level 1 Boot Creation Script -echo * -echo * This script creates a bootable floppy disk -echo * using the standard.bl bootlist file. -echo * -echo * The resulting disk will boot NitrOS-9 from drive 0. -echo * -prompt Insert a blank disk in /d0 and press a key: -echo * -echo * Step 1: Format disk in /d0 -format /d0 "NitrOS-9 Level 1 Boot Disk" r -echo * -echo * Step 2: Create a custom boot track -del bttemp -merge ../MODULES/BOOTTRACK/rel ../MODULES/KERNEL/krn ../MODULES/KERNEL/krnp2 ../MODULES/SYSMODS/init ../MODULES/BOOTTRACK/boot_1773_6ms>bttemp -echo * -echo * Step 3: Create the bootfile and boot track -os9gen /d0 -t=bttemp<../BOOTLISTS/standard.bl -del bttemp -echo * -echo * Step 4: Populate the disk with essential files -copy ../MODULES/SYSMODS/sysgo_dd /d0/sysgo -makdir /d0/CMDS -copy -w=/d0/CMDS ../CMDS/shell -echo * -echo * We're done
--- a/level1/coco/startup Wed Jul 18 20:28:37 2012 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,7 +0,0 @@ -* Echo welcome message -echo * Welcome to NitrOS-9 Level 1 * -echo * on the Color Computer * -* Start system time from keyboard -setime </term -date -t -
--- a/level1/coco/startup.dw Wed Jul 18 20:28:37 2012 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,6 +0,0 @@ -* Echo welcome message -echo * Welcome to NitrOS-9 Level 1 * -echo * with DriveWire 4 * -echo * on the Color Computer * -date -t -
--- a/level1/coco/sys/makefile Wed Jul 18 20:28:37 2012 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,36 +0,0 @@ -PORT = coco -include $(NITROS9DIR)/rules.mak - -vpath %.hp $(LEVEL1)/sys - -DEPENDS = ./makefile - -SYSFILES = ../../sys/errmsg ../../sys/motd ../../sys/password ../../sys/inetd.conf -HELPFILES = asm.hp attr.hp backup.hp binex.hp build.hp chd.hp \ - chx.hp cmp.hp cobbler.hp config.hp copy.hp cputype.hp date.hp \ - dcheck.hp debug.hp ded.hp deiniz.hp del.hp deldir.hp devs.hp \ - dir.hp dirsort.hp disasm.hp display.hp dmode.hp dsave.hp dump.hp echo.hp \ - edit.hp error.hp ex.hp exbin.hp format.hp free.hp gfx.hp \ - help.hp ident.hp iniz.hp inkey.hp irqs.hp kill.hp link.hp \ - list.hp load.hp login.hp makdir.hp \ - mdir.hp megaread.hp merge.hp mpi.hp mfree.hp os9gen.hp \ - padrom.hp park.hp procs.hp prompt.hp pwd.hp pxd.hp \ - rename.hp save.hp setime.hp \ - setpr.hp shell.hp sleep.hp tee.hp tmode.hp touch.hp tsmon.hp \ - tuneport.hp unlink.hp verify.hp xmode.hp -HELPMSG = helpmsg -ALLOBJS = $(SYSFILES) $(HELPMSG) - - -all: $(ALLOBJS) $(DEPENDS) - -alldragon: $(ALLOBJS) - -helpmsg: $(HELPFILES) - $(MERGE) $^ > $@ - -clean: - $(RM) $(HELPMSG) - -showobjs: - @$(ECHO) $(ALLOBJS)
--- a/level1/coco/v2bugs.txt Wed Jul 18 20:28:37 2012 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,143 +0,0 @@ -From: Pete_Lyall (pete@wlbreng1.UUCP) -Subject: COCO OS9 2.00.00 bugs -Newsgroups: net.micro.6809 -Date: 1986-07-03 09:43:11 PST - -COCO OS9 2.00.00 BUGS LIST -=========================== - -As with the 2.00.00 CCio patch, I'm merely passing this on to those that -are interested. Pete Lyall - - - -Description of bugs (and most fixes) in CoCo OS9 ver 2.00.00: - From Kevin Darling and Kent Meyers. 08 Apr 86, rev: 13 Jun 86 - (Be sure to re-verify a module after a change) - ------------------------------------ - - MODULE: RS232 - PROBLEM: Returns no error for bad type mode. - SPECIFICS: Original src missing '#' for 'ldb #E$BMode'. Causes B reg to be -loaded from $00CB, which is normally = $00. - SOLUTION: Change byte at offset $0180 from $D6 to $C6. - - MODULE: CCHDisk - PROBLEM: Returns no error on write verification failure. - SPECIFICS: Similiar to RS232 bug above, for E$Write. - SOLUTION: Change byte at offset $00FC from $D6 to $C6. - - MODULE: Clock - PROBLEM: Day increments by two at midnite. - SPECIFICS: Result of 'fix' to 1.XX bug. Extra increment intended for Feb 28 -hits all days instead. - SOLUTION: Several patches in DL, including 'Official Tandy Patch', which also -fixes Virq bug. Or use the following short patch from ??: (and re-verify -module) - Offset Old New - 001A 00 1D - 001C 1D 1C - 0057 08 09 - 005A 27 C4 - 005B 04 03 - 005C C4 26 - 005E 27 5F - 005F 01 20 - 0060 4C 02 - - MODULE: Clock - PROBLEM: Undo F$Virq call fails. - SPECIFICS: When a call is made to delete a F$Virq entry, the X register is -pointed to a stack address, instead of loading X with the virq register entry -off the stack. - SOLUTION: Change byte at offset $0119 from $30 to $AE. - - MODULE: IOMan - PROBLEM: F$IOQU code mistake. - SPECIFICS: Major code change in IOMan. Idea was to sort queuing processes by -age. Wrong register used for comparison. - SOLUTION: Change the following bytes: - Offset Old New - 06BB 10 12 - 06BC A3 E1 - - MODULE: OS9p2 - PROBLEM: F$UnLink does not terminate devices. - SPECIFICS: Unlink of a filemgr, driver or desc, that is NOT in tbe bootfile -but is in use, should return E$ModBsy error from a internal UnLink call to -F$IODel. A wrong register was used, and a loaded mgr, driver, or desc module's -space will be returned to the free mem pool. - SOLUTI.dON: None at this time to fit within module. Hang on. - - MODULE: CCIO - PROBLEM: Failure to recognize CoCo keyboard Break keys. - SPECIFICS: Because the order of IRQ was changed so that CCIO keyboard check -follows Clock, the DP reg is set to $00. The Break or Shift-Break keys (signals -2 and 3) sent to processes while in OS9 non-system state are ignored (the -internal keyboard should've been an IRQ or VIRQ device). The bug will appear if -the receiving program (Basic09 or otherwise) does not do much output, such as -math routines, or using Inkey. - SOLUTION: Use CCIOP files elsewhere in DL. Or instead, if doing a lot of -internal processing, send a char to the screen within loops. This will increase -the chance OS9 will be in a system state and will correctly handle the Break -Sends. - - MODULE: CCIO, CO80, CO32 - PROBLEM: Co-module terminate routines not called, etc. - SPECIFICS: Termination of CCIO does not result in a call to codrivers' -termination code. Worse, once you do a 'tmode type=xx' and change video -codrivers, CCIO will still believe the other one is in memory. If it was NOT in -the bootfile, a crash may result. - SOLUTION: Until rewrite of CCIO - NEVER change to a different COXX, unlink the -loaded one, then 'tmode type' back to the first. Instead of loading it from the -exec directory, CCIO will jump into never-never land, if that space has been -reused. - - MODULE: ACIAPAK - PROBLEM: Not fully reentrant. - SPECIFICS: Each new incarnation saves current D.Firq vector; that vector -restored upon termination. Use of this driver for more than one FIRQ device, -and terminating their use in wrong order could result in FIRQ's going to bad -address. - SOLUTION: None yet. Perhaps driver was not intended to be used for more than -one FIRQ device. Should be in docs. Decent solution would be for Clock or OS9 -or separate module to change firq's to irq's, instead of ACIAPAK. - - ---------------------------------- - Other 'bugs' and things of interest: - - MODULE: Unknown (?) - PROBLEM: Machine locks up after using a new OS9Boot. - SPECIFICS: Unfound bug. Programs fail. Drives continue to run. - SOLUTION: Change order of OS9gen bootlist. - - MODULE: CCIO - PROBLEM: Incompatibility with previous escape code drivers. - SPECIFICS: New CCIO shunts all <esc> ($1B) (27) codes to GRFO module. This -means original Wordpak software (Dynastar and Stylo for example) won't work. - SOLUTION: See C82KD.DOC in DL6. If you don't need OPak c& -.YYCO80 drivers -by Bill Dickhaus or Rick Johnson in DL6. - - MODULE: PRINTER - PROBLEM: Delay for 'printer ready' too short for some devices. - Sorry, don't have details now. I think Bernie Pluth and others may have a -solution. - - ---------------------- - Differences of interest: - - : Be careful using old Password files. Sysgo 2.0 sets default startup priority -at 128, vs 1.XX's 0. If login seems very sluggish, check your SYS/Password -parameters. - - : ACIAPAK 2.0 always assumes FIRQ device in first MPI slot. To use RS232 pak, -etc in another slot, change the byte at offset $0080 (or $007F?) in ACIAPAK -from 03 to: - SLOT BYTE - 1 03 - 2 13 - 3 23 - 4 -- Floppy controller slot - ---------------------- - END OF FILE
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level1/coco1/bootfiles/defsfile Thu Jul 19 10:09:15 2012 -0500 @@ -0,0 +1,2 @@ + use ../defsfile + use scfdefs
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level1/coco1/bootfiles/makefile Thu Jul 19 10:09:15 2012 -0500 @@ -0,0 +1,184 @@ +PORT = coco1 +include $(NITROS9DIR)/rules.mak + +# Module directory +MD = ../modules +# Commands directory +CD = ../cmds + +DEPENDS = ./makefile + +KERNEL_1773 = $(MD)/rel $(MD)/krn $(MD)/krnp2 $(MD)/init \ + $(MD)/boot_1773_6ms + +KERNEL_DW3 = $(MD)/rel $(MD)/krn $(MD)/krnp2 $(MD)/init \ + $(MD)/boot_dw3 + +IDE = $(3PD)/ide +SCSI = $(3PD)/scsisys + +FLOPPY_40D = $(MD)/rb1773.dr $(MD)/d0_40d.dd $(MD)/d1_40d.dd $(MD)/d2_40d.dd \ + $(MD)/ddd0_40d.dd +FLOPPY_80D = $(MD)/rb1773.dr $(MD)/d0_40d.dd $(MD)/d1_40d.dd $(MD)/d2_40d.dd \ + $(MD)/ddd0_80d.dd +VTIO_32COL = $(MD)/vtio.dr $(MD)/covdg.io $(MD)/term_vdg.dt +VTIO_51COL = $(MD)/vtio.dr $(MD)/cohr.io $(MD)/term_hr.dt +VTIO_80COL = $(MD)/vtio.dr $(MD)/co80.io $(MD)/term_80.dt +PIPE = $(MD)/pipeman.mn $(MD)/piper.dr $(MD)/pipe.dd +CLOCK60HZ = $(MD)/clock_60hz $(MD)/clock2_soft +CLOCK60HZDW = $(MD)/clock_60hz $(MD)/clock2_dw3 +RBDW3 = $(MD)/rbdw3.dr $(MD)/dw3.sb \ + $(MD)/ddx0.dd $(MD)/x1.dd $(MD)/x2.dd $(MD)/x3.dd +SCDWV_NET = $(MD)/n_scdwv.dd $(MD)/n1_scdwv.dd $(MD)/n2_scdwv.dd \ + $(MD)/n3_scdwv.dd $(MD)/n4_scdwv.dd $(MD)/n5_scdwv.dd \ + $(MD)/n6_scdwv.dd $(MD)/n7_scdwv.dd $(MD)/n8_scdwv.dd \ + $(MD)/n9_scdwv.dd $(MD)/n10_scdwv.dd $(MD)/n11_scdwv.dd \ + $(MD)/n12_scdwv.dd $(MD)/n13_scdwv.dd $(MD)/midi_scdwv.dd +SCDWV_WIN = $(MD)/n_scdwv.dd $(MD)/n1_scdwv.dd $(MD)/n2_scdwv.dd \ + $(MD)/n3_scdwv.dd $(MD)/n4_scdwv.dd $(MD)/n5_scdwv.dd \ + $(MD)/n6_scdwv.dd $(MD)/n7_scdwv.dd $(MD)/n8_scdwv.dd \ + $(MD)/n9_scdwv.dd $(MD)/n10_scdwv.dd $(MD)/n11_scdwv.dd \ + $(MD)/n12_scdwv.dd $(MD)/n13_scdwv.dd $(MD)/midi_scdwv.dd +SCDWP = $(MD)/scdwp.dr $(MD)/p_scdwp.dd + +BOOTFILE_COVDG = $(MD)/ioman \ + $(MD)/rbf.mn \ + $(FLOPPY_40D) \ + $(MD)/scf.mn \ + $(VTIO_32COL) \ + $(MD)/scbbp.dr $(MD)/p_scbbp.dd \ + $(MD)/scbbt.dr $(MD)/t1_scbbt.dd \ + $(PIPE) \ + $(CLOCK60HZ) \ + $(MD)/sysgo_dd + +BOOTFILE_COHR = $(MD)/ioman \ + $(MD)/rbf.mn \ + $(FLOPPY_40D) \ + $(MD)/scf.mn \ + $(VTIO_51COL) \ + $(MD)/scbbp.dr $(MD)/p_scbbp.dd \ + $(MD)/scbbt.dr $(MD)/t1_scbbt.dd \ + $(PIPE) \ + $(CLOCK60HZ) \ + $(MD)/sysgo_dd + +BOOTFILE_CO80 = $(MD)/ioman \ + $(MD)/rbf.mn \ + $(FLOPPY_40D) \ + $(MD)/scf.mn \ + $(VTIO_80COL) \ + $(MD)/scbbp.dr $(MD)/p_scbbp.dd \ + $(MD)/scbbt.dr $(MD)/t1_scbbt.dd \ + $(PIPE) \ + $(CLOCK60HZ) \ + $(MD)/sysgo_dd + +BOOTFILE_HEADLESS_DW3 = $(MD)/ioman \ + $(MD)/rbf.mn \ + $(RBDW3) \ + $(MD)/scf.mn \ + $(MD)/scdwv.dr \ + $(SCDWV_NET) \ + $(MD)/term_z_scdwv.dt \ + $(SCDWV_WIN) \ + $(SCDWP)\ + $(PIPE) \ + $(CLOCK60HZDW) \ + $(MD)/sysgo_dd + +BOOTFILE_COVDG_DW3 = $(MD)/ioman \ + $(MD)/rbf.mn \ + $(FLOPPY_40D) \ + $(RBDW3) \ + $(MD)/scf.mn \ + $(VTIO_32COL) \ + $(MD)/scdwv.dr \ + $(SCDWV_NET) \ + $(SCDWV_WIN) \ + $(SCDWP)\ + $(PIPE) \ + $(CLOCK60HZDW) \ + $(MD)/sysgo_dd + +BOOTFILE_COVDG_DS80 = $(MD)/ioman \ + $(MD)/rbf.mn \ + $(FLOPPY_80D) \ + $(MD)/scf.mn \ + $(VTIO_32COL) \ + $(MD)/scbbp.dr $(MD)/p_scbbp.dd \ + $(MD)/scbbt.dr $(MD)/t1_scbbt.dd \ + $(PIPE) \ + $(CLOCK60HZ) \ + $(MD)/sysgo_dd + +BOOTFILE_COHR_DW3 = $(MD)/ioman \ + $(MD)/rbf.mn \ + $(FLOPPY_40D) \ + $(RBDW3) \ + $(MD)/scf.mn \ + $(VTIO_51COL) \ + $(MD)/scdwv.dr \ + $(SCDWV_NET) \ + $(SCDWP)\ + $(PIPE) \ + $(CLOCK60HZDW) \ + $(MD)/sysgo_dd + +BOOTFILE_COHR_DS80 = $(MD)/ioman \ + $(MD)/rbf.mn \ + $(FLOPPY_80D) \ + $(MD)/scf.mn \ + $(VTIO_80COL) \ + $(MD)/scbbp.dr $(MD)/p_scbbp.dd \ + $(MD)/scbbt.dr $(MD)/t1_scbbt.dd \ + $(PIPE) \ + $(CLOCK60HZ) \ + $(MD)/sysgo_dd + +BOOTFILES = bootfile_covdg bootfile_cohr bootfile_covdg_dw3 \ + bootfile_headless_dw3 \ + bootfile_cohr_dw3 bootfile_covdg_ds80 bootfile_cohr_ds80 +KERNELS = kernel_1773 kernel_dw3 + +ALLOBJS = $(BOOTFILES) $(KERNELS) + +all: $(ALLOBJS) + +bootfile_covdg: $(BOOTFILE_COVDG) $(DEPENDS) + $(MERGE) $(BOOTFILE_COVDG)>$@ + +bootfile_cohr: $(BOOTFILE_COHR) $(DEPENDS) + $(MERGE) $(BOOTFILE_COHR)>$@ + +bootfile_co80: $(BOOTFILE_CO80) $(DEPENDS) + $(MERGE) $(BOOTFILE_CO80)>$@ + +bootfile_covdg_ds80: $(BOOTFILE_COVDG_DS80) $(DEPENDS) + $(MERGE) $(BOOTFILE_COVDG_DS80)>$@ + +bootfile_headless_dw3: $(BOOTFILE_HEADLESS_DW3) $(DEPENDS) + $(MERGE) $(BOOTFILE_HEADLESS_DW3)>$@ + +bootfile_covdg_dw3: $(BOOTFILE_COVDG_DW3) $(DEPENDS) + $(MERGE) $(BOOTFILE_COVDG_DW3)>$@ + +bootfile_cohr_ds80: $(BOOTFILE_COHR_DS80) $(DEPENDS) + $(MERGE) $(BOOTFILE_COHR_DS80)>$@ + +bootfile_cohr_dw3: $(BOOTFILE_COHR_DW3) $(DEPENDS) + $(MERGE) $(BOOTFILE_COHR_DW3)>$@ + +# WD1773 Kernel +kernel_1773: $(KERNEL_1773) $(DEPENDS) + $(MERGE) $(KERNEL_1773)>$@ + $(PADROM) 4608 $@ + +# DriveWire 3 Kernel +kernel_dw3: $(KERNEL_DW3) $(DEPENDS) + $(MERGE) $(KERNEL_DW3)>$@ + $(PADROM) 4608 $@ + +clean: + $(RM) $(ALLOBJS) +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level1/coco1/bootlists/dw3.bl Thu Jul 19 10:09:15 2012 -0500 @@ -0,0 +1,200 @@ +*************************************** +* NitrOS-9 Level 1 CoCo Bootlist +* +* $Id$ +* +* This bootlist is presented as an example for creating custom bootfiles. +* A module may be excluded from the bootfile if an asterisk (*) is the +* first character of the line. +* +*************************************** +* Kernel/System Section +* +* These modules are mandatory. +../MODULES/SYSMODS/ioman +* +*************************************** +* CDF Section (HawkSoft) +* +*../MODULES/CDF/cdf.mn +* +* CDF descriptors - select as needed +* SCSI descriptors (IDs 0-6) +*../MODULES/CDF/sc0.dd +*../MODULES/CDF/sc1.dd +*../MODULES/CDF/sc2.dd +*../MODULES/CDF/sc3.dd +*../MODULES/CDF/sc4.dd +*../MODULES/CDF/sc5.dd +*../MODULES/CDF/sc6.dd +* IDE descriptors (master/slave) +*../MODULES/CDF/ic0.dd +*../MODULES/CDF/ic1.dd +* +*************************************** +* RBF Section +* +../MODULES/RBF/rbf.mn +* +* DriveWire 3 RBF driver +../MODULES/RBF/rbdw3.dr +../MODULES/RBF/dw3.sb +* DriveWire descriptors - select as needed +../MODULES/RBF/ddx0.dd +*../MODULES/RBF/x0.dd +../MODULES/RBF/x1.dd +../MODULES/RBF/x2.dd +../MODULES/RBF/x3.dd +* +* SuperDriver Package +*../MODULES/RBF/rbsuper.dr +* Select Low level SCSI and/or IDE driver +*../MODULES/RBF/lltc3.dr +*../MODULES/RBF/llide.dr +* SuperDriver descriptors - select as needed +* TC^3 SCSI DD Descriptor (ID 0) +*../MODULES/RBF/dds0_tc3.dd +* TC^3 SCSI descriptors (IDs 0-6) +*../MODULES/RBF/s0_tc3.dd +*../MODULES/RBF/s1_tc3.dd +*../MODULES/RBF/s2_tc3.dd +*../MODULES/RBF/s3_tc3.dd +*../MODULES/RBF/s4_tc3.dd +*../MODULES/RBF/s5_tc3.dd +*../MODULES/RBF/s6_tc3.dd +* TC^3 SCSI HDB-DOS descriptor +*../MODULES/RBF/sh_tc3.dd +* IDE DD descriptor (Master) +*../MODULES/RBF/ddi0_ide.dd +* IDE descriptors (master/slave) +*../MODULES/RBF/i0_ide.dd +*../MODULES/RBF/i1_ide.dd +* IDE HDB-DOS descriptor +*../MODULES/RBF/ih_ide.dd +* +* WD1773 floppy support for Tandy and compatible disk controllers +../MODULES/RBF/rb1773.dr +* WD1773 floppy support for Disto Super Controller II +*../MODULES/RBF/rb1773_scii_ff74.dr +*../MODULES/RBF/rb1773_scii_ff58.dr +* Floppy device descriptors +* DD - default device - choose one if needed +*../MODULES/RBF/ddd0_35s.dd +*../MODULES/RBF/ddd0_40d.dd +*../MODULES/RBF/ddd0_80d.dd +* D0 - drive 0 - choose one if needed +*../MODULES/RBF/d0_35s.dd +../MODULES/RBF/d0_40d.dd +*../MODULES/RBF/d0_80d.dd +* D1 - drive 1 - choose one if needed +*../MODULES/RBF/d1_35s.dd +../MODULES/RBF/d1_40d.dd +*../MODULES/RBF/d1_80d.dd +* D2 - drive 2 - choose one if needed +*../MODULES/RBF/d2_35s.dd +../MODULES/RBF/d2_40d.dd +*../MODULES/RBF/d2_80d.dd +* D3 - drive 3 - choose if needed +*../MODULES/RBF/d3_35s.dd +*************************************** +* SCF Section +* +../MODULES/SCF/scf.mn +* +* Video Terminal I/O driver and subroutine modules +../MODULES/SCF/vtio.dr +* Choose from CoVDG (32x16 VDG), CoHR (Hi-Res 51x24 graphics screen) or Co80 (Word-Pak) +../MODULES/SCF/covdg.io +*../MODULES/SCF/cohr.io +*../MODULES/SCF/co80.io +* +* Select only one term descriptor +../MODULES/SCF/term_vdg.dt +*../MODULES/SCF/term_hr.dt +*../MODULES/SCF/term_80.dt +*../MODULES/SCF/term_scbbt.dt +*../MODULES/SCF/term_sc6551.dt +* +* Serial port drivers +* CoCo Bit-Banger terminal port +*../MODULES/SCF/scbbt.dr +*../MODULES/SCF/t1_scbbt.dd +* 6551 ACIA +*../MODULES/SCF/sc6551.dr +*../MODULES/SCF/t2_sc6551.dd +*../MODULES/SCF/t3_sc6551.dd +* +* Printer drivers +* ../MODULES/SCF/scbbp.dr +* ../MODULES/SCF/p_scbbp.dd +* +* DriveWire 3 Printer drivers +* ../MODULES/SCF/scdwp.dr +* ../MODULES/SCF/p_scdwp.dd +* +* DriveWire Virtual Channel Driver +*../MODULES/SCF/scdwv.dr +*../MODULES/SCF/term_scdwv.dt +*../MODULES/SCF/n_scdwv.dd +*../MODULES/SCF/n1_scdwv.dd +*../MODULES/SCF/n2_scdwv.dd +*../MODULES/SCF/n3_scdwv.dd +*../MODULES/SCF/n4_scdwv.dd +*../MODULES/SCF/n5_scdwv.dd +*../MODULES/SCF/n6_scdwv.dd +*../MODULES/SCF/n7_scdwv.dd +*../MODULES/SCF/n8_scdwv.dd +*../MODULES/SCF/n9_scdwv.dd +*../MODULES/SCF/n10_scdwv.dd +*../MODULES/SCF/n11_scdwv.dd +*../MODULES/SCF/n12_scdwv.dd +*../MODULES/SCF/n13_scdwv.dd +*../MODULES/SCF/n14_scdwv.dd +*../MODULES/SCF/term_z_scdwv.dt +*../MODULES/SCF/z1_scdwv.dd +*../MODULES/SCF/z2_scdwv.dd +*../MODULES/SCF/z3_scdwv.dd +*../MODULES/SCF/z4_scdwv.dd +*../MODULES/SCF/z5_scdwv.dd +*../MODULES/SCF/z6_scdwv.dd +*../MODULES/SCF/z7_scdwv.dd +* +*************************************** +* Pipe Section +* +* Pipes are a useful but optional part of a system. +../MODULES/PIPE/pipeman.mn +../MODULES/PIPE/piper.dr +../MODULES/PIPE/pipe.dd +* +*************************************** +* Clock Section +* +* Select one clock module depending upon your power line frequency +* (60Hz = USA/Canada; 50Hz = Europe, Australia) +../MODULES/CLOCKS/clock_60hz +*../MODULES/CLOCKS/clock_50hz +* 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, Cloud-9, the MESS emulator, Jeff +* Vavasour's CoCo emulator, and DriveWire. +*../MODULES/CLOCKS/clock2_soft +*../MODULES/CLOCKS/clock2_bnb +*../MODULES/CLOCKS/clock2_disto2 +*../MODULES/CLOCKS/clock2_disto4 +*../MODULES/CLOCKS/clock2_elim +*../MODULES/CLOCKS/clock2_harris +*../MODULES/CLOCKS/clock2_smart +*../MODULES/CLOCKS/clock2_jvemu +*../MODULES/CLOCKS/clock2_messemu +*../MODULES/CLOCKS/clock2_cloud9 +../MODULES/CLOCKS/clock2_dw3 +* +*************************************** +* System Kick-Start Module +* +* Choose which startup module you wish to use. (sysgo_dd is recommended +* for most configurations.) +../MODULES/SYSMODS/sysgo_dd +*../MODULES/SYSMODS/sysgo_h0
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level1/coco1/bootlists/standard.bl Thu Jul 19 10:09:15 2012 -0500 @@ -0,0 +1,199 @@ +*************************************** +* NitrOS-9 Level 1 CoCo Bootlist +* +* $Id$ +* +* This bootlist is presented as an example for creating custom bootfiles. +* A module may be excluded from the bootfile if an asterisk (*) is the +* first character of the line. +* +*************************************** +* Kernel/System Section +* +* These modules are mandatory. +../MODULES/SYSMODS/ioman +* +*************************************** +* CDF Section (HawkSoft) +* +*../MODULES/CDF/cdf.mn +* +* CDF descriptors - select as needed +* SCSI descriptors (IDs 0-6) +*../MODULES/CDF/sc0.dd +*../MODULES/CDF/sc1.dd +*../MODULES/CDF/sc2.dd +*../MODULES/CDF/sc3.dd +*../MODULES/CDF/sc4.dd +*../MODULES/CDF/sc5.dd +*../MODULES/CDF/sc6.dd +* IDE descriptors (master/slave) +*../MODULES/CDF/ic0.dd +*../MODULES/CDF/ic1.dd +* +*************************************** +* RBF Section +* +../MODULES/RBF/rbf.mn +* +* DriveWire 3 RBF driver +*../MODULES/RBF/rbdw3.dr +*../MODULES/RBF/dw3.sb +* DriveWire descriptors - select as needed +*../MODULES/RBF/ddx0.dd +*../MODULES/RBF/x0.dd +*../MODULES/RBF/x1.dd +*../MODULES/RBF/x2.dd +*../MODULES/RBF/x3.dd +* +* SuperDriver Package +*../MODULES/RBF/rbsuper.dr +* Select Low level SCSI and/or IDE driver +*../MODULES/RBF/lltc3.dr +*../MODULES/RBF/llide.dr +* SuperDriver descriptors - select as needed +* TC^3 SCSI DD Descriptor (ID 0) +*../MODULES/RBF/dds0_tc3.dd +* TC^3 SCSI descriptors (IDs 0-6) +*../MODULES/RBF/s0_tc3.dd +*../MODULES/RBF/s1_tc3.dd +*../MODULES/RBF/s2_tc3.dd +*../MODULES/RBF/s3_tc3.dd +*../MODULES/RBF/s4_tc3.dd +*../MODULES/RBF/s5_tc3.dd +*../MODULES/RBF/s6_tc3.dd +* TC^3 SCSI HDB-DOS descriptor +*../MODULES/RBF/sh_tc3.dd +* IDE DD descriptor (Master) +*../MODULES/RBF/ddi0_ide.dd +* IDE descriptors (master/slave) +*../MODULES/RBF/i0_ide.dd +*../MODULES/RBF/i1_ide.dd +* IDE HDB-DOS descriptor +*../MODULES/RBF/ih_ide.dd +* +* WD1773 floppy support for Tandy and compatible disk controllers +../MODULES/RBF/rb1773.dr +* WD1773 floppy support for Disto Super Controller II +*../MODULES/RBF/rb1773_scii_ff74.dr +*../MODULES/RBF/rb1773_scii_ff58.dr +* Floppy device descriptors +* DD - default device - choose one if needed +*../MODULES/RBF/ddd0_35s.dd +../MODULES/RBF/ddd0_40d.dd +*../MODULES/RBF/ddd0_80d.dd +* D0 - drive 0 - choose one if needed +*../MODULES/RBF/d0_35s.dd +../MODULES/RBF/d0_40d.dd +*../MODULES/RBF/d0_80d.dd +* D1 - drive 1 - choose one if needed +*../MODULES/RBF/d1_35s.dd +../MODULES/RBF/d1_40d.dd +*../MODULES/RBF/d1_80d.dd +* D2 - drive 2 - choose one if needed +*../MODULES/RBF/d2_35s.dd +../MODULES/RBF/d2_40d.dd +*../MODULES/RBF/d2_80d.dd +* D3 - drive 3 - choose if needed +*../MODULES/RBF/d3_35s.dd +*************************************** +* SCF Section +* +../MODULES/SCF/scf.mn +* +* Video Terminal I/O driver and subroutine modules +../MODULES/SCF/vtio.dr +* Choose from CoVDG (32x16 VDG), CoHR (Hi-Res 51x24 graphics screen) or Co80 (WordPak) +../MODULES/SCF/covdg.io +*../MODULES/SCF/cohr.io +* +* Select only one term descriptor +../MODULES/SCF/term_vdg.dt +*../MODULES/SCF/term_hr.dt +*../MODULES/SCF/term_80.dt +*../MODULES/SCF/term_scbbt.dt +*../MODULES/SCF/term_sc6551.dt +* +* Serial port drivers +* CoCo Bit-Banger terminal port +*../MODULES/SCF/scbbt.dr +*../MODULES/SCF/t1_scbbt.dd +* 6551 ACIA +*../MODULES/SCF/sc6551.dr +*../MODULES/SCF/t2_sc6551.dd +*../MODULES/SCF/t3_sc6551.dd +* +* Printer drivers +* ../MODULES/SCF/scbbp.dr +* ../MODULES/SCF/p_scbbp.dd +* +* DriveWire 3 Printer drivers +* ../MODULES/SCF/scdwp.dr +* ../MODULES/SCF/p_scdwp.dd +* +* DriveWire Virtual Channel Driver +*../MODULES/SCF/scdwv.dr +*../MODULES/SCF/term_scdwv.dt +*../MODULES/SCF/n_scdwv.dd +*../MODULES/SCF/n1_scdwv.dd +*../MODULES/SCF/n2_scdwv.dd +*../MODULES/SCF/n3_scdwv.dd +*../MODULES/SCF/n4_scdwv.dd +*../MODULES/SCF/n5_scdwv.dd +*../MODULES/SCF/n6_scdwv.dd +*../MODULES/SCF/n7_scdwv.dd +*../MODULES/SCF/n8_scdwv.dd +*../MODULES/SCF/n9_scdwv.dd +*../MODULES/SCF/n10_scdwv.dd +*../MODULES/SCF/n11_scdwv.dd +*../MODULES/SCF/n12_scdwv.dd +*../MODULES/SCF/n13_scdwv.dd +*../MODULES/SCF/n14_scdwv.dd +*../MODULES/SCF/term_z_scdwv.dt +*../MODULES/SCF/z1_scdwv.dd +*../MODULES/SCF/z2_scdwv.dd +*../MODULES/SCF/z3_scdwv.dd +*../MODULES/SCF/z4_scdwv.dd +*../MODULES/SCF/z5_scdwv.dd +*../MODULES/SCF/z6_scdwv.dd +*../MODULES/SCF/z7_scdwv.dd +* +*************************************** +* Pipe Section +* +* Pipes are a useful but optional part of a system. +../MODULES/PIPE/pipeman.mn +../MODULES/PIPE/piper.dr +../MODULES/PIPE/pipe.dd +* +*************************************** +* Clock Section +* +* Select one clock module depending upon your power line frequency +* (60Hz = USA/Canada; 50Hz = Europe, Australia) +../MODULES/CLOCKS/clock_60hz +*../MODULES/CLOCKS/clock_50hz +* 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, Cloud-9, the MESS emulator, Jeff +* Vavasour's CoCo emulator, and DriveWire. +../MODULES/CLOCKS/clock2_soft +*../MODULES/CLOCKS/clock2_bnb +*../MODULES/CLOCKS/clock2_disto2 +*../MODULES/CLOCKS/clock2_disto4 +*../MODULES/CLOCKS/clock2_elim +*../MODULES/CLOCKS/clock2_harris +*../MODULES/CLOCKS/clock2_smart +*../MODULES/CLOCKS/clock2_jvemu +*../MODULES/CLOCKS/clock2_messemu +*../MODULES/CLOCKS/clock2_cloud9 +*../MODULES/CLOCKS/clock2_dw3 +* +*************************************** +* System Kick-Start Module +* +* Choose which startup module you wish to use. (sysgo_dd is recommended +* for most configurations.) +../MODULES/SYSMODS/sysgo_dd +*../MODULES/SYSMODS/sysgo_h0
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level1/coco1/bootroms/makefile Thu Jul 19 10:09:15 2012 -0500 @@ -0,0 +1,42 @@ +include $(NITROS9DIR)/rules.mak + +# Module directory +MD = ../modules +# Commands directory +CD = ../cmds + +DEPENDS = ./makefile + +KERNEL_ROM = $(MD)/rel $(MD)/krn $(MD)/krnp2 $(MD)/init $(MD)/boot_rom + +BOOTFILE_ROM = $(MD)/rominfo $(MD)/ioman \ + $(MD)/scf.mn $(MD)/vtio.dr \ + $(MD)/covdg.io \ + $(MD)/term_vdg.dt \ + $(MD)/clock_60hz $(MD)/clock2_soft + +BOOTROMS = nos96809l1.rom +KERNELS = kernel_rom + +ALLROMS = $(BOOTROMS) + +all: $(ALLROMS) + +# Bootfiles +nos96809l1.rom: $(BOOTFILE_ROM) $(KERNEL_ROM) $(DEPENDS) + $(MERGE) $(BOOTFILE_ROM)>$@.tmp + $(PADROM) 11776 $@.tmp + $(MERGE) $(KERNEL_ROM)>kernel_rom + $(PADROM) 4592 kernel_rom + $(MERGE) $@.tmp kernel_rom>$@.tmp2 + $(MERGE) $@.tmp2 $(MD)/vectors>$@ + $(RM) $@.tmp $@.tmp2 + + +# Kernels +kernel_rom: $(KERNEL_ROM) $(DEPENDS) + $(MERGE) $(KERNEL_ROM)>$@ + +clean: + $(RM) $(ALLROMS) $(KERNELS) +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level1/coco1/cmds/defsfile Thu Jul 19 10:09:15 2012 -0500 @@ -0,0 +1,1 @@ + use ../defsfile
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level1/coco1/cmds/makefile Thu Jul 19 10:09:15 2012 -0500 @@ -0,0 +1,59 @@ +PORT = coco +include $(NITROS9DIR)/rules.mak + +vpath %.a $(LEVEL1)/cmds +vpath %.asm $(LEVEL1)/cmds:$(NITROS9DIR)/3rdparty/packages/basic09 + +DEPENDS = ./makefile + +AFLAGS += --includedir=$(NITROS9DIR)/3rdparty/packages/basic09 +LFLAGS += -l=$(NITROS9DIR)/lib/net.l -l=$(NITROS9DIR)/lib/alib.l -l=$(NITROS9DIR)/lib/sys6809l1.l + +BASIC09FILES = basic09.asm runb.asm gfx.asm inkey.asm syscall.asm +CMDS = asm attr backup binex build calldbg cmp cobbler copy cputype \ + date dcheck debug ded deiniz del deldir devs dir dirsort disasm \ + display dmode dsave dump echo edit error exbin format \ + free grfdrv help ident iniz irqs link list load login makdir \ + megaread mdir merge mfree mpi os9gen padrom park printerr procs prompt pwd pxd \ + rename save setime shellplus shell_21 sleep \ + tee tmode touch tsmon tuneport unlink verify xmode + +CMDS_D2 = basic09 runb gfx inkey syscall copy del echo format \ + merge os9gen prompt tmode + +CMDS_DW = inetd telnet dw + +SUBS = gfx inkey syscall +ALLOBJS = $(CMDS) $(CMDS_D2) $(CMDS_DW) $(SUBS) + +all: $(ALLOBJS) + +pwd: pd.asm + $(AS) $(AFLAGS) $< $(ASOUT)$@ -DPWD=1 + +xmode: xmode.asm + $(AS) $(AFLAGS) $< $(ASOUT)$@ -DXMODE=1 + +tmode: xmode.asm + $(AS) $(AFLAGS) $< $(ASOUT)$@ -DTMODE=1 + +pxd: pd.asm + $(AS) $(AFLAGS) $< $(ASOUT)$@ -DPXD=1 + +clean: + $(RM) $(ALLOBJS) + +identify: + $(IDENT_SHORT) $(ALLOBJS) + +showobjs: + @$(ECHO) $(CMDS) + +showobjs_d2: + @$(ECHO) $(CMDS_D2) + +showobjs_dw: + @$(ECHO) $(CMDS) $(CMDS_DW) + +showallobjs: + @$(ECHO) $(ALLOBJS)
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level1/coco1/defs/defsfile.asm Thu Jul 19 10:09:15 2012 -0500 @@ -0,0 +1,8 @@ +Level equ 1 + + ifp1 + use /dd/defs/os9.d + use /dd/defs/rbf.d + use /dd/defs/scf.d + use /dd/defs/coco.d + endc
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level1/coco1/defs/makefile Thu Jul 19 10:09:15 2012 -0500 @@ -0,0 +1,35 @@ +PORT = coco +include $(NITROS9DIR)/rules.mak + +DEPENDS = ./makefile + +DEFOPTS = --preprocess -DLevel=1 +DEFSDIR = ../../../defs +DEFS = defsfile os9.d rbf.d scf.d coco.d cocovtio.d +ALLOBJS = $(DEFS) + +all: $(ALLOBJS) + +defsfile: defsfile.asm + $(AS) $(DEFOPTS) $< > $@ + +os9.d: $(DEFSDIR)/os9.d + $(AS) $(DEFOPTS) -DOS9.D=0 $< > $@ + +rbf.d: $(DEFSDIR)/rbf.d + $(AS) $(DEFOPTS) -DRBF.D=0 $< > $@ + +scf.d: $(DEFSDIR)/scf.d + $(AS) $(DEFOPTS) -DSCF.D=0 $< > $@ + +coco.d: $(DEFSDIR)/coco.d + $(AS) $(DEFOPTS) -DCOCO.D=0 $< > $@ + +cocovtio.d: $(DEFSDIR)/cocovtio.d + $(AS) $(DEFOPTS) -DCOCOVTIO.D=0 $< > $@ + +clean: + $(RM) $(DEFS) + +showobjs: + @$(ECHO) $(ALLOBJS)
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level1/coco1/defsfile Thu Jul 19 10:09:15 2012 -0500 @@ -0,0 +1,6 @@ +Level equ 1 + + use os9.d + use scf.d + use rbf.d + use coco.d
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level1/coco1/makefile Thu Jul 19 10:09:15 2012 -0500 @@ -0,0 +1,253 @@ +PORT = coco1 +include $(NITROS9DIR)/rules.mak + +CPU = 6809 +LEVEL = 1 + +# Level 1 - Specify which shell should be used +#WHICHSHELL = shellplus +WHICHSHELL = shell_21 + +DISTRO = $(CPU)L$(LEVEL) +DISTRONAME = nos9$(CPU)l$(LEVEL) +DISTROVER = $(DISTRONAME)$(NITROS9VER)$(PORT) +BOOTFILE_COVDG = bootfiles/bootfile_covdg +BOOTFILE_COHR = bootfiles/bootfile_cohr +BOOTFILE_COVDG_DS80 = bootfiles/bootfile_covdg_ds80 +BOOTFILE_HEADLESS_DW3 = bootfiles/bootfile_headless_dw3 +BOOTFILE_COVDG_DW3 = bootfiles/bootfile_covdg_dw3 +BOOTFILE_COHR_DS80 = bootfiles/bootfile_cohr_ds80 +BOOTFILE_COHR_DW3 = bootfiles/bootfile_cohr_dw3 +KERNELFILE = bootfiles/kernel_1773 +KERNELFILE_DW3 = bootfiles/kernel_dw3 +DIRS = cmds modules defs sys bootfiles bootroms + + +CMDS = $(shell $(CD) cmds; make --no-print-directory showobjs) +CMDS_D2 = $(shell $(CD) cmds; make --no-print-directory showobjs_d2) +CMDS_DW = $(shell $(CD) cmds; make --no-print-directory showobjs_dw) +BOOTTRACK = $(shell $(CD) modules; make --no-print-directory showboottrack) +KERNEL = $(shell $(CD) modules; make --no-print-directory showkernel) +SYSMODS = $(shell $(CD) modules; make --no-print-directory showsysmods) +CLOCKS = $(shell $(CD) modules; make --no-print-directory showclocks) +RBF = $(shell $(CD) modules; make --no-print-directory showrbf) +SCF = $(shell $(CD) modules; make --no-print-directory showscf) +PIPE = $(shell $(CD) modules; make --no-print-directory showpipe) +MODULECMDS = $(WHICHSHELL) del echo format makdir merge os9gen prompt tmode + +SYS = $(shell $(CD) sys; make --no-print-directory showobjs) +DEFS = $(shell $(CD) defs; make --no-print-directory showobjs) +STARTUP = startup +STARTUP_DW = startup.dw + +PACKAGENAME = $(DISTROVER).zip +DSKDW3 = $(DISTROVER)_dw3.dsk +LDSKDW3 = $(DISTRONAME)$(PORT)_dw3.dsk +DSK360K_1 = $(DISTROVER)_40d_1.dsk +LDSK360K_1 = $(DISTRONAME)_40d_1.dsk +DSK360K_2 = $(DISTROVER)_40d_2.dsk +LDSK360K_2 = $(DISTRONAME)_40d_2.dsk +DSK720K = $(DISTROVER)_80d.dsk +LDSK720K = $(DISTRONAME)_80d.dsk + + +DSKS = $(DSKDW3) $(DSK360K_1) $(DSK360K_2) $(DSK720K) +LDSKS = $(LDSKDW3) $(LDSK360K_1) $(LDSK360K_2) $(LDSK720K) + +# Make all components +all: + @$(ECHO) "**************************************************" + @$(ECHO) "* *" + @$(ECHO) "* NitrOS-9/$(CPU) Level 1 CoCo Port *" + @$(ECHO) "* *" + @$(ECHO) "**************************************************" + $(foreach dir, $(DIRS), ($(CD) $(dir); make);) + +# Clean all components +clean: dskclean + $(foreach dir, $(DIRS), ($(CD) $(dir); make clean);) + +dskclean: + -$(RM) $(PACKAGENAME) $(DSKS) $(LDSKS) + +dsk: all $(PACKAGENAME) + +dskcopy: dsk + $(CP) $(DSKS) $(DSKDIR) + +scp: dsk + scp $(PACKAGENAME) boisy@cvs.nitros9.org:/home/nitros9/public_html + +$(PACKAGENAME): $(DSKS) ../../ReadMe ../../ChangeLog + $(ARCHIVE) $@ $^ + +$(DSKDW3): + $(RM) $@ + $(OS9FORMAT_DW3) -q $@ -n"NitrOS-9/$(CPU) Level 1" + $(OS9GEN) $@ -b=$(BOOTFILE_COVDG_DW3) -t=$(KERNELFILE_DW3) + $(MAKDIR) $@,CMDS + $(MAKDIR) $@,SYS + $(MAKDIR) $@,DEFS + $(CD) cmds; $(CP) $(CMDS_DW) ../$@,CMDS + $(foreach file, $(CMDS_DW), $(OS9ATTR_EXEC) $@,CMDS/$(file);) + $(CD) cmds; $(CP) $(CMDS_D2) ../$@,CMDS + $(foreach file, $(CMDS_D2), $(OS9ATTR_EXEC) $@,CMDS/$(file);) + $(OS9RENAME) $@,CMDS/$(WHICHSHELL) shell + $(CD) sys; $(CPL) $(SYS) ../$@,SYS + $(foreach file, $(SYS), $(OS9ATTR_TEXT) $@,SYS/$(file);) + $(CD) defs; $(CPL) $(DEFS) ../$@,DEFS + $(foreach file, $(DEFS), $(OS9ATTR_TEXT) $@,DEFS/$(file);) + $(CPL) $(STARTUP_DW) $@,startup + $(OS9ATTR_TEXT) $@,startup + $(MAKDIR) $@,NITROS9 + $(MAKDIR) $@,NITROS9/6809L1 + $(MAKDIR) $@,NITROS9/6809L1/CMDS + $(CD) cmds; $(CP) $(MODULECMDS) ../$@,NITROS9/6809L1/CMDS + $(foreach file, $(MODULECMDS), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/CMDS/$(file);) + $(OS9RENAME) $@,NITROS9/6809L1/CMDS/$(WHICHSHELL) shell + $(MAKDIR) $@,NITROS9/6809L1/MODULES + $(MAKDIR) $@,NITROS9/6809L1/MODULES/BOOTTRACK + $(CD) modules; $(CP) $(BOOTTRACK) ../$@,NITROS9/6809L1/MODULES/BOOTTRACK + $(foreach file, $(BOOTTRACK), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/BOOTTRACK/$(file);) + $(MAKDIR) $@,NITROS9/6809L1/MODULES/KERNEL + $(CD) modules; $(CP) $(KERNEL) ../$@,NITROS9/6809L1/MODULES/KERNEL + $(foreach file, $(KERNEL), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/KERNEL/$(file);) + $(MAKDIR) $@,NITROS9/6809L1/MODULES/SYSMODS + $(CD) modules; $(CP) $(SYSMODS) ../$@,NITROS9/6809L1/MODULES/SYSMODS + $(foreach file, $(SYSMODS), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/SYSMODS/$(file);) + $(MAKDIR) $@,NITROS9/6809L1/MODULES/CLOCKS + $(CD) modules; $(CP) $(CLOCKS) ../$@,NITROS9/6809L1/MODULES/CLOCKS + $(foreach file, $(CLOCKS), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/CLOCKS/$(file);) + $(MAKDIR) $@,NITROS9/6809L1/MODULES/RBF + $(CD) modules; $(CP) $(RBF) ../$@,NITROS9/6809L1/MODULES/RBF + $(foreach file, $(RBF), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/RBF/$(file);) + $(MAKDIR) $@,NITROS9/6809L1/MODULES/SCF + $(CD) modules; $(CP) $(SCF) ../$@,NITROS9/6809L1/MODULES/SCF + $(foreach file, $(SCF), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/SCF/$(file);) + $(MAKDIR) $@,NITROS9/6809L1/MODULES/PIPE + $(CD) modules; $(CP) $(PIPE) ../$@,NITROS9/6809L1/MODULES/PIPE + $(foreach file, $(PIPE), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/PIPE/$(file);) + $(MAKDIR) $@,NITROS9/6809L1/BOOTLISTS + $(CD) bootlists; $(CPL) *.bl ../$@,NITROS9/6809L1/BOOTLISTS + $(MAKDIR) $@,NITROS9/6809L1/SCRIPTS + $(CD) scripts; $(CPL) mb* ../$@,NITROS9/6809L1/SCRIPTS + $(RM) $(LDSKDW3) + $(SOFTLINK) $@ $(LDSKDW3) + +$(DSK360K_1): + $(RM) $@ + $(OS9FORMAT_DS40) -q $@ -n"NitrOS-9/6809 Level 1 Disk 1" + $(OS9GEN) $@ -b=$(BOOTFILE_COVDG) -t=$(KERNELFILE) + $(MAKDIR) $@,CMDS + $(MAKDIR) $@,SYS + $(CD) cmds; $(CP) $(CMDS) ../$@,CMDS + $(foreach file, $(CMDS), $(OS9ATTR_EXEC) $@,CMDS/$(file);) + $(OS9RENAME) $@,CMDS/$(WHICHSHELL) shell + $(CD) sys; $(CPL) $(SYS) ../$@,SYS + $(foreach file, $(SYS), $(OS9ATTR_TEXT) $@,SYS/$(file);) + $(MAKDIR) $@,DEFS + $(CD) defs; $(CPL) $(DEFS) ../$@,DEFS + $(foreach file, $(DEFS), $(OS9ATTR_TEXT) $@,DEFS/$(file);) + $(CPL) $(STARTUP) $@,startup + $(OS9ATTR_TEXT) $@,startup + $(RM) $(LDSK360K_1) + $(SOFTLINK) $@ $(LDSK360K_1) + +$(DSK360K_2): + $(RM) $@ + $(OS9FORMAT_DS40) -q $@ -n"NitrOS-9/6809 Level 1 Disk 2" + $(MAKDIR) $@,CMDS + $(CD) cmds; $(CP) $(CMDS_D2) ../$@,CMDS + $(foreach file, $(CMDS_D2), $(OS9ATTR_EXEC) $@,CMDS/$(file);) + $(MAKDIR) $@,NITROS9 + $(MAKDIR) $@,NITROS9/6809L1 + $(MAKDIR) $@,NITROS9/6809L1/CMDS + $(CD) cmds; $(CP) $(MODULECMDS) ../$@,NITROS9/6809L1/CMDS + $(foreach file, $(MODULECMDS), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/CMDS/$(file);) + $(OS9RENAME) $@,NITROS9/6809L1/CMDS//$(WHICHSHELL) shell + $(MAKDIR) $@,NITROS9/6809L1/MODULES + $(MAKDIR) $@,NITROS9/6809L1/MODULES/BOOTTRACK + $(CD) modules; $(CP) $(BOOTTRACK) ../$@,NITROS9/6809L1/MODULES/BOOTTRACK + $(foreach file, $(BOOTTRACK), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/BOOTTRACK/$(file);) + $(MAKDIR) $@,NITROS9/6809L1/MODULES/KERNEL + $(CD) modules; $(CP) $(KERNEL) ../$@,NITROS9/6809L1/MODULES/KERNEL + $(foreach file, $(KERNEL), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/KERNEL/$(file);) + $(MAKDIR) $@,NITROS9/6809L1/MODULES/SYSMODS + $(CD) modules; $(CP) $(SYSMODS) ../$@,NITROS9/6809L1/MODULES/SYSMODS + $(foreach file, $(SYSMODS), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/SYSMODS/$(file);) + $(MAKDIR) $@,NITROS9/6809L1/MODULES/CLOCKS + $(CD) modules; $(CP) $(CLOCKS) ../$@,NITROS9/6809L1/MODULES/CLOCKS + $(foreach file, $(CLOCKS), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/CLOCKS/$(file);) + $(MAKDIR) $@,NITROS9/6809L1/MODULES/RBF + $(CD) modules; $(CP) $(RBF) ../$@,NITROS9/6809L1/MODULES/RBF + $(foreach file, $(RBF), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/RBF/$(file);) + $(MAKDIR) $@,NITROS9/6809L1/MODULES/SCF + $(CD) modules; $(CP) $(SCF) ../$@,NITROS9/6809L1/MODULES/SCF + $(foreach file, $(SCF), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/SCF/$(file);) + $(MAKDIR) $@,NITROS9/6809L1/MODULES/PIPE + $(CD) modules; $(CP) $(PIPE) ../$@,NITROS9/6809L1/MODULES/PIPE + $(foreach file, $(PIPE), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/PIPE/$(file);) + $(MAKDIR) $@,NITROS9/6809L1/BOOTLISTS + $(CD) bootlists; $(CPL) *.bl ../$@,NITROS9/6809L1/BOOTLISTS + $(MAKDIR) $@,NITROS9/6809L1/SCRIPTS + $(CD) scripts; $(CPL) mb* ../$@,NITROS9/6809L1/SCRIPTS + $(RM) $(LDSK360K_2) + $(SOFTLINK) $@ $(LDSK360K_2) + +$(DSK720K): + $(RM) $@ + $(OS9FORMAT_DS80) -q $@ -n"NitrOS-9/6809 Level 1" + $(OS9GEN) $@ -b=$(BOOTFILE_COVDG_DS80) -t=$(KERNELFILE) + $(MAKDIR) $@,CMDS + $(MAKDIR) $@,SYS + $(MAKDIR) $@,DEFS + $(CD) cmds; $(CP) $(CMDS) ../$@,CMDS + $(foreach file, $(CMDS), $(OS9ATTR_EXEC) $@,CMDS/$(file);) + $(CD) cmds; $(CP) $(CMDS_D2) ../$@,CMDS + $(foreach file, $(CMDS_D2), $(OS9ATTR_EXEC) $@,CMDS/$(file);) + $(OS9RENAME) $@,CMDS/$(WHICHSHELL) shell + $(CD) sys; $(CPL) $(SYS) ../$@,SYS + $(foreach file, $(SYS), $(OS9ATTR_TEXT) $@,SYS/$(file);) + $(CD) defs; $(CPL) $(DEFS) ../$@,DEFS + $(foreach file, $(DEFS), $(OS9ATTR_TEXT) $@,DEFS/$(file);) + $(CPL) $(STARTUP) $@,startup + $(OS9ATTR_TEXT) $@,startup + $(MAKDIR) $@,NITROS9 + $(MAKDIR) $@,NITROS9/6809L1 + $(MAKDIR) $@,NITROS9/6809L1/CMDS + $(CD) cmds; $(CP) $(MODULECMDS) ../$@,NITROS9/6809L1/CMDS + $(foreach file, $(MODULECMDS), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/CMDS/$(file);) + $(OS9RENAME) $@,NITROS9/6809L1/CMDS/$(WHICHSHELL) shell + $(MAKDIR) $@,NITROS9/6809L1/MODULES + $(MAKDIR) $@,NITROS9/6809L1/MODULES/BOOTTRACK + $(CD) modules; $(CP) $(BOOTTRACK) ../$@,NITROS9/6809L1/MODULES/BOOTTRACK + $(foreach file, $(BOOTTRACK), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/BOOTTRACK/$(file);) + $(MAKDIR) $@,NITROS9/6809L1/MODULES/KERNEL + $(CD) modules; $(CP) $(KERNEL) ../$@,NITROS9/6809L1/MODULES/KERNEL + $(foreach file, $(KERNEL), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/KERNEL/$(file);) + $(MAKDIR) $@,NITROS9/6809L1/MODULES/SYSMODS + $(CD) modules; $(CP) $(SYSMODS) ../$@,NITROS9/6809L1/MODULES/SYSMODS + $(foreach file, $(SYSMODS), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/SYSMODS/$(file);) + $(MAKDIR) $@,NITROS9/6809L1/MODULES/CLOCKS + $(CD) modules; $(CP) $(CLOCKS) ../$@,NITROS9/6809L1/MODULES/CLOCKS + $(foreach file, $(CLOCKS), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/CLOCKS/$(file);) + $(MAKDIR) $@,NITROS9/6809L1/MODULES/RBF + $(CD) modules; $(CP) $(RBF) ../$@,NITROS9/6809L1/MODULES/RBF + $(foreach file, $(RBF), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/RBF/$(file);) + $(MAKDIR) $@,NITROS9/6809L1/MODULES/SCF + $(CD) modules; $(CP) $(SCF) ../$@,NITROS9/6809L1/MODULES/SCF + $(foreach file, $(SCF), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/SCF/$(file);) + $(MAKDIR) $@,NITROS9/6809L1/MODULES/PIPE + $(CD) modules; $(CP) $(PIPE) ../$@,NITROS9/6809L1/MODULES/PIPE + $(foreach file, $(PIPE), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/PIPE/$(file);) + $(MAKDIR) $@,NITROS9/6809L1/BOOTLISTS + $(CD) bootlists; $(CPL) *.bl ../$@,NITROS9/6809L1/BOOTLISTS + $(MAKDIR) $@,NITROS9/6809L1/SCRIPTS + $(CD) scripts; $(CPL) mb* ../$@,NITROS9/6809L1/SCRIPTS + $(RM) $(LDSK720K) + $(SOFTLINK) $@ $(LDSK720K) + +info: + @echo "*** NitrOS-9/6809 Level 1 for the Tandy Color Computer ***" + @$(foreach dsk, $(DSKS), $(ECHO) $(dsk);) +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level1/coco1/modules/defsfile Thu Jul 19 10:09:15 2012 -0500 @@ -0,0 +1,1 @@ + use ../defsfile
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level1/coco1/modules/kernel/defsfile Thu Jul 19 10:09:15 2012 -0500 @@ -0,0 +1,1 @@ + use ../../defsfile
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level1/coco1/modules/kernel/makefile Thu Jul 19 10:09:15 2012 -0500 @@ -0,0 +1,32 @@ +PORT = coco +include $(NITROS9DIR)/rules.mak + +vpath %.asm $(LEVEL1)/modules/kernel + +DEPENDS = ./makefile + +KERNEL = krn +KERNELP2 = krnp2 +SYSCALLS = fcmpnam.asm fprsnam.asm + +AFLAGS += -I$(LEVEL1)/modules/kernel + +ALLOBJS = $(KERNEL) $(KERNELP2) + +all: $(ALLOBJS) + +$(KERNEL): krn.asm $(SYSCALLS) + +$(KERNELP2): krnp2.asm $(SYSCALLS) + +clean: + $(RM) $(ALLOBJS) + +showobjs: + @$(ECHO) $(ALLOBJS) + +showcopyobjs: + @$(ECHO) $(COPYOBJS) + +identify: + $(IDENT_SHORT) $(ALLOBJS)
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level1/coco1/modules/makefile Thu Jul 19 10:09:15 2012 -0500 @@ -0,0 +1,352 @@ +PORT = coco1 +include $(NITROS9DIR)/rules.mak + +vpath %.asm $(LEVEL1)/modules + +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) + +DEPENDS = ./makefile +TPB = $(3RDPARTY)/booters + +BOOTERS = boot_1773_6ms boot_1773_30ms \ + boot_burke boot_rampak boot_wd1002 boot_dw3 \ + boot_tc3 boot_ide boot_rom +BOOTTRACK = rel $(BOOTERS) +KERNEL = krn krnp2 wbug +SYSMODS = ioman init sysgo_dd sysgo_h0 rominfo vectors +CLOCKS = clock_60hz clock_50hz \ + clock2_elim clock2_disto2 clock2_disto4 clock2_bnb \ + clock2_smart clock2_harris clock2_cloud9 clock2_soft \ + clock2_messemu clock2_jvemu clock2_dw3 + +RBF = rbf.mn \ + rbdw3.dr dw3.sb \ + rb1773.dr rb1773_scii_ff74.dr rb1773_scii_ff58.dr \ + ddd0_35s.dd d0_35s.dd d1_35s.dd d2_35s.dd d3_35s.dd \ + ddd0_40d.dd d0_40d.dd d1_40d.dd d2_40d.dd \ + ddd0_80d.dd d0_80d.dd d1_80d.dd d2_80d.dd \ + ddx0.dd x0.dd x1.dd x2.dd x3.dd \ + rbsuper.dr lltc3.dr llide.dr \ + ddi0_ide.dd i0_ide.dd i1_ide.dd ih_ide.dd \ + dds0_tc3.dd s0_tc3.dd s1_tc3.dd s2_tc3.dd s3_tc3.dd s4_tc3.dd \ + s5_tc3.dd s6_tc3.dd sh_tc3.dd + +SCF = scf.mn \ + sc6551.dr vrn.dr scbbp.dr scbbt.dr scdwp.dr sspak.dr vtio.dr \ + covdg.io cohr.io co80.io \ + 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 \ + term_vdg.dt term_hr.dt term_80.dt \ + scdwv.dr term_scdwv.dt n_scdwv.dd n1_scdwv.dd n2_scdwv.dd \ + n3_scdwv.dd n4_scdwv.dd n5_scdwv.dd n6_scdwv.dd n7_scdwv.dd \ + n8_scdwv.dd n9_scdwv.dd n10_scdwv.dd n11_scdwv.dd n12_scdwv.dd \ + n13_scdwv.dd midi_scdwv.dd \ + term_z_scdwv.dt \ + z1_scdwv.dd z2_scdwv.dd z3_scdwv.dd z4_scdwv.dd z5_scdwv.dd \ + z6_scdwv.dd z7_scdwv.dd + +PIPE = pipeman.mn \ + piper.dr \ + pipe.dd + +RFM = rfm.mn rfmdrv.dr ddy0.dd y0.dd y1.dd y2.dd y3.dd + +ALLOBJS = $(BOOTTRACK) $(KERNEL) $(SYSMODS) $(CLOCKS) $(RBF) $(SCF) $(PIPE) $(RFM) + +all: $(ALLOBJS) + +# Kernel +krn krnp2: + $(CD) kernel; make $@ + $(CP) kernel/$@ . + +# Special cases +# TC^3 SCSI Booter +boot_tc3: boot_scsi.asm + $(AS) $(ASOUT)$@ $< $(TC3FLAGS) + +# SuperIDE/Glenside IDE Booter +boot_ide: boot_ide.asm + $(AS) $(ASOUT)$@ $< $(IDEFLAGS) + +# DriveWire 3 +boot_1773_6ms: boot_1773.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=0 -DSTEP=0 + +boot_1773_30ms: boot_1773.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=0 -DSTEP=3 + +rb1773_scii_ff74.dr: rb1773.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DSCII=1 + +rb1773_scii_ff58.dr: rb1773.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DSCII=1 -DSCIIALT=1 + +# TC^3 SCSI Driver +lltc3.dr: llscsi.asm + $(AS) $(ASOUT)$@ $< $(TC3FLAGS) + +# IDE Driver +llide.dr: llide.asm + $(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 + +ddd0_35s.dd: rb1773desc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) $(SSDD35) -DDNum=0 -DDD=1 + +d0_35s.dd: rb1773desc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) $(SSDD35) -DDNum=0 + +d1_35s.dd: rb1773desc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) $(SSDD35) -DDNum=1 + +d2_35s.dd: rb1773desc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) $(SSDD35) -DDNum=2 + +d3_35s.dd: rb1773desc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) $(SSDD35) -DDNum=3 + +ddd0_40d.dd: rb1773desc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD40) -DDNum=0 -DDD=1 + +d0_40d.dd: rb1773desc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD40) -DDNum=0 + +d1_40d.dd: rb1773desc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD40) -DDNum=1 + +d2_40d.dd: rb1773desc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD40) -DDNum=2 + +ddd0_80d.dd: rb1773desc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD80) -DDNum=0 -DDD=1 + +d0_80d.dd: rb1773desc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD80) -DDNum=0 + +d1_80d.dd: rb1773desc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD80) -DDNum=1 + +d2_80d.dd: rb1773desc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD80) -DDNum=2 + +# DriveWire 3 SCF descriptors +term_scdwv.dt: scdwvdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=0 + +n_scdwv.dd: scdwvdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=255 + +n1_scdwv.dd: scdwvdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=1 + +n2_scdwv.dd: scdwvdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=2 + +n3_scdwv.dd: scdwvdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=3 + +n4_scdwv.dd: scdwvdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=4 + +n5_scdwv.dd: scdwvdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=5 + +n6_scdwv.dd: scdwvdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=6 + +n7_scdwv.dd: scdwvdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=7 + +n8_scdwv.dd: scdwvdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=8 + +n9_scdwv.dd: scdwvdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=9 + +n10_scdwv.dd: scdwvdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=10 + +n11_scdwv.dd: scdwvdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=11 + +n12_scdwv.dd: scdwvdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=12 + +n13_scdwv.dd: scdwvdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=13 + +midi_scdwv.dd: scdwvdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=14 + +term_z_scdwv.dt: scdwvdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=16 + +z1_scdwv.dd: scdwvdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=17 + +z2_scdwv.dd: scdwvdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=18 + +z3_scdwv.dd: scdwvdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=19 + +z4_scdwv.dd: scdwvdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=20 + +z5_scdwv.dd: scdwvdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=21 + +z6_scdwv.dd: scdwvdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=22 + +z7_scdwv.dd: scdwvdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=23 + +# DriveWire 3 RBF descriptors +ddx0.dd: dwdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DDD=1 -DDNum=0 + +x0.dd: dwdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=0 + +x1.dd: dwdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=1 + +x2.dd: dwdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=2 + +x3.dd: dwdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=3 + +# TC^3 SCSI Descriptors +dds0_tc3.dd: superdesc.asm + $(AS) $(ASOUT)$@ $< $(TC3FLAGS) $(ID0) -DDD=1 + +s0_tc3.dd: superdesc.asm + $(AS) $(ASOUT)$@ $< $(TC3FLAGS) $(ID0) $(SCSI_HD) + +s1_tc3.dd: superdesc.asm + $(AS) $(ASOUT)$@ $< $(TC3FLAGS) $(ID1) $(SCSI_HD) + +s2_tc3.dd: superdesc.asm + $(AS) $(ASOUT)$@ $< $(TC3FLAGS) $(ID2) $(SCSI_HD) + +s3_tc3.dd: superdesc.asm + $(AS) $(ASOUT)$@ $< $(TC3FLAGS) $(ID3) $(SCSI_HD) + +s4_tc3.dd: superdesc.asm + $(AS) $(ASOUT)$@ $< $(TC3FLAGS) $(ID4) $(SCSI_HD) + +s5_tc3.dd: superdesc.asm + $(AS) $(ASOUT)$@ $< $(TC3FLAGS) $(ID5) $(SCSI_HD) + +s6_tc3.dd: superdesc.asm + $(AS) $(ASOUT)$@ $< $(TC3FLAGS) $(ID6) $(SCSI_HD) + +sh_tc3.dd: superdesc.asm + $(AS) $(ASOUT)$@ $< $(TC3FLAGS) $(HDBDOS) + +# IDE Descriptors +ddi0_ide.dd: superdesc.asm + $(AS) $(ASOUT)$@ $< $(IDEFLAGS) $(MASTER) -DDD=1 + +i0_ide.dd: superdesc.asm + $(AS) $(ASOUT)$@ $< $(IDEFLAGS) $(MASTER) + +i1_ide.dd: superdesc.asm + $(AS) $(ASOUT)$@ $< $(IDEFLAGS) $(SLAVE) + +ih_ide.dd: superdesc.asm + $(AS) $(ASOUT)$@ $< $(IDEFLAGS) $(HDBDOS) + +# RFM descriptors +ddy0.dd: rfmdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DDD=1 -DDNum=0 + +y0.dd: rfmdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=0 + +y1.dd: rfmdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=1 + +y2.dd: rfmdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=2 + +y3.dd: rfmdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=3 + +rel: rel.asm + $(AS) $(AFLAGS) $(ASOUT)$@ $< -DDragon64=0 + +sysgo_dd: sysgo.asm + $(AS) $(AFLAGS) $(ASOUT)$@ $< -DDD=1 + +sysgo_h0: sysgo.asm + $(AS) $(AFLAGS) $(ASOUT)$@ $< + +# Clocks +clock_60hz: clock.asm + $(AS) $(AFLAGS) $(ASOUT)$@ $< -DPwrLnFrq=60 + +clock_50hz: clock.asm + $(AS) $(AFLAGS) $(ASOUT)$@ $< -DPwrLnFrq=50 + +clock2_bnb: clock2_ds1315.asm + $(AS) $(AFLAGS) $(ASOUT)$@ $< -DBNB=1 + +clock2_cloud9: clock2_ds1315.asm + $(AS) $(AFLAGS) $(ASOUT)$@ $< -DCLOUD9=1 + +clean: + $(CD) kernel; make $@ + $(RM) $(ALLOBJS) + +showobjs: + @$(ECHO) $(ALLOBJS) + +showboottrack: + @$(ECHO) $(BOOTTRACK) + +showkernel: + @$(ECHO) $(KERNEL) + +showsysmods: + @$(ECHO) $(SYSMODS) + +showclocks: + @$(ECHO) $(CLOCKS) + +showrbf: + @$(ECHO) $(RBF) + +showscf: + @$(ECHO) $(SCF) + +showpipe: + @$(ECHO) $(PIPE) + +identify: + $(IDENT_SHORT) $(ALLOBJS) + +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level1/coco1/scripts/mb.dw3 Thu Jul 19 10:09:15 2012 -0500 @@ -0,0 +1,30 @@ +-t +-x +tmode .1 pau=0 +echo * NitrOS-9 Level 1 Boot Creation Script +echo * +echo * This script creates a bootable DriveWire 3 disk image +echo * using the dw3.bl bootlist file. +echo * +echo * The resulting disk will boot NitrOS-9 from DriveWire drive 0. +echo * +prompt Insert a blank disk in /x1 and press a key: +echo * +echo * Step 1: Format disk in /x1 +format /x1 "NitrOS-9 Level 1 Boot Disk" r +ynn +echo * +echo * Step 2: Create a custom boot track +del bttemp +merge ../MODULES/BOOTTRACK/rel ../MODULES/KERNEL/krn ../MODULES/KERNEL/krnp2 ../MODULES/SYSMODS/init ../MODULES/BOOTTRACK/boot_dw3>bttemp +echo * +echo * Step 3: Create the bootfile and boot track +os9gen /x1 -t=bttemp<../BOOTLISTS/dw3.bl +del bttemp +echo * +echo * Step 4: Populate the disk with essential files +copy ../MODULES/SYSMODS/sysgo_dd /x1/sysgo +makdir /x1/CMDS +copy -w=/x1/CMDS ../CMDS/shell +echo * +echo * We're done
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level1/coco1/scripts/mb.floppy Thu Jul 19 10:09:15 2012 -0500 @@ -0,0 +1,29 @@ +-t +-x +tmode .1 pau=0 +echo * NitrOS-9 Level 1 Boot Creation Script +echo * +echo * This script creates a bootable floppy disk +echo * using the standard.bl bootlist file. +echo * +echo * The resulting disk will boot NitrOS-9 from drive 0. +echo * +prompt Insert a blank disk in /d0 and press a key: +echo * +echo * Step 1: Format disk in /d0 +format /d0 "NitrOS-9 Level 1 Boot Disk" r +echo * +echo * Step 2: Create a custom boot track +del bttemp +merge ../MODULES/BOOTTRACK/rel ../MODULES/KERNEL/krn ../MODULES/KERNEL/krnp2 ../MODULES/SYSMODS/init ../MODULES/BOOTTRACK/boot_1773_6ms>bttemp +echo * +echo * Step 3: Create the bootfile and boot track +os9gen /d0 -t=bttemp<../BOOTLISTS/standard.bl +del bttemp +echo * +echo * Step 4: Populate the disk with essential files +copy ../MODULES/SYSMODS/sysgo_dd /d0/sysgo +makdir /d0/CMDS +copy -w=/d0/CMDS ../CMDS/shell +echo * +echo * We're done
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level1/coco1/startup Thu Jul 19 10:09:15 2012 -0500 @@ -0,0 +1,7 @@ +* Echo welcome message +echo * Welcome to NitrOS-9 Level 1 * +echo * on the Color Computer * +* Start system time from keyboard +setime </term +date -t +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level1/coco1/startup.dw Thu Jul 19 10:09:15 2012 -0500 @@ -0,0 +1,6 @@ +* Echo welcome message +echo * Welcome to NitrOS-9 Level 1 * +echo * with DriveWire 4 * +echo * on the Color Computer * +date -t +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level1/coco1/sys/makefile Thu Jul 19 10:09:15 2012 -0500 @@ -0,0 +1,36 @@ +PORT = coco +include $(NITROS9DIR)/rules.mak + +vpath %.hp $(LEVEL1)/sys + +DEPENDS = ./makefile + +SYSFILES = ../../sys/errmsg ../../sys/motd ../../sys/password ../../sys/inetd.conf +HELPFILES = asm.hp attr.hp backup.hp binex.hp build.hp chd.hp \ + chx.hp cmp.hp cobbler.hp config.hp copy.hp cputype.hp date.hp \ + dcheck.hp debug.hp ded.hp deiniz.hp del.hp deldir.hp devs.hp \ + dir.hp dirsort.hp disasm.hp display.hp dmode.hp dsave.hp dump.hp echo.hp \ + edit.hp error.hp ex.hp exbin.hp format.hp free.hp gfx.hp \ + help.hp ident.hp iniz.hp inkey.hp irqs.hp kill.hp link.hp \ + list.hp load.hp login.hp makdir.hp \ + mdir.hp megaread.hp merge.hp mpi.hp mfree.hp os9gen.hp \ + padrom.hp park.hp procs.hp prompt.hp pwd.hp pxd.hp \ + rename.hp save.hp setime.hp \ + setpr.hp shell.hp sleep.hp tee.hp tmode.hp touch.hp tsmon.hp \ + tuneport.hp unlink.hp verify.hp xmode.hp +HELPMSG = helpmsg +ALLOBJS = $(SYSFILES) $(HELPMSG) + + +all: $(ALLOBJS) $(DEPENDS) + +alldragon: $(ALLOBJS) + +helpmsg: $(HELPFILES) + $(MERGE) $^ > $@ + +clean: + $(RM) $(HELPMSG) + +showobjs: + @$(ECHO) $(ALLOBJS)
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level1/coco2/bootfiles/defsfile Thu Jul 19 10:09:15 2012 -0500 @@ -0,0 +1,2 @@ + use ../defsfile + use scfdefs
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level1/coco2/bootfiles/makefile Thu Jul 19 10:09:15 2012 -0500 @@ -0,0 +1,209 @@ +PORT = coco2 +include $(NITROS9DIR)/rules.mak + +# Module directory +MD = ../modules +# Commands directory +CD = ../cmds + +DEPENDS = ./makefile + +KERNEL_1773 = $(MD)/rel $(MD)/krn $(MD)/krnp2 $(MD)/init \ + $(MD)/boot_1773_6ms + +KERNEL_DW3 = $(MD)/rel $(MD)/krn $(MD)/krnp2 $(MD)/init \ + $(MD)/boot_dw3 + +IDE = $(3PD)/ide +SCSI = $(3PD)/scsisys + +FLOPPY_40D = $(MD)/rb1773.dr $(MD)/d0_40d.dd $(MD)/d1_40d.dd $(MD)/d2_40d.dd \ + $(MD)/ddd0_40d.dd +FLOPPY_80D = $(MD)/rb1773.dr $(MD)/d0_40d.dd $(MD)/d1_40d.dd $(MD)/d2_40d.dd \ + $(MD)/ddd0_80d.dd +VTIO_32COL = $(MD)/vtio.dr $(MD)/covdg.io $(MD)/term_vdg.dt +VTIO_51COL = $(MD)/vtio.dr $(MD)/cohr.io $(MD)/term_hr.dt +VTIO_80COL = $(MD)/vtio.dr $(MD)/co80.io $(MD)/term_80.dt +PIPE = $(MD)/pipeman.mn $(MD)/piper.dr $(MD)/pipe.dd +CLOCK60HZ = $(MD)/clock_60hz $(MD)/clock2_soft +CLOCK60HZDW = $(MD)/clock_60hz $(MD)/clock2_dw3 +RBDW3 = $(MD)/rbdw3.dr $(MD)/dw3.sb \ + $(MD)/ddx0.dd $(MD)/x1.dd $(MD)/x2.dd $(MD)/x3.dd +SCDWV_NET = $(MD)/n_scdwv.dd $(MD)/n1_scdwv.dd $(MD)/n2_scdwv.dd \ + $(MD)/n3_scdwv.dd $(MD)/n4_scdwv.dd $(MD)/n5_scdwv.dd \ + $(MD)/n6_scdwv.dd $(MD)/n7_scdwv.dd $(MD)/n8_scdwv.dd \ + $(MD)/n9_scdwv.dd $(MD)/n10_scdwv.dd $(MD)/n11_scdwv.dd \ + $(MD)/n12_scdwv.dd $(MD)/n13_scdwv.dd $(MD)/midi_scdwv.dd +SCDWV_WIN = $(MD)/n_scdwv.dd $(MD)/n1_scdwv.dd $(MD)/n2_scdwv.dd \ + $(MD)/n3_scdwv.dd $(MD)/n4_scdwv.dd $(MD)/n5_scdwv.dd \ + $(MD)/n6_scdwv.dd $(MD)/n7_scdwv.dd $(MD)/n8_scdwv.dd \ + $(MD)/n9_scdwv.dd $(MD)/n10_scdwv.dd $(MD)/n11_scdwv.dd \ + $(MD)/n12_scdwv.dd $(MD)/n13_scdwv.dd $(MD)/midi_scdwv.dd +SCDWP = $(MD)/scdwp.dr $(MD)/p_scdwp.dd + +BOOTFILE_COVDG = $(MD)/ioman \ + $(MD)/rbf.mn \ + $(FLOPPY_40D) \ + $(MD)/scf.mn \ + $(VTIO_32COL) \ + $(MD)/scbbp.dr $(MD)/p_scbbp.dd \ + $(MD)/scbbt.dr $(MD)/t1_scbbt.dd \ + $(PIPE) \ + $(CLOCK60HZ) \ + $(MD)/sysgo_dd + +BOOTFILE_COHR = $(MD)/ioman \ + $(MD)/rbf.mn \ + $(FLOPPY_40D) \ + $(MD)/scf.mn \ + $(VTIO_51COL) \ + $(MD)/scbbp.dr $(MD)/p_scbbp.dd \ + $(MD)/scbbt.dr $(MD)/t1_scbbt.dd \ + $(PIPE) \ + $(CLOCK60HZ) \ + $(MD)/sysgo_dd + +BOOTFILE_CO80 = $(MD)/ioman \ + $(MD)/rbf.mn \ + $(FLOPPY_40D) \ + $(MD)/scf.mn \ + $(VTIO_80COL) \ + $(MD)/scbbp.dr $(MD)/p_scbbp.dd \ + $(MD)/scbbt.dr $(MD)/t1_scbbt.dd \ + $(PIPE) \ + $(CLOCK60HZ) \ + $(MD)/sysgo_dd + +BOOTFILE_HEADLESS_DW3_COCO1 = $(MD)/ioman \ + $(MD)/rbf.mn \ + $(RBDW3_COCO1) \ + $(MD)/scf.mn \ + $(MD)/scdwv.dr \ + $(SCDWV_NET) \ + $(MD)/term_z_scdwv.dt \ + $(SCDWV_WIN) \ + $(SCDWP)\ + $(PIPE) \ + $(CLOCK60HZDW) \ + $(MD)/sysgo_dd + +BOOTFILE_HEADLESS_DW3 = $(MD)/ioman \ + $(MD)/rbf.mn \ + $(RBDW3) \ + $(MD)/scf.mn \ + $(MD)/scdwv.dr \ + $(SCDWV_NET) \ + $(MD)/term_z_scdwv.dt \ + $(SCDWV_WIN) \ + $(PIPE) \ + $(CLOCK60HZDW) \ + $(MD)/sysgo_dd + +BOOTFILE_COVDG_DW3 = $(MD)/ioman \ + $(MD)/rbf.mn \ + $(FLOPPY_40D) \ + $(RBDW3) \ + $(MD)/scf.mn \ + $(VTIO_32COL) \ + $(MD)/scdwv.dr \ + $(SCDWV_NET) \ + $(SCDWV_WIN) \ + $(SCDWP)\ + $(PIPE) \ + $(CLOCK60HZDW) \ + $(MD)/sysgo_dd + +BOOTFILE_COVDG_DS80 = $(MD)/ioman \ + $(MD)/rbf.mn \ + $(FLOPPY_80D) \ + $(MD)/scf.mn \ + $(VTIO_32COL) \ + $(MD)/scbbp.dr $(MD)/p_scbbp.dd \ + $(MD)/scbbt.dr $(MD)/t1_scbbt.dd \ + $(PIPE) \ + $(CLOCK60HZ) \ + $(MD)/sysgo_dd + +BOOTFILE_COHR_DW3_COCO1 = $(MD)/ioman \ + $(MD)/rbf.mn \ + $(FLOPPY_40D) \ + $(RBDW3_COCO1) \ + $(MD)/scf.mn \ + $(VTIO_51COL) \ + $(MD)/scdwv.dr \ + $(SCDWV_NET) \ + $(SCDWP)\ + $(PIPE) \ + $(CLOCK60HZDW) \ + $(MD)/sysgo_dd + +BOOTFILE_COHR_DW3 = $(MD)/ioman \ + $(MD)/rbf.mn \ + $(FLOPPY_40D) \ + $(RBDW3) \ + $(MD)/scf.mn \ + $(VTIO_51COL) \ + $(MD)/scdwv.dr \ + $(SCDWV_NET) \ + $(SCDWP)\ + $(PIPE) \ + $(CLOCK60HZDW) \ + $(MD)/sysgo_dd + +BOOTFILE_COHR_DS80 = $(MD)/ioman \ + $(MD)/rbf.mn \ + $(FLOPPY_80D) \ + $(MD)/scf.mn \ + $(VTIO_80COL) \ + $(MD)/scbbp.dr $(MD)/p_scbbp.dd \ + $(MD)/scbbt.dr $(MD)/t1_scbbt.dd \ + $(PIPE) \ + $(CLOCK60HZ) \ + $(MD)/sysgo_dd + +BOOTFILES = bootfile_covdg bootfile_cohr bootfile_covdg_dw3 \ + bootfile_headless_dw3 \ + bootfile_cohr_dw3 bootfile_covdg_ds80 bootfile_cohr_ds80 +KERNELS = kernel_1773 kernel_dw3 + +ALLOBJS = $(BOOTFILES) $(KERNELS) + +all: $(ALLOBJS) + +bootfile_covdg: $(BOOTFILE_COVDG) $(DEPENDS) + $(MERGE) $(BOOTFILE_COVDG)>$@ + +bootfile_cohr: $(BOOTFILE_COHR) $(DEPENDS) + $(MERGE) $(BOOTFILE_COHR)>$@ + +bootfile_co80: $(BOOTFILE_CO80) $(DEPENDS) + $(MERGE) $(BOOTFILE_CO80)>$@ + +bootfile_covdg_ds80: $(BOOTFILE_COVDG_DS80) $(DEPENDS) + $(MERGE) $(BOOTFILE_COVDG_DS80)>$@ + +bootfile_headless_dw3: $(BOOTFILE_HEADLESS_DW3) $(DEPENDS) + $(MERGE) $(BOOTFILE_HEADLESS_DW3)>$@ + +bootfile_covdg_dw3: $(BOOTFILE_COVDG_DW3) $(DEPENDS) + $(MERGE) $(BOOTFILE_COVDG_DW3)>$@ + +bootfile_cohr_ds80: $(BOOTFILE_COHR_DS80) $(DEPENDS) + $(MERGE) $(BOOTFILE_COHR_DS80)>$@ + +bootfile_cohr_dw3: $(BOOTFILE_COHR_DW3) $(DEPENDS) + $(MERGE) $(BOOTFILE_COHR_DW3)>$@ + +# WD1773 Kernel +kernel_1773: $(KERNEL_1773) $(DEPENDS) + $(MERGE) $(KERNEL_1773)>$@ + $(PADROM) 4608 $@ + +# DriveWire 3 Kernel +kernel_dw3: $(KERNEL_DW3) $(DEPENDS) + $(MERGE) $(KERNEL_DW3)>$@ + $(PADROM) 4608 $@ + +clean: + $(RM) $(ALLOBJS) +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level1/coco2/bootlists/dw3.bl Thu Jul 19 10:09:15 2012 -0500 @@ -0,0 +1,200 @@ +*************************************** +* NitrOS-9 Level 1 CoCo Bootlist +* +* $Id$ +* +* This bootlist is presented as an example for creating custom bootfiles. +* A module may be excluded from the bootfile if an asterisk (*) is the +* first character of the line. +* +*************************************** +* Kernel/System Section +* +* These modules are mandatory. +../MODULES/SYSMODS/ioman +* +*************************************** +* CDF Section (HawkSoft) +* +*../MODULES/CDF/cdf.mn +* +* CDF descriptors - select as needed +* SCSI descriptors (IDs 0-6) +*../MODULES/CDF/sc0.dd +*../MODULES/CDF/sc1.dd +*../MODULES/CDF/sc2.dd +*../MODULES/CDF/sc3.dd +*../MODULES/CDF/sc4.dd +*../MODULES/CDF/sc5.dd +*../MODULES/CDF/sc6.dd +* IDE descriptors (master/slave) +*../MODULES/CDF/ic0.dd +*../MODULES/CDF/ic1.dd +* +*************************************** +* RBF Section +* +../MODULES/RBF/rbf.mn +* +* DriveWire 3 RBF driver +../MODULES/RBF/rbdw3.dr +../MODULES/RBF/dw3.sb +* DriveWire descriptors - select as needed +../MODULES/RBF/ddx0.dd +*../MODULES/RBF/x0.dd +../MODULES/RBF/x1.dd +../MODULES/RBF/x2.dd +../MODULES/RBF/x3.dd +* +* SuperDriver Package +*../MODULES/RBF/rbsuper.dr +* Select Low level SCSI and/or IDE driver +*../MODULES/RBF/lltc3.dr +*../MODULES/RBF/llide.dr +* SuperDriver descriptors - select as needed +* TC^3 SCSI DD Descriptor (ID 0) +*../MODULES/RBF/dds0_tc3.dd +* TC^3 SCSI descriptors (IDs 0-6) +*../MODULES/RBF/s0_tc3.dd +*../MODULES/RBF/s1_tc3.dd +*../MODULES/RBF/s2_tc3.dd +*../MODULES/RBF/s3_tc3.dd +*../MODULES/RBF/s4_tc3.dd +*../MODULES/RBF/s5_tc3.dd +*../MODULES/RBF/s6_tc3.dd +* TC^3 SCSI HDB-DOS descriptor +*../MODULES/RBF/sh_tc3.dd +* IDE DD descriptor (Master) +*../MODULES/RBF/ddi0_ide.dd +* IDE descriptors (master/slave) +*../MODULES/RBF/i0_ide.dd +*../MODULES/RBF/i1_ide.dd +* IDE HDB-DOS descriptor +*../MODULES/RBF/ih_ide.dd +* +* WD1773 floppy support for Tandy and compatible disk controllers +../MODULES/RBF/rb1773.dr +* WD1773 floppy support for Disto Super Controller II +*../MODULES/RBF/rb1773_scii_ff74.dr +*../MODULES/RBF/rb1773_scii_ff58.dr +* Floppy device descriptors +* DD - default device - choose one if needed +*../MODULES/RBF/ddd0_35s.dd +*../MODULES/RBF/ddd0_40d.dd +*../MODULES/RBF/ddd0_80d.dd +* D0 - drive 0 - choose one if needed +*../MODULES/RBF/d0_35s.dd +../MODULES/RBF/d0_40d.dd +*../MODULES/RBF/d0_80d.dd +* D1 - drive 1 - choose one if needed +*../MODULES/RBF/d1_35s.dd +../MODULES/RBF/d1_40d.dd +*../MODULES/RBF/d1_80d.dd +* D2 - drive 2 - choose one if needed +*../MODULES/RBF/d2_35s.dd +../MODULES/RBF/d2_40d.dd +*../MODULES/RBF/d2_80d.dd +* D3 - drive 3 - choose if needed +*../MODULES/RBF/d3_35s.dd +*************************************** +* SCF Section +* +../MODULES/SCF/scf.mn +* +* Video Terminal I/O driver and subroutine modules +../MODULES/SCF/vtio.dr +* Choose from CoVDG (32x16 VDG), CoHR (Hi-Res 51x24 graphics screen), or Co80 (WordPak) +../MODULES/SCF/covdg.io +*../MODULES/SCF/cohr.io +*../MODULES/SCF/co80.io +* +* Select only one term descriptor +../MODULES/SCF/term_vdg.dt +*../MODULES/SCF/term_hr.dt +*../MODULES/SCF/term_51.dt +*../MODULES/SCF/term_scbbt.dt +*../MODULES/SCF/term_sc6551.dt +* +* Serial port drivers +* CoCo Bit-Banger terminal port +*../MODULES/SCF/scbbt.dr +*../MODULES/SCF/t1_scbbt.dd +* 6551 ACIA +*../MODULES/SCF/sc6551.dr +*../MODULES/SCF/t2_sc6551.dd +*../MODULES/SCF/t3_sc6551.dd +* +* Printer drivers +* ../MODULES/SCF/scbbp.dr +* ../MODULES/SCF/p_scbbp.dd +* +* DriveWire 3 Printer drivers +* ../MODULES/SCF/scdwp.dr +* ../MODULES/SCF/p_scdwp.dd +* +* DriveWire Virtual Channel Driver +*../MODULES/SCF/scdwv.dr +*../MODULES/SCF/term_scdwv.dt +*../MODULES/SCF/n_scdwv.dd +*../MODULES/SCF/n1_scdwv.dd +*../MODULES/SCF/n2_scdwv.dd +*../MODULES/SCF/n3_scdwv.dd +*../MODULES/SCF/n4_scdwv.dd +*../MODULES/SCF/n5_scdwv.dd +*../MODULES/SCF/n6_scdwv.dd +*../MODULES/SCF/n7_scdwv.dd +*../MODULES/SCF/n8_scdwv.dd +*../MODULES/SCF/n9_scdwv.dd +*../MODULES/SCF/n10_scdwv.dd +*../MODULES/SCF/n11_scdwv.dd +*../MODULES/SCF/n12_scdwv.dd +*../MODULES/SCF/n13_scdwv.dd +*../MODULES/SCF/n14_scdwv.dd +*../MODULES/SCF/term_z_scdwv.dt +*../MODULES/SCF/z1_scdwv.dd +*../MODULES/SCF/z2_scdwv.dd +*../MODULES/SCF/z3_scdwv.dd +*../MODULES/SCF/z4_scdwv.dd +*../MODULES/SCF/z5_scdwv.dd +*../MODULES/SCF/z6_scdwv.dd +*../MODULES/SCF/z7_scdwv.dd +* +*************************************** +* Pipe Section +* +* Pipes are a useful but optional part of a system. +../MODULES/PIPE/pipeman.mn +../MODULES/PIPE/piper.dr +../MODULES/PIPE/pipe.dd +* +*************************************** +* Clock Section +* +* Select one clock module depending upon your power line frequency +* (60Hz = USA/Canada; 50Hz = Europe, Australia) +../MODULES/CLOCKS/clock_60hz +*../MODULES/CLOCKS/clock_50hz +* 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, Cloud-9, the MESS emulator, Jeff +* Vavasour's CoCo emulator, and DriveWire. +*../MODULES/CLOCKS/clock2_soft +*../MODULES/CLOCKS/clock2_bnb +*../MODULES/CLOCKS/clock2_disto2 +*../MODULES/CLOCKS/clock2_disto4 +*../MODULES/CLOCKS/clock2_elim +*../MODULES/CLOCKS/clock2_harris +*../MODULES/CLOCKS/clock2_smart +*../MODULES/CLOCKS/clock2_jvemu +*../MODULES/CLOCKS/clock2_messemu +*../MODULES/CLOCKS/clock2_cloud9 +../MODULES/CLOCKS/clock2_dw3 +* +*************************************** +* System Kick-Start Module +* +* Choose which startup module you wish to use. (sysgo_dd is recommended +* for most configurations.) +../MODULES/SYSMODS/sysgo_dd +*../MODULES/SYSMODS/sysgo_h0
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level1/coco2/bootlists/standard.bl Thu Jul 19 10:09:15 2012 -0500 @@ -0,0 +1,200 @@ +*************************************** +* NitrOS-9 Level 1 CoCo Bootlist +* +* $Id$ +* +* This bootlist is presented as an example for creating custom bootfiles. +* A module may be excluded from the bootfile if an asterisk (*) is the +* first character of the line. +* +*************************************** +* Kernel/System Section +* +* These modules are mandatory. +../MODULES/SYSMODS/ioman +* +*************************************** +* CDF Section (HawkSoft) +* +*../MODULES/CDF/cdf.mn +* +* CDF descriptors - select as needed +* SCSI descriptors (IDs 0-6) +*../MODULES/CDF/sc0.dd +*../MODULES/CDF/sc1.dd +*../MODULES/CDF/sc2.dd +*../MODULES/CDF/sc3.dd +*../MODULES/CDF/sc4.dd +*../MODULES/CDF/sc5.dd +*../MODULES/CDF/sc6.dd +* IDE descriptors (master/slave) +*../MODULES/CDF/ic0.dd +*../MODULES/CDF/ic1.dd +* +*************************************** +* RBF Section +* +../MODULES/RBF/rbf.mn +* +* DriveWire 3 RBF driver +*../MODULES/RBF/rbdw3.dr +*../MODULES/RBF/dw3.sb +* DriveWire descriptors - select as needed +*../MODULES/RBF/ddx0.dd +*../MODULES/RBF/x0.dd +*../MODULES/RBF/x1.dd +*../MODULES/RBF/x2.dd +*../MODULES/RBF/x3.dd +* +* SuperDriver Package +*../MODULES/RBF/rbsuper.dr +* Select Low level SCSI and/or IDE driver +*../MODULES/RBF/lltc3.dr +*../MODULES/RBF/llide.dr +* SuperDriver descriptors - select as needed +* TC^3 SCSI DD Descriptor (ID 0) +*../MODULES/RBF/dds0_tc3.dd +* TC^3 SCSI descriptors (IDs 0-6) +*../MODULES/RBF/s0_tc3.dd +*../MODULES/RBF/s1_tc3.dd +*../MODULES/RBF/s2_tc3.dd +*../MODULES/RBF/s3_tc3.dd +*../MODULES/RBF/s4_tc3.dd +*../MODULES/RBF/s5_tc3.dd +*../MODULES/RBF/s6_tc3.dd +* TC^3 SCSI HDB-DOS descriptor +*../MODULES/RBF/sh_tc3.dd +* IDE DD descriptor (Master) +*../MODULES/RBF/ddi0_ide.dd +* IDE descriptors (master/slave) +*../MODULES/RBF/i0_ide.dd +*../MODULES/RBF/i1_ide.dd +* IDE HDB-DOS descriptor +*../MODULES/RBF/ih_ide.dd +* +* WD1773 floppy support for Tandy and compatible disk controllers +../MODULES/RBF/rb1773.dr +* WD1773 floppy support for Disto Super Controller II +*../MODULES/RBF/rb1773_scii_ff74.dr +*../MODULES/RBF/rb1773_scii_ff58.dr +* Floppy device descriptors +* DD - default device - choose one if needed +*../MODULES/RBF/ddd0_35s.dd +../MODULES/RBF/ddd0_40d.dd +*../MODULES/RBF/ddd0_80d.dd +* D0 - drive 0 - choose one if needed +*../MODULES/RBF/d0_35s.dd +../MODULES/RBF/d0_40d.dd +*../MODULES/RBF/d0_80d.dd +* D1 - drive 1 - choose one if needed +*../MODULES/RBF/d1_35s.dd +../MODULES/RBF/d1_40d.dd +*../MODULES/RBF/d1_80d.dd +* D2 - drive 2 - choose one if needed +*../MODULES/RBF/d2_35s.dd +../MODULES/RBF/d2_40d.dd +*../MODULES/RBF/d2_80d.dd +* D3 - drive 3 - choose if needed +*../MODULES/RBF/d3_35s.dd +*************************************** +* SCF Section +* +../MODULES/SCF/scf.mn +* +* Video Terminal I/O driver and subroutine modules +../MODULES/SCF/vtio.dr +* Choose from CoVDG (32x16 VDG), CoHR (Hi-Res 51x24 graphics screen), or Co80 (WordPak) +../MODULES/SCF/covdg.io +*../MODULES/SCF/cohr.io +*../MODULES/SCF/co80.io +* +* Select only one term descriptor +../MODULES/SCF/term_vdg.dt +*../MODULES/SCF/term_hr.dt +*../MODULES/SCF/term_80.dt +*../MODULES/SCF/term_scbbt.dt +*../MODULES/SCF/term_sc6551.dt +* +* Serial port drivers +* CoCo Bit-Banger terminal port +*../MODULES/SCF/scbbt.dr +*../MODULES/SCF/t1_scbbt.dd +* 6551 ACIA +*../MODULES/SCF/sc6551.dr +*../MODULES/SCF/t2_sc6551.dd +*../MODULES/SCF/t3_sc6551.dd +* +* Printer drivers +* ../MODULES/SCF/scbbp.dr +* ../MODULES/SCF/p_scbbp.dd +* +* DriveWire 3 Printer drivers +* ../MODULES/SCF/scdwp.dr +* ../MODULES/SCF/p_scdwp.dd +* +* DriveWire Virtual Channel Driver +*../MODULES/SCF/scdwv.dr +*../MODULES/SCF/term_scdwv.dt +*../MODULES/SCF/n_scdwv.dd +*../MODULES/SCF/n1_scdwv.dd +*../MODULES/SCF/n2_scdwv.dd +*../MODULES/SCF/n3_scdwv.dd +*../MODULES/SCF/n4_scdwv.dd +*../MODULES/SCF/n5_scdwv.dd +*../MODULES/SCF/n6_scdwv.dd +*../MODULES/SCF/n7_scdwv.dd +*../MODULES/SCF/n8_scdwv.dd +*../MODULES/SCF/n9_scdwv.dd +*../MODULES/SCF/n10_scdwv.dd +*../MODULES/SCF/n11_scdwv.dd +*../MODULES/SCF/n12_scdwv.dd +*../MODULES/SCF/n13_scdwv.dd +*../MODULES/SCF/n14_scdwv.dd +*../MODULES/SCF/term_z_scdwv.dt +*../MODULES/SCF/z1_scdwv.dd +*../MODULES/SCF/z2_scdwv.dd +*../MODULES/SCF/z3_scdwv.dd +*../MODULES/SCF/z4_scdwv.dd +*../MODULES/SCF/z5_scdwv.dd +*../MODULES/SCF/z6_scdwv.dd +*../MODULES/SCF/z7_scdwv.dd +* +*************************************** +* Pipe Section +* +* Pipes are a useful but optional part of a system. +../MODULES/PIPE/pipeman.mn +../MODULES/PIPE/piper.dr +../MODULES/PIPE/pipe.dd +* +*************************************** +* Clock Section +* +* Select one clock module depending upon your power line frequency +* (60Hz = USA/Canada; 50Hz = Europe, Australia) +../MODULES/CLOCKS/clock_60hz +*../MODULES/CLOCKS/clock_50hz +* 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, Cloud-9, the MESS emulator, Jeff +* Vavasour's CoCo emulator, and DriveWire. +../MODULES/CLOCKS/clock2_soft +*../MODULES/CLOCKS/clock2_bnb +*../MODULES/CLOCKS/clock2_disto2 +*../MODULES/CLOCKS/clock2_disto4 +*../MODULES/CLOCKS/clock2_elim +*../MODULES/CLOCKS/clock2_harris +*../MODULES/CLOCKS/clock2_smart +*../MODULES/CLOCKS/clock2_jvemu +*../MODULES/CLOCKS/clock2_messemu +*../MODULES/CLOCKS/clock2_cloud9 +*../MODULES/CLOCKS/clock2_dw3 +* +*************************************** +* System Kick-Start Module +* +* Choose which startup module you wish to use. (sysgo_dd is recommended +* for most configurations.) +../MODULES/SYSMODS/sysgo_dd +*../MODULES/SYSMODS/sysgo_h0
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level1/coco2/bootroms/makefile Thu Jul 19 10:09:15 2012 -0500 @@ -0,0 +1,42 @@ +include $(NITROS9DIR)/rules.mak + +# Module directory +MD = ../modules +# Commands directory +CD = ../cmds + +DEPENDS = ./makefile + +KERNEL_ROM = $(MD)/rel $(MD)/krn $(MD)/krnp2 $(MD)/init $(MD)/boot_rom + +BOOTFILE_ROM = $(MD)/rominfo $(MD)/ioman \ + $(MD)/scf.mn $(MD)/vtio.dr \ + $(MD)/covdg.io \ + $(MD)/term_vdg.dt \ + $(MD)/clock_60hz $(MD)/clock2_soft + +BOOTROMS = nos96809l1.rom +KERNELS = kernel_rom + +ALLROMS = $(BOOTROMS) + +all: $(ALLROMS) + +# Bootfiles +nos96809l1.rom: $(BOOTFILE_ROM) $(KERNEL_ROM) $(DEPENDS) + $(MERGE) $(BOOTFILE_ROM)>$@.tmp + $(PADROM) 11776 $@.tmp + $(MERGE) $(KERNEL_ROM)>kernel_rom + $(PADROM) 4592 kernel_rom + $(MERGE) $@.tmp kernel_rom>$@.tmp2 + $(MERGE) $@.tmp2 $(MD)/vectors>$@ + $(RM) $@.tmp $@.tmp2 + + +# Kernels +kernel_rom: $(KERNEL_ROM) $(DEPENDS) + $(MERGE) $(KERNEL_ROM)>$@ + +clean: + $(RM) $(ALLROMS) $(KERNELS) +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level1/coco2/cmds/defsfile Thu Jul 19 10:09:15 2012 -0500 @@ -0,0 +1,1 @@ + use ../defsfile
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level1/coco2/cmds/makefile Thu Jul 19 10:09:15 2012 -0500 @@ -0,0 +1,59 @@ +PORT = coco2 +include $(NITROS9DIR)/rules.mak + +vpath %.a $(LEVEL1)/cmds +vpath %.asm $(LEVEL1)/cmds:$(NITROS9DIR)/3rdparty/packages/basic09 + +DEPENDS = ./makefile + +AFLAGS += --includedir=$(NITROS9DIR)/3rdparty/packages/basic09 +LFLAGS += -l=$(NITROS9DIR)/lib/net.l -l=$(NITROS9DIR)/lib/alib.l -l=$(NITROS9DIR)/lib/sys6809l1.l + +BASIC09FILES = basic09.asm runb.asm gfx.asm inkey.asm syscall.asm +CMDS = asm attr backup binex build calldbg cmp cobbler copy cputype \ + date dcheck debug ded deiniz del deldir devs dir dirsort disasm \ + display dmode dsave dump echo edit error exbin format \ + free grfdrv help ident iniz irqs link list load login makdir \ + megaread mdir merge mfree mpi os9gen padrom park printerr procs prompt pwd pxd \ + rename save setime shellplus shell_21 sleep \ + tee tmode touch tsmon tuneport unlink verify xmode + +CMDS_D2 = basic09 runb gfx inkey syscall copy del echo format \ + merge os9gen prompt tmode + +CMDS_DW = inetd telnet dw + +SUBS = gfx inkey syscall +ALLOBJS = $(CMDS) $(CMDS_D2) $(CMDS_DW) $(SUBS) + +all: $(ALLOBJS) + +pwd: pd.asm + $(AS) $(AFLAGS) $< $(ASOUT)$@ -DPWD=1 + +xmode: xmode.asm + $(AS) $(AFLAGS) $< $(ASOUT)$@ -DXMODE=1 + +tmode: xmode.asm + $(AS) $(AFLAGS) $< $(ASOUT)$@ -DTMODE=1 + +pxd: pd.asm + $(AS) $(AFLAGS) $< $(ASOUT)$@ -DPXD=1 + +clean: + $(RM) $(ALLOBJS) + +identify: + $(IDENT_SHORT) $(ALLOBJS) + +showobjs: + @$(ECHO) $(CMDS) + +showobjs_d2: + @$(ECHO) $(CMDS_D2) + +showobjs_dw: + @$(ECHO) $(CMDS) $(CMDS_DW) + +showallobjs: + @$(ECHO) $(ALLOBJS)
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level1/coco2/defs/defsfile.asm Thu Jul 19 10:09:15 2012 -0500 @@ -0,0 +1,8 @@ +Level equ 1 + + ifp1 + use /dd/defs/os9.d + use /dd/defs/rbf.d + use /dd/defs/scf.d + use /dd/defs/coco.d + endc
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level1/coco2/defs/makefile Thu Jul 19 10:09:15 2012 -0500 @@ -0,0 +1,35 @@ +PORT = coco2 +include $(NITROS9DIR)/rules.mak + +DEPENDS = ./makefile + +DEFOPTS = --preprocess -DLevel=1 +DEFSDIR = ../../../defs +DEFS = defsfile os9.d rbf.d scf.d coco.d cocovtio.d +ALLOBJS = $(DEFS) + +all: $(ALLOBJS) + +defsfile: defsfile.asm + $(AS) $(DEFOPTS) $< > $@ + +os9.d: $(DEFSDIR)/os9.d + $(AS) $(DEFOPTS) -DOS9.D=0 $< > $@ + +rbf.d: $(DEFSDIR)/rbf.d + $(AS) $(DEFOPTS) -DRBF.D=0 $< > $@ + +scf.d: $(DEFSDIR)/scf.d + $(AS) $(DEFOPTS) -DSCF.D=0 $< > $@ + +coco.d: $(DEFSDIR)/coco.d + $(AS) $(DEFOPTS) -DCOCO.D=0 $< > $@ + +cocovtio.d: $(DEFSDIR)/cocovtio.d + $(AS) $(DEFOPTS) -DCOCOVTIO.D=0 $< > $@ + +clean: + $(RM) $(DEFS) + +showobjs: + @$(ECHO) $(ALLOBJS)
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level1/coco2/defsfile Thu Jul 19 10:09:15 2012 -0500 @@ -0,0 +1,6 @@ +Level equ 1 + + use os9.d + use scf.d + use rbf.d + use coco.d
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level1/coco2/makefile Thu Jul 19 10:09:15 2012 -0500 @@ -0,0 +1,253 @@ +PORT = coco2 +include $(NITROS9DIR)/rules.mak + +CPU = 6809 +LEVEL = 1 + +# Level 1 - Specify which shell should be used +#WHICHSHELL = shellplus +WHICHSHELL = shell_21 + +DISTRO = $(CPU)L$(LEVEL) +DISTRONAME = nos9$(CPU)l$(LEVEL) +DISTROVER = $(DISTRONAME)$(NITROS9VER)$(PORT) +BOOTFILE_COVDG = bootfiles/bootfile_covdg +BOOTFILE_COHR = bootfiles/bootfile_cohr +BOOTFILE_COVDG_DS80 = bootfiles/bootfile_covdg_ds80 +BOOTFILE_HEADLESS_DW3 = bootfiles/bootfile_headless_dw3 +BOOTFILE_COVDG_DW3 = bootfiles/bootfile_covdg_dw3 +BOOTFILE_COHR_DS80 = bootfiles/bootfile_cohr_ds80 +BOOTFILE_COHR_DW3 = bootfiles/bootfile_cohr_dw3 +KERNELFILE = bootfiles/kernel_1773 +KERNELFILE_DW3 = bootfiles/kernel_dw3 +DIRS = cmds modules defs sys bootfiles bootroms + + +CMDS = $(shell $(CD) cmds; make --no-print-directory showobjs) +CMDS_D2 = $(shell $(CD) cmds; make --no-print-directory showobjs_d2) +CMDS_DW = $(shell $(CD) cmds; make --no-print-directory showobjs_dw) +BOOTTRACK = $(shell $(CD) modules; make --no-print-directory showboottrack) +KERNEL = $(shell $(CD) modules; make --no-print-directory showkernel) +SYSMODS = $(shell $(CD) modules; make --no-print-directory showsysmods) +CLOCKS = $(shell $(CD) modules; make --no-print-directory showclocks) +RBF = $(shell $(CD) modules; make --no-print-directory showrbf) +SCF = $(shell $(CD) modules; make --no-print-directory showscf) +PIPE = $(shell $(CD) modules; make --no-print-directory showpipe) +MODULECMDS = $(WHICHSHELL) del echo format makdir merge os9gen prompt tmode + +SYS = $(shell $(CD) sys; make --no-print-directory showobjs) +DEFS = $(shell $(CD) defs; make --no-print-directory showobjs) +STARTUP = startup +STARTUP_DW = startup.dw + +PACKAGENAME = $(DISTROVER).zip +DSKDW3 = $(DISTROVER)_dw3.dsk +LDSKDW3 = $(DISTRONAME)$(PORT).dsk +DSK360K_1 = $(DISTROVER)_40d_1.dsk +LDSK360K_1 = $(DISTRONAME)_40d_1.dsk +DSK360K_2 = $(DISTROVER)_40d_2.dsk +LDSK360K_2 = $(DISTRONAME)_40d_2.dsk +DSK720K = $(DISTROVER)_80d.dsk +LDSK720K = $(DISTRONAME)_80d.dsk + + +DSKS = $(DSKDW3) $(DSK360K_1) $(DSK360K_2) $(DSK720K) +LDSKS = $(LDSKDW3) $(LDSK360K_1) $(LDSK360K_2) $(LDSK720K) + +# Make all components +all: + @$(ECHO) "**************************************************" + @$(ECHO) "* *" + @$(ECHO) "* NitrOS-9/$(CPU) Level 1 CoCo Port *" + @$(ECHO) "* *" + @$(ECHO) "**************************************************" + $(foreach dir, $(DIRS), ($(CD) $(dir); make);) + +# Clean all components +clean: dskclean + $(foreach dir, $(DIRS), ($(CD) $(dir); make clean);) + +dskclean: + -$(RM) $(PACKAGENAME) $(DSKS) $(LDSKS) + +dsk: all $(PACKAGENAME) + +dskcopy: dsk + $(CP) $(DSKS) $(DSKDIR) + +scp: dsk + scp $(PACKAGENAME) boisy@cvs.nitros9.org:/home/nitros9/public_html + +$(PACKAGENAME): $(DSKS) ../../ReadMe ../../ChangeLog + $(ARCHIVE) $@ $^ + +$(DSKDW3): + $(RM) $@ + $(OS9FORMAT_DW3) -q $@ -n"NitrOS-9/6809 Level 1" + $(OS9GEN) $@ -b=$(BOOTFILE_COVDG_DW3) -t=$(KERNELFILE_DW3) + $(MAKDIR) $@,CMDS + $(MAKDIR) $@,SYS + $(MAKDIR) $@,DEFS + $(CD) cmds; $(CP) $(CMDS_DW) ../$@,CMDS + $(foreach file, $(CMDS_DW), $(OS9ATTR_EXEC) $@,CMDS/$(file);) + $(CD) cmds; $(CP) $(CMDS_D2) ../$@,CMDS + $(foreach file, $(CMDS_D2), $(OS9ATTR_EXEC) $@,CMDS/$(file);) + $(OS9RENAME) $@,CMDS/$(WHICHSHELL) shell + $(CD) sys; $(CPL) $(SYS) ../$@,SYS + $(foreach file, $(SYS), $(OS9ATTR_TEXT) $@,SYS/$(file);) + $(CD) defs; $(CPL) $(DEFS) ../$@,DEFS + $(foreach file, $(DEFS), $(OS9ATTR_TEXT) $@,DEFS/$(file);) + $(CPL) $(STARTUP_DW) $@,startup + $(OS9ATTR_TEXT) $@,startup + $(MAKDIR) $@,NITROS9 + $(MAKDIR) $@,NITROS9/6809L1 + $(MAKDIR) $@,NITROS9/6809L1/CMDS + $(CD) cmds; $(CP) $(MODULECMDS) ../$@,NITROS9/6809L1/CMDS + $(foreach file, $(MODULECMDS), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/CMDS/$(file);) + $(OS9RENAME) $@,NITROS9/6809L1/CMDS/$(WHICHSHELL) shell + $(MAKDIR) $@,NITROS9/6809L1/MODULES + $(MAKDIR) $@,NITROS9/6809L1/MODULES/BOOTTRACK + $(CD) modules; $(CP) $(BOOTTRACK) ../$@,NITROS9/6809L1/MODULES/BOOTTRACK + $(foreach file, $(BOOTTRACK), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/BOOTTRACK/$(file);) + $(MAKDIR) $@,NITROS9/6809L1/MODULES/KERNEL + $(CD) modules; $(CP) $(KERNEL) ../$@,NITROS9/6809L1/MODULES/KERNEL + $(foreach file, $(KERNEL), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/KERNEL/$(file);) + $(MAKDIR) $@,NITROS9/6809L1/MODULES/SYSMODS + $(CD) modules; $(CP) $(SYSMODS) ../$@,NITROS9/6809L1/MODULES/SYSMODS + $(foreach file, $(SYSMODS), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/SYSMODS/$(file);) + $(MAKDIR) $@,NITROS9/6809L1/MODULES/CLOCKS + $(CD) modules; $(CP) $(CLOCKS) ../$@,NITROS9/6809L1/MODULES/CLOCKS + $(foreach file, $(CLOCKS), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/CLOCKS/$(file);) + $(MAKDIR) $@,NITROS9/6809L1/MODULES/RBF + $(CD) modules; $(CP) $(RBF) ../$@,NITROS9/6809L1/MODULES/RBF + $(foreach file, $(RBF), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/RBF/$(file);) + $(MAKDIR) $@,NITROS9/6809L1/MODULES/SCF + $(CD) modules; $(CP) $(SCF) ../$@,NITROS9/6809L1/MODULES/SCF + $(foreach file, $(SCF), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/SCF/$(file);) + $(MAKDIR) $@,NITROS9/6809L1/MODULES/PIPE + $(CD) modules; $(CP) $(PIPE) ../$@,NITROS9/6809L1/MODULES/PIPE + $(foreach file, $(PIPE), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/PIPE/$(file);) + $(MAKDIR) $@,NITROS9/6809L1/BOOTLISTS + $(CD) bootlists; $(CPL) *.bl ../$@,NITROS9/6809L1/BOOTLISTS + $(MAKDIR) $@,NITROS9/6809L1/SCRIPTS + $(CD) scripts; $(CPL) mb* ../$@,NITROS9/6809L1/SCRIPTS + $(RM) $(LDSKDW3) + $(SOFTLINK) $@ $(LDSKDW3) + +$(DSK360K_1): + $(RM) $@ + $(OS9FORMAT_DS40) -q $@ -n"NitrOS-9/6809 Level 1 Disk 1" + $(OS9GEN) $@ -b=$(BOOTFILE_COVDG) -t=$(KERNELFILE) + $(MAKDIR) $@,CMDS + $(MAKDIR) $@,SYS + $(CD) cmds; $(CP) $(CMDS) ../$@,CMDS + $(foreach file, $(CMDS), $(OS9ATTR_EXEC) $@,CMDS/$(file);) + $(OS9RENAME) $@,CMDS/$(WHICHSHELL) shell + $(CD) sys; $(CPL) $(SYS) ../$@,SYS + $(foreach file, $(SYS), $(OS9ATTR_TEXT) $@,SYS/$(file);) + $(MAKDIR) $@,DEFS + $(CD) defs; $(CPL) $(DEFS) ../$@,DEFS + $(foreach file, $(DEFS), $(OS9ATTR_TEXT) $@,DEFS/$(file);) + $(CPL) $(STARTUP) $@,startup + $(OS9ATTR_TEXT) $@,startup + $(RM) $(LDSK360K_1) + $(SOFTLINK) $@ $(LDSK360K_1) + +$(DSK360K_2): + $(RM) $@ + $(OS9FORMAT_DS40) -q $@ -n"NitrOS-9/6809 Level 1 Disk 2" + $(MAKDIR) $@,CMDS + $(CD) cmds; $(CP) $(CMDS_D2) ../$@,CMDS + $(foreach file, $(CMDS_D2), $(OS9ATTR_EXEC) $@,CMDS/$(file);) + $(MAKDIR) $@,NITROS9 + $(MAKDIR) $@,NITROS9/6809L1 + $(MAKDIR) $@,NITROS9/6809L1/CMDS + $(CD) cmds; $(CP) $(MODULECMDS) ../$@,NITROS9/6809L1/CMDS + $(foreach file, $(MODULECMDS), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/CMDS/$(file);) + $(OS9RENAME) $@,NITROS9/6809L1/CMDS//$(WHICHSHELL) shell + $(MAKDIR) $@,NITROS9/6809L1/MODULES + $(MAKDIR) $@,NITROS9/6809L1/MODULES/BOOTTRACK + $(CD) modules; $(CP) $(BOOTTRACK) ../$@,NITROS9/6809L1/MODULES/BOOTTRACK + $(foreach file, $(BOOTTRACK), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/BOOTTRACK/$(file);) + $(MAKDIR) $@,NITROS9/6809L1/MODULES/KERNEL + $(CD) modules; $(CP) $(KERNEL) ../$@,NITROS9/6809L1/MODULES/KERNEL + $(foreach file, $(KERNEL), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/KERNEL/$(file);) + $(MAKDIR) $@,NITROS9/6809L1/MODULES/SYSMODS + $(CD) modules; $(CP) $(SYSMODS) ../$@,NITROS9/6809L1/MODULES/SYSMODS + $(foreach file, $(SYSMODS), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/SYSMODS/$(file);) + $(MAKDIR) $@,NITROS9/6809L1/MODULES/CLOCKS + $(CD) modules; $(CP) $(CLOCKS) ../$@,NITROS9/6809L1/MODULES/CLOCKS + $(foreach file, $(CLOCKS), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/CLOCKS/$(file);) + $(MAKDIR) $@,NITROS9/6809L1/MODULES/RBF + $(CD) modules; $(CP) $(RBF) ../$@,NITROS9/6809L1/MODULES/RBF + $(foreach file, $(RBF), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/RBF/$(file);) + $(MAKDIR) $@,NITROS9/6809L1/MODULES/SCF + $(CD) modules; $(CP) $(SCF) ../$@,NITROS9/6809L1/MODULES/SCF + $(foreach file, $(SCF), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/SCF/$(file);) + $(MAKDIR) $@,NITROS9/6809L1/MODULES/PIPE + $(CD) modules; $(CP) $(PIPE) ../$@,NITROS9/6809L1/MODULES/PIPE + $(foreach file, $(PIPE), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/PIPE/$(file);) + $(MAKDIR) $@,NITROS9/6809L1/BOOTLISTS + $(CD) bootlists; $(CPL) *.bl ../$@,NITROS9/6809L1/BOOTLISTS + $(MAKDIR) $@,NITROS9/6809L1/SCRIPTS + $(CD) scripts; $(CPL) mb* ../$@,NITROS9/6809L1/SCRIPTS + $(RM) $(LDSK360K_2) + $(SOFTLINK) $@ $(LDSK360K_2) + +$(DSK720K): + $(RM) $@ + $(OS9FORMAT_DS80) -q $@ -n"NitrOS-9/6809 Level 1" + $(OS9GEN) $@ -b=$(BOOTFILE_COVDG_DS80) -t=$(KERNELFILE) + $(MAKDIR) $@,CMDS + $(MAKDIR) $@,SYS + $(MAKDIR) $@,DEFS + $(CD) cmds; $(CP) $(CMDS) ../$@,CMDS + $(foreach file, $(CMDS), $(OS9ATTR_EXEC) $@,CMDS/$(file);) + $(CD) cmds; $(CP) $(CMDS_D2) ../$@,CMDS + $(foreach file, $(CMDS_D2), $(OS9ATTR_EXEC) $@,CMDS/$(file);) + $(OS9RENAME) $@,CMDS/$(WHICHSHELL) shell + $(CD) sys; $(CPL) $(SYS) ../$@,SYS + $(foreach file, $(SYS), $(OS9ATTR_TEXT) $@,SYS/$(file);) + $(CD) defs; $(CPL) $(DEFS) ../$@,DEFS + $(foreach file, $(DEFS), $(OS9ATTR_TEXT) $@,DEFS/$(file);) + $(CPL) $(STARTUP) $@,startup + $(OS9ATTR_TEXT) $@,startup + $(MAKDIR) $@,NITROS9 + $(MAKDIR) $@,NITROS9/6809L1 + $(MAKDIR) $@,NITROS9/6809L1/CMDS + $(CD) cmds; $(CP) $(MODULECMDS) ../$@,NITROS9/6809L1/CMDS + $(foreach file, $(MODULECMDS), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/CMDS/$(file);) + $(OS9RENAME) $@,NITROS9/6809L1/CMDS/$(WHICHSHELL) shell + $(MAKDIR) $@,NITROS9/6809L1/MODULES + $(MAKDIR) $@,NITROS9/6809L1/MODULES/BOOTTRACK + $(CD) modules; $(CP) $(BOOTTRACK) ../$@,NITROS9/6809L1/MODULES/BOOTTRACK + $(foreach file, $(BOOTTRACK), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/BOOTTRACK/$(file);) + $(MAKDIR) $@,NITROS9/6809L1/MODULES/KERNEL + $(CD) modules; $(CP) $(KERNEL) ../$@,NITROS9/6809L1/MODULES/KERNEL + $(foreach file, $(KERNEL), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/KERNEL/$(file);) + $(MAKDIR) $@,NITROS9/6809L1/MODULES/SYSMODS + $(CD) modules; $(CP) $(SYSMODS) ../$@,NITROS9/6809L1/MODULES/SYSMODS + $(foreach file, $(SYSMODS), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/SYSMODS/$(file);) + $(MAKDIR) $@,NITROS9/6809L1/MODULES/CLOCKS + $(CD) modules; $(CP) $(CLOCKS) ../$@,NITROS9/6809L1/MODULES/CLOCKS + $(foreach file, $(CLOCKS), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/CLOCKS/$(file);) + $(MAKDIR) $@,NITROS9/6809L1/MODULES/RBF + $(CD) modules; $(CP) $(RBF) ../$@,NITROS9/6809L1/MODULES/RBF + $(foreach file, $(RBF), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/RBF/$(file);) + $(MAKDIR) $@,NITROS9/6809L1/MODULES/SCF + $(CD) modules; $(CP) $(SCF) ../$@,NITROS9/6809L1/MODULES/SCF + $(foreach file, $(SCF), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/SCF/$(file);) + $(MAKDIR) $@,NITROS9/6809L1/MODULES/PIPE + $(CD) modules; $(CP) $(PIPE) ../$@,NITROS9/6809L1/MODULES/PIPE + $(foreach file, $(PIPE), $(OS9ATTR_EXEC) $@,NITROS9/6809L1/MODULES/PIPE/$(file);) + $(MAKDIR) $@,NITROS9/6809L1/BOOTLISTS + $(CD) bootlists; $(CPL) *.bl ../$@,NITROS9/6809L1/BOOTLISTS + $(MAKDIR) $@,NITROS9/6809L1/SCRIPTS + $(CD) scripts; $(CPL) mb* ../$@,NITROS9/6809L1/SCRIPTS + $(RM) $(LDSK720K) + $(SOFTLINK) $@ $(LDSK720K) + +info: + @echo "*** NitrOS-9/6809 Level 1 for the Tandy Color Computer ***" + @$(foreach dsk, $(DSKS), $(ECHO) $(dsk);) +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level1/coco2/modules/defsfile Thu Jul 19 10:09:15 2012 -0500 @@ -0,0 +1,1 @@ + use ../defsfile
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level1/coco2/modules/kernel/defsfile Thu Jul 19 10:09:15 2012 -0500 @@ -0,0 +1,1 @@ + use ../../defsfile
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level1/coco2/modules/kernel/makefile Thu Jul 19 10:09:15 2012 -0500 @@ -0,0 +1,32 @@ +PORT = coco +include $(NITROS9DIR)/rules.mak + +vpath %.asm $(LEVEL1)/modules/kernel + +DEPENDS = ./makefile + +KERNEL = krn +KERNELP2 = krnp2 +SYSCALLS = fcmpnam.asm fprsnam.asm + +AFLAGS += -I$(LEVEL1)/modules/kernel + +ALLOBJS = $(KERNEL) $(KERNELP2) + +all: $(ALLOBJS) + +$(KERNEL): krn.asm $(SYSCALLS) + +$(KERNELP2): krnp2.asm $(SYSCALLS) + +clean: + $(RM) $(ALLOBJS) + +showobjs: + @$(ECHO) $(ALLOBJS) + +showcopyobjs: + @$(ECHO) $(COPYOBJS) + +identify: + $(IDENT_SHORT) $(ALLOBJS)
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level1/coco2/modules/makefile Thu Jul 19 10:09:15 2012 -0500 @@ -0,0 +1,352 @@ +PORT = coco2 +include $(NITROS9DIR)/rules.mak + +vpath %.asm $(LEVEL1)/modules + +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) + +DEPENDS = ./makefile +TPB = $(3RDPARTY)/booters + +BOOTERS = boot_1773_6ms boot_1773_30ms \ + boot_burke boot_rampak boot_wd1002 boot_dw3 \ + boot_tc3 boot_ide boot_rom +BOOTTRACK = rel $(BOOTERS) +KERNEL = krn krnp2 wbug +SYSMODS = ioman init sysgo_dd sysgo_h0 rominfo vectors +CLOCKS = clock_60hz clock_50hz \ + clock2_elim clock2_disto2 clock2_disto4 clock2_bnb \ + clock2_smart clock2_harris clock2_cloud9 clock2_soft \ + clock2_messemu clock2_jvemu clock2_dw3 + +RBF = rbf.mn \ + rbdw3.dr dw3.sb \ + rb1773.dr rb1773_scii_ff74.dr rb1773_scii_ff58.dr \ + ddd0_35s.dd d0_35s.dd d1_35s.dd d2_35s.dd d3_35s.dd \ + ddd0_40d.dd d0_40d.dd d1_40d.dd d2_40d.dd \ + ddd0_80d.dd d0_80d.dd d1_80d.dd d2_80d.dd \ + ddx0.dd x0.dd x1.dd x2.dd x3.dd \ + rbsuper.dr lltc3.dr llide.dr \ + ddi0_ide.dd i0_ide.dd i1_ide.dd ih_ide.dd \ + dds0_tc3.dd s0_tc3.dd s1_tc3.dd s2_tc3.dd s3_tc3.dd s4_tc3.dd \ + s5_tc3.dd s6_tc3.dd sh_tc3.dd + +SCF = scf.mn \ + sc6551.dr vrn.dr scbbp.dr scbbt.dr scdwp.dr sspak.dr vtio.dr \ + covdg.io cohr.io co80.io \ + 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 \ + term_vdg.dt term_51.dt term_80.dt \ + scdwv.dr term_scdwv.dt n_scdwv.dd n1_scdwv.dd n2_scdwv.dd \ + n3_scdwv.dd n4_scdwv.dd n5_scdwv.dd n6_scdwv.dd n7_scdwv.dd \ + n8_scdwv.dd n9_scdwv.dd n10_scdwv.dd n11_scdwv.dd n12_scdwv.dd \ + n13_scdwv.dd midi_scdwv.dd \ + term_z_scdwv.dt \ + z1_scdwv.dd z2_scdwv.dd z3_scdwv.dd z4_scdwv.dd z5_scdwv.dd \ + z6_scdwv.dd z7_scdwv.dd + +PIPE = pipeman.mn \ + piper.dr \ + pipe.dd + +RFM = rfm.mn rfmdrv.dr ddy0.dd y0.dd y1.dd y2.dd y3.dd + +ALLOBJS = $(BOOTTRACK) $(KERNEL) $(SYSMODS) $(CLOCKS) $(RBF) $(SCF) $(PIPE) $(RFM) + +all: $(ALLOBJS) + +# Kernel +krn krnp2: + $(CD) kernel; make $@ + $(CP) kernel/$@ . + +# Special cases +# TC^3 SCSI Booter +boot_tc3: boot_scsi.asm + $(AS) $(ASOUT)$@ $< $(TC3FLAGS) + +# SuperIDE/Glenside IDE Booter +boot_ide: boot_ide.asm + $(AS) $(ASOUT)$@ $< $(IDEFLAGS) + +# DriveWire 3 +boot_1773_6ms: boot_1773.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=0 -DSTEP=0 + +boot_1773_30ms: boot_1773.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=0 -DSTEP=3 + +rb1773_scii_ff74.dr: rb1773.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DSCII=1 + +rb1773_scii_ff58.dr: rb1773.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DSCII=1 -DSCIIALT=1 + +# TC^3 SCSI Driver +lltc3.dr: llscsi.asm + $(AS) $(ASOUT)$@ $< $(TC3FLAGS) + +# IDE Driver +llide.dr: llide.asm + $(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 + +ddd0_35s.dd: rb1773desc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) $(SSDD35) -DDNum=0 -DDD=1 + +d0_35s.dd: rb1773desc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) $(SSDD35) -DDNum=0 + +d1_35s.dd: rb1773desc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) $(SSDD35) -DDNum=1 + +d2_35s.dd: rb1773desc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) $(SSDD35) -DDNum=2 + +d3_35s.dd: rb1773desc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) $(SSDD35) -DDNum=3 + +ddd0_40d.dd: rb1773desc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD40) -DDNum=0 -DDD=1 + +d0_40d.dd: rb1773desc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD40) -DDNum=0 + +d1_40d.dd: rb1773desc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD40) -DDNum=1 + +d2_40d.dd: rb1773desc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD40) -DDNum=2 + +ddd0_80d.dd: rb1773desc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD80) -DDNum=0 -DDD=1 + +d0_80d.dd: rb1773desc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD80) -DDNum=0 + +d1_80d.dd: rb1773desc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD80) -DDNum=1 + +d2_80d.dd: rb1773desc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD80) -DDNum=2 + +# DriveWire 3 SCF descriptors +term_scdwv.dt: scdwvdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=0 + +n_scdwv.dd: scdwvdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=255 + +n1_scdwv.dd: scdwvdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=1 + +n2_scdwv.dd: scdwvdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=2 + +n3_scdwv.dd: scdwvdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=3 + +n4_scdwv.dd: scdwvdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=4 + +n5_scdwv.dd: scdwvdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=5 + +n6_scdwv.dd: scdwvdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=6 + +n7_scdwv.dd: scdwvdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=7 + +n8_scdwv.dd: scdwvdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=8 + +n9_scdwv.dd: scdwvdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=9 + +n10_scdwv.dd: scdwvdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=10 + +n11_scdwv.dd: scdwvdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=11 + +n12_scdwv.dd: scdwvdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=12 + +n13_scdwv.dd: scdwvdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=13 + +midi_scdwv.dd: scdwvdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=14 + +term_z_scdwv.dt: scdwvdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=16 + +z1_scdwv.dd: scdwvdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=17 + +z2_scdwv.dd: scdwvdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=18 + +z3_scdwv.dd: scdwvdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=19 + +z4_scdwv.dd: scdwvdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=20 + +z5_scdwv.dd: scdwvdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=21 + +z6_scdwv.dd: scdwvdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=22 + +z7_scdwv.dd: scdwvdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=23 + +# DriveWire 3 RBF descriptors +ddx0.dd: dwdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DDD=1 -DDNum=0 + +x0.dd: dwdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=0 + +x1.dd: dwdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=1 + +x2.dd: dwdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=2 + +x3.dd: dwdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=3 + +# TC^3 SCSI Descriptors +dds0_tc3.dd: superdesc.asm + $(AS) $(ASOUT)$@ $< $(TC3FLAGS) $(ID0) -DDD=1 + +s0_tc3.dd: superdesc.asm + $(AS) $(ASOUT)$@ $< $(TC3FLAGS) $(ID0) $(SCSI_HD) + +s1_tc3.dd: superdesc.asm + $(AS) $(ASOUT)$@ $< $(TC3FLAGS) $(ID1) $(SCSI_HD) + +s2_tc3.dd: superdesc.asm + $(AS) $(ASOUT)$@ $< $(TC3FLAGS) $(ID2) $(SCSI_HD) + +s3_tc3.dd: superdesc.asm + $(AS) $(ASOUT)$@ $< $(TC3FLAGS) $(ID3) $(SCSI_HD) + +s4_tc3.dd: superdesc.asm + $(AS) $(ASOUT)$@ $< $(TC3FLAGS) $(ID4) $(SCSI_HD) + +s5_tc3.dd: superdesc.asm + $(AS) $(ASOUT)$@ $< $(TC3FLAGS) $(ID5) $(SCSI_HD) + +s6_tc3.dd: superdesc.asm + $(AS) $(ASOUT)$@ $< $(TC3FLAGS) $(ID6) $(SCSI_HD) + +sh_tc3.dd: superdesc.asm + $(AS) $(ASOUT)$@ $< $(TC3FLAGS) $(HDBDOS) + +# IDE Descriptors +ddi0_ide.dd: superdesc.asm + $(AS) $(ASOUT)$@ $< $(IDEFLAGS) $(MASTER) -DDD=1 + +i0_ide.dd: superdesc.asm + $(AS) $(ASOUT)$@ $< $(IDEFLAGS) $(MASTER) + +i1_ide.dd: superdesc.asm + $(AS) $(ASOUT)$@ $< $(IDEFLAGS) $(SLAVE) + +ih_ide.dd: superdesc.asm + $(AS) $(ASOUT)$@ $< $(IDEFLAGS) $(HDBDOS) + +# RFM descriptors +ddy0.dd: rfmdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DDD=1 -DDNum=0 + +y0.dd: rfmdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=0 + +y1.dd: rfmdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=1 + +y2.dd: rfmdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=2 + +y3.dd: rfmdesc.asm + $(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=3 + +rel: rel.asm + $(AS) $(AFLAGS) $(ASOUT)$@ $< -DDragon64=0 + +sysgo_dd: sysgo.asm + $(AS) $(AFLAGS) $(ASOUT)$@ $< -DDD=1 + +sysgo_h0: sysgo.asm + $(AS) $(AFLAGS) $(ASOUT)$@ $< + +# Clocks +clock_60hz: clock.asm + $(AS) $(AFLAGS) $(ASOUT)$@ $< -DPwrLnFrq=60 + +clock_50hz: clock.asm + $(AS) $(AFLAGS) $(ASOUT)$@ $< -DPwrLnFrq=50 + +clock2_bnb: clock2_ds1315.asm + $(AS) $(AFLAGS) $(ASOUT)$@ $< -DBNB=1 + +clock2_cloud9: clock2_ds1315.asm + $(AS) $(AFLAGS) $(ASOUT)$@ $< -DCLOUD9=1 + +clean: + $(CD) kernel; make $@ + $(RM) $(ALLOBJS) + +showobjs: + @$(ECHO) $(ALLOBJS) + +showboottrack: + @$(ECHO) $(BOOTTRACK) + +showkernel: + @$(ECHO) $(KERNEL) + +showsysmods: + @$(ECHO) $(SYSMODS) + +showclocks: + @$(ECHO) $(CLOCKS) + +showrbf: + @$(ECHO) $(RBF) + +showscf: + @$(ECHO) $(SCF) + +showpipe: + @$(ECHO) $(PIPE) + +identify: + $(IDENT_SHORT) $(ALLOBJS) + +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level1/coco2/scripts/mb.dw3 Thu Jul 19 10:09:15 2012 -0500 @@ -0,0 +1,30 @@ +-t +-x +tmode .1 pau=0 +echo * NitrOS-9 Level 1 Boot Creation Script +echo * +echo * This script creates a bootable DriveWire 3 disk image +echo * using the dw3.bl bootlist file. +echo * +echo * The resulting disk will boot NitrOS-9 from DriveWire drive 0. +echo * +prompt Insert a blank disk in /x1 and press a key: +echo * +echo * Step 1: Format disk in /x1 +format /x1 "NitrOS-9 Level 1 Boot Disk" r +ynn +echo * +echo * Step 2: Create a custom boot track +del bttemp +merge ../MODULES/BOOTTRACK/rel ../MODULES/KERNEL/krn ../MODULES/KERNEL/krnp2 ../MODULES/SYSMODS/init ../MODULES/BOOTTRACK/boot_dw3>bttemp +echo * +echo * Step 3: Create the bootfile and boot track +os9gen /x1 -t=bttemp<../BOOTLISTS/dw3.bl +del bttemp +echo * +echo * Step 4: Populate the disk with essential files +copy ../MODULES/SYSMODS/sysgo_dd /x1/sysgo +makdir /x1/CMDS +copy -w=/x1/CMDS ../CMDS/shell +echo * +echo * We're done
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level1/coco2/scripts/mb.floppy Thu Jul 19 10:09:15 2012 -0500 @@ -0,0 +1,29 @@ +-t +-x +tmode .1 pau=0 +echo * NitrOS-9 Level 1 Boot Creation Script +echo * +echo * This script creates a bootable floppy disk +echo * using the standard.bl bootlist file. +echo * +echo * The resulting disk will boot NitrOS-9 from drive 0. +echo * +prompt Insert a blank disk in /d0 and press a key: +echo * +echo * Step 1: Format disk in /d0 +format /d0 "NitrOS-9 Level 1 Boot Disk" r +echo * +echo * Step 2: Create a custom boot track +del bttemp +merge ../MODULES/BOOTTRACK/rel ../MODULES/KERNEL/krn ../MODULES/KERNEL/krnp2 ../MODULES/SYSMODS/init ../MODULES/BOOTTRACK/boot_1773_6ms>bttemp +echo * +echo * Step 3: Create the bootfile and boot track +os9gen /d0 -t=bttemp<../BOOTLISTS/standard.bl +del bttemp +echo * +echo * Step 4: Populate the disk with essential files +copy ../MODULES/SYSMODS/sysgo_dd /d0/sysgo +makdir /d0/CMDS +copy -w=/d0/CMDS ../CMDS/shell +echo * +echo * We're done
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level1/coco2/startup Thu Jul 19 10:09:15 2012 -0500 @@ -0,0 +1,7 @@ +* Echo welcome message +echo * Welcome to NitrOS-9 Level 1 * +echo * on the Color Computer 2 * +* Start system time from keyboard +setime </term +date -t +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level1/coco2/startup.dw Thu Jul 19 10:09:15 2012 -0500 @@ -0,0 +1,6 @@ +* Echo welcome message +echo * Welcome to NitrOS-9 Level 1 * +echo * with DriveWire 4 * +echo * on the Color Computer 2 * +date -t +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level1/coco2/sys/makefile Thu Jul 19 10:09:15 2012 -0500 @@ -0,0 +1,36 @@ +PORT = coco2 +include $(NITROS9DIR)/rules.mak + +vpath %.hp $(LEVEL1)/sys + +DEPENDS = ./makefile + +SYSFILES = ../../sys/errmsg ../../sys/motd ../../sys/password ../../sys/inetd.conf +HELPFILES = asm.hp attr.hp backup.hp binex.hp build.hp chd.hp \ + chx.hp cmp.hp cobbler.hp config.hp copy.hp cputype.hp date.hp \ + dcheck.hp debug.hp ded.hp deiniz.hp del.hp deldir.hp devs.hp \ + dir.hp dirsort.hp disasm.hp display.hp dmode.hp dsave.hp dump.hp echo.hp \ + edit.hp error.hp ex.hp exbin.hp format.hp free.hp gfx.hp \ + help.hp ident.hp iniz.hp inkey.hp irqs.hp kill.hp link.hp \ + list.hp load.hp login.hp makdir.hp \ + mdir.hp megaread.hp merge.hp mpi.hp mfree.hp os9gen.hp \ + padrom.hp park.hp procs.hp prompt.hp pwd.hp pxd.hp \ + rename.hp save.hp setime.hp \ + setpr.hp shell.hp sleep.hp tee.hp tmode.hp touch.hp tsmon.hp \ + tuneport.hp unlink.hp verify.hp xmode.hp +HELPMSG = helpmsg +ALLOBJS = $(SYSFILES) $(HELPMSG) + + +all: $(ALLOBJS) $(DEPENDS) + +alldragon: $(ALLOBJS) + +helpmsg: $(HELPFILES) + $(MERGE) $^ > $@ + +clean: + $(RM) $(HELPMSG) + +showobjs: + @$(ECHO) $(ALLOBJS)
--- a/level1/d64/bootfiles/makefile Wed Jul 18 20:28:37 2012 -0500 +++ b/level1/d64/bootfiles/makefile Thu Jul 19 10:09:15 2012 -0500 @@ -40,7 +40,7 @@ $(MD)/d0_40d.dd $(MD)/d1_40d.dd \ $(MD)/d2_40d.dd $(MD)/d3_40d.dd\ $(MD)/scf.mn \ - $(MD)/vtio.dr $(MD)/covdg.io $(MD)/term32.dt \ + $(MD)/vtio.dr $(MD)/covdg.io $(MD)/term_vdg.dt \ $(MD)/scdpp.dr $(MD)/p_dpp.dd \ $(MD)/pipeman.mn $(MD)/piper.dr $(MD)/pipe.dd \ $(MD)/clock_60hz $(MD)/clock2_soft \ @@ -52,7 +52,7 @@ $(MD)/d0_40d.dd $(MD)/d1_40d.dd \ $(MD)/d2_40d.dd $(MD)/d3_40d.dd\ $(MD)/scf.mn \ - $(MD)/vtio.dr $(MD)/cohr.io $(MD)/term51.dt \ + $(MD)/vtio.dr $(MD)/cohr.io $(MD)/term_hr.dt \ $(MD)/scdpp.dr $(MD)/p_dpp.dd \ $(MD)/pipeman.mn $(MD)/piper.dr $(MD)/pipe.dd \ $(MD)/clock_60hz $(MD)/clock2_soft \ @@ -64,7 +64,7 @@ $(MD)/d0_80d.dd $(MD)/d1_80d.dd \ $(MD)/d2_80d.dd $(MD)/d3_80d.dd \ $(MD)/scf.mn \ - $(MD)/vtio.dr $(MD)/covdg.io $(MD)/term32.dt \ + $(MD)/vtio.dr $(MD)/covdg.io $(MD)/term_vdg.dt \ $(MD)/scdpp.dr $(MD)/p_dpp.dd \ $(MD)/pipeman.mn $(MD)/piper.dr $(MD)/pipe.dd \ $(MD)/clock_60hz $(MD)/clock2_soft \ @@ -76,7 +76,7 @@ $(MD)/d0_80d.dd $(MD)/d1_80d.dd \ $(MD)/d2_80d.dd $(MD)/d3_80d.dd\ $(MD)/scf.mn \ - $(MD)/vtio.dr $(MD)/cohr.io $(MD)/term51.dt \ + $(MD)/vtio.dr $(MD)/cohr.io $(MD)/term_hr.dt \ $(MD)/scdpp.dr $(MD)/p_dpp.dd \ $(MD)/pipeman.mn $(MD)/piper.dr $(MD)/pipe.dd \ $(MD)/clock_60hz $(MD)/clock2_soft \ @@ -88,7 +88,7 @@ $(MD)/d0_40s.dd $(MD)/d1_40s.dd \ $(MD)/d2_40s.dd $(MD)/d3_40s.dd\ $(MD)/scf.mn \ - $(MD)/vtio.dr $(MD)/covdg.io $(MD)/term32.dt \ + $(MD)/vtio.dr $(MD)/covdg.io $(MD)/term_vdg.dt \ $(MD)/scdpp.dr $(MD)/p_dpp.dd \ $(MD)/pipeman.mn $(MD)/piper.dr $(MD)/pipe.dd \ $(MD)/clock_60hz $(MD)/clock2_soft \ @@ -100,7 +100,7 @@ $(MD)/d0_40s.dd $(MD)/d1_40s.dd \ $(MD)/d2_40s.dd $(MD)/d3_40s.dd\ $(MD)/scf.mn \ - $(MD)/vtio.dr $(MD)/cohr.io $(MD)/term51.dt \ + $(MD)/vtio.dr $(MD)/cohr.io $(MD)/term_hr.dt \ $(MD)/scdpp.dr $(MD)/p_dpp.dd \ $(MD)/pipeman.mn $(MD)/piper.dr $(MD)/pipe.dd \ $(MD)/clock_60hz $(MD)/clock2_soft \
--- a/level1/d64/bootlists/standard.bl Wed Jul 18 20:28:37 2012 -0500 +++ b/level1/d64/bootlists/standard.bl Thu Jul 19 10:09:15 2012 -0500 @@ -103,8 +103,8 @@ *../MODULES/SCF/cohr.io * * Select only one term descriptor -../MODULES/SCF/term32.dt -*../MODULES/SCF/term51.dt +../MODULES/SCF/term_vdg.dt +*../MODULES/SCF/term_hr.dt *../MODULES/SCF/term_bbt.dt *../MODULES/SCF/term_sc6551.dt *
--- a/level1/d64/modules/makefile Wed Jul 18 20:28:37 2012 -0500 +++ b/level1/d64/modules/makefile Thu Jul 19 10:09:15 2012 -0500 @@ -63,7 +63,7 @@ covdg.io cohr.io\ nil.dd p_dpp.dd pipe.dd ssp.dd \ term_sc6551.dt t2_sc6551.dt t3_sc6551.dt \ - term32.dt term51.dt term80.dt p1_sc6551dragon.dd + term_vdg.dt term_hr.dt term_80.dt p1_sc6551dragon.dd PIPE = pipeman.mn \ piper.dr \
--- a/level1/dalpha/bootfiles/makefile Wed Jul 18 20:28:37 2012 -0500 +++ b/level1/dalpha/bootfiles/makefile Thu Jul 19 10:09:15 2012 -0500 @@ -33,7 +33,7 @@ #Dragon Alpha Bootfiles BOOTFILE_COVDG_SS80 = $(MD)/ioman \ - $(MD)/vtio.dr $(MD)/covdg.io $(MD)/term32.dt \ + $(MD)/vtio.dr $(MD)/covdg.io $(MD)/term_vdg.dt \ $(MD)/rbf.mn $(MD)/adisk.dr \ $(MD)/ddd0_80s.dd\ $(MD)/d0_80s.dd $(MD)/d1_80s.dd \ @@ -45,7 +45,7 @@ $(MD)/sysgo_dd BOOTFILE_COHR_SS80 = $(MD)/ioman \ - $(MD)/vtio.dr $(MD)/cohr.io $(MD)/term51.dt \ + $(MD)/vtio.dr $(MD)/cohr.io $(MD)/term_hr.dt \ $(MD)/rbf.mn $(MD)/adisk.dr \ $(MD)/ddd0_80s.dd\ $(MD)/d0_80s.dd $(MD)/d1_80s.dd \ @@ -57,7 +57,7 @@ $(MD)/sysgo_dd BOOTFILE_COVDG_DS80 = $(MD)/ioman \ - $(MD)/vtio.dr $(MD)/covdg.io $(MD)/term32.dt \ + $(MD)/vtio.dr $(MD)/covdg.io $(MD)/term_vdg.dt \ $(MD)/rbf.mn $(MD)/adisk.dr \ $(MD)/ddd0_80d.dd \ $(MD)/d0_80d.dd $(MD)/d1_80d.dd \ @@ -69,7 +69,7 @@ $(MD)/sysgo_dd BOOTFILE_COHR_DS80 = $(MD)/ioman \ - $(MD)/vtio.dr $(MD)/cohr.io $(MD)/term51.dt \ + $(MD)/vtio.dr $(MD)/cohr.io $(MD)/term_hr.dt \ $(MD)/rbf.mn $(MD)/adisk.dr \ $(MD)/ddd0_80d.dd \ $(MD)/d0_80d.dd $(MD)/d1_80d.dd \
--- a/level1/dalpha/bootlists/standard.bl Wed Jul 18 20:28:37 2012 -0500 +++ b/level1/dalpha/bootlists/standard.bl Thu Jul 19 10:09:15 2012 -0500 @@ -103,8 +103,8 @@ *../MODULES/SCF/cohr.io * * Select only one term descriptor -../MODULES/SCF/term32.dt -*../MODULES/SCF/term51.dt +../MODULES/SCF/term_vdg.dt +*../MODULES/SCF/term_hr.dt *../MODULES/SCF/term_bbt.dt *../MODULES/SCF/term_sc6551.dt *
--- a/level1/dalpha/modules/makefile Wed Jul 18 20:28:37 2012 -0500 +++ b/level1/dalpha/modules/makefile Thu Jul 19 10:09:15 2012 -0500 @@ -62,7 +62,7 @@ covdg.io cohr.io\ nil.dd p_dpp.dd pipe.dd ssp.dd \ term_sc6551.dt t2_sc6551.dt t3_sc6551.dt \ - term32.dt term51.dt term80.dt p1_sc6551dragon.dd + term_vdg.dt term_hr.dt term_80.dt p1_sc6551dragon.dd PIPE = pipeman.mn \ piper.dr \
--- a/level1/makefile Wed Jul 18 20:28:37 2012 -0500 +++ b/level1/makefile Thu Jul 19 10:09:15 2012 -0500 @@ -1,6 +1,6 @@ include $(NITROS9DIR)/rules.mak -dirs = coco tano d64 dalpha atari +dirs = coco1 coco2 tano d64 dalpha atari # Make all components all:
--- a/level1/modules/co80.asm Wed Jul 18 20:28:37 2012 -0500 +++ b/level1/modules/co80.asm Thu Jul 19 10:09:15 2012 -0500 @@ -22,7 +22,7 @@ ifp1 use defsfile - use vtiodefs + use cocovtio.d endc tylg set Systm+Objct @@ -62,11 +62,11 @@ ldd #80*25 lbsr L0189 ldb <V.COLoad,u - orb #ModCo80 + orb #ModCoWP bra L004F * Term Term ldb <V.COLoad,u - andb #~ModCo80 + andb #~ModCoWP L004F stb <V.COLoad,u clrb rts
--- a/level1/modules/rel.asm Wed Jul 18 20:28:37 2012 -0500 +++ b/level1/modules/rel.asm Thu Jul 19 10:09:15 2012 -0500 @@ -36,7 +36,7 @@ ******************************************************************** * Any changes to the next 3 lines requires changes in XX.Size, above fcc /OS/ sync bytes - bra Start+XX.Size execution start + bra Start+XX.Size+4 execution start fdb $1205 filler bytes Begin mod eom,name,tylg,atrv,start,size @@ -278,7 +278,7 @@ ELSE -start clr PIA0Base+3 +Start clr PIA0Base+3 IFNE (tano+d64+dalpha) clr PIA0Base+1 added for Dragon, works on CoCo
--- a/level1/modules/scdwn.asm Wed Jul 18 20:28:37 2012 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,650 +0,0 @@ -******************************************************************** -* scdwn - DriveWire Network Driver -* -* $Id$ -* -* How this wildcard /N stuff works: -* A process interested in obtaining a path to a network device -* can open any /Nx descriptor but it may be in use by another process. -* The safest way to obtain a new network device is to open the wildcard -* descriptor /N. This works similarly to the way /W works in the CoCo 3 -* VTIO driver. -* -* When /N is open, the INIT routine is called but most of it is bypassed -* because it detects the wildcard device (which has an address of $FFFF). -* -* The SS.Open I$SetStat entry point is called. That routine also detects -* the wildcard is used, so the hunt is on for the next available /Nx -* descriptor (it does this by checking the DW static storage for each /Nx -* in the DW static storage page). If it finds a free page, it notes the -* offset as a number, then builds a descriptor name (ex: /N4) and then -* F$Links to it. It then takes the descriptor module address and sticks it -* in the device table entry for /N. It also takes the V.PORT address and sticks -* it in the static storage memory allocated for /N. -* Afer that, SS.Open does something really sneaky: it branches into the -* Init routine which detects via the static storage that this is not a /N -* descriptor but a /N4 descriptor. Init then sends the SERINIT and initializes -* the DW static storage for /N4. Control is returned to the SS.Open code which -* then advertises the SS.Open to the server. -* -* Edt/Rev YYYY/MM/DD Modified by -* Comment -* ------------------------------------------------------------------ -* 1 2009/11/30 Aaron Wolfe -* Started -* -* 2009/12/28 Boisy G. Pitre -* Modified so that F$STime is called if we get an error on calling -* F$VIRQ (which means the clock module has not be initialized) -* -* 2009/12/31 Boisy G. Pitre -* Fixed crash in Init where F$Link failure would not clean up stack -* -* 2010/01/03 Boisy G. Pitre -* Moved IRQ stuff into DW3 subroutine module -* -* 2 2010/01/23 Boisy G. Pitre -* Added code in SS.Open to use /N wildcard device (tricky stuff!) -* -* 2010/05/28 Aaron Wolfe -* Added FASTSERWRITE support -* - nam scdwn - ttl DriveWire Network Driver - - ifp1 - use defsfile - use drivewire.d - endc - -tylg set Drivr+Objct -atrv set ReEnt+Rev -rev set $00 -edition set 2 - -* Note: driver memory defined in dwdefs.d - mod eom,name,tylg,atrv,start,SCFDrvMemSz - -* module info - fcb UPDAT.+SHARE. ;driver access modes -name fcs /scdwn/ ;driver name - fcb edition ;driver edition - -* dispatch calls -start equ * - lbra Init - lbra Read - lbra Write - lbra GetStat - lbra SetStat - -*********************************************************************** -* Term -* -* shut down the driver. -* should close only the correct port, tell server to close the port, -* and remove irq handler when no ports are left -* -* Entry: -* U = address of device memory area -* -* Exit: -* CC = carry set on error -* B = error code -Term equ * - lda <V.PORT+1,u get our port # - bmi termbye if this is wildcard, skip TERM - pshs a port # on stack -* clear statics table entry - ifgt Level-1 - ldx <D.DWStat - else - ldx >D.DWStat - endc - beq tell -* cheat: we know DW.StatTbl is at offset $00 from D.DWStat, do not bother with leax -* leax DW.StatTbl,x - clr a,x clear out - -* tell server -tell - lda #OP_SERTERM load command - pshs a command store on stack - leax ,s point X to stack - ldy #2 2 bytes to send - - pshs u - - ifgt Level-1 - ldu <D.DWSubAddr - else - ldu >D.DWSubAddr - endc - beq nosub - jsr 6,u call DWrite - -nosub - puls u - leas 2,s clean 3 DWsub args from stack -termbye clrb - rts - -*********************************************************************** -* Init -* -* Entry: -* Y = address of device descriptor -* U = address of device memory area -* -* Exit: -* CC = carry set on error -* B = error code -* - -Init equ * - -; link to subroutine module -; has the link already been done? - ifgt Level-1 - ldx <D.DWSubAddr - else - ldx >D.DWSubAddr - endc - bne already ; if so, do not bother - - pshs u ; preserve u since os9 link is coming up - - ifgt Level-1 - ldx <D.Proc - pshs x - ldx <D.SysPrc - stx <D.Proc - endc - clra - - leax dw3name,pcr - os9 F$Link - ifgt Level-1 - puls x - stx <D.Proc - endc - bcs InitEx2 - ifgt Level-1 - sty <D.DWSubAddr - else - sty >D.DWSubAddr - endc - jsr ,y ; call DW init routine - - puls u ; restore u - -already -; tell DW we have a new port opening (port mode already on stack) - ldb <V.PORT+1,u ; get our port # -* if /N wildcard, skip advertising via SERINIT - bmi initEx - lda #OP_SERINIT ; command - pshs d ; command + port # on stack - leax ,s ; point X to stack - ldy #2 ; # of bytes to send - - pshs u - ifgt Level-1 - ldu <D.DWSubAddr - else - ldu >D.DWSubAddr - endc - jsr 6,u ; call DWrite - puls u - -; set up local buffer - ldb #RxBufDSz ; default Rx buffer size - leax RxBuff,u ; default Rx buffer address - stb RxBufSiz,u ; save Rx buffer size - stx RxBufPtr,u ; save Rx buffer address - stx RxBufGet,u ; set initial Rx buffer input address - stx RxBufPut,u ; set initial Rx buffer output address - abx ; add buffer size to buffer start.. - stx RxBufEnd,u ; save Rx buffer end address - - tfr u,d ; (A = high page of statics) - puls b - puls b ; (B = port number) - 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 - sta b,x -InitEx equ * - rts -InitEx2 - puls u - rts - -; drivewire info -dw3name fcs /dw3/ - - -***************************************************************************** -* Write -* -* Entry: -* A = character to write -* Y = address of path descriptor -* U = address of device memory area -* -* Exit: -* CC = carry set on error -* B = error code -* -Write equ * - pshs a ; character to send on stack - lda <V.PORT+1,u ; port number into a - adda #128 ; add base of command into A - pshs a - leax ,s - ldy #$0002 ; 3 bytes to send.. ugh. need WRITEM (data mode) - ifgt Level-1 - ldu <D.DWSubAddr - else - ldu >D.DWSubAddr - endc - jsr 6,u -WriteOK clrb -WriteExit puls x,pc ; clean stack, return - - -NotReady comb - ldb #E$NotRdy - rts - -************************************************************************************* -* Read -* -* Entry: -* Y = address of path descriptor -* U = address of device memory area -* -* Exit: -* A = character read -* CC = carry set on error -* B = error code -* -Read equ * -* Check to see if there is a signal-on-data-ready set for this path. -* If so, we return a Not Ready error. - lda <SSigID,u data ready signal trap set up? - bne NotReady yes, exit with not ready error - pshs cc,dp ; save IRQ/Carry status, system DP - -ReadChr orcc #IntMasks ; mask interrupts - - lda RxDatLen,u ; get our Rx buffer count - beq ReadSlp ; no data, go sleep while waiting for new Rx data... - - ; we have data waiting - deca ; one less byte in buffer - sta RxDatLen,u ; save new Rx data count - - ldx RxBufGet,u ; current Rx buffer pickup position - lda ,x+ ; get Rx character, set up next pickup position - - cmpx RxBufEnd,u ; end of Rx buffer? - blo ReadChr1 ; no, keep pickup pointer - ldx RxBufPtr,u ; get Rx buffer start address -ReadChr1 stx RxBufGet,u ; set new Rx data pickup pointer - - ; return to caller - puls cc,dp,pc ; recover IRQ/Carry status, system DP, return with character in A - -ReadSlp equ * - - ifeq Level-1 -ReadSlp2 lda <V.BUSY,u - sta <V.WAKE,u ; store process id in this port's entry in the waiter table - lbsr Sleep0 ; sleep level 1 style - else -ReadSlp2 lda >D.Proc ; process descriptor address MSB - sta <V.WAKE,u ; save MSB in V.WAKE - clrb - tfr d,x ; process descriptor address - ifne H6309 - oim #Suspend,P$State,x ; suspend - else - ldb P$State,x - orb #Suspend - stb P$State,x ; suspend - endc - bsr Sleep1 ; sleep level 2 style - endc - - ; we have been awakened.. - - ; check for signals - ldx >D.Proc ; process descriptor address - ldb P$Signal,x ; pending signal for this process? - beq ChkState ; no, go check process state... - cmpb #S$HUP ; (S$HUP or lower) - bls ErrExit ; yes, go do it... - -ChkState equ * - ; have we been condemned to die? - ifne H6309 - tim #Condem,P$State,x - else - ldb P$State,x - bitb #Condem - endc - bne PrAbtErr ; yes, go do it... - - ; check that our waiter byte was cleared by ISR instance - tst <V.WAKE,u ; our waiter byte - beq ReadChr ; 0 = its our turn, go get a character - bra ReadSlp ; false alarm, go back to sleep - -PrAbtErr ldb #E$PrcAbt ; set error code - -ErrExit equ * - ifne H6309 - oim #Carry,,s ; set carry - else - lda ,s - ora #Carry - sta ,s - endc - puls cc,dp,pc ; restore CC, system DP, return - - ifeq Level-1 -Sleep0 ldx #$0 ; sleep till ISR wakes us - bra TimedSlp - endc - -Sleep1 ldx #$1 ; just sleep till end of slice, we are suspended (level 2) -TimedSlp andcc #^Intmasks ; enable IRQs - os9 F$Sleep - clr <V.WAKE,u - rts ; return - - -********************************************************************** -* GetStat - heavily borrowed from sc6551 -* -* Entry: -* A = function code -* Y = address of path descriptor -* U = address of device memory area -* -* Exit: -* CC = carry set on error -* B = error code -* -GetStat - clrb ; default to no error... - pshs cc,dp ; save IRQ/Carry status,system DP - - ldx PD.RGS,y ; caller's register stack pointer - cmpa #SS.EOF - beq GSExitOK ; SCF devices never return EOF - - cmpa #SS.Ready - bne Advertise ; next check - - ; SS.Ready - lda RxDatLen,u ; get Rx data length - beq NRdyErr ; none, go report error - sta R$B,x ; set Rx data available in caller's [B] -GSExitOK puls cc,dp,pc ; restore Carry status, system DP, return - -NRdyErr ldb #E$NotRdy - bra ErrExit ; return error code - -UnSvcErr ldb #E$UnkSvc - bra ErrExit ; return error code - -; We advertise all of our SERGETSTAT calls (except SS.Ready) to the server -Advertise - ldb #OP_SERGETSTAT - bsr SendStat - -; Note: Here we could somehow obtain the size of the terminal window from the server -GetScSiz cmpa #SS.ScSiz - bne GetComSt ; next check - ldu PD.DEV,y - ldu V$DESC,u ; device descriptor - clra - ldb IT.COL,u ; return screen size - std R$X,x - ldb IT.ROW,u - std R$Y,x - puls cc,dp,pc ; restore Carry status, system DP, return - -GetComSt cmpa #SS.ComSt - bne GetKySns ; no, we have no more answers, report error - ldd #$0000 ; not used, return $0000 - std R$Y,x - sta R$B,x - puls cc,dp,pc ; restore Carry status, system DP, return - -GetKySns - cmpa #SS.KySns - bne GetSSMntr ; no, we have no more answers, report error -* Get key sense byte from server and return to caller - pshs a,x,u - leax ,s - ldy #$001 - ifgt Level-1 - ldu <D.DWSubAddr - else - ldu >D.DWSubAddr - jsr DW$Read,u - endc - 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 -* A = Function Code -* B = OP_SERGETSTAT or OP_SERSETSTAT -SendStat -; advertise our GetStt code to the server - pshs a,y,x,u - leas -3,s - leax ,s - stb ,x - sta 2,x - ldb V.PORT+1,u - stb 1,x - ldy #$0003 - ifgt LEVEL-1 - ldu <D.DWSubAddr - else - ldu >D.DWSubAddr - endc - jsr DW$Write,u - leas 3,s - puls a,y,x,u,pc - -************************************************************************* -* SetStat -* -* Entry: -* A = function code -* Y = address of path descriptor -* U = address of device memory area -* -* Exit: -* CC = carry set on error -* B = error code -* -SetStat - cmpa #SS.Open - bne isitcomst - bsr open - bcs ssbye - ldd #SS.Open*256+OP_SERSETSTAT - bra SendStat -isitcomst - ldb #OP_SERSETSTAT - bsr SendStat - cmpa #SS.ComSt - beq comst - cmpa #SS.Close - 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 # - cmpa <SSigID,u same? - bne ex - clr <SSigID,u clear process id -ex rts -sskysns - rts -ssig pshs cc - orcc #IntMasks - lda PD.CPR,y ; get curr proc # - ldx PD.RGS,y - ldb R$X+1,x ; get user signal code - tst RxDatLen,u ; get Rx data length - beq ssigsetup ; branch if no data in buffer -* if here, we have data so send signal immediately - os9 F$Send - puls cc,pc -ssigsetup std <SSigID,u ; save process ID & signal - puls cc,pc - -donebad comb - ldb #E$UnkSvc - rts - -comst leax PD.OPT,y - ldy #OPTCNT - ifgt LEVEL-1 - ldu <D.DWSubAddr - else - ldu >D.DWSubAddr - endc - jsr DW$Write,u - clrb -ssbye rts - -* SS.Open processor -* Entry: X=Register stack pointer -* U=Static memory pointer -* Y=Path descriptor pointer -open tst <V.PORT+1,u check if this is $FFFF (wildcard) - bpl ssbye if not, we have nothing to do - pshs u,y preserve registers - ldx PD.DEV,y get pointer to device table entry - ldx V$DESC,x get pointer to /N descriptor - pshs x save device descriptor pointer -* start at /N1 - ldb #1 -L0B58 equ * - 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 -next cmpb #DW.StatCnt - bge opexer - tst b,x - beq found - incb - bra next -opexer comb set carry - ldb #E$MNF get module not found error - puls x,y,u,pc purge stack and return - -* Found a free spot -found pshs b save # of free entry - leas -5,s - leay ,s - ldb #'N get netdev name prefix - stb ,y+ put it in buffer - ldb 5,s get netdev # that was free -* Convert netdev # in B to ASCII eqivalent with high bit set - - ifne H6309 - clra - divd #10 divide it by 10 - else - lda #-1 -L0B87b inca - subb #10 - bcc L0B87b - addb #10 - exg a,b - cmpb #0 - endc - beq L0B87 if answer is 0 there is only 1 digit, skip ahead - orb #$30 make first digit ASCII - stb ,y+ put it in buffer -L0B87 ora #$B0 make remainder ASCII with high bit set - sta ,y+ put it in buffer -L0B92 leas -2,s make a buffer for process decriptor pointer - ifgt Level-1 - lbsr L0238 switch to system process descriptor - endc - leax 2,s Point to calculated dsc. name - lda #Devic+Objct get module type - os9 F$Link try & link it - ifgt Level-1 - lbsr L0244 switch back to current process - endc - leas 7,s purge stack - bcc L0BAB it's linked, skip ahead -L0BA7 puls b get original number - incb - bra L0B58 go find another free space - - ifgt Level-1 -* Switch to system process descriptor -L0238 pshs d Preserve D - ldd <D.Proc Get current process dsc. ptr - std 4,s Preserve on stack - ldd <D.SysPrc Get system process dsc. ptr - std <D.Proc Make it the current process - puls d,pc Restore D & return - -* Switch back to current process -L0244 pshs d Preserve D - ldd 4,s Get current process ptr - std <D.Proc Make it the current process - puls d,pc Restore D & return - endc - -* Got a device descriptor, put into device table & save netdev # into static -L0BAB - lda M$PORT+2,u get MSB of port byte of newly linked /N? descriptor - ldy 3,s get path descriptor pointer - ldx PD.DEV,y get pointer to device table - stu V$DESC,x save pointer to descriptor into it - ldu 1,s get pointer to /N descriptor - os9 F$UnLink unlink it from system map - ldu 5,s get static mem pointer - sta V.PORT+1,u - leas 7,s purge stack -* Load Y with address of descriptor and U with address of memory area - ldy V$DESC,x - pshs x,y,u - lbsr Init call Init to setup dw statics - puls x,y,u,pc - - emod -eom equ * - end
--- a/level1/modules/scdwndesc.asm Wed Jul 18 20:28:37 2012 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,136 +0,0 @@ -******************************************************************** -* scdwdesc - Drivewire Network Device Descriptor -* -* $Id$ -* -* Edt/Rev YYYY/MM/DD Modified by -* Comment -* ------------------------------------------------------------------ -* 0.3 2009/12/?? Aaron Wolfe -* Added SHARE. bit to mode. -* -* 0.4 2009/12/27 Boisy G. Pitre -* Removed SHARE. bit from mode because of tsmon issues. -* -* 0.5 2009/12/29 Boisy G. Pitre -* Made U and T descriptor templates. Backspace is now $7F for -* telnet clients which are likely to access the T ports. -* -* This descriptor has slightly different defaults, intended to be used as -* the channel for the DriveWire utilities -* -* 0.6 2010/01/12 Boisy G. Pitre -* Renamed. -* -* 0.7 2010/01/20 Boisy G. Pitre -* No more /N0. /Term is /N0. -* -* 0.8 2010/05/28 Aaron Wolfe -* /N14 is now /MIDI - - nam scdwdesc - ttl DriveWire network Device Descriptor - - ifp1 - use defsfile - endc - -tylg set Devic+Objct -atrv set ReEnt+rev -rev set $07 - - mod eom,name,tylg,atrv,mgrnam,drvnam - - fcb SHARE.+UPDAT. mode byte - fcb HW.Page extended controller address - fdb $FF00+Addr physical controller address - fcb initsize-*-1 initilization table size - fcb DT.SCF device type:0=scf,1=rbf,2=pipe,3=scf - fcb $00 case:0=up&lower,1=upper only - fcb $01 backspace:0=bsp,1=bsp then sp & bsp - fcb $00 delete:0=bsp over line,1=return - IFEQ Addr-0 - 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!) - IFEQ Addr-14 - fcb 0 backspace character (on most telnet clients) - fcb 0 delete line character - fcb 0 end of record character - fcb 0 end of file character - fcb 0 reprint line character - fcb 0 duplicate last line character - fcb 0 pause character - fcb 0 interrupt character - fcb 0 quit character - fcb 0 backspace echo character - fcb 0 line overflow character (bell) - ELSE - fcb C$BSP backspace character (on most telnet clients) - fcb C$DEL delete line character - fcb C$CR end of record character - fcb C$EOF end of file character - fcb C$RPRT reprint line character - fcb C$RPET duplicate last line character - fcb C$PAUS pause character - fcb C$INTR interrupt character - fcb C$QUIT quit character - fcb C$BSP backspace echo character - fcb C$BELL line overflow character (bell) - ENDC - fcb $00 mode byte for terminal descriptor - fcb B600 baud rate (not used, maybe future assignment?) - fdb name copy of descriptor name address - fcb $00 acia xon char (not used, maybe future assignment?) - fcb $00 acia xoff char (not used, maybe future assignment?) - fcb 80 (szx) number of columns for display - fcb 24 (szy) number of rows for display -initsize equ * - -name equ * - IFEQ Addr-0 - fcs /Term/ - ELSE - IFEQ Addr-14 - fcs /MIDI/ - ELSE - 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' - fcb 176+Addr-10 - ELSE - fcb 176+Addr - ENDC - ENDC - ENDC - ENDC - ENDC -mgrnam fcs /SCF/ -drvnam fcs /scdwn/ - - emod -eom equ * - end -
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level1/modules/scdwv.asm Thu Jul 19 10:09:15 2012 -0500 @@ -0,0 +1,650 @@ +******************************************************************** +* scdwv - DriveWire Virtual Channel Driver +* +* $Id$ +* +* How this wildcard /N stuff works: +* A process interested in obtaining a path to a network device +* can open any /Nx descriptor but it may be in use by another process. +* The safest way to obtain a new network device is to open the wildcard +* descriptor /N. This works similarly to the way /W works in the CoCo 3 +* VTIO driver. +* +* When /N is open, the INIT routine is called but most of it is bypassed +* because it detects the wildcard device (which has an address of $FFFF). +* +* The SS.Open I$SetStat entry point is called. That routine also detects +* the wildcard is used, so the hunt is on for the next available /Nx +* descriptor (it does this by checking the DW static storage for each /Nx +* in the DW static storage page). If it finds a free page, it notes the +* offset as a number, then builds a descriptor name (ex: /N4) and then +* F$Links to it. It then takes the descriptor module address and sticks it +* in the device table entry for /N. It also takes the V.PORT address and sticks +* it in the static storage memory allocated for /N. +* Afer that, SS.Open does something really sneaky: it branches into the +* Init routine which detects via the static storage that this is not a /N +* descriptor but a /N4 descriptor. Init then sends the SERINIT and initializes +* the DW static storage for /N4. Control is returned to the SS.Open code which +* then advertises the SS.Open to the server. +* +* Edt/Rev YYYY/MM/DD Modified by +* Comment +* ------------------------------------------------------------------ +* 1 2009/11/30 Aaron Wolfe +* Started +* +* 2009/12/28 Boisy G. Pitre +* Modified so that F$STime is called if we get an error on calling +* F$VIRQ (which means the clock module has not be initialized) +* +* 2009/12/31 Boisy G. Pitre +* Fixed crash in Init where F$Link failure would not clean up stack +* +* 2010/01/03 Boisy G. Pitre +* Moved IRQ stuff into DW3 subroutine module +* +* 2 2010/01/23 Boisy G. Pitre +* Added code in SS.Open to use /N wildcard device (tricky stuff!) +* +* 2010/05/28 Aaron Wolfe +* Added FASTSERWRITE support +* + nam scdwv + ttl DriveWire Network Driver + + ifp1 + use defsfile + use drivewire.d + endc + +tylg set Drivr+Objct +atrv set ReEnt+Rev +rev set $00 +edition set 2 + +* Note: driver memory defined in dwdefs.d + mod eom,name,tylg,atrv,start,SCFDrvMemSz + +* module info + fcb UPDAT.+SHARE. ;driver access modes +name fcs /scdwv/ ;driver name + fcb edition ;driver edition + +* dispatch calls +start equ * + lbra Init + lbra Read + lbra Write + lbra GetStat + lbra SetStat + +*********************************************************************** +* Term +* +* shut down the driver. +* should close only the correct port, tell server to close the port, +* and remove irq handler when no ports are left +* +* Entry: +* U = address of device memory area +* +* Exit: +* CC = carry set on error +* B = error code +Term equ * + lda <V.PORT+1,u get our port # + bmi termbye if this is wildcard, skip TERM + pshs a port # on stack +* clear statics table entry + ifgt Level-1 + ldx <D.DWStat + else + ldx >D.DWStat + endc + beq tell +* cheat: we know DW.StatTbl is at offset $00 from D.DWStat, do not bother with leax +* leax DW.StatTbl,x + clr a,x clear out + +* tell server +tell + lda #OP_SERTERM load command + pshs a command store on stack + leax ,s point X to stack + ldy #2 2 bytes to send + + pshs u + + ifgt Level-1 + ldu <D.DWSubAddr + else + ldu >D.DWSubAddr + endc + beq nosub + jsr 6,u call DWrite + +nosub + puls u + leas 2,s clean 3 DWsub args from stack +termbye clrb + rts + +*********************************************************************** +* Init +* +* Entry: +* Y = address of device descriptor +* U = address of device memory area +* +* Exit: +* CC = carry set on error +* B = error code +* + +Init equ * + +; link to subroutine module +; has the link already been done? + ifgt Level-1 + ldx <D.DWSubAddr + else + ldx >D.DWSubAddr + endc + bne already ; if so, do not bother + + pshs u ; preserve u since os9 link is coming up + + ifgt Level-1 + ldx <D.Proc + pshs x + ldx <D.SysPrc + stx <D.Proc + endc + clra + + leax dw3name,pcr + os9 F$Link + ifgt Level-1 + puls x + stx <D.Proc + endc + bcs InitEx2 + ifgt Level-1 + sty <D.DWSubAddr + else + sty >D.DWSubAddr + endc + jsr ,y ; call DW init routine + + puls u ; restore u + +already +; tell DW we have a new port opening (port mode already on stack) + ldb <V.PORT+1,u ; get our port # +* if /N wildcard, skip advertising via SERINIT + bmi initEx + lda #OP_SERINIT ; command + pshs d ; command + port # on stack + leax ,s ; point X to stack + ldy #2 ; # of bytes to send + + pshs u + ifgt Level-1 + ldu <D.DWSubAddr + else + ldu >D.DWSubAddr + endc + jsr 6,u ; call DWrite + puls u + +; set up local buffer + ldb #RxBufDSz ; default Rx buffer size + leax RxBuff,u ; default Rx buffer address + stb RxBufSiz,u ; save Rx buffer size + stx RxBufPtr,u ; save Rx buffer address + stx RxBufGet,u ; set initial Rx buffer input address + stx RxBufPut,u ; set initial Rx buffer output address + abx ; add buffer size to buffer start.. + stx RxBufEnd,u ; save Rx buffer end address + + tfr u,d ; (A = high page of statics) + puls b + puls b ; (B = port number) + 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 + sta b,x +InitEx equ * + rts +InitEx2 + puls u + rts + +; drivewire info +dw3name fcs /dw3/ + + +***************************************************************************** +* Write +* +* Entry: +* A = character to write +* Y = address of path descriptor +* U = address of device memory area +* +* Exit: +* CC = carry set on error +* B = error code +* +Write equ * + pshs a ; character to send on stack + lda <V.PORT+1,u ; port number into a + adda #128 ; add base of command into A + pshs a + leax ,s + ldy #$0002 ; 3 bytes to send.. ugh. need WRITEM (data mode) + ifgt Level-1 + ldu <D.DWSubAddr + else + ldu >D.DWSubAddr + endc + jsr 6,u +WriteOK clrb +WriteExit puls x,pc ; clean stack, return + + +NotReady comb + ldb #E$NotRdy + rts + +************************************************************************************* +* Read +* +* Entry: +* Y = address of path descriptor +* U = address of device memory area +* +* Exit: +* A = character read +* CC = carry set on error +* B = error code +* +Read equ * +* Check to see if there is a signal-on-data-ready set for this path. +* If so, we return a Not Ready error. + lda <SSigID,u data ready signal trap set up? + bne NotReady yes, exit with not ready error + pshs cc,dp ; save IRQ/Carry status, system DP + +ReadChr orcc #IntMasks ; mask interrupts + + lda RxDatLen,u ; get our Rx buffer count + beq ReadSlp ; no data, go sleep while waiting for new Rx data... + + ; we have data waiting + deca ; one less byte in buffer + sta RxDatLen,u ; save new Rx data count + + ldx RxBufGet,u ; current Rx buffer pickup position + lda ,x+ ; get Rx character, set up next pickup position + + cmpx RxBufEnd,u ; end of Rx buffer? + blo ReadChr1 ; no, keep pickup pointer + ldx RxBufPtr,u ; get Rx buffer start address +ReadChr1 stx RxBufGet,u ; set new Rx data pickup pointer + + ; return to caller + puls cc,dp,pc ; recover IRQ/Carry status, system DP, return with character in A + +ReadSlp equ * + + ifeq Level-1 +ReadSlp2 lda <V.BUSY,u + sta <V.WAKE,u ; store process id in this port's entry in the waiter table + lbsr Sleep0 ; sleep level 1 style + else +ReadSlp2 lda >D.Proc ; process descriptor address MSB + sta <V.WAKE,u ; save MSB in V.WAKE + clrb + tfr d,x ; process descriptor address + ifne H6309 + oim #Suspend,P$State,x ; suspend + else + ldb P$State,x + orb #Suspend + stb P$State,x ; suspend + endc + bsr Sleep1 ; sleep level 2 style + endc + + ; we have been awakened.. + + ; check for signals + ldx >D.Proc ; process descriptor address + ldb P$Signal,x ; pending signal for this process? + beq ChkState ; no, go check process state... + cmpb #S$HUP ; (S$HUP or lower) + bls ErrExit ; yes, go do it... + +ChkState equ * + ; have we been condemned to die? + ifne H6309 + tim #Condem,P$State,x + else + ldb P$State,x + bitb #Condem + endc + bne PrAbtErr ; yes, go do it... + + ; check that our waiter byte was cleared by ISR instance + tst <V.WAKE,u ; our waiter byte + beq ReadChr ; 0 = its our turn, go get a character + bra ReadSlp ; false alarm, go back to sleep + +PrAbtErr ldb #E$PrcAbt ; set error code + +ErrExit equ * + ifne H6309 + oim #Carry,,s ; set carry + else + lda ,s + ora #Carry + sta ,s + endc + puls cc,dp,pc ; restore CC, system DP, return + + ifeq Level-1 +Sleep0 ldx #$0 ; sleep till ISR wakes us + bra TimedSlp + endc + +Sleep1 ldx #$1 ; just sleep till end of slice, we are suspended (level 2) +TimedSlp andcc #^Intmasks ; enable IRQs + os9 F$Sleep + clr <V.WAKE,u + rts ; return + + +********************************************************************** +* GetStat - heavily borrowed from sc6551 +* +* Entry: +* A = function code +* Y = address of path descriptor +* U = address of device memory area +* +* Exit: +* CC = carry set on error +* B = error code +* +GetStat + clrb ; default to no error... + pshs cc,dp ; save IRQ/Carry status,system DP + + ldx PD.RGS,y ; caller's register stack pointer + cmpa #SS.EOF + beq GSExitOK ; SCF devices never return EOF + + cmpa #SS.Ready + bne Advertise ; next check + + ; SS.Ready + lda RxDatLen,u ; get Rx data length + beq NRdyErr ; none, go report error + sta R$B,x ; set Rx data available in caller's [B] +GSExitOK puls cc,dp,pc ; restore Carry status, system DP, return + +NRdyErr ldb #E$NotRdy + bra ErrExit ; return error code + +UnSvcErr ldb #E$UnkSvc + bra ErrExit ; return error code + +; We advertise all of our SERGETSTAT calls (except SS.Ready) to the server +Advertise + ldb #OP_SERGETSTAT + bsr SendStat + +; Note: Here we could somehow obtain the size of the terminal window from the server +GetScSiz cmpa #SS.ScSiz + bne GetComSt ; next check + ldu PD.DEV,y + ldu V$DESC,u ; device descriptor + clra + ldb IT.COL,u ; return screen size + std R$X,x + ldb IT.ROW,u + std R$Y,x + puls cc,dp,pc ; restore Carry status, system DP, return + +GetComSt cmpa #SS.ComSt + bne GetKySns ; no, we have no more answers, report error + ldd #$0000 ; not used, return $0000 + std R$Y,x + sta R$B,x + puls cc,dp,pc ; restore Carry status, system DP, return + +GetKySns + cmpa #SS.KySns + bne GetSSMntr ; no, we have no more answers, report error +* Get key sense byte from server and return to caller + pshs a,x,u + leax ,s + ldy #$001 + ifgt Level-1 + ldu <D.DWSubAddr + else + ldu >D.DWSubAddr + jsr DW$Read,u + endc + 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 +* A = Function Code +* B = OP_SERGETSTAT or OP_SERSETSTAT +SendStat +; advertise our GetStt code to the server + pshs a,y,x,u + leas -3,s + leax ,s + stb ,x + sta 2,x + ldb V.PORT+1,u + stb 1,x + ldy #$0003 + ifgt LEVEL-1 + ldu <D.DWSubAddr + else + ldu >D.DWSubAddr + endc + jsr DW$Write,u + leas 3,s + puls a,y,x,u,pc + +************************************************************************* +* SetStat +* +* Entry: +* A = function code +* Y = address of path descriptor +* U = address of device memory area +* +* Exit: +* CC = carry set on error +* B = error code +* +SetStat + cmpa #SS.Open + bne isitcomst + bsr open + bcs ssbye + ldd #SS.Open*256+OP_SERSETSTAT + bra SendStat +isitcomst + ldb #OP_SERSETSTAT + bsr SendStat + cmpa #SS.ComSt + beq comst + cmpa #SS.Close + 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 # + cmpa <SSigID,u same? + bne ex + clr <SSigID,u clear process id +ex rts +sskysns + rts +ssig pshs cc + orcc #IntMasks + lda PD.CPR,y ; get curr proc # + ldx PD.RGS,y + ldb R$X+1,x ; get user signal code + tst RxDatLen,u ; get Rx data length + beq ssigsetup ; branch if no data in buffer +* if here, we have data so send signal immediately + os9 F$Send + puls cc,pc +ssigsetup std <SSigID,u ; save process ID & signal + puls cc,pc + +donebad comb + ldb #E$UnkSvc + rts + +comst leax PD.OPT,y + ldy #OPTCNT + ifgt LEVEL-1 + ldu <D.DWSubAddr + else + ldu >D.DWSubAddr + endc + jsr DW$Write,u + clrb +ssbye rts + +* SS.Open processor +* Entry: X=Register stack pointer +* U=Static memory pointer +* Y=Path descriptor pointer +open tst <V.PORT+1,u check if this is $FFFF (wildcard) + bpl ssbye if not, we have nothing to do + pshs u,y preserve registers + ldx PD.DEV,y get pointer to device table entry + ldx V$DESC,x get pointer to /N descriptor + pshs x save device descriptor pointer +* start at /N1 + ldb #1 +L0B58 equ * + 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 +next cmpb #DW.StatCnt + bge opexer + tst b,x + beq found + incb + bra next +opexer comb set carry + ldb #E$MNF get module not found error + puls x,y,u,pc purge stack and return + +* Found a free spot +found pshs b save # of free entry + leas -5,s + leay ,s + ldb #'N get netdev name prefix + stb ,y+ put it in buffer + ldb 5,s get netdev # that was free +* Convert netdev # in B to ASCII eqivalent with high bit set + + ifne H6309 + clra + divd #10 divide it by 10 + else + lda #-1 +L0B87b inca + subb #10 + bcc L0B87b + addb #10 + exg a,b + cmpb #0 + endc + beq L0B87 if answer is 0 there is only 1 digit, skip ahead + orb #$30 make first digit ASCII + stb ,y+ put it in buffer +L0B87 ora #$B0 make remainder ASCII with high bit set + sta ,y+ put it in buffer +L0B92 leas -2,s make a buffer for process decriptor pointer + ifgt Level-1 + lbsr L0238 switch to system process descriptor + endc + leax 2,s Point to calculated dsc. name + lda #Devic+Objct get module type + os9 F$Link try & link it + ifgt Level-1 + lbsr L0244 switch back to current process + endc + leas 7,s purge stack + bcc L0BAB it's linked, skip ahead +L0BA7 puls b get original number + incb + bra L0B58 go find another free space + + ifgt Level-1 +* Switch to system process descriptor +L0238 pshs d Preserve D + ldd <D.Proc Get current process dsc. ptr + std 4,s Preserve on stack + ldd <D.SysPrc Get system process dsc. ptr + std <D.Proc Make it the current process + puls d,pc Restore D & return + +* Switch back to current process +L0244 pshs d Preserve D + ldd 4,s Get current process ptr + std <D.Proc Make it the current process + puls d,pc Restore D & return + endc + +* Got a device descriptor, put into device table & save netdev # into static +L0BAB + lda M$PORT+2,u get MSB of port byte of newly linked /N? descriptor + ldy 3,s get path descriptor pointer + ldx PD.DEV,y get pointer to device table + stu V$DESC,x save pointer to descriptor into it + ldu 1,s get pointer to /N descriptor + os9 F$UnLink unlink it from system map + ldu 5,s get static mem pointer + sta V.PORT+1,u + leas 7,s purge stack +* Load Y with address of descriptor and U with address of memory area + ldy V$DESC,x + pshs x,y,u + lbsr Init call Init to setup dw statics + puls x,y,u,pc + + emod +eom equ * + end
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level1/modules/scdwvdesc.asm Thu Jul 19 10:09:15 2012 -0500 @@ -0,0 +1,136 @@ +******************************************************************** +* scdwvdesc - Drivewire Virtual Device Descriptor +* +* $Id$ +* +* Edt/Rev YYYY/MM/DD Modified by +* Comment +* ------------------------------------------------------------------ +* 0.3 2009/12/?? Aaron Wolfe +* Added SHARE. bit to mode. +* +* 0.4 2009/12/27 Boisy G. Pitre +* Removed SHARE. bit from mode because of tsmon issues. +* +* 0.5 2009/12/29 Boisy G. Pitre +* Made U and T descriptor templates. Backspace is now $7F for +* telnet clients which are likely to access the T ports. +* +* This descriptor has slightly different defaults, intended to be used as +* the channel for the DriveWire utilities +* +* 0.6 2010/01/12 Boisy G. Pitre +* Renamed. +* +* 0.7 2010/01/20 Boisy G. Pitre +* No more /N0. /Term is /N0. +* +* 0.8 2010/05/28 Aaron Wolfe +* /N14 is now /MIDI + + nam scdwdesc + ttl DriveWire Virtual Device Descriptor + + ifp1 + use defsfile + endc + +tylg set Devic+Objct +atrv set ReEnt+rev +rev set $07 + + mod eom,name,tylg,atrv,mgrnam,drvnam + + fcb SHARE.+UPDAT. mode byte + fcb HW.Page extended controller address + fdb $FF00+Addr physical controller address + fcb initsize-*-1 initilization table size + fcb DT.SCF device type:0=scf,1=rbf,2=pipe,3=scf + fcb $00 case:0=up&lower,1=upper only + fcb $01 backspace:0=bsp,1=bsp then sp & bsp + fcb $00 delete:0=bsp over line,1=return + IFEQ Addr-0 + 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!) + IFEQ Addr-14 + fcb 0 backspace character (on most telnet clients) + fcb 0 delete line character + fcb 0 end of record character + fcb 0 end of file character + fcb 0 reprint line character + fcb 0 duplicate last line character + fcb 0 pause character + fcb 0 interrupt character + fcb 0 quit character + fcb 0 backspace echo character + fcb 0 line overflow character (bell) + ELSE + fcb C$BSP backspace character (on most telnet clients) + fcb C$DEL delete line character + fcb C$CR end of record character + fcb C$EOF end of file character + fcb C$RPRT reprint line character + fcb C$RPET duplicate last line character + fcb C$PAUS pause character + fcb C$INTR interrupt character + fcb C$QUIT quit character + fcb C$BSP backspace echo character + fcb C$BELL line overflow character (bell) + ENDC + fcb $00 mode byte for terminal descriptor + fcb B600 baud rate (not used, maybe future assignment?) + fdb name copy of descriptor name address + fcb $00 acia xon char (not used, maybe future assignment?) + fcb $00 acia xoff char (not used, maybe future assignment?) + fcb 80 (szx) number of columns for display + fcb 24 (szy) number of rows for display +initsize equ * + +name equ * + IFEQ Addr-0 + fcs /Term/ + ELSE + IFEQ Addr-14 + fcs /MIDI/ + ELSE + 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' + fcb 176+Addr-10 + ELSE + fcb 176+Addr + ENDC + ENDC + ENDC + ENDC + ENDC +mgrnam fcs /SCF/ +drvnam fcs /scdwv/ + + emod +eom equ * + end +
--- a/level1/modules/term32.asm Wed Jul 18 20:28:37 2012 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,69 +0,0 @@ -******************************************************************** -* TERM - VDG Screen Device Descriptor -* -* $Id$ -* -* Edt/Rev YYYY/MM/DD Modified by -* Comment -* ------------------------------------------------------------------ -* ????/??/?? -* From Tandy OS-9 Level One VR 02.00.00 - - nam TERM - ttl VDG Screen Device Descriptor - -* Disassembled 98/08/23 17:19:25 by Disasm v1.6 (C) 1988 by RML - - ifp1 - use defsfile -; use scfdefs - use cocovtio.d - endc - -tylg set Devic+Objct -atrv set ReEnt+rev -rev set $00 - - mod eom,name,tylg,atrv,mgrnam,drvnam - - fcb UPDAT. mode byte - fcb HW.Page extended controller address - fdb $C000 physical controller address - fcb initsize-*-1 initilization table size - fcb DT.SCF device type:0=scf,1=rbf,2=pipe,3=scf - fcb $01 case:0=up&lower,1=upper only - fcb $01 backspace:0=bsp,1=bsp then sp & bsp - fcb $00 delete:0=bsp over line,1=return - fcb $01 echo:0=no echo - fcb $01 auto line feed:0=off - fcb $00 end of line null count - fcb $01 pause:0=no end of page pause - fcb 16 lines per page - fcb C$BSP backspace character - fcb C$DEL delete line character - fcb C$CR end of record character - fcb C$EOF end of file character - fcb C$RPRT reprint line character - fcb C$RPET duplicate last line character - fcb C$PAUS pause character - fcb C$INTR interrupt character - fcb C$QUIT quit character - fcb C$BSP backspace echo character - fcb C$BELL line overflow character (bell) - fcb ModCoVDG init value for dev ctl reg - fcb $00 baud rate - fdb name copy of descriptor name address - fcb $00 acia xon char - fcb $00 acia xoff char - fcb 32 (szx) number of columns for display - fcb 16 (szy) number of rows for display -initsize equ * - -name fcs /TERM/ -mgrnam fcs /SCF/ -drvnam fcs /VTIO/ - - emod -eom equ * - end -
--- a/level1/modules/term51.asm Wed Jul 18 20:28:37 2012 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,74 +0,0 @@ -******************************************************************** -* TERM - Hi-Res 51x24 Device Descriptor -* -* $Id$ -* -* Edt/Rev YYYY/MM/DD Modified by -* Comment -* ------------------------------------------------------------------ -* ????/??/?? -* From Tandy OS-9 Level One VR 02.00.00 -* -* Modified from 80 col driver to suit 51 column software -* driver from Dragon Data OS-9, 2004-12-02 P.Harvey-Smith. -* - - - - nam TERM - ttl Hi-Res 51x24 Device Descriptor - -* Disassembled 98/08/23 17:19:25 by Disasm v1.6 (C) 1988 by RML - - ifp1 - use defsfile -; use scfdefs - use cocovtio.d - endc - -tylg set Devic+Objct -atrv set ReEnt+rev -rev set $00 - - mod eom,name,tylg,atrv,mgrnam,drvnam - - fcb UPDAT. mode byte - fcb HW.Page extended controller address - fdb $C000 physical controller address - fcb initsize-*-1 initilization table size - fcb DT.SCF device type:0=scf,1=rbf,2=pipe,3=scf - fcb $00 case:0=up&lower,1=upper only - fcb $01 backspace:0=bsp,1=bsp then sp & bsp - fcb $00 delete:0=bsp over line,1=return - fcb $01 echo:0=no echo - fcb $01 auto line feed:0=off - fcb $00 end of line null count - fcb $01 pause:0=no end of page pause - fcb 24 lines per page - fcb C$BSP backspace character - fcb C$DEL delete line character - fcb C$CR end of record character - fcb C$EOF end of file character - fcb C$RPRT reprint line character - fcb C$RPET duplicate last line character - fcb C$PAUS pause character - fcb C$INTR interrupt character - fcb C$QUIT quit character - fcb C$BSP backspace echo character - fcb C$BELL line overflow character (bell) - fcb ModCoHR init value for dev ctl reg - fcb $00 baud rate - fdb name copy of descriptor name address - fcb $00 acia xon char - fcb $00 acia xoff char - fcb 51 (szx) number of columns for display - fcb 24 (szy) number of rows for display -initsize equ * - -name fcs /TERM/ -mgrnam fcs /SCF/ -drvnam fcs /VTIO/ - - emod -eom equ * - end
--- a/level1/modules/term80.asm Wed Jul 18 20:28:37 2012 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,69 +0,0 @@ -******************************************************************** -* TERM - Word-Pak Device Descriptor -* -* $Id$ -* -* Edt/Rev YYYY/MM/DD Modified by -* Comment -* ------------------------------------------------------------------ -* ????/??/?? -* From Tandy OS-9 Level One VR 02.00.00 - - nam TERM - ttl Word-Pak Device Descriptor - -* Disassembled 98/08/23 17:19:25 by Disasm v1.6 (C) 1988 by RML - - ifp1 - use defsfile -; use scfdefs - use cocovtio.d - endc - -tylg set Devic+Objct -atrv set ReEnt+rev -rev set $00 - - mod eom,name,tylg,atrv,mgrnam,drvnam - - fcb UPDAT. mode byte - fcb HW.Page extended controller address - fdb $C000 physical controller address - fcb initsize-*-1 initilization table size - fcb DT.SCF device type:0=scf,1=rbf,2=pipe,3=scf - fcb $00 case:0=up&lower,1=upper only - fcb $01 backspace:0=bsp,1=bsp then sp & bsp - fcb $00 delete:0=bsp over line,1=return - fcb $01 echo:0=no echo - fcb $01 auto line feed:0=off - fcb $00 end of line null count - fcb $01 pause:0=no end of page pause - fcb 24 lines per page - fcb C$BSP backspace character - fcb C$DEL delete line character - fcb C$CR end of record character - fcb C$EOF end of file character - fcb C$RPRT reprint line character - fcb C$RPET duplicate last line character - fcb C$PAUS pause character - fcb C$INTR interrupt character - fcb C$QUIT quit character - fcb C$BSP backspace echo character - fcb C$BELL line overflow character (bell) - fcb ModCoWP init value for dev ctl reg - fcb $00 baud rate - fdb name copy of descriptor name address - fcb $00 acia xon char - fcb $00 acia xoff char - fcb 80 (szx) number of columns for display - fcb 24 (szy) number of rows for display -initsize equ * - -name fcs /TERM/ -mgrnam fcs /SCF/ -drvnam fcs /VTIO/ - - emod -eom equ * - end -
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level1/modules/term_80.asm Thu Jul 19 10:09:15 2012 -0500 @@ -0,0 +1,69 @@ +******************************************************************** +* TERM - Word-Pak Device Descriptor +* +* $Id$ +* +* Edt/Rev YYYY/MM/DD Modified by +* Comment +* ------------------------------------------------------------------ +* ????/??/?? +* From Tandy OS-9 Level One VR 02.00.00 + + nam TERM + ttl Word-Pak Device Descriptor + +* Disassembled 98/08/23 17:19:25 by Disasm v1.6 (C) 1988 by RML + + ifp1 + use defsfile +; use scfdefs + use cocovtio.d + endc + +tylg set Devic+Objct +atrv set ReEnt+rev +rev set $00 + + mod eom,name,tylg,atrv,mgrnam,drvnam + + fcb UPDAT. mode byte + fcb HW.Page extended controller address + fdb $C000 physical controller address + fcb initsize-*-1 initilization table size + fcb DT.SCF device type:0=scf,1=rbf,2=pipe,3=scf + fcb $00 case:0=up&lower,1=upper only + fcb $01 backspace:0=bsp,1=bsp then sp & bsp + fcb $00 delete:0=bsp over line,1=return + fcb $01 echo:0=no echo + fcb $01 auto line feed:0=off + fcb $00 end of line null count + fcb $01 pause:0=no end of page pause + fcb 24 lines per page + fcb C$BSP backspace character + fcb C$DEL delete line character + fcb C$CR end of record character + fcb C$EOF end of file character + fcb C$RPRT reprint line character + fcb C$RPET duplicate last line character + fcb C$PAUS pause character + fcb C$INTR interrupt character + fcb C$QUIT quit character + fcb C$BSP backspace echo character + fcb C$BELL line overflow character (bell) + fcb ModCoWP init value for dev ctl reg + fcb $00 baud rate + fdb name copy of descriptor name address + fcb $00 acia xon char + fcb $00 acia xoff char + fcb 80 (szx) number of columns for display + fcb 24 (szy) number of rows for display +initsize equ * + +name fcs /TERM/ +mgrnam fcs /SCF/ +drvnam fcs /VTIO/ + + emod +eom equ * + end +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level1/modules/term_hr.asm Thu Jul 19 10:09:15 2012 -0500 @@ -0,0 +1,74 @@ +******************************************************************** +* TERM - Hi-Res 51x24 Device Descriptor +* +* $Id$ +* +* Edt/Rev YYYY/MM/DD Modified by +* Comment +* ------------------------------------------------------------------ +* ????/??/?? +* From Tandy OS-9 Level One VR 02.00.00 +* +* Modified from 80 col driver to suit 51 column software +* driver from Dragon Data OS-9, 2004-12-02 P.Harvey-Smith. +* + + + + nam TERM + ttl Hi-Res 51x24 Device Descriptor + +* Disassembled 98/08/23 17:19:25 by Disasm v1.6 (C) 1988 by RML + + ifp1 + use defsfile +; use scfdefs + use cocovtio.d + endc + +tylg set Devic+Objct +atrv set ReEnt+rev +rev set $00 + + mod eom,name,tylg,atrv,mgrnam,drvnam + + fcb UPDAT. mode byte + fcb HW.Page extended controller address + fdb $C000 physical controller address + fcb initsize-*-1 initilization table size + fcb DT.SCF device type:0=scf,1=rbf,2=pipe,3=scf + fcb $00 case:0=up&lower,1=upper only + fcb $01 backspace:0=bsp,1=bsp then sp & bsp + fcb $00 delete:0=bsp over line,1=return + fcb $01 echo:0=no echo + fcb $01 auto line feed:0=off + fcb $00 end of line null count + fcb $01 pause:0=no end of page pause + fcb 24 lines per page + fcb C$BSP backspace character + fcb C$DEL delete line character + fcb C$CR end of record character + fcb C$EOF end of file character + fcb C$RPRT reprint line character + fcb C$RPET duplicate last line character + fcb C$PAUS pause character + fcb C$INTR interrupt character + fcb C$QUIT quit character + fcb C$BSP backspace echo character + fcb C$BELL line overflow character (bell) + fcb ModCoHR init value for dev ctl reg + fcb $00 baud rate + fdb name copy of descriptor name address + fcb $00 acia xon char + fcb $00 acia xoff char + fcb 51 (szx) number of columns for display + fcb 24 (szy) number of rows for display +initsize equ * + +name fcs /TERM/ +mgrnam fcs /SCF/ +drvnam fcs /VTIO/ + + emod +eom equ * + end
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level1/modules/term_vdg.asm Thu Jul 19 10:09:15 2012 -0500 @@ -0,0 +1,91 @@ +******************************************************************** +* Term - VTIO VDG Device Descriptor +* +* $Id$ +* +* Edt/Rev YYYY/MM/DD Modified by +* Comment +* ------------------------------------------------------------------ + + nam Term + ttl VTIO VDG Device Descriptor + + ifp1 + use defsfile + use cocovtio.d + endc + +tylg set Devic+Objct +atrv set ReEnt+rev +rev set $00 + +* Window descriptor definitions +szx set 32 number of columns for display +szy set 16 number for rows for display + IFGT Level-1 +wnum set 0 window number +sty set 1 window type +cpx set 0 x cursor position +cpy set 0 y cursor position +prn1 set Black. foreground color +prn2 set Green. background color +prn3 set Black. border color + ENDC + + mod eom,name,tylg,atrv,mgrnam,drvnam + + fcb UPDAT. mode byte + fcb HW.Page extended controller address + fdb A.TermV physical controller address + fcb initsize-*-1 initilization table size + fcb DT.SCF device type:0=scf,1=rbf,2=pipe,3=scf + fcb $00 case:0=up&lower,1=upper only + fcb $01 backspace:0=bsp,1=bsp then sp & bsp + fcb $00 delete:0=bsp over line,1=return + fcb $01 echo:0=no echo + fcb $01 auto line feed:0=off + fcb $00 end of line null count + fcb $01 pause:0=no end of page pause + fcb szy lines per page + fcb C$BSP backspace character + fcb C$DEL delete line character + fcb C$CR end of record character + fcb C$EOF end of file character + fcb C$RARR reprint line character + fcb C$SHRARR duplicate last line character + fcb C$PAUS pause character + fcb C$INTR interrupt character + fcb C$QUIT quit character + fcb C$BSP backspace echo character + fcb C$BELL line overflow character (bell) + IFGT Level-1 + fcb $01 init value for dev ctl reg + ELSE + fcb ModCoVDG init value for dev ctl reg + ENDC + fcb $00 baud rate + fdb name copy of descriptor name address + fcb $00 acia xon char + fcb $00 acia xoff char + fcb szx (szx) number of columns for display + fcb szy (szy) number of rows for display + IFGT Level-1 + fcb wnum window number + fcb $01 data in rest of descriptor valid + fcb sty (sty) window type + fcb cpx (cpx) x cursor position + fcb cpy (cpy) y cursor position + fcb prn1 (prn1) foreground color + fcb prn2 (prn2) background color + fcb prn3 (prn3) border color + ENDC +initsize equ * + +name fcs /Term/ +mgrnam fcs /SCF/ +drvnam fcs /VTIO/ + + emod +eom equ * + end +
--- a/level1/tano/bootfiles/makefile Wed Jul 18 20:28:37 2012 -0500 +++ b/level1/tano/bootfiles/makefile Thu Jul 19 10:09:15 2012 -0500 @@ -40,7 +40,7 @@ $(MD)/d0_40d.dd $(MD)/d1_40d.dd \ $(MD)/d2_40d.dd \ $(MD)/scf.mn \ - $(MD)/vtio.dr $(MD)/covdg.io $(MD)/term32.dt \ + $(MD)/vtio.dr $(MD)/covdg.io $(MD)/term_vdg.dt \ $(MD)/scdpp.dr $(MD)/p_dpp.dd \ $(MD)/pipeman.mn $(MD)/piper.dr $(MD)/pipe.dd \ $(MD)/clock_60hz $(MD)/clock2_soft \ @@ -52,7 +52,7 @@ $(MD)/d0_40d.dd $(MD)/d1_40d.dd \ $(MD)/d2_40d.dd \ $(MD)/scf.mn \ - $(MD)/vtio.dr $(MD)/cohr.io $(MD)/term51.dt \ + $(MD)/vtio.dr $(MD)/cohr.io $(MD)/term_hr.dt \ $(MD)/scdpp.dr $(MD)/p_dpp.dd \ $(MD)/pipeman.mn $(MD)/piper.dr $(MD)/pipe.dd \ $(MD)/clock_60hz $(MD)/clock2_soft \ @@ -63,7 +63,7 @@ $(MD)/d0_80d.dd $(MD)/d1_80d.dd \ $(MD)/d2_80d.dd \ $(MD)/scf.mn \ - $(MD)/vtio.dr $(MD)/covdg.io $(MD)/term32.dt \ + $(MD)/vtio.dr $(MD)/covdg.io $(MD)/term_vdg.dt \ $(MD)/scdpp.dr $(MD)/p_dpp.dd \ $(MD)/pipeman.mn $(MD)/piper.dr $(MD)/pipe.dd \ $(MD)/clock_60hz $(MD)/clock2_soft \ @@ -75,7 +75,7 @@ $(MD)/d0_80d.dd $(MD)/d1_80d.dd \ $(MD)/d2_80d.dd \ $(MD)/scf.mn \ - $(MD)/vtio.dr $(MD)/cohr.io $(MD)/term51.dt \ + $(MD)/vtio.dr $(MD)/cohr.io $(MD)/term_hr.dt \ $(MD)/scdpp.dr $(MD)/p_dpp.dd \ $(MD)/pipeman.mn $(MD)/piper.dr $(MD)/pipe.dd \ $(MD)/clock_60hz $(MD)/clock2_soft \
--- a/level1/tano/bootlists/standard.bl Wed Jul 18 20:28:37 2012 -0500 +++ b/level1/tano/bootlists/standard.bl Thu Jul 19 10:09:15 2012 -0500 @@ -103,8 +103,8 @@ *../MODULES/SCF/cohr.io * * Select only one term descriptor -../MODULES/SCF/term32.dt -*../MODULES/SCF/term51.dt +../MODULES/SCF/term_vdg.dt +*../MODULES/SCF/term_hr.dt *../MODULES/SCF/term_sc6551.dt * * Serial port drivers
--- a/level1/tano/modules/makefile Wed Jul 18 20:28:37 2012 -0500 +++ b/level1/tano/modules/makefile Thu Jul 19 10:09:15 2012 -0500 @@ -40,7 +40,7 @@ covdg.io cohr.io \ nil.dd p_dpp.dd p1_sc6551dragon.dd pipe.dd ssp.dd \ term_sc6551.dt t2_sc6551.dd t3_sc6551.dd \ - term32.dt term51.dt + term_vdg.dt term_hr.dt PIPE = pipeman.mn \ piper.dr \
--- a/level2/modules/term_vdg.asm Wed Jul 18 20:28:37 2012 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,91 +0,0 @@ -******************************************************************** -* Term - VTIO VDG Device Descriptor -* -* $Id$ -* -* Edt/Rev YYYY/MM/DD Modified by -* Comment -* ------------------------------------------------------------------ - - nam Term - ttl VTIO VDG Device Descriptor - - ifp1 - use defsfile - use cocovtio.d - endc - -tylg set Devic+Objct -atrv set ReEnt+rev -rev set $00 - -* Window descriptor definitions -szx set 32 number of columns for display -szy set 16 number for rows for display - IFGT Level-1 -wnum set 0 window number -sty set 1 window type -cpx set 0 x cursor position -cpy set 0 y cursor position -prn1 set Black. foreground color -prn2 set Green. background color -prn3 set Black. border color - ENDC - - mod eom,name,tylg,atrv,mgrnam,drvnam - - fcb UPDAT. mode byte - fcb HW.Page extended controller address - fdb A.TermV physical controller address - fcb initsize-*-1 initilization table size - fcb DT.SCF device type:0=scf,1=rbf,2=pipe,3=scf - fcb $00 case:0=up&lower,1=upper only - fcb $01 backspace:0=bsp,1=bsp then sp & bsp - fcb $00 delete:0=bsp over line,1=return - fcb $01 echo:0=no echo - fcb $01 auto line feed:0=off - fcb $00 end of line null count - fcb $01 pause:0=no end of page pause - fcb szy lines per page - fcb C$BSP backspace character - fcb C$DEL delete line character - fcb C$CR end of record character - fcb C$EOF end of file character - fcb C$RARR reprint line character - fcb C$SHRARR duplicate last line character - fcb C$PAUS pause character - fcb C$INTR interrupt character - fcb C$QUIT quit character - fcb C$BSP backspace echo character - fcb C$BELL line overflow character (bell) - IFGT Level-1 - fcb $01 init value for dev ctl reg - ELSE - fcb ModCoVDG init value for dev ctl reg - ENDC - fcb $00 baud rate - fdb name copy of descriptor name address - fcb $00 acia xon char - fcb $00 acia xoff char - fcb szx (szx) number of columns for display - fcb szy (szy) number of rows for display - IFGT Level-1 - fcb wnum window number - fcb $01 data in rest of descriptor valid - fcb sty (sty) window type - fcb cpx (cpx) x cursor position - fcb cpy (cpy) y cursor position - fcb prn1 (prn1) foreground color - fcb prn2 (prn2) background color - fcb prn3 (prn3) border color - ENDC -initsize equ * - -name fcs /Term/ -mgrnam fcs /SCF/ -drvnam fcs /VTIO/ - - emod -eom equ * - end -