Mercurial > hg > Members > kono > nitros9-code
changeset 3144:1402bb974f85
Add build tree for Gary Becker's CoCo3FPGA project
This adds the tree of makefiles and definitions for building
disk images for the CoCo3FPGA port.
author | Bill Pierce <merlinious999@gmail.com> |
---|---|
date | Sat, 04 Feb 2017 18:33:07 +0100 |
parents | c860ff48e09c |
children | 0c5b16b0b65d |
files | level2/coco3fpga/bootfiles/makefile level2/coco3fpga/bootlists/standard.bl level2/coco3fpga/cmds/defsfile level2/coco3fpga/cmds/makefile level2/coco3fpga/defs/Defsfile level2/coco3fpga/defs/makefile level2/coco3fpga/defsfile level2/coco3fpga/makefile level2/coco3fpga/modules/defsfile level2/coco3fpga/modules/kernel/defsfile level2/coco3fpga/modules/kernel/makefile level2/coco3fpga/modules/makefile level2/coco3fpga/port.mak level2/coco3fpga/scripts/mb.dw level2/coco3fpga/scripts/mb.floppy level2/coco3fpga/startup.fpga level2/coco3fpga/startup.fpgadw level2/coco3fpga/sys/makefile level2/coco3fpga/wwwroot/makefile |
diffstat | 19 files changed, 815 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level2/coco3fpga/bootfiles/makefile Sat Feb 04 18:33:07 2017 +0100 @@ -0,0 +1,1 @@ +include ../../coco3/bootfiles/makefile
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level2/coco3fpga/bootlists/standard.bl Sat Feb 04 18:33:07 2017 +0100 @@ -0,0 +1,301 @@ +*************************************** +* NitrOS-9 Level 2 CoCo 3 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/KERNEL/krnp2 +*../MODULES/KERNEL/krnp3_perr +*../MODULES/KERNEL/krnp4_regdump +../MODULES/SYSMODS/ioman +../MODULES/SYSMODS/init +* +*************************************** +* 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 driver +*../MODULES/RBF/rbdw.dr +*../MODULES/RBF/dwio.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 (Cloud-9 product) +*../MODULES/RBF/rbsuper.dr +* Select Low level SCSI and/or IDE driver +*../MODULES/RBF/lltc3.dr +*../MODULES/RBF/llide.dr +*../MODULES/RBF/llcocosdc.dr +* Coco3FPGA ONLY +*../MODULES/RBF/llcoco3fpga.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 +* Cocosdc SD DD descriptor +*../MODULES/RBF/ddsd0_cocosdc.dd +* CocoSDC Sd descriptors +*../MODULES/RBF/sd0_cocosdc.dd +*../MODULES/RBF/sd1_cocosdc.dd +* Coco3FPGA SD DD descriptor (Coco3FPGA ONLY) +*../MODULES/RBF/ddsd0_coco3fpga.dd +* Coco3FPGA SD descriptors (Coco3FPGA ONLY) +*../MODULES/RBF/sd0_coco3fpga.dd +*../MODULES/RBF/sd1_coco3fpga.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 +* +* RAMDisk driver +*../MODULES/RBF/rammer.dr +* RAMDisk descriptors - select as needed +*../MODULES/RBF/ddr0_8k.dd +*../MODULES/RBF/ddr0_96k.dd +*../MODULES/RBF/ddr0_128k.dd +*../MODULES/RBF/ddr0_192k.dd +*../MODULES/RBF/r0_8k.dd +*../MODULES/RBF/r0_96k.dd +*../MODULES/RBF/r0_128k.dd +*../MODULES/RBF/r0_192k.dd +* Memory device descriptor +*../MODULES/RBF/md.dd +* MyRam RamDisk driver +*../MODULES/RBF/mram.dr +* MyRam descriptors +*../MODULES/RBF/mr0.dd +* RamD Ramdisk driver (Coco3FPGA ONLY) +*../MODULES/RBF/ramd.dr +* RamD DD descriptor +*../MODULES/RBF/ddr0_ramd_coco3fpga.dd +* RamD descriptor +*../MODULES/RBF/r0_ramd_coco3fpga.dd +*************************************** +* SCF Section +* +../MODULES/SCF/scf.mn +* +* CoCo 3 I/O sub-drivers +* Keyboard modules: choose cc3 for CoCo 3 keyboard +../MODULES/SCF/vtio.dr +../MODULES/SCF/keydrv_cc3.sb +* Sound module: CoCo 3 built-in sound generator +../MODULES/SCF/snddrv_cc3.sb +* Joystick modules: choose joy for hi-res joystick adapter or +* (M)icrosoft or (L)ogitech mouse using 6551 or 6552 ACIA +../MODULES/SCF/joydrv_joy.sb +*../MODULES/SCF/joydrv_6551M.sb +*../MODULES/SCF/joydrv_6552M.sb +*../MODULES/SCF/joydrv_6551L.sb +*../MODULES/SCF/joydrv_6552L.sb +* +* CoGrf/CoWin subroutine module +* Use CoWin with Multi-Vue; use CoGrf +* for basic text and graphic window support.. +* Select only one. +*../MODULES/SCF/cogrf.io +../MODULES/SCF/cowin.io +* +* CoVDG I/O subroutine module +* Select one or both +*../MODULES/SCF/covdg.io +*../MODULES/SCF/covdg_small.io +* +* Select only one term descriptor +*../MODULES/SCF/term_vdg.dt +*../MODULES/SCF/term_win40.dt +../MODULES/SCF/term_win80.dt +*../MODULES/SCF/term_scbbt.dt +*../MODULES/SCF/term_sc6551.dt +* +* Select as many window descriptors as needed +../MODULES/SCF/w.dw +../MODULES/SCF/w1.dw +../MODULES/SCF/w2.dw +../MODULES/SCF/w3.dw +../MODULES/SCF/w4.dw +../MODULES/SCF/w5.dw +../MODULES/SCF/w6.dw +../MODULES/SCF/w7.dw +../MODULES/SCF/w8.dw +../MODULES/SCF/w9.dw +../MODULES/SCF/w10.dw +../MODULES/SCF/w11.dw +../MODULES/SCF/w12.dw +../MODULES/SCF/w13.dw +../MODULES/SCF/w14.dw +../MODULES/SCF/w15.dw +* +* Select as many VDG window descriptors as needed +*../MODULES/SCF/v1.dw +*../MODULES/SCF/v2.dw +*../MODULES/SCF/v3.dw +*../MODULES/SCF/v4.dw +*../MODULES/SCF/v5.dw +*../MODULES/SCF/v6.dw +*../MODULES/SCF/v7.dw +* +* 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 +* Tandy Modem Pak +*../MODULES/SCF/modpak.dr +*../MODULES/SCF/m1.dd +*../MODULES/SCF/m2.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/midi_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 +* +* VRN is a driver module used by certain games, including King's Quest III, +* Leisure Suit Larry and Flight Simulator II. A /nil descriptor is also +* supported. +../MODULES/SCF/vrn.dr +../MODULES/SCF/vi.dd +../MODULES/SCF/ftdd.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 (SuperIDE), 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_dw +* +*************************************** +* System Kick-Start Module +* +* Choose which startup module you wish to use. (sysgo_dd is recommended +* for most configurations.) +* +* Alternatively, this module can reside in the root directory of the +* boot device, saving precious system RAM. +../MODULES/SYSMODS/sysgo_dd +*../MODULES/SYSMODS/sysgo_h0
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level2/coco3fpga/cmds/defsfile Sat Feb 04 18:33:07 2017 +0100 @@ -0,0 +1,1 @@ + use ../defsfile
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level2/coco3fpga/cmds/makefile Sat Feb 04 18:33:07 2017 +0100 @@ -0,0 +1,2 @@ +include ../../coco3/cmds/makefile +AFLAGS += -DH6309=0
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level2/coco3fpga/defs/Defsfile Sat Feb 04 18:33:07 2017 +0100 @@ -0,0 +1,8 @@ +Level equ 2 + + ifp1 + use /dd/defs/os9.d + use /dd/defs/rbf.d + use /dd/defs/scf.d + use /dd/defs/coco3.d + endc
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level2/coco3fpga/defs/makefile Sat Feb 04 18:33:07 2017 +0100 @@ -0,0 +1,32 @@ +PORT = coco3fpga +include $(NITROS9DIR)/rules.mak + +DEPENDS = ./makefile + +DEFOPTS = --preprocess -DLevel=2 +PERMDEFS = Defsfile +DEFS = os9defs rbfdefs scfdefs cocodefs vtiodefs +ALLOBJS = $(DEFS) $(PERMDEFS) + +all: $(ALLOBJS) + +os9defs: $(DEFSDIR)/os9.d + $(AS) $(AFLAGS) $(DEFOPTS) -DOS9.D=0 $< > $@ + +rbfdefs: $(DEFSDIR)/rbf.d + $(AS) $(AFLAGS) $(DEFOPTS) -DRBF.D=0 $< > $@ + +scfdefs: $(DEFSDIR)/scf.d + $(AS) $(AFLAGS) $(DEFOPTS) -DSCF.D=0 $< > $@ + +cocodefs: $(DEFSDIR)/coco.d + $(AS) $(AFLAGS) $(DEFOPTS) -DCOCO.D=0 $< > $@ + +vtiodefs: $(DEFSDIR)/cocovtio.d + $(AS) $(AFLAGS) $(DEFOPTS) -DCOCOVTIO.D=0 $< > $@ + +clean: + $(RM) $(DEFS) + +showobjs: + @$(ECHO) $(ALLOBJS)
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level2/coco3fpga/defsfile Sat Feb 04 18:33:07 2017 +0100 @@ -0,0 +1,6 @@ +Level equ 2 + + use os9.d + use scf.d + use rbf.d + use coco.d
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level2/coco3fpga/makefile Sat Feb 04 18:33:07 2017 +0100 @@ -0,0 +1,299 @@ + +include port.mak + +# Level 2 - 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_COCO3FPGA = bootfiles/bootfile_coco3fpga +BOOTFILE_COCO3FPGA_SD = bootfiles/bootfile_coco3fpga_sd +BOOTFILE_COCO3FPGA_ROM = bootfiles/bootfile_coco3fpga_rom +BOOTFILE_COCO3FPGA_ROM_DW = bootfiles/bootfile_coco3fpga_rom_dw +KERNELFILE_BECKER = bootfiles/kernel_becker +DIRS = cmds modules defs sys bootfiles wwwroot + +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 = shell grfdrv del echo format makdir merge os9gen prompt tmode + +DEFS = $(shell $(CD) defs; make --no-print-directory showobjs) +SYSBIN = $(shell $(CD) sys; make --no-print-directory showbinobjs) +SYSTEXT = $(shell $(CD) sys; make --no-print-directory showtextobjs) +SYSGOSYSTEXT = $(shell $(CD) sys; make --no-print-directory showsysgotextobjs) +STARTUP = startup +STARTUP_DW = startup.dw +STARTUP_FPGA = startup.fpga +STARTUP_FPGADW = startup.fpgadw +SYSGO = sysgo_dd +SYSGOBD = sysgo_bd +CCBKRN = ccbkrn + +DSKCOCO3FPGADW = $(DISTROVER)_becker.dsk +DSKCOCO3FPGADWSD = $(DISTROVER)_becker_sd.dsk +DSKCOCO3FPGAROM = $(DISTROVER)_bootrom.dsk +DSKCOCO3FPGAROMDW = $(DISTROVER)_bootrom_becker.dsk +LDSKCOCO3FPGADW = $(DISTRONAME)_becker.dsk +LDSKCOCO3FPGADWSD = $(DISTRONAME)_becker_sd.dsk +LDSKCOCO3FPGAROM = $(DISTRONAME)_bootrom.dsk +LDSKCOCO3FPGAROMDW = $(DISTRONAME)_bootrom_becker.dsk + +DSKS = $(DSKCOCO3FPGADW) $(DSKCOCO3FPGADWSD) \ + $(DSKCOCO3FPGAROM) $(DSKCOCO3FPGAROMDW) +LDSKS = $(LDSKCOCO3FPGADW) $(LDSKCOCO3FPGADWSD) \ + $(LDSKCOCO3FPGAROM) $(LDSKCOCO3FPGAROMDW) + +# Make all components +all: + @$(ECHO) "************************************************************" + @$(ECHO) "*" + @$(ECHO) "* NitrOS-9/$(CPU) Level $(LEVEL) $(MACHINE) ($(PORT))" + @$(ECHO) "*" + @$(ECHO) "************************************************************" + $(MAKE) -C $(NITROS9DIR)/lib + $(foreach dir,$(DIRS),$(MAKE) -C $(dir) &&) : + +# Clean all components +clean: dskclean + $(foreach dir,$(DIRS),$(MAKE) -C $(dir) clean &&) : + +dskclean: + $(RM) $(DSKS) $(LDSKS) + +dsk: all $(DSKS) + +dskcopy: $(DSKS) + $(CP) $(DSKS) $(DSKDIR) + +$(DSKCOCO3FPGADW): + $(RM) $@ + $(OS9FORMAT_DW) -q $@ -n"NitrOS-9/$(CPU) Level $(LEVEL)" + $(OS9GEN) $@ -b=$(BOOTFILE_COCO3FPGA) -t=$(KERNELFILE_BECKER) + $(MAKDIR) $@,CMDS + $(MAKDIR) $@,SYS + $(MAKDIR) $@,DEFS + $(OS9COPY) modules/$(SYSGOBD) $@,sysgo + $(OS9ATTR_EXEC) $@,sysgo + $(CD) cmds; $(OS9COPY) $(CMDS_DW) ../$@,CMDS + $(OS9ATTR_EXEC) $(foreach file,$(CMDS_DW),$@,CMDS/$(file)) + $(CD) sys; $(OS9COPY) $(SYSBIN) ../$@,SYS + $(OS9ATTR_TEXT) $(foreach file,$(SYSBIN),$@,SYS/$(file)) + $(CD) sys; $(CPL) $(SYSTEXT) ../$@,SYS + $(OS9ATTR_TEXT) $(foreach file,$(notdir $(SYSTEXT)),$@,SYS/$(file)) + $(CD) sys; $(CPL) $(SYSGOSYSTEXT) ../$@,SYS + $(OS9ATTR_TEXT) $(foreach file,$(notdir $(SYSGOSYSTEXT)),$@,SYS/$(file)) + $(CD) defs; $(CPL) $(DEFS) ../$@,DEFS + $(OS9ATTR_TEXT) $(foreach file,$(DEFS),$@,DEFS/$(file)) + $(CPL) $(STARTUP_FPGADW) $@,startup + $(OS9ATTR_TEXT) $@,startup + $(MAKDIR) $@,NITROS9 + $(MAKDIR) $@,NITROS9/CMDS + $(CD) cmds; $(OS9COPY) $(MODULECMDS) ../$@,NITROS9/CMDS + $(OS9ATTR_EXEC) $(foreach file,$(MODULECMDS),$@,NITROS9/CMDS/$(file)) + $(MAKDIR) $@,NITROS9/MODULES + $(MAKDIR) $@,NITROS9/MODULES/BOOTTRACK + $(CD) modules; $(OS9COPY) $(BOOTTRACK) ../$@,NITROS9/MODULES/BOOTTRACK + $(OS9ATTR_EXEC) $(foreach file,$(BOOTTRACK),$@,NITROS9/MODULES/BOOTTRACK/$(file)) + $(MAKDIR) $@,NITROS9/MODULES/KERNEL + $(CD) modules; $(OS9COPY) $(KERNEL) ../$@,NITROS9/MODULES/KERNEL + $(OS9ATTR_EXEC) $(foreach file,$(KERNEL),$@,NITROS9/MODULES/KERNEL/$(file)) + $(MAKDIR) $@,NITROS9/MODULES/SYSMODS + $(CD) modules; $(OS9COPY) $(SYSMODS) ../$@,NITROS9/MODULES/SYSMODS + $(OS9ATTR_EXEC) $(foreach file,$(SYSMODS),$@,NITROS9/MODULES/SYSMODS/$(file)) + $(MAKDIR) $@,NITROS9/MODULES/CLOCKS + $(CD) modules; $(OS9COPY) $(CLOCKS) ../$@,NITROS9/MODULES/CLOCKS + $(OS9ATTR_EXEC) $(foreach file,$(CLOCKS),$@,NITROS9/MODULES/CLOCKS/$(file)) + $(MAKDIR) $@,NITROS9/MODULES/RBF + $(CD) modules; $(OS9COPY) $(RBF) ../$@,NITROS9/MODULES/RBF + $(OS9ATTR_EXEC) $(foreach file,$(RBF),$@,NITROS9/MODULES/RBF/$(file)) + $(MAKDIR) $@,NITROS9/MODULES/SCF + $(CD) modules; $(OS9COPY) $(SCF) ../$@,NITROS9/MODULES/SCF + $(OS9ATTR_EXEC) $(foreach file,$(SCF),$@,NITROS9/MODULES/SCF/$(file)) + $(MAKDIR) $@,NITROS9/MODULES/PIPE + $(CD) modules; $(OS9COPY) $(PIPE) ../$@,NITROS9/MODULES/PIPE + $(OS9ATTR_EXEC) $(foreach file,$(PIPE),$@,NITROS9/MODULES/PIPE/$(file)) + $(MAKDIR) $@,NITROS9/BOOTLISTS + $(CD) bootlists; $(CPL) *.bl ../$@,NITROS9/BOOTLISTS + $(MAKDIR) $@,NITROS9/SCRIPTS + $(CD) scripts; $(CPL) mb* ../$@,NITROS9/SCRIPTS + $(RM) $(LDSKBECKER) + $(SOFTLINK) $@ $(LDSKCOCO3FPGADW) + +$(DSKCOCO3FPGADWSD): + $(RM) $@ + $(OS9FORMAT_DW) -q $@ -n"NitrOS-9/$(CPU) Level $(LEVEL)" + $(OS9GEN) $@ -b=$(BOOTFILE_COCO3FPGA_SD) -t=$(KERNELFILE_BECKER) + $(MAKDIR) $@,CMDS + $(MAKDIR) $@,SYS + $(MAKDIR) $@,DEFS + $(OS9COPY) modules/$(SYSGOBD) $@,sysgo + $(OS9ATTR_EXEC) $@,sysgo + $(CD) cmds; $(OS9COPY) $(CMDS_DW) ../$@,CMDS + $(OS9ATTR_EXEC) $(foreach file,$(CMDS_DW),$@,CMDS/$(file)) + $(CD) sys; $(OS9COPY) $(SYSBIN) ../$@,SYS + $(OS9ATTR_TEXT) $(foreach file,$(SYSBIN),$@,SYS/$(file)) + $(CD) sys; $(CPL) $(SYSTEXT) ../$@,SYS + $(OS9ATTR_TEXT) $(foreach file,$(notdir $(SYSTEXT)),$@,SYS/$(file)) + $(CD) sys; $(CPL) $(SYSGOSYSTEXT) ../$@,SYS + $(OS9ATTR_TEXT) $(foreach file,$(notdir $(SYSGOSYSTEXT)),$@,SYS/$(file)) + $(CD) defs; $(CPL) $(DEFS) ../$@,DEFS + $(OS9ATTR_TEXT) $(foreach file,$(DEFS),$@,DEFS/$(file)) + $(CPL) $(STARTUP_FPGADW) $@,startup + $(OS9ATTR_TEXT) $@,startup + $(MAKDIR) $@,NITROS9 + $(MAKDIR) $@,NITROS9/CMDS + $(CD) cmds; $(OS9COPY) $(MODULECMDS) ../$@,NITROS9/CMDS + $(OS9ATTR_EXEC) $(foreach file,$(MODULECMDS),$@,NITROS9/CMDS/$(file)) + $(MAKDIR) $@,NITROS9/MODULES + $(MAKDIR) $@,NITROS9/MODULES/BOOTTRACK + $(CD) modules; $(OS9COPY) $(BOOTTRACK) ../$@,NITROS9/MODULES/BOOTTRACK + $(OS9ATTR_EXEC) $(foreach file,$(BOOTTRACK),$@,NITROS9/MODULES/BOOTTRACK/$(file)) + $(MAKDIR) $@,NITROS9/MODULES/KERNEL + $(CD) modules; $(OS9COPY) $(KERNEL) ../$@,NITROS9/MODULES/KERNEL + $(OS9ATTR_EXEC) $(foreach file,$(KERNEL),$@,NITROS9/MODULES/KERNEL/$(file)) + $(MAKDIR) $@,NITROS9/MODULES/SYSMODS + $(CD) modules; $(OS9COPY) $(SYSMODS) ../$@,NITROS9/MODULES/SYSMODS + $(OS9ATTR_EXEC) $(foreach file,$(SYSMODS),$@,NITROS9/MODULES/SYSMODS/$(file)) + $(MAKDIR) $@,NITROS9/MODULES/CLOCKS + $(CD) modules; $(OS9COPY) $(CLOCKS) ../$@,NITROS9/MODULES/CLOCKS + $(OS9ATTR_EXEC) $(foreach file,$(CLOCKS),$@,NITROS9/MODULES/CLOCKS/$(file)) + $(MAKDIR) $@,NITROS9/MODULES/RBF + $(CD) modules; $(OS9COPY) $(RBF) ../$@,NITROS9/MODULES/RBF + $(OS9ATTR_EXEC) $(foreach file,$(RBF),$@,NITROS9/MODULES/RBF/$(file)) + $(MAKDIR) $@,NITROS9/MODULES/SCF + $(CD) modules; $(OS9COPY) $(SCF) ../$@,NITROS9/MODULES/SCF + $(OS9ATTR_EXEC) $(foreach file,$(SCF),$@,NITROS9/MODULES/SCF/$(file)) + $(MAKDIR) $@,NITROS9/MODULES/PIPE + $(CD) modules; $(OS9COPY) $(PIPE) ../$@,NITROS9/MODULES/PIPE + $(OS9ATTR_EXEC) $(foreach file,$(PIPE),$@,NITROS9/MODULES/PIPE/$(file)) + $(MAKDIR) $@,NITROS9/BOOTLISTS + $(CD) bootlists; $(CPL) *.bl ../$@,NITROS9/BOOTLISTS + $(MAKDIR) $@,NITROS9/SCRIPTS + $(CD) scripts; $(CPL) mb* ../$@,NITROS9/SCRIPTS + $(RM) $(LDSKBECKER) + $(SOFTLINK) $@ $(LDSKCOCO3FPGADWSD) + +$(DSKCOCO3FPGAROM): + $(RM) $@ + $(OS9FORMAT_DW) -q $@ -n"NitrOS-9/$(CPU) Level $(LEVEL)" + $(OS9GEN) $@ -b=$(BOOTFILE_COCO3FPGA_ROM) -t=$(KERNELFILE_BECKER) + $(MAKDIR) $@,CMDS + $(MAKDIR) $@,SYS + $(MAKDIR) $@,DEFS + $(OS9COPY) modules/$(CCBKRN) $@,$(CCBKRN) + $(OS9COPY) modules/$(SYSGOBD) $@,sysgo + $(OS9ATTR_EXEC) $@,sysgo + $(CD) cmds; $(OS9COPY) $(CMDS_DW) ../$@,CMDS + $(OS9ATTR_EXEC) $(foreach file,$(CMDS_DW),$@,CMDS/$(file)) + $(CD) sys; $(OS9COPY) $(SYSBIN) ../$@,SYS + $(OS9ATTR_TEXT) $(foreach file,$(SYSBIN),$@,SYS/$(file)) + $(CD) sys; $(CPL) $(SYSTEXT) ../$@,SYS + $(OS9ATTR_TEXT) $(foreach file,$(notdir $(SYSTEXT)),$@,SYS/$(file)) + $(CD) sys; $(CPL) $(SYSGOSYSTEXT) ../$@,SYS + $(OS9ATTR_TEXT) $(foreach file,$(notdir $(SYSGOSYSTEXT)),$@,SYS/$(file)) + $(CD) defs; $(CPL) $(DEFS) ../$@,DEFS + $(OS9ATTR_TEXT) $(foreach file,$(DEFS),$@,DEFS/$(file)) + $(CPL) $(STARTUP_FPGA) $@,startup + $(OS9ATTR_TEXT) $@,startup + $(MAKDIR) $@,NITROS9 + $(MAKDIR) $@,NITROS9/CMDS + $(CD) cmds; $(OS9COPY) $(MODULECMDS) ../$@,NITROS9/CMDS + $(OS9ATTR_EXEC) $(foreach file,$(MODULECMDS),$@,NITROS9/CMDS/$(file)) + $(MAKDIR) $@,NITROS9/MODULES + $(MAKDIR) $@,NITROS9/MODULES/BOOTTRACK + $(CD) modules; $(OS9COPY) $(BOOTTRACK) ../$@,NITROS9/MODULES/BOOTTRACK + $(OS9ATTR_EXEC) $(foreach file,$(BOOTTRACK),$@,NITROS9/MODULES/BOOTTRACK/$(file)) + $(MAKDIR) $@,NITROS9/MODULES/KERNEL + $(CD) modules; $(OS9COPY) $(KERNEL) ../$@,NITROS9/MODULES/KERNEL + $(OS9ATTR_EXEC) $(foreach file,$(KERNEL),$@,NITROS9/MODULES/KERNEL/$(file)) + $(MAKDIR) $@,NITROS9/MODULES/SYSMODS + $(CD) modules; $(OS9COPY) $(SYSMODS) ../$@,NITROS9/MODULES/SYSMODS + $(OS9ATTR_EXEC) $(foreach file,$(SYSMODS),$@,NITROS9/MODULES/SYSMODS/$(file)) + $(MAKDIR) $@,NITROS9/MODULES/CLOCKS + $(CD) modules; $(OS9COPY) $(CLOCKS) ../$@,NITROS9/MODULES/CLOCKS + $(OS9ATTR_EXEC) $(foreach file,$(CLOCKS),$@,NITROS9/MODULES/CLOCKS/$(file)) + $(MAKDIR) $@,NITROS9/MODULES/RBF + $(CD) modules; $(OS9COPY) $(RBF) ../$@,NITROS9/MODULES/RBF + $(OS9ATTR_EXEC) $(foreach file,$(RBF),$@,NITROS9/MODULES/RBF/$(file)) + $(MAKDIR) $@,NITROS9/MODULES/SCF + $(CD) modules; $(OS9COPY) $(SCF) ../$@,NITROS9/MODULES/SCF + $(OS9ATTR_EXEC) $(foreach file,$(SCF),$@,NITROS9/MODULES/SCF/$(file)) + $(MAKDIR) $@,NITROS9/MODULES/PIPE + $(CD) modules; $(OS9COPY) $(PIPE) ../$@,NITROS9/MODULES/PIPE + $(OS9ATTR_EXEC) $(foreach file,$(PIPE),$@,NITROS9/MODULES/PIPE/$(file)) + $(MAKDIR) $@,NITROS9/BOOTLISTS + $(CD) bootlists; $(CPL) *.bl ../$@,NITROS9/BOOTLISTS + $(MAKDIR) $@,NITROS9/SCRIPTS + $(CD) scripts; $(CPL) mb* ../$@,NITROS9/SCRIPTS + $(RM) $(LDSKBECKER) + $(SOFTLINK) $@ $(LDSKCOCO3FPGAROM) + +$(DSKCOCO3FPGAROMDW): + $(RM) $@ + $(OS9FORMAT_DW) -q $@ -n"NitrOS-9/$(CPU) Level $(LEVEL)" + $(OS9GEN) $@ -b=$(BOOTFILE_COCO3FPGA_ROM_DW) -t=$(KERNELFILE_BECKER) + $(MAKDIR) $@,CMDS + $(MAKDIR) $@,SYS + $(MAKDIR) $@,DEFS + $(OS9COPY) modules/$(CCBKRN) $@,$(CCBKRN) + $(OS9COPY) modules/$(SYSGOBD) $@,sysgo + $(OS9ATTR_EXEC) $@,sysgo + $(CD) cmds; $(OS9COPY) $(CMDS_DW) ../$@,CMDS + $(OS9ATTR_EXEC) $(foreach file,$(CMDS_DW),$@,CMDS/$(file)) + $(CD) sys; $(OS9COPY) $(SYSBIN) ../$@,SYS + $(OS9ATTR_TEXT) $(foreach file,$(SYSBIN),$@,SYS/$(file)) + $(CD) sys; $(CPL) $(SYSTEXT) ../$@,SYS + $(OS9ATTR_TEXT) $(foreach file,$(notdir $(SYSTEXT)),$@,SYS/$(file)) + $(CD) sys; $(CPL) $(SYSGOSYSTEXT) ../$@,SYS + $(OS9ATTR_TEXT) $(foreach file,$(notdir $(SYSGOSYSTEXT)),$@,SYS/$(file)) + $(CD) defs; $(CPL) $(DEFS) ../$@,DEFS + $(OS9ATTR_TEXT) $(foreach file,$(DEFS),$@,DEFS/$(file)) + $(CPL) $(STARTUP_FPGADW) $@,startup + $(OS9ATTR_TEXT) $@,startup + $(MAKDIR) $@,NITROS9 + $(MAKDIR) $@,NITROS9/CMDS + $(CD) cmds; $(OS9COPY) $(MODULECMDS) ../$@,NITROS9/CMDS + $(OS9ATTR_EXEC) $(foreach file,$(MODULECMDS),$@,NITROS9/CMDS/$(file)) + $(MAKDIR) $@,NITROS9/MODULES + $(MAKDIR) $@,NITROS9/MODULES/BOOTTRACK + $(CD) modules; $(OS9COPY) $(BOOTTRACK) ../$@,NITROS9/MODULES/BOOTTRACK + $(OS9ATTR_EXEC) $(foreach file,$(BOOTTRACK),$@,NITROS9/MODULES/BOOTTRACK/$(file)) + $(MAKDIR) $@,NITROS9/MODULES/KERNEL + $(CD) modules; $(OS9COPY) $(KERNEL) ../$@,NITROS9/MODULES/KERNEL + $(OS9ATTR_EXEC) $(foreach file,$(KERNEL),$@,NITROS9/MODULES/KERNEL/$(file)) + $(MAKDIR) $@,NITROS9/MODULES/SYSMODS + $(CD) modules; $(OS9COPY) $(SYSMODS) ../$@,NITROS9/MODULES/SYSMODS + $(OS9ATTR_EXEC) $(foreach file,$(SYSMODS),$@,NITROS9/MODULES/SYSMODS/$(file)) + $(MAKDIR) $@,NITROS9/MODULES/CLOCKS + $(CD) modules; $(OS9COPY) $(CLOCKS) ../$@,NITROS9/MODULES/CLOCKS + $(OS9ATTR_EXEC) $(foreach file,$(CLOCKS),$@,NITROS9/MODULES/CLOCKS/$(file)) + $(MAKDIR) $@,NITROS9/MODULES/RBF + $(CD) modules; $(OS9COPY) $(RBF) ../$@,NITROS9/MODULES/RBF + $(OS9ATTR_EXEC) $(foreach file,$(RBF),$@,NITROS9/MODULES/RBF/$(file)) + $(MAKDIR) $@,NITROS9/MODULES/SCF + $(CD) modules; $(OS9COPY) $(SCF) ../$@,NITROS9/MODULES/SCF + $(OS9ATTR_EXEC) $(foreach file,$(SCF),$@,NITROS9/MODULES/SCF/$(file)) + $(MAKDIR) $@,NITROS9/MODULES/PIPE + $(CD) modules; $(OS9COPY) $(PIPE) ../$@,NITROS9/MODULES/PIPE + $(OS9ATTR_EXEC) $(foreach file,$(PIPE),$@,NITROS9/MODULES/PIPE/$(file)) + $(MAKDIR) $@,NITROS9/BOOTLISTS + $(CD) bootlists; $(CPL) *.bl ../$@,NITROS9/BOOTLISTS + $(MAKDIR) $@,NITROS9/SCRIPTS + $(CD) scripts; $(CPL) mb* ../$@,NITROS9/SCRIPTS + $(RM) $(LDSKBECKER) + $(SOFTLINK) $@ $(LDSKCOCO3FPGAROMDW) + +info: + @$(ECHO) "*** NitrOS-9/$(CPU) Level $(LEVEL) for the $(MACHINE) ***" + @$(foreach dsk, $(DSKS), $(ECHO) $(dsk);) +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level2/coco3fpga/modules/defsfile Sat Feb 04 18:33:07 2017 +0100 @@ -0,0 +1,1 @@ + use ../defsfile
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level2/coco3fpga/modules/kernel/defsfile Sat Feb 04 18:33:07 2017 +0100 @@ -0,0 +1,1 @@ + use ../../defsfile
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level2/coco3fpga/modules/kernel/makefile Sat Feb 04 18:33:07 2017 +0100 @@ -0,0 +1,42 @@ +PORT = coco3fpga +include $(NITROS9DIR)/rules.mak + +vpath %.asm $(LEVEL2)/modules/kernel:$(LEVEL1)/modules/kernel + +DEPENDS = ./makefile +AFLAGS += -DH6309=0 -I$(LEVEL2)/modules/kernel -I$(LEVEL1)/modules/kernel + +KERNEL = krn +KERNEL_CCB = ccbkrn +KERNELP2 = krnp2 +SYSCALLS = fallimg.asm fallram.asm falltsk.asm faproc.asm fcmpnam.asm \ + fcpymem.asm fdatlog.asm fdelram.asm ffmodul.asm ffreehb.asm \ + fld.asm fldabx.asm flink.asm fmove.asm fnproc.asm fprsnam.asm \ + fdebug.asm fssvc.asm fvmodul.asm \ + fallbit.asm fallprc.asm fchain.asm fclrblk.asm fcrcmod.asm \ + fdelimg.asm fexit.asm ffind64.asm ffork.asm fgblkmp.asm \ + fgcmdir.asm fgmoddr.asm fgprdsc.asm fgprocp.asm ficpt.asm \ + fid.asm fmapblk.asm fmem.asm fsend.asm fsleep.asm fsprior.asm \ + fsswi.asm fstime.asm fsuser.asm funlink.asm funload.asm + +ALLOBJS = $(KERNEL) $(KERNELP2) $(KERNEL_CCB) + +all: $(ALLOBJS) + +$(KERNEL): krn.asm $(SYSCALLS) fsrqmem.asm + +$(KERNEL_CCB): ccbkrn.asm $(SYSCALLS) ccbfsrqmem.asm + +$(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/level2/coco3fpga/modules/makefile Sat Feb 04 18:33:07 2017 +0100 @@ -0,0 +1,2 @@ +include ../../coco3/modules/makefile +AFLAGS += -DH6309=0 -DCC3FPGA=1
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level2/coco3fpga/port.mak Sat Feb 04 18:33:07 2017 +0100 @@ -0,0 +1,9 @@ +PORT = coco3fpga +MACHINE = Coco3FPGA FPGA based Computer +CPU = 6809 +LEVEL = 2 +TELNET_PORT = 6810 +HTTPD_PORT = 8810 + +include $(NITROS9DIR)/rules.mak +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level2/coco3fpga/scripts/mb.dw Sat Feb 04 18:33:07 2017 +0100 @@ -0,0 +1,31 @@ +-t +-x +tmode .1 pau=0 +echo * NitrOS-9 Level 2 Boot Creation Script +echo * +echo * This script creates a bootable DriveWire 3 disk image +echo * using the dw.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 2 Boot Disk" r +ynn +echo * +echo * Step 2: Create a custom boot track +merge ../MODULES/BOOTTRACK/rel_80 ../MODULES/BOOTTRACK/boot_dw ../MODULES/BOOTTRACK/krn>-bttemp +echo * +echo * Step 3: Create the bootfile and boot track +os9gen %1 -t=bttemp<../BOOTLISTS/dw.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 ../CMDS/grfdrv +echo * +echo * We're done
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level2/coco3fpga/scripts/mb.floppy Sat Feb 04 18:33:07 2017 +0100 @@ -0,0 +1,30 @@ +-t +-x +tmode .1 pau=0 +echo * NitrOS-9 Level 2 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 * +echo "Please type the destination device (e.g. /d0, /d1)" +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 2 Boot Disk" r +echo * +echo * Step 2: Create a custom boot track +merge ../MODULES/BOOTTRACK/rel_80 ../MODULES/BOOTTRACK/boot_1773_6ms ../MODULES/BOOTTRACK/krn>-bttemp +echo * +echo * Step 3: Create the bootfile and boot track +os9gen %1 -t=bttemp<../BOOTLISTS/standard.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 ../CMDS/grfdrv +echo * +echo * We're done
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level2/coco3fpga/startup.fpga Sat Feb 04 18:33:07 2017 +0100 @@ -0,0 +1,23 @@ +x +* Echo welcome message +echo +echo +echo +echo ******************************* +echo * Welcome to NitrOS-9 Level 2 * +echo * Version 3.3.0 * +echo * Special Coco3FPGA Edition * +echo * on Gary Becker's Coco3FPGA * +echo ******************************* +echo +* Lock shell and std utils into memory +link shell +load utilpak1 +* Merging system fonts, patterns and pointers +merge /dd/sys/stdfonts /dd/sys/stdptrs /dd/sys/stdpats_2 /dd/sys/stdpats_4 /dd/sys/stdpats_16 +* Creating a 2nd and 3rd window +shell i=/w& +shell i=/w& +date -t +-x +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level2/coco3fpga/startup.fpgadw Sat Feb 04 18:33:07 2017 +0100 @@ -0,0 +1,24 @@ +x +* Echo welcome message +echo +echo +echo +echo ******************************* +echo * Welcome to NitrOS-9 Level 2 * +echo * Version 3.3.0 * +echo * Special Coco3FPGA Edition * +echo * with DriveWire 4 * +echo * on Gary Becker's Coco3FPGA * +echo ******************************* +echo +* Lock shell and std utils into memory +link shell +load utilpak1 +* Merging system fonts, patterns and pointers +merge /dd/sys/stdfonts /dd/sys/stdptrs /dd/sys/stdpats_2 /dd/sys/stdpats_4 /dd/sys/stdpats_16 +* Creating a 2nd and 3rd window +shell i=/w& +shell i=/w& +date -t +-x +