From 64ccccc43ee6b607f7d05c96dc02b420b68fe44d Mon Sep 17 00:00:00 2001 From: David Given Date: Sat, 21 Apr 2018 16:32:52 +0200 Subject: [PATCH] Bodge the prototype NC200 port into at least building (although it doesn't work). --- .../platform-amstradnc/{nc100 => }/config.h | 0 Kernel/platform-amstradnc/nc200/Makefile | 27 +++++++----- Kernel/platform-amstradnc/nc200/fuzix.lnk | 44 ++++++++++++++++++- Kernel/platform-amstradnc/nc200/kernel.def | 12 ++++- Kernel/platform-amstradnc/nc200/rules.mk | 3 +- 5 files changed, 72 insertions(+), 14 deletions(-) rename Kernel/platform-amstradnc/{nc100 => }/config.h (100%) mode change 120000 => 100644 Kernel/platform-amstradnc/nc200/fuzix.lnk mode change 120000 => 100644 Kernel/platform-amstradnc/nc200/kernel.def diff --git a/Kernel/platform-amstradnc/nc100/config.h b/Kernel/platform-amstradnc/config.h similarity index 100% rename from Kernel/platform-amstradnc/nc100/config.h rename to Kernel/platform-amstradnc/config.h diff --git a/Kernel/platform-amstradnc/nc200/Makefile b/Kernel/platform-amstradnc/nc200/Makefile index 4fecad12..40b4f530 100644 --- a/Kernel/platform-amstradnc/nc200/Makefile +++ b/Kernel/platform-amstradnc/nc200/Makefile @@ -38,22 +38,27 @@ clean: rm -f $(OBJS) $(JUNK) core *~ rm -f floppyskeleton.img autoprg.bin bootfloppy.img -bootblock.img: ../platform-nc100/bootblock.s - sdasz80 -fflopzws bootblock.rel ../platform-nc100/bootblock.s +bootblock.img: ../bootblock.s + sdasz80 -fflopzws bootblock.rel ../bootblock.s sdldz80 -nwmx -b BOOTBLOCK=0 -i bootblock.ihx bootblock.rel srec_cat -disable-sequence-warning \ bootblock.ihx -intel \ -output bootblock.img -binary -image: floppyskeleton.img autoprg.bin bootblock.img ../fuzix.bin - dd if=bootblock.img of=../fuzix.bin bs=1 conv=notrunc - cp floppyskeleton.img ../fuzixfloppy.img - truncate ../fuzixfloppy.img --size 7680 - mcopy -i ../fuzixfloppy.img autoprg.bin ::auto.prg - dd if=../fuzix.bin bs=16k skip=0 count=1 | mcopy -i ../fuzixfloppy.img - ::load4000.80 - dd if=../fuzix.bin bs=16k skip=1 count=1 | mcopy -i ../fuzixfloppy.img - ::load4000.81 - dd if=../fuzix.bin bs=16k skip=2 count=1 | mcopy -i ../fuzixfloppy.img - ::load4000.82 - echo -n | mcopy -i ../fuzixfloppy.img - ::call4000.80 +.PHONY: image floppyimage cardimage +image: floppyimage cardimage + +cardimage: $(ROOT_DIR)/fuzix.bin bootblock.img + dd if=bootblock.img of=$(ROOT_DIR)/fuzix.bin bs=1 conv=notrunc + +floppyimage: cardimage floppyskeleton.img autoprg.bin $(ROOT_DIR)/fuzix.bin + cp floppyskeleton.img $(ROOT_DIR)/fuzixfloppy.img + truncate $(ROOT_DIR)/fuzixfloppy.img --size 7680 + mcopy -i $(ROOT_DIR)/fuzixfloppy.img autoprg.bin ::auto.prg + dd if=$(ROOT_DIR)/fuzix.bin bs=16k skip=0 count=1 | mcopy -i $(ROOT_DIR)/fuzixfloppy.img - ::load4000.80 + dd if=$(ROOT_DIR)/fuzix.bin bs=16k skip=1 count=1 | mcopy -i $(ROOT_DIR)/fuzixfloppy.img - ::load4000.81 + dd if=$(ROOT_DIR)/fuzix.bin bs=16k skip=2 count=1 | mcopy -i $(ROOT_DIR)/fuzixfloppy.img - ::load4000.82 + echo -n | mcopy -i $(ROOT_DIR)/fuzixfloppy.img - ::call4000.80 floppyskeleton.img: floppyskeleton.s sdasz80 -fflopzws floppyskeleton.rel floppyskeleton.s diff --git a/Kernel/platform-amstradnc/nc200/fuzix.lnk b/Kernel/platform-amstradnc/nc200/fuzix.lnk deleted file mode 120000 index cfabc469..00000000 --- a/Kernel/platform-amstradnc/nc200/fuzix.lnk +++ /dev/null @@ -1 +0,0 @@ -../platform-nc100/fuzix.lnk \ No newline at end of file diff --git a/Kernel/platform-amstradnc/nc200/fuzix.lnk b/Kernel/platform-amstradnc/nc200/fuzix.lnk new file mode 100644 index 00000000..c6f21f7c --- /dev/null +++ b/Kernel/platform-amstradnc/nc200/fuzix.lnk @@ -0,0 +1,43 @@ +-mwxuy +-i fuzix.ihx +-b _CODE=0x0 +-b _COMMONMEM=0xF000 +-b _DISCARD=0xE000 +-l z80 +platform-amstradnc/crt0.rel +platform-amstradnc/commonmem.rel +platform-amstradnc/nc100.rel +start.rel +version.rel +lowlevel-z80.rel +platform-amstradnc/tricks.rel +platform-amstradnc/main.rel +timer.rel +kdata.rel +platform-amstradnc/devrd.rel +platform-amstradnc/devices.rel +devio.rel +filesys.rel +process.rel +inode.rel +syscall_exec16.rel +syscall_fs.rel +syscall_proc.rel +syscall_fs2.rel +syscall_fs3.rel +syscall_other.rel +mm.rel +swap.rel +bank16k.rel +tty.rel +vt.rel +devsys.rel +audio.rel +usermem.rel +usermem_std-z80.rel +platform-amstradnc/devlpr.rel +platform-amstradnc/devtty.rel +platform-amstradnc/devaudio.rel +platform-amstradnc/devgfx.rel +font4x6.rel +-e diff --git a/Kernel/platform-amstradnc/nc200/kernel.def b/Kernel/platform-amstradnc/nc200/kernel.def deleted file mode 120000 index 321460cd..00000000 --- a/Kernel/platform-amstradnc/nc200/kernel.def +++ /dev/null @@ -1 +0,0 @@ -../platform-nc100/kernel.def \ No newline at end of file diff --git a/Kernel/platform-amstradnc/nc200/kernel.def b/Kernel/platform-amstradnc/nc200/kernel.def new file mode 100644 index 00000000..6bfefa3f --- /dev/null +++ b/Kernel/platform-amstradnc/nc200/kernel.def @@ -0,0 +1,11 @@ +; UZI mnemonics for memory addresses etc + +U_DATA .equ 0xF000 ; (this is struct u_data from kernel.h) +U_DATA__TOTALSIZE .equ 0x300 ; 256+256+256 bytes. + +Z80_TYPE .equ 0 + +PROGBASE .equ 0x0000 +PROGLOAD .equ 0x0100 + +Z80_MMU_HOOKS .equ 0 diff --git a/Kernel/platform-amstradnc/nc200/rules.mk b/Kernel/platform-amstradnc/nc200/rules.mk index 33bce4e9..78fc1ced 100644 --- a/Kernel/platform-amstradnc/nc200/rules.mk +++ b/Kernel/platform-amstradnc/nc200/rules.mk @@ -1 +1,2 @@ -export CROSS_CCOPTS += -I$(ROOT_DIR)/platform-amstradnc -DCONFIG_NC200 +CROSS_CCOPTS += -I$(ROOT_DIR)/platform-amstradnc -DCONFIG_NC200 +ASOPTS += -I$(ROOT_DIR) -- 2.34.1