Add support for Z8F6403 (currently disabled)

git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@692 42af7a65-404d-4744-a932-0658087f49c3
This commit is contained in:
patacongo 2008-02-16 00:48:39 +00:00
parent d2a0dbed16
commit 8501aca2af
4 changed files with 53 additions and 11 deletions

View File

@ -23,6 +23,13 @@ ZDS-II Compiler Versions
/* Set up global variables */ /* Set up global variables */
The 4.10.1 version of ZDS-11 is not compatible with the Z8F6403 chip
in the z8encore000zco development board.
4.9.5
This is the latest tool version listed on the ZiLOG site for the Z8F6403.
However, it uses different compiler command line arguments.
Other Versions Other Versions
If you use any version of ZDS-II other than 4.10.1 or if you install ZDS-II If you use any version of ZDS-II other than 4.10.1 or if you install ZDS-II
at any location other than the default location, you will have to modify at any location other than the default location, you will have to modify

View File

@ -41,7 +41,12 @@ ZDSINSTALLDIR := C:/Program\ Files/ZiLOG/ZDSII_Z8Encore!_4.10.1
ZDSBINDIR := $(ZDSINSTALLDIR)/bin ZDSBINDIR := $(ZDSINSTALLDIR)/bin
ZDSSTDINCDIR := $(ZDSINSTALLDIR)/include/std ZDSSTDINCDIR := $(ZDSINSTALLDIR)/include/std
ZDSZILOGINCDIR := $(ZDSINSTALLDIR)/include/zilog ZDSZILOGINCDIR := $(ZDSINSTALLDIR)/include/zilog
ZDSF46XINCDIR := $(ZDSZILOGINCDIR)/Z8Encore_F642X ifeq ($(CONFIG_ARCH_CHIP_Z8F642X),y)
ZDSDEVINCDIR := $(ZDSZILOGINCDIR)/Z8Encore_F642X
endif
ifeq ($(CONFIG_ARCH_CHIP_Z8F640X),y)
ZDSDEVINCDIR := $(ZDSZILOGINCDIR)/Z8Encore_F640X
endif
ZDSSTDLIBDIR := $(ZDSINSTALLDIR)/lib/std ZDSSTDLIBDIR := $(ZDSINSTALLDIR)/lib/std
ZDSZILOGLIBDIR := $(ZDSINSTALLDIR)/lib/zilog ZDSZILOGLIBDIR := $(ZDSINSTALLDIR)/lib/zilog
@ -51,7 +56,7 @@ ZDSZILOGLIBDIR := $(ZDSINSTALLDIR)/lib/zilog
WTOPDIR := ${shell cygpath -w $(TOPDIR)} WTOPDIR := ${shell cygpath -w $(TOPDIR)}
WZDSSTDINCDIR := ${shell cygpath -w $(ZDSSTDINCDIR)} WZDSSTDINCDIR := ${shell cygpath -w $(ZDSSTDINCDIR)}
WZDSZILOGINCDIR := ${shell cygpath -w $(ZDSZILOGINCDIR)} WZDSZILOGINCDIR := ${shell cygpath -w $(ZDSZILOGINCDIR)}
WZDSF46XINCDIR := ${shell cygpath -w $(ZDSF46XINCDIR)} WZDSDEVINCDIR := ${shell cygpath -w $(ZDSDEVINCDIR)}
WZDSSTDLIBDIR := ${shell cygpath -w $(ZDSSTDLIBDIR)} WZDSSTDLIBDIR := ${shell cygpath -w $(ZDSSTDLIBDIR)}
WZDSZILOGLIBDIR := ${shell cygpath -w $(ZDSZILOGLIBDIR)} WZDSZILOGLIBDIR := ${shell cygpath -w $(ZDSZILOGLIBDIR)}
@ -69,10 +74,20 @@ else
ARCHASMOPTIMIZATION = -nodebug -sdiopt ARCHASMOPTIMIZATION = -nodebug -sdiopt
endif endif
ifeq ($(CONFIG_ARCH_CHIP_Z8F642X),y)
ARCHASMCPUFLAGS = -cpu:Z8F6423 -NOigcase -NOrevaa ARCHASMCPUFLAGS = -cpu:Z8F6423 -NOigcase -NOrevaa
endif
ifeq ($(CONFIG_ARCH_CHIP_Z8F640X),y)
ARCHASMCPUFLAGS = -cpu:Z8F6403 -NOigcase -revaa
endif
ARCHASMLIST = -list -NOlistmac -name -pagelen:56 -pagewidth:80 -quiet ARCHASMLIST = -list -NOlistmac -name -pagelen:56 -pagewidth:80 -quiet
ARCHASMWARNINGS = -warn ARCHASMWARNINGS = -warn
ifeq ($(CONFIG_ARCH_CHIP_Z8F642X),y)
ARCHASMDEFINES = -define:_Z8F6423=1 -define:_Z8ENCORE_64K_SERIES=1 -define:_Z8ENCORE_F642X=1 \ -define:__ASSEMBLY__ ARCHASMDEFINES = -define:_Z8F6423=1 -define:_Z8ENCORE_64K_SERIES=1 -define:_Z8ENCORE_F642X=1 \ -define:__ASSEMBLY__
endif
ifeq ($(CONFIG_ARCH_CHIP_Z8F640X),y)
ARCHASMDEFINES = -define:_Z8F6403=1 -define:_Z8ENCORE_640_FAMILY=1 -define:_Z8ENCORE_F640X=1 \ -define:__ASSEMBLY__
endif
ARCHASMINCLUDES = -include:'$(WTOPDIR)\include;$(WZDSSTDINCDIR);$(WZDSZILOGINCDIR)' ARCHASMINCLUDES = -include:'$(WTOPDIR)\include;$(WZDSSTDINCDIR);$(WZDSZILOGINCDIR)'
EARCHASMINCLUDES = -include:'$(ETOPDIR)\include;$(EZDSSTDINCDIR);$(EZDSZILOGINCDIR)' EARCHASMINCLUDES = -include:'$(ETOPDIR)\include;$(EZDSSTDINCDIR);$(EZDSZILOGINCDIR)'
AFLAGS = $(ARCHASMCPUFLAGS) $(ARCHASMINCLUDES) $(ARCHASMLIST) \ AFLAGS = $(ARCHASMCPUFLAGS) $(ARCHASMINCLUDES) $(ARCHASMLIST) \
@ -86,19 +101,35 @@ else
ARCHOPTIMIZATION = -nodebug -regvar ARCHOPTIMIZATION = -nodebug -regvar
endif endif
ifeq ($(CONFIG_ARCH_CHIP_Z8F642X),y)
ARCHCPUFLAGS = -chartype:S -model:L -const:RAM -NOoptlink -promote -cpu:Z8F6423 -NOgenprintf \ ARCHCPUFLAGS = -chartype:S -model:L -const:RAM -NOoptlink -promote -cpu:Z8F6423 -NOgenprintf \
-asmsw:" $(ARCHASMCPUFLAGS) $(EARCHASMINCLUDES) $(ARCHASMWARNINGS) $(ARCHASMOPTIMIZATION)" -asmsw:" $(ARCHASMCPUFLAGS) $(EARCHASMINCLUDES) $(ARCHASMWARNINGS) $(ARCHASMOPTIMIZATION)"
endif
ifeq ($(CONFIG_ARCH_CHIP_Z8F640X),y)
ARCHCPUFLAGS = -chartype:S -model:L -const:RAM -NOoptlink -promote -cpu:Z8F6403 -NOgenprintf \
-asmsw:" $(ARCHASMCPUFLAGS) $(EARCHASMINCLUDES) $(ARCHASMWARNINGS) $(ARCHASMOPTIMIZATION)"
endif
ARCHLIST = -keeplst -NOlist -NOlistinc -keepasm ARCHLIST = -keeplst -NOlist -NOlistinc -keepasm
ARCHPICFLAGS = ARCHPICFLAGS =
ARCHWARNINGS = -warn ARCHWARNINGS = -warn
ifeq ($(CONFIG_ARCH_CHIP_Z8F642X),y)
ARCHDEFINES = -define:_Z8ENCORE_F642X -define:_Z8F6423 -define:_Z8ENCORE_64K_SERIES ARCHDEFINES = -define:_Z8ENCORE_F642X -define:_Z8F6423 -define:_Z8ENCORE_64K_SERIES
ARCHSTDINCLUDES = -stdinc:'$(WTOPDIR)\include;$(WZDSSTDINCDIR);$(WZDSZILOGINCDIR);$(WZDSF46XINCDIR)' endif
ifeq ($(CONFIG_ARCH_CHIP_Z8F640X),y)
ARCHDEFINES = -define:_Z8ENCORE_F640X -define:_Z8F6403 -define:_Z8ENCORE_640_FAMILY
endif
ARCHSTDINCLUDES = -stdinc:'$(WTOPDIR)\include;$(WZDSSTDINCDIR);$(WZDSZILOGINCDIR);$(WZDSDEVINCDIR)'
ARCHUSRINCLUDES = -usrinc:'.' ARCHUSRINCLUDES = -usrinc:'.'
ARCHINCLUDES = $(ARCHSTDINCLUDES) $(ARCHUSRINCLUDES) ARCHINCLUDES = $(ARCHSTDINCLUDES) $(ARCHUSRINCLUDES)
CFLAGS = $(ARCHWARNINGS) $(ARCHOPTIMIZATION) $(ARCHLIST) \ CFLAGS = $(ARCHWARNINGS) $(ARCHOPTIMIZATION) $(ARCHLIST) \
$(ARCHCPUFLAGS) $(ARCHINCLUDES) $(ARCHDEFINES) $(ARCHCPUFLAGS) $(ARCHINCLUDES) $(ARCHDEFINES)
ifeq ($(CONFIG_ARCH_CHIP_Z8F642X),y)
CPPDEFINES = -D_Z8ENCORE_F642X -D_Z8F6423 -D_Z8ENCORE_64K_SERIES -D__ASSEMBLY__ CPPDEFINES = -D_Z8ENCORE_F642X -D_Z8F6423 -D_Z8ENCORE_64K_SERIES -D__ASSEMBLY__
endif
ifeq ($(CONFIG_ARCH_CHIP_Z8F640X),y)
CPPDEFINES = -D_Z8ENCORE_F640X -D_Z8F6403 -D_Z8ENCORE_640_FAMILY -D__ASSEMBLY__
endif
CPPINCLUDES = -I$(TOPDIR)/include CPPINCLUDES = -I$(TOPDIR)/include
CPPFLAGS = $(CPPDEFINES) $(CPPINCLUDES) CPPFLAGS = $(CPPDEFINES) $(CPPINCLUDES)

View File

@ -43,24 +43,27 @@
# architecture. # architecture.
# CONFIG_ARCH_CHIP_chip - for use in C code. This identifies the # CONFIG_ARCH_CHIP_chip - for use in C code. This identifies the
# particular chip or SoC that the architecture is implemented # particular chip or SoC that the architecture is implemented
# in (CONFIG_ARCH_CHIP_Z16F) # in (CONFIG_ARCH_CHIP_Z8)
# CONFIG_ARCH_CHIP_Z16F2810 - Identifies z16f chip variant # CONFIG_ARCH_CHIP_Z8F642X - Identifies z8 chip variant
# CONFIG_ARCH_CHIP_Z16F2811 # CONFIG_ARCH_CHIP_Z8F6423
# CONFIG_ARCH_CHIP_Z16F3211 # CONFIG_ARCH_CHIP_Z8F640X
# CONFIG_ARCH_CHIP_Z16F6411 # CONFIG_ARCH_CHIP_Z8F6403
# CONFIG_ARCH_BOARD - identifies the configs subdirectory and, hence, # CONFIG_ARCH_BOARD - identifies the configs subdirectory and, hence,
# the board that supports the particular chip or SoC. # the board that supports the particular chip or SoC.
# CONFIG_ARCH_BOARD_name - for use in C code # CONFIG_ARCH_BOARD_name - for use in C code
# CONFIG_BOARD_LOOPSPERMSEC - for delay loops # CONFIG_BOARD_LOOPSPERMSEC - for delay loops
# CONFIG_ENDIAN_BIG - define if big endian (default is little endian) # CONFIG_ENDIAN_BIG - define if big endian (default is little endian)
# CONFIG_DRAM_SIZE - Describes the installed DRAM. # CONFIG_DRAM_SIZE - Describes the installed DRAM.
# CONFIG_ARCH_LEDS - Use LEDs to show state. Unique to z16f. # CONFIG_ARCH_LEDS - Use LEDs to show state. Unique to z8 board architecture.
# #
CONFIG_ARCH=z80 CONFIG_ARCH=z80
CONFIG_ARCH_Z8=y CONFIG_ARCH_Z8=y
CONFIG_ARCH_CHIP=z8 CONFIG_ARCH_CHIP=z8
CONFIG_ARCH_CHIP_Z8=y CONFIG_ARCH_CHIP_Z8=y
CONFIG_ARCH_CHIP_Z8F6403=y CONFIG_ARCH_CHIP_Z8F642X=y
CONFIG_ARCH_CHIP_Z8F6423=y
CONFIG_ARCH_CHIP_Z8F640X=n
CONFIG_ARCH_CHIP_Z8F6403=n
CONFIG_ARCH_BOARD=z8encore000zco CONFIG_ARCH_BOARD=z8encore000zco
CONFIG_ARCH_BOARD_Z8ENCORE000ZCO=y CONFIG_ARCH_BOARD_Z8ENCORE000ZCO=y
CONFIG_BOARD_LOOPSPERMSEC=1250 CONFIG_BOARD_LOOPSPERMSEC=1250

View File

@ -49,3 +49,4 @@ alias ez8asm="${ZDSBINDIR}/ez8asm.exe"
alias ez8cc="${ZDSBINDIR}/ez8cc.exe" alias ez8cc="${ZDSBINDIR}/ez8cc.exe"
alias ez8lib="${ZDSBINDIR}/ez8lib.exe" alias ez8lib="${ZDSBINDIR}/ez8lib.exe"
alias ez8link="${ZDSBINDIR}/ez8link.exe" alias ez8link="${ZDSBINDIR}/ez8link.exe"