Fixes for z80 compilation with SDCC toolchain. There are still a few header file and linker issues
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5149 42af7a65-404d-4744-a932-0658087f49c3
This commit is contained in:
parent
3e7c5c1b43
commit
3fcb8d9d6c
@ -94,7 +94,7 @@ $(AOBJS) $(HEAD_OBJ): %$(OBJEXT): %$(ASMEXT)
|
|||||||
$(COBJS): %$(OBJEXT): %.c
|
$(COBJS): %$(OBJEXT): %.c
|
||||||
$(call COMPILE, $<, $@)
|
$(call COMPILE, $<, $@)
|
||||||
|
|
||||||
# This is a kludge to work around some conflicting symbols in libsdcc.liXqueb
|
# This is a kludge to work around some conflicting symbols in libsdcc.lib
|
||||||
|
|
||||||
$(SDCCLIBDIR)/myz80.lib: $(SDCCLIBDIR)/$(SDCCLIB)
|
$(SDCCLIBDIR)/myz80.lib: $(SDCCLIBDIR)/$(SDCCLIB)
|
||||||
@cat $(SDCCLIBDIR)/$(SDCCLIB) | \
|
@cat $(SDCCLIBDIR)/$(SDCCLIB) | \
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
* arch/z80/src/z80/z80_io.c
|
* arch/z80/src/z80/z80_io.c
|
||||||
*
|
*
|
||||||
* Copyright (C) 2008-2009 Gregory Nutt. All rights reserved.
|
* Copyright (C) 2008-2009, 2012 Gregory Nutt. All rights reserved.
|
||||||
* Author: Gregory Nutt <gnutt@nuttx.org>
|
* Author: Gregory Nutt <gnutt@nuttx.org>
|
||||||
*
|
*
|
||||||
* Redistribution and use in source and binary forms, with or without
|
* Redistribution and use in source and binary forms, with or without
|
||||||
@ -44,9 +44,23 @@
|
|||||||
#include "up_internal.h"
|
#include "up_internal.h"
|
||||||
|
|
||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
* Private Definitions
|
* Pre-processor Definitions
|
||||||
****************************************************************************/
|
****************************************************************************/
|
||||||
|
|
||||||
|
#undef ASM
|
||||||
|
#undef ENDASM
|
||||||
|
#undef NAKED
|
||||||
|
|
||||||
|
#ifdef CONFIG_SDCC_OLD
|
||||||
|
# define ASM _asm
|
||||||
|
# define ENDASM _endasm
|
||||||
|
# define NAKED
|
||||||
|
#else
|
||||||
|
# define ASM __asm
|
||||||
|
# define ENDASM __endasm
|
||||||
|
# define NAKED __naked
|
||||||
|
#endif
|
||||||
|
|
||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
* Private Data
|
* Private Data
|
||||||
****************************************************************************/
|
****************************************************************************/
|
||||||
@ -69,11 +83,11 @@
|
|||||||
|
|
||||||
void outp(char p, char c)
|
void outp(char p, char c)
|
||||||
{
|
{
|
||||||
_asm
|
ASM
|
||||||
ld c, 4(ix) ; port
|
ld c, 4(ix) ; port
|
||||||
ld a, 5(ix) ; value
|
ld a, 5(ix) ; value
|
||||||
out (c), a
|
out (c), a
|
||||||
_endasm;
|
ENDASM;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -85,10 +99,10 @@ void outp(char p, char c)
|
|||||||
*
|
*
|
||||||
****************************************************************************/
|
****************************************************************************/
|
||||||
|
|
||||||
char inp(char p)
|
char inp(char p) NAKED
|
||||||
{
|
{
|
||||||
_asm
|
ASM
|
||||||
ld c, 4(ix) ;port
|
ld c, 4(ix) ;port
|
||||||
in l, (c)
|
in l, (c)
|
||||||
_endasm;
|
ENDASM;
|
||||||
}
|
}
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
* arch/z80/src/z80/z80_irq.c
|
* arch/z80/src/z80/z80_irq.c
|
||||||
*
|
*
|
||||||
* Copyright (C) 2007-2009, 2011 Gregory Nutt. All rights reserved.
|
* Copyright (C) 2007-2009, 2011-2012 Gregory Nutt. All rights reserved.
|
||||||
* Author: Gregory Nutt <gnutt@nuttx.org>
|
* Author: Gregory Nutt <gnutt@nuttx.org>
|
||||||
*
|
*
|
||||||
* Redistribution and use in source and binary forms, with or without
|
* Redistribution and use in source and binary forms, with or without
|
||||||
@ -48,6 +48,14 @@
|
|||||||
* Private Definitions
|
* Private Definitions
|
||||||
****************************************************************************/
|
****************************************************************************/
|
||||||
|
|
||||||
|
#ifdef CONFIG_SDCC_OLD
|
||||||
|
# define ASM _asm
|
||||||
|
# define ENDASM _endasm
|
||||||
|
#else
|
||||||
|
# define ASM __asm
|
||||||
|
# define ENDASM __endasm
|
||||||
|
#endif
|
||||||
|
|
||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
* Public Data
|
* Public Data
|
||||||
****************************************************************************/
|
****************************************************************************/
|
||||||
@ -80,13 +88,13 @@ volatile chipreg_t *current_regs;
|
|||||||
|
|
||||||
irqstate_t irqsave(void) __naked
|
irqstate_t irqsave(void) __naked
|
||||||
{
|
{
|
||||||
_asm
|
ASM
|
||||||
ld a, i ; AF Parity bit holds interrupt state
|
ld a, i ; AF Parity bit holds interrupt state
|
||||||
di ; Interrupts are disabled
|
di ; Interrupts are disabled
|
||||||
push af ; Return AF in HL
|
push af ; Return AF in HL
|
||||||
pop hl ;
|
pop hl ;
|
||||||
ret ;
|
ret ;
|
||||||
_endasm;
|
ENDASM;
|
||||||
}
|
}
|
||||||
|
|
||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
@ -99,7 +107,7 @@ irqstate_t irqsave(void) __naked
|
|||||||
|
|
||||||
void irqrestore(irqstate_t flags) __naked
|
void irqrestore(irqstate_t flags) __naked
|
||||||
{
|
{
|
||||||
_asm
|
ASM
|
||||||
di ; Assume disabled
|
di ; Assume disabled
|
||||||
pop hl ; HL = return address
|
pop hl ; HL = return address
|
||||||
pop af ; AF Parity bit holds interrupt state
|
pop af ; AF Parity bit holds interrupt state
|
||||||
@ -109,5 +117,5 @@ statedisable:
|
|||||||
push af ; Restore stack
|
push af ; Restore stack
|
||||||
push hl ;
|
push hl ;
|
||||||
ret ; and return
|
ret ; and return
|
||||||
_endasm;
|
ENDASM;
|
||||||
}
|
}
|
||||||
|
@ -50,11 +50,10 @@ Configuring NuttX
|
|||||||
This configuration performs a simple, minimal OS test using
|
This configuration performs a simple, minimal OS test using
|
||||||
examples/ostest. This can be configurated as follows:
|
examples/ostest. This can be configurated as follows:
|
||||||
|
|
||||||
cd tools
|
cd tools
|
||||||
./configure.sh xtrs/ostest
|
./configure.sh xtrs/ostest
|
||||||
cd -
|
cd -
|
||||||
. ./setenv.sh
|
. ./setenv.sh
|
||||||
|
|
||||||
|
|
||||||
nsh
|
nsh
|
||||||
This configuration file builds NSH (examples/nsh). This
|
This configuration file builds NSH (examples/nsh). This
|
||||||
@ -63,10 +62,10 @@ Configuring NuttX
|
|||||||
|
|
||||||
This configuration can be selected by:
|
This configuration can be selected by:
|
||||||
|
|
||||||
cd tools
|
cd tools
|
||||||
./configure.sh xtrs/nsh
|
./configure.sh xtrs/nsh
|
||||||
cd -
|
cd -
|
||||||
. ./setenv.sh
|
. ./setenv.sh
|
||||||
|
|
||||||
pashello
|
pashello
|
||||||
Configures to use examples/pashello for execution from FLASH
|
Configures to use examples/pashello for execution from FLASH
|
||||||
@ -77,10 +76,10 @@ Configuring NuttX
|
|||||||
|
|
||||||
This configuration can be selected by:
|
This configuration can be selected by:
|
||||||
|
|
||||||
cd tools
|
cd tools
|
||||||
./configure.sh xtrs/pashello
|
./configure.sh xtrs/pashello
|
||||||
cd -
|
cd -
|
||||||
. ./setenv.sh
|
. ./setenv.sh
|
||||||
|
|
||||||
Building the SDCC toolchain
|
Building the SDCC toolchain
|
||||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||||
@ -122,11 +121,11 @@ has some compatibilty problems with the older SDCC compiler. For one, you
|
|||||||
will need to change the Z80 assember name and options in the Make.defs
|
will need to change the Z80 assember name and options in the Make.defs
|
||||||
files as follows:
|
files as follows:
|
||||||
|
|
||||||
-AS = as-z80
|
-AS = as-z80
|
||||||
+AS = sdasz80
|
+AS = sdasz80
|
||||||
|
|
||||||
- @$(AS) $(ASFLAGS) $2 $1
|
- @$(AS) $(ASFLAGS) $2 $1
|
||||||
+ $(AS) $(ASFLAGS) $1
|
+ $(AS) $(ASFLAGS) $1
|
||||||
|
|
||||||
For another, I had other problems building with that 20091106 that look
|
For another, I had other problems building with that 20091106 that look
|
||||||
like compiler bugs. If you are using UBUNTU 9.10, you may have to either
|
like compiler bugs. If you are using UBUNTU 9.10, you may have to either
|
||||||
@ -134,6 +133,9 @@ like compiler bugs. If you are using UBUNTU 9.10, you may have to either
|
|||||||
the older stable releases, or (2) wait for the next stable SDCC release
|
the older stable releases, or (2) wait for the next stable SDCC release
|
||||||
after 2.9.0.
|
after 2.9.0.
|
||||||
|
|
||||||
|
See below: If you wish to continue using the older SDCC toolchain, you
|
||||||
|
must now also add CONFIG_SDCC_OLD=y to your configuration file.
|
||||||
|
|
||||||
Newer SDCC Versions
|
Newer SDCC Versions
|
||||||
^^^^^^^^^^^^^^^^^^^
|
^^^^^^^^^^^^^^^^^^^
|
||||||
|
|
||||||
@ -154,4 +156,14 @@ This is the text of bug 3468951 reported on the SourceForge website:
|
|||||||
sdcc-2.6.0-asz80-symlen.patch is unnecessary, and it and the corresponding
|
sdcc-2.6.0-asz80-symlen.patch is unnecessary, and it and the corresponding
|
||||||
section from the README can be removed.
|
section from the README can be removed.
|
||||||
|
|
||||||
These changes have not yet been incorporated or verified.
|
These changes *have* been incorporated but only partially verified. In order
|
||||||
|
to get a successful compilation, I had to copy stdarg.h out of the SDCC source
|
||||||
|
(at sdcc/device/include/stdarg.h) to include/nuttx/stdarg.h.
|
||||||
|
|
||||||
|
There are also some library related issues when you get to the final build
|
||||||
|
that I have not looked into yet.
|
||||||
|
|
||||||
|
If you want to back out these change and continue to use the older toolchain
|
||||||
|
in your build, simpy define the following in your configuration file:
|
||||||
|
|
||||||
|
CONFIG_SDCC_OLD=y
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/************************************************************
|
/************************************************************
|
||||||
* board/board.h
|
* configs/xtrs/include/board.h
|
||||||
*
|
*
|
||||||
* Copyright (C) 2008 Gregory Nutt. All rights reserved.
|
* Copyright (C) 2008 Gregory Nutt. All rights reserved.
|
||||||
* Author: Gregory Nutt <gnutt@nuttx.org>
|
* Author: Gregory Nutt <gnutt@nuttx.org>
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
* board/trs80-m3.h
|
* configs/xtrs/include/trs80-m3.h
|
||||||
*
|
*
|
||||||
* Copyright (C) 2008 Jacques Pelletier. All rights reserved.
|
* Copyright (C) 2008 Jacques Pelletier. All rights reserved.
|
||||||
* Author: Jacques Pelletier
|
* Author: Jacques Pelletier
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
############################################################################
|
############################################################################
|
||||||
# configs/xtrs/Make.defs
|
# configs/xtrs/nsh/Make.defs
|
||||||
#
|
#
|
||||||
# Copyright (C) 2007, 2008, 2012 Gregory Nutt. All rights reserved.
|
# Copyright (C) 2007, 2008, 2012 Gregory Nutt. All rights reserved.
|
||||||
# Author: Gregory Nutt <gnutt@nuttx.org>
|
# Author: Gregory Nutt <gnutt@nuttx.org>
|
||||||
@ -36,27 +36,38 @@
|
|||||||
include ${TOPDIR}/.config
|
include ${TOPDIR}/.config
|
||||||
include ${TOPDIR}/tools/Config.mk
|
include ${TOPDIR}/tools/Config.mk
|
||||||
|
|
||||||
ifeq ("${CONFIG_DEBUG_SYMBOLS}","y")
|
CROSSDEV =
|
||||||
|
CC = sdcc
|
||||||
|
CPP = sdcpp
|
||||||
|
AR = sdcclib -a
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_SDCC_OLD),y)
|
||||||
|
|
||||||
|
LD = link-z80
|
||||||
|
AS = as-z80
|
||||||
|
ARCHCPUFLAGS = -mz80 --stack-auto --int-long-reent --float-reent
|
||||||
|
|
||||||
|
else
|
||||||
|
|
||||||
|
LD = sdldz80
|
||||||
|
AS = sdasz80
|
||||||
|
ARCHCPUFLAGS = -mz80
|
||||||
|
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_DEBUG_SYMBOLS),y)
|
||||||
ARCHOPTIMIZATION = --debug
|
ARCHOPTIMIZATION = --debug
|
||||||
else
|
else
|
||||||
ARCHOPTIMIZATION =
|
ARCHOPTIMIZATION =
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ARCHCPUFLAGS = -mz80 --stack-auto --int-long-reent --float-reent
|
ARCHPICFLAGS =
|
||||||
ARCHPICFLAGS =
|
ARCHWARNINGS =
|
||||||
ARCHWARNINGS =
|
|
||||||
ARCHDEFINES =
|
ARCHDEFINES =
|
||||||
ARCHINCLUDES = -I. -I$(TOPDIR)/include
|
ARCHINCLUDES = -I. -I$(TOPDIR)/include
|
||||||
|
|
||||||
CROSSDEV =
|
|
||||||
CC = sdcc
|
|
||||||
CPP = sdcpp
|
|
||||||
LD = link-z80
|
|
||||||
AS = as-z80
|
|
||||||
AR = sdcclib -a
|
|
||||||
|
|
||||||
CFLAGS = $(ARCHWARNINGS) $(ARCHOPTIMIZATION) \
|
CFLAGS = $(ARCHWARNINGS) $(ARCHOPTIMIZATION) \
|
||||||
$(ARCHCPUFLAGS) $(ARCHINCLUDES) $(ARCHDEFINES) $(EXTRADEFINES)
|
$(ARCHCPUFLAGS) $(ARCHINCLUDES) $(ARCHDEFINES) $(EXTRADEFINES)
|
||||||
CPPFLAGS = $(ARCHINCLUDES) $(ARCHDEFINES) $(EXTRADEFINES)
|
CPPFLAGS = $(ARCHINCLUDES) $(ARCHDEFINES) $(EXTRADEFINES)
|
||||||
ASFLAGS = -x -a -l -o -s
|
ASFLAGS = -x -a -l -o -s
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
############################################################################
|
############################################################################
|
||||||
# sim/xtrs/nsh/defconfig
|
# configs/xtrs/nsh/defconfig
|
||||||
#
|
#
|
||||||
# Copyright (C) 2007-2010, 2012 Gregory Nutt. All rights reserved.
|
# Copyright (C) 2007-2010, 2012 Gregory Nutt. All rights reserved.
|
||||||
# Author: Gregory Nutt <gnutt@nuttx.org>
|
# Author: Gregory Nutt <gnutt@nuttx.org>
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# xtrs/setenv.sh
|
# configs/xtrs/nsh/setenv.sh
|
||||||
#
|
#
|
||||||
# Copyright (C) 2007, 2008 Gregory Nutt. All rights reserved.
|
# Copyright (C) 2007, 2008 Gregory Nutt. All rights reserved.
|
||||||
# Author: Gregory Nutt <gnutt@nuttx.org>
|
# Author: Gregory Nutt <gnutt@nuttx.org>
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
############################################################################
|
############################################################################
|
||||||
# configs/xtrs/Make.defs
|
# configs/xtrs/ostest/Make.defs
|
||||||
#
|
#
|
||||||
# Copyright (C) 2008, 2012 Gregory Nutt. All rights reserved.
|
# Copyright (C) 2008, 2012 Gregory Nutt. All rights reserved.
|
||||||
# Author: Gregory Nutt <gnutt@nuttx.org>
|
# Author: Gregory Nutt <gnutt@nuttx.org>
|
||||||
@ -36,27 +36,38 @@
|
|||||||
include ${TOPDIR}/.config
|
include ${TOPDIR}/.config
|
||||||
include ${TOPDIR}/tools/Config.mk
|
include ${TOPDIR}/tools/Config.mk
|
||||||
|
|
||||||
ifeq ("${CONFIG_DEBUG_SYMBOLS}","y")
|
CROSSDEV =
|
||||||
|
CC = sdcc
|
||||||
|
CPP = sdcpp
|
||||||
|
AR = sdcclib -a
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_SDCC_OLD),y)
|
||||||
|
|
||||||
|
LD = link-z80
|
||||||
|
AS = as-z80
|
||||||
|
ARCHCPUFLAGS = -mz80 --stack-auto --int-long-reent --float-reent
|
||||||
|
|
||||||
|
else
|
||||||
|
|
||||||
|
LD = sdldz80
|
||||||
|
AS = sdasz80
|
||||||
|
ARCHCPUFLAGS = -mz80
|
||||||
|
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_DEBUG_SYMBOLS),y)
|
||||||
ARCHOPTIMIZATION = --debug
|
ARCHOPTIMIZATION = --debug
|
||||||
else
|
else
|
||||||
ARCHOPTIMIZATION =
|
ARCHOPTIMIZATION =
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ARCHCPUFLAGS = -mz80 --stack-auto --int-long-reent --float-reent
|
ARCHPICFLAGS =
|
||||||
ARCHPICFLAGS =
|
ARCHWARNINGS =
|
||||||
ARCHWARNINGS =
|
|
||||||
ARCHDEFINES =
|
ARCHDEFINES =
|
||||||
ARCHINCLUDES = -I. -I$(TOPDIR)/include
|
ARCHINCLUDES = -I. -I$(TOPDIR)/include
|
||||||
|
|
||||||
CROSSDEV =
|
|
||||||
CC = sdcc
|
|
||||||
CPP = sdcpp
|
|
||||||
LD = link-z80
|
|
||||||
AS = as-z80
|
|
||||||
AR = sdcclib -a
|
|
||||||
|
|
||||||
CFLAGS = $(ARCHWARNINGS) $(ARCHOPTIMIZATION) \
|
CFLAGS = $(ARCHWARNINGS) $(ARCHOPTIMIZATION) \
|
||||||
$(ARCHCPUFLAGS) $(ARCHINCLUDES) $(ARCHDEFINES) $(EXTRADEFINES)
|
$(ARCHCPUFLAGS) $(ARCHINCLUDES) $(ARCHDEFINES) $(EXTRADEFINES)
|
||||||
CPPFLAGS = $(ARCHINCLUDES) $(ARCHDEFINES) $(EXTRADEFINES)
|
CPPFLAGS = $(ARCHINCLUDES) $(ARCHDEFINES) $(EXTRADEFINES)
|
||||||
ASFLAGS = -x -a -l -o -s
|
ASFLAGS = -x -a -l -o -s
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# xtrs/setenv.sh
|
# configs/xtrs/ostest/setenv.sh
|
||||||
#
|
#
|
||||||
# Copyright (C) 2008 Gregory Nutt. All rights reserved.
|
# Copyright (C) 2008 Gregory Nutt. All rights reserved.
|
||||||
# Author: Gregory Nutt <gnutt@nuttx.org>
|
# Author: Gregory Nutt <gnutt@nuttx.org>
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
############################################################################
|
############################################################################
|
||||||
# configs/xtrs/Make.defs
|
# configs/xtrs/pashello/Make.defs
|
||||||
#
|
#
|
||||||
# Copyright (C) 2008, 2012 Gregory Nutt. All rights reserved.
|
# Copyright (C) 2008, 2012 Gregory Nutt. All rights reserved.
|
||||||
# Author: Gregory Nutt <gnutt@nuttx.org>
|
# Author: Gregory Nutt <gnutt@nuttx.org>
|
||||||
@ -36,27 +36,38 @@
|
|||||||
include ${TOPDIR}/.config
|
include ${TOPDIR}/.config
|
||||||
include ${TOPDIR}/tools/Config.mk
|
include ${TOPDIR}/tools/Config.mk
|
||||||
|
|
||||||
ifeq ("${CONFIG_DEBUG_SYMBOLS}","y")
|
CROSSDEV =
|
||||||
|
CC = sdcc
|
||||||
|
CPP = sdcpp
|
||||||
|
AR = sdcclib -a
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_SDCC_OLD),y)
|
||||||
|
|
||||||
|
LD = link-z80
|
||||||
|
AS = as-z80
|
||||||
|
ARCHCPUFLAGS = -mz80 --stack-auto --int-long-reent --float-reent
|
||||||
|
|
||||||
|
else
|
||||||
|
|
||||||
|
LD = sdldz80
|
||||||
|
AS = sdasz80
|
||||||
|
ARCHCPUFLAGS = -mz80
|
||||||
|
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_DEBUG_SYMBOLS),y)
|
||||||
ARCHOPTIMIZATION = --debug
|
ARCHOPTIMIZATION = --debug
|
||||||
else
|
else
|
||||||
ARCHOPTIMIZATION =
|
ARCHOPTIMIZATION =
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ARCHCPUFLAGS = -mz80 --stack-auto --int-long-reent --float-reent
|
ARCHPICFLAGS =
|
||||||
ARCHPICFLAGS =
|
ARCHWARNINGS =
|
||||||
ARCHWARNINGS =
|
|
||||||
ARCHDEFINES =
|
ARCHDEFINES =
|
||||||
ARCHINCLUDES = -I. -I$(TOPDIR)/include
|
ARCHINCLUDES = -I. -I$(TOPDIR)/include
|
||||||
|
|
||||||
CROSSDEV =
|
|
||||||
CC = sdcc
|
|
||||||
CPP = sdcpp
|
|
||||||
LD = link-z80
|
|
||||||
AS = as-z80
|
|
||||||
AR = sdcclib -a
|
|
||||||
|
|
||||||
CFLAGS = $(ARCHWARNINGS) $(ARCHOPTIMIZATION) \
|
CFLAGS = $(ARCHWARNINGS) $(ARCHOPTIMIZATION) \
|
||||||
$(ARCHCPUFLAGS) $(ARCHINCLUDES) $(ARCHDEFINES) $(EXTRADEFINES)
|
$(ARCHCPUFLAGS) $(ARCHINCLUDES) $(ARCHDEFINES) $(EXTRADEFINES)
|
||||||
CPPFLAGS = $(ARCHINCLUDES) $(ARCHDEFINES) $(EXTRADEFINES)
|
CPPFLAGS = $(ARCHINCLUDES) $(ARCHDEFINES) $(EXTRADEFINES)
|
||||||
ASFLAGS = -x -a -l -o -s
|
ASFLAGS = -x -a -l -o -s
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# xtrs/setenv.sh
|
# configs/xtrs/pashello/setenv.sh
|
||||||
#
|
#
|
||||||
# Copyright (C) 2008 Gregory Nutt. All rights reserved.
|
# Copyright (C) 2008 Gregory Nutt. All rights reserved.
|
||||||
# Author: Gregory Nutt <gnutt@nuttx.org>
|
# Author: Gregory Nutt <gnutt@nuttx.org>
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
* board/xtr_irq.c
|
* configs/xtrs/src/xtr_irq.c
|
||||||
*
|
*
|
||||||
* Copyright (C) 2008-2009 Gregory Nutt. All rights reserved.
|
* Copyright (C) 2008-2009 Gregory Nutt. All rights reserved.
|
||||||
* Author: Gregory Nutt <gnutt@nuttx.org>
|
* Author: Gregory Nutt <gnutt@nuttx.org>
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/********************************************************************************
|
/********************************************************************************
|
||||||
* board/xtr_lowputc.c
|
* configs/xtrs/src//xtr_lowputc.c
|
||||||
*
|
*
|
||||||
* Copyright (C) 2008 Jacques Pelletier. All rights reserved.
|
* Copyright (C) 2008 Jacques Pelletier. All rights reserved.
|
||||||
* Author: Jacques Pelletier
|
* Author: Jacques Pelletier
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
* board/xtr_serial.c
|
* config/xtrs/src/xtr_serial.c
|
||||||
*
|
*
|
||||||
* Copyright (C) 2008 Jacques Pelletier. All rights reserved.
|
* Copyright (C) 2008 Jacques Pelletier. All rights reserved.
|
||||||
* Author: Jacques Pelletier
|
* Author: Jacques Pelletier
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
* board/xtr_timerisr.c
|
* configs/xtrs/src/xtr_timerisr.c
|
||||||
*
|
*
|
||||||
* Copyright (C) 2008-2009 Gregory Nutt. All rights reserved.
|
* Copyright (C) 2008-2009 Gregory Nutt. All rights reserved.
|
||||||
* Author: Gregory Nutt <gnutt@nuttx.org>
|
* Author: Gregory Nutt <gnutt@nuttx.org>
|
||||||
|
@ -23,11 +23,10 @@ Configuring NuttX
|
|||||||
This configuration performs a simple, minimal OS test using
|
This configuration performs a simple, minimal OS test using
|
||||||
examples/ostest. This can be configurated as follows:
|
examples/ostest. This can be configurated as follows:
|
||||||
|
|
||||||
cd tools
|
cd tools
|
||||||
./configure.sh z80sim/ostest
|
./configure.sh z80sim/ostest
|
||||||
cd -
|
cd -
|
||||||
. ./setenv.sh
|
. ./setenv.sh
|
||||||
|
|
||||||
|
|
||||||
nsh
|
nsh
|
||||||
This configuration file builds NSH (examples/nsh). This
|
This configuration file builds NSH (examples/nsh). This
|
||||||
@ -36,10 +35,10 @@ Configuring NuttX
|
|||||||
|
|
||||||
This configuration can be selected by:
|
This configuration can be selected by:
|
||||||
|
|
||||||
cd tools
|
cd tools
|
||||||
./configure.sh z80sim/nsh
|
./configure.sh z80sim/nsh
|
||||||
cd -
|
cd -
|
||||||
. ./setenv.sh
|
. ./setenv.sh
|
||||||
|
|
||||||
pashello
|
pashello
|
||||||
Configures to use examples/pashello for execution from FLASH
|
Configures to use examples/pashello for execution from FLASH
|
||||||
@ -50,10 +49,10 @@ Configuring NuttX
|
|||||||
|
|
||||||
This configuration can be selected by:
|
This configuration can be selected by:
|
||||||
|
|
||||||
cd tools
|
cd tools
|
||||||
./configure.sh z80sim/pashello
|
./configure.sh z80sim/pashello
|
||||||
cd -
|
cd -
|
||||||
. ./setenv.sh
|
. ./setenv.sh
|
||||||
|
|
||||||
Building the SDCC toolchain
|
Building the SDCC toolchain
|
||||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||||
@ -95,11 +94,11 @@ has some compatibilty problems with the older SDCC compiler. For one, you
|
|||||||
will need to change the Z80 assember name and options in the Make.defs
|
will need to change the Z80 assember name and options in the Make.defs
|
||||||
files as follows:
|
files as follows:
|
||||||
|
|
||||||
-AS = as-z80
|
-AS = as-z80
|
||||||
+AS = sdasz80
|
+AS = sdasz80
|
||||||
|
|
||||||
- @$(AS) $(ASFLAGS) $2 $1
|
- @$(AS) $(ASFLAGS) $2 $1
|
||||||
+ $(AS) $(ASFLAGS) $1
|
+ $(AS) $(ASFLAGS) $1
|
||||||
|
|
||||||
For another, I had other problems building with that 20091106 that look
|
For another, I had other problems building with that 20091106 that look
|
||||||
like compiler bugs. If you are using UBUNTU 9.10, you may have to either
|
like compiler bugs. If you are using UBUNTU 9.10, you may have to either
|
||||||
@ -107,6 +106,9 @@ like compiler bugs. If you are using UBUNTU 9.10, you may have to either
|
|||||||
the older stable releases, or (2) wait for the next stable SDCC release
|
the older stable releases, or (2) wait for the next stable SDCC release
|
||||||
after 2.9.0.
|
after 2.9.0.
|
||||||
|
|
||||||
|
See below: If you wish to continue using the older SDCC toolchain, you
|
||||||
|
must now also add CONFIG_SDCC_OLD=y to your configuration file.
|
||||||
|
|
||||||
Newer SDCC Versions
|
Newer SDCC Versions
|
||||||
^^^^^^^^^^^^^^^^^^^
|
^^^^^^^^^^^^^^^^^^^
|
||||||
|
|
||||||
@ -127,4 +129,14 @@ This is the text of bug 3468951 reported on the SourceForge website:
|
|||||||
sdcc-2.6.0-asz80-symlen.patch is unnecessary, and it and the corresponding
|
sdcc-2.6.0-asz80-symlen.patch is unnecessary, and it and the corresponding
|
||||||
section from the README can be removed.
|
section from the README can be removed.
|
||||||
|
|
||||||
These changes have not yet been incorporated or verified.
|
These changes *have* been incorporated but only partially verified. In order
|
||||||
|
to get a successful compilation, I had to copy stdarg.h out of the SDCC source
|
||||||
|
(at sdcc/device/include/stdarg.h) to include/nuttx/stdarg.h.
|
||||||
|
|
||||||
|
There are also some library related issues when you get to the final build
|
||||||
|
that I have not looked into yet.
|
||||||
|
|
||||||
|
If you want to back out these change and continue to use the older toolchain
|
||||||
|
in your build, simpy define the following in your configuration file:
|
||||||
|
|
||||||
|
CONFIG_SDCC_OLD=y
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/************************************************************
|
/************************************************************
|
||||||
* board/board.h
|
* configs/z80sim/include/board.h
|
||||||
*
|
*
|
||||||
* Copyright (C) 2007, 2008 Gregory Nutt. All rights reserved.
|
* Copyright (C) 2007, 2008 Gregory Nutt. All rights reserved.
|
||||||
* Author: Gregory Nutt <gnutt@nuttx.org>
|
* Author: Gregory Nutt <gnutt@nuttx.org>
|
||||||
|
@ -36,27 +36,38 @@
|
|||||||
include ${TOPDIR}/.config
|
include ${TOPDIR}/.config
|
||||||
include ${TOPDIR}/tools/Config.mk
|
include ${TOPDIR}/tools/Config.mk
|
||||||
|
|
||||||
ifeq ("${CONFIG_DEBUG_SYMBOLS}","y")
|
CROSSDEV =
|
||||||
|
CC = sdcc
|
||||||
|
CPP = sdcpp
|
||||||
|
AR = sdcclib -a
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_SDCC_OLD),y)
|
||||||
|
|
||||||
|
LD = link-z80
|
||||||
|
AS = as-z80
|
||||||
|
ARCHCPUFLAGS = -mz80 --stack-auto --int-long-reent --float-reent
|
||||||
|
|
||||||
|
else
|
||||||
|
|
||||||
|
LD = sdldz80
|
||||||
|
AS = sdasz80
|
||||||
|
ARCHCPUFLAGS = -mz80
|
||||||
|
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_DEBUG_SYMBOLS),y)
|
||||||
ARCHOPTIMIZATION = --debug
|
ARCHOPTIMIZATION = --debug
|
||||||
else
|
else
|
||||||
ARCHOPTIMIZATION =
|
ARCHOPTIMIZATION =
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ARCHCPUFLAGS = -mz80 --stack-auto --int-long-reent --float-reent
|
ARCHPICFLAGS =
|
||||||
ARCHPICFLAGS =
|
ARCHWARNINGS =
|
||||||
ARCHWARNINGS =
|
|
||||||
ARCHDEFINES =
|
ARCHDEFINES =
|
||||||
ARCHINCLUDES = -I. -I$(TOPDIR)/include
|
ARCHINCLUDES = -I. -I$(TOPDIR)/include
|
||||||
|
|
||||||
CROSSDEV =
|
|
||||||
CC = sdcc
|
|
||||||
CPP = sdcpp
|
|
||||||
LD = link-z80
|
|
||||||
AS = as-z80
|
|
||||||
AR = sdcclib -a
|
|
||||||
|
|
||||||
CFLAGS = $(ARCHWARNINGS) $(ARCHOPTIMIZATION) \
|
CFLAGS = $(ARCHWARNINGS) $(ARCHOPTIMIZATION) \
|
||||||
$(ARCHCPUFLAGS) $(ARCHINCLUDES) $(ARCHDEFINES) $(EXTRADEFINES)
|
$(ARCHCPUFLAGS) $(ARCHINCLUDES) $(ARCHDEFINES) $(EXTRADEFINES)
|
||||||
CPPFLAGS = $(ARCHINCLUDES) $(ARCHDEFINES) $(EXTRADEFINES)
|
CPPFLAGS = $(ARCHINCLUDES) $(ARCHDEFINES) $(EXTRADEFINES)
|
||||||
ASFLAGS = -x -a -l -o -s
|
ASFLAGS = -x -a -l -o -s
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
############################################################################
|
############################################################################
|
||||||
# sim/z80sim/nsh/defconfig
|
# configs/z80sim/nsh/defconfig
|
||||||
#
|
#
|
||||||
# Copyright (C) 2007-2010 Gregory Nutt. All rights reserved.
|
# Copyright (C) 2007-2010 Gregory Nutt. All rights reserved.
|
||||||
# Author: Gregory Nutt <gnutt@nuttx.org>
|
# Author: Gregory Nutt <gnutt@nuttx.org>
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# z80sim/setenv.sh
|
# configs/z80sim/nsh/setenv.sh
|
||||||
#
|
#
|
||||||
# Copyright (C) 2007, 2008 Gregory Nutt. All rights reserved.
|
# Copyright (C) 2007, 2008 Gregory Nutt. All rights reserved.
|
||||||
# Author: Gregory Nutt <gnutt@nuttx.org>
|
# Author: Gregory Nutt <gnutt@nuttx.org>
|
||||||
|
@ -36,27 +36,38 @@
|
|||||||
include ${TOPDIR}/.config
|
include ${TOPDIR}/.config
|
||||||
include ${TOPDIR}/tools/Config.mk
|
include ${TOPDIR}/tools/Config.mk
|
||||||
|
|
||||||
ifeq ("${CONFIG_DEBUG_SYMBOLS}","y")
|
CROSSDEV =
|
||||||
|
CC = sdcc
|
||||||
|
CPP = sdcpp
|
||||||
|
AR = sdcclib -a
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_SDCC_OLD),y)
|
||||||
|
|
||||||
|
LD = link-z80
|
||||||
|
AS = as-z80
|
||||||
|
ARCHCPUFLAGS = -mz80 --stack-auto --int-long-reent --float-reent
|
||||||
|
|
||||||
|
else
|
||||||
|
|
||||||
|
LD = sdldz80
|
||||||
|
AS = sdasz80
|
||||||
|
ARCHCPUFLAGS = -mz80
|
||||||
|
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_DEBUG_SYMBOLS),y)
|
||||||
ARCHOPTIMIZATION = --debug
|
ARCHOPTIMIZATION = --debug
|
||||||
else
|
else
|
||||||
ARCHOPTIMIZATION =
|
ARCHOPTIMIZATION =
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ARCHCPUFLAGS = -mz80 --stack-auto --int-long-reent --float-reent
|
ARCHPICFLAGS =
|
||||||
ARCHPICFLAGS =
|
ARCHWARNINGS =
|
||||||
ARCHWARNINGS =
|
|
||||||
ARCHDEFINES =
|
ARCHDEFINES =
|
||||||
ARCHINCLUDES = -I. -I$(TOPDIR)/include
|
ARCHINCLUDES = -I. -I$(TOPDIR)/include
|
||||||
|
|
||||||
CROSSDEV =
|
|
||||||
CC = sdcc
|
|
||||||
CPP = sdcpp
|
|
||||||
LD = link-z80
|
|
||||||
AS = as-z80
|
|
||||||
AR = sdcclib -a
|
|
||||||
|
|
||||||
CFLAGS = $(ARCHWARNINGS) $(ARCHOPTIMIZATION) \
|
CFLAGS = $(ARCHWARNINGS) $(ARCHOPTIMIZATION) \
|
||||||
$(ARCHCPUFLAGS) $(ARCHINCLUDES) $(ARCHDEFINES) $(EXTRADEFINES)
|
$(ARCHCPUFLAGS) $(ARCHINCLUDES) $(ARCHDEFINES) $(EXTRADEFINES)
|
||||||
CPPFLAGS = $(ARCHINCLUDES) $(ARCHDEFINES) $(EXTRADEFINES)
|
CPPFLAGS = $(ARCHINCLUDES) $(ARCHDEFINES) $(EXTRADEFINES)
|
||||||
ASFLAGS = -x -a -l -o -s
|
ASFLAGS = -x -a -l -o -s
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# z80sim/setenv.sh
|
# configs/z80sim/ostest/setenv.sh
|
||||||
#
|
#
|
||||||
# Copyright (C) 2007, 2008 Gregory Nutt. All rights reserved.
|
# Copyright (C) 2007, 2008 Gregory Nutt. All rights reserved.
|
||||||
# Author: Gregory Nutt <gnutt@nuttx.org>
|
# Author: Gregory Nutt <gnutt@nuttx.org>
|
||||||
|
@ -36,27 +36,38 @@
|
|||||||
include ${TOPDIR}/.config
|
include ${TOPDIR}/.config
|
||||||
include ${TOPDIR}/tools/Config.mk
|
include ${TOPDIR}/tools/Config.mk
|
||||||
|
|
||||||
ifeq ("${CONFIG_DEBUG_SYMBOLS}","y")
|
CROSSDEV =
|
||||||
|
CC = sdcc
|
||||||
|
CPP = sdcpp
|
||||||
|
AR = sdcclib -a
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_SDCC_OLD),y)
|
||||||
|
|
||||||
|
LD = link-z80
|
||||||
|
AS = as-z80
|
||||||
|
ARCHCPUFLAGS = -mz80 --stack-auto --int-long-reent --float-reent
|
||||||
|
|
||||||
|
else
|
||||||
|
|
||||||
|
LD = sdldz80
|
||||||
|
AS = sdasz80
|
||||||
|
ARCHCPUFLAGS = -mz80
|
||||||
|
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_DEBUG_SYMBOLS),y)
|
||||||
ARCHOPTIMIZATION = --debug
|
ARCHOPTIMIZATION = --debug
|
||||||
else
|
else
|
||||||
ARCHOPTIMIZATION =
|
ARCHOPTIMIZATION =
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ARCHCPUFLAGS = -mz80 --stack-auto --int-long-reent --float-reent
|
ARCHPICFLAGS =
|
||||||
ARCHPICFLAGS =
|
ARCHWARNINGS =
|
||||||
ARCHWARNINGS =
|
|
||||||
ARCHDEFINES =
|
ARCHDEFINES =
|
||||||
ARCHINCLUDES = -I. -I$(TOPDIR)/include
|
ARCHINCLUDES = -I. -I$(TOPDIR)/include
|
||||||
|
|
||||||
CROSSDEV =
|
|
||||||
CC = sdcc
|
|
||||||
CPP = sdcpp
|
|
||||||
LD = link-z80
|
|
||||||
AS = as-z80
|
|
||||||
AR = sdcclib -a
|
|
||||||
|
|
||||||
CFLAGS = $(ARCHWARNINGS) $(ARCHOPTIMIZATION) \
|
CFLAGS = $(ARCHWARNINGS) $(ARCHOPTIMIZATION) \
|
||||||
$(ARCHCPUFLAGS) $(ARCHINCLUDES) $(ARCHDEFINES) $(EXTRADEFINES)
|
$(ARCHCPUFLAGS) $(ARCHINCLUDES) $(ARCHDEFINES) $(EXTRADEFINES)
|
||||||
CPPFLAGS = $(ARCHINCLUDES) $(ARCHDEFINES) $(EXTRADEFINES)
|
CPPFLAGS = $(ARCHINCLUDES) $(ARCHDEFINES) $(EXTRADEFINES)
|
||||||
ASFLAGS = -x -a -l -o -s
|
ASFLAGS = -x -a -l -o -s
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# z80sim/setenv.sh
|
# configs/z80sim/pashello/setenv.sh
|
||||||
#
|
#
|
||||||
# Copyright (C) 2007, 2008 Gregory Nutt. All rights reserved.
|
# Copyright (C) 2007, 2008 Gregory Nutt. All rights reserved.
|
||||||
# Author: Gregory Nutt <gnutt@nuttx.org>
|
# Author: Gregory Nutt <gnutt@nuttx.org>
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
* board/z80_irq.c
|
* configs/z80sim/src/z80_irq.c
|
||||||
*
|
*
|
||||||
* Copyright (C) 2007-2009 Gregory Nutt. All rights reserved.
|
* Copyright (C) 2007-2009 Gregory Nutt. All rights reserved.
|
||||||
* Author: Gregory Nutt <gnutt@nuttx.org>
|
* Author: Gregory Nutt <gnutt@nuttx.org>
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/********************************************************************************
|
/********************************************************************************
|
||||||
* board/z80_lowputc.c
|
* configs/z80sim/src//z80_lowputc.c
|
||||||
*
|
*
|
||||||
* Copyright (C) 2007-2009 Gregory Nutt. All rights reserved.
|
* Copyright (C) 2007-2009 Gregory Nutt. All rights reserved.
|
||||||
* Author: Gregory Nutt <gnutt@nuttx.org>
|
* Author: Gregory Nutt <gnutt@nuttx.org>
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
* board/z80_serial.c
|
* configs/z80sim/src/z80_serial.c
|
||||||
*
|
*
|
||||||
* Copyright (C) 2007-2009, 2012 Gregory Nutt. All rights reserved.
|
* Copyright (C) 2007-2009, 2012 Gregory Nutt. All rights reserved.
|
||||||
* Author: Gregory Nutt <gnutt@nuttx.org>
|
* Author: Gregory Nutt <gnutt@nuttx.org>
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
* board/z80_timerisr.c
|
* configs/z80sim/src/z80_timerisr.c
|
||||||
*
|
*
|
||||||
* Copyright (C) 2007-2009 Gregory Nutt. All rights reserved.
|
* Copyright (C) 2007-2009 Gregory Nutt. All rights reserved.
|
||||||
* Author: Gregory Nutt <gnutt@nuttx.org>
|
* Author: Gregory Nutt <gnutt@nuttx.org>
|
||||||
|
@ -39,8 +39,6 @@
|
|||||||
|
|
||||||
#include <nuttx/config.h>
|
#include <nuttx/config.h>
|
||||||
|
|
||||||
#ifdef CONFIG_ARCH_LOWGETC
|
|
||||||
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <assert.h>
|
#include <assert.h>
|
||||||
#include <errno.h>
|
#include <errno.h>
|
||||||
@ -49,6 +47,8 @@
|
|||||||
|
|
||||||
#include "lib_internal.h"
|
#include "lib_internal.h"
|
||||||
|
|
||||||
|
#ifdef CONFIG_ARCH_LOWGETC
|
||||||
|
|
||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
* Private Functions
|
* Private Functions
|
||||||
****************************************************************************/
|
****************************************************************************/
|
||||||
|
@ -91,13 +91,13 @@ static const char spaces[] = " \t\n\r\f\v";
|
|||||||
*
|
*
|
||||||
****************************************************************************/
|
****************************************************************************/
|
||||||
|
|
||||||
int sscanf(const char *buf, const char *fmt, ...)
|
int sscanf(FAR const char *buf, FAR const char *fmt, ...)
|
||||||
{
|
{
|
||||||
va_list ap;
|
va_list ap;
|
||||||
int count;
|
int count;
|
||||||
|
|
||||||
va_start(ap, fmt);
|
va_start(ap, fmt);
|
||||||
count = vsscanf((char*)buf, fmt, ap);
|
count = vsscanf((FAR char*)buf, fmt, ap);
|
||||||
va_end(ap);
|
va_end(ap);
|
||||||
return count;
|
return count;
|
||||||
}
|
}
|
||||||
@ -109,15 +109,15 @@ int sscanf(const char *buf, const char *fmt, ...)
|
|||||||
* ANSI standard vsscanf implementation.
|
* ANSI standard vsscanf implementation.
|
||||||
*
|
*
|
||||||
****************************************************************************/
|
****************************************************************************/
|
||||||
int vsscanf(char *buf, const char *s, va_list ap)
|
int vsscanf(FAR char *buf, FAR const char *s, va_list ap)
|
||||||
{
|
{
|
||||||
int count;
|
int count;
|
||||||
int noassign;
|
int noassign;
|
||||||
int width;
|
int width;
|
||||||
int base = 10;
|
int base = 10;
|
||||||
int lflag;
|
int lflag;
|
||||||
char *tv;
|
FAR char *tv;
|
||||||
const char *tc;
|
FAR const char *tc;
|
||||||
char tmp[MAXLN];
|
char tmp[MAXLN];
|
||||||
|
|
||||||
lvdbg("vsscanf: buf=\"%s\" fmt=\"%s\"\n", buf, s);
|
lvdbg("vsscanf: buf=\"%s\" fmt=\"%s\"\n", buf, s);
|
||||||
|
@ -36,13 +36,17 @@
|
|||||||
# Add the string C files to the build
|
# Add the string C files to the build
|
||||||
|
|
||||||
CSRCS += lib_checkbase.c lib_isbasedigit.c lib_memset.c lib_memchr.c \
|
CSRCS += lib_checkbase.c lib_isbasedigit.c lib_memset.c lib_memchr.c \
|
||||||
lib_memccpy.c lib_memcpy.c lib_memcmp.c lib_memmove.c lib_skipspace.c \
|
lib_memccpy.c lib_memcpy.c lib_memcmp.c lib_memmove.c lib_skipspace.c \
|
||||||
lib_strcasecmp.c lib_strcat.c lib_strchr.c lib_strcpy.c lib_strcmp.c \
|
lib_strcasecmp.c lib_strcat.c lib_strchr.c lib_strcpy.c lib_strcmp.c \
|
||||||
lib_strcspn.c lib_strdup.c lib_strerror.c lib_strlen.c lib_strnlen.c \
|
lib_strcspn.c lib_strdup.c lib_strerror.c lib_strlen.c lib_strnlen.c \
|
||||||
lib_strncasecmp.c lib_strncat.c lib_strncmp.c lib_strncpy.c \
|
lib_strncasecmp.c lib_strncat.c lib_strncmp.c lib_strncpy.c \
|
||||||
lib_strndup.c lib_strcasestr.c lib_strpbrk.c lib_strrchr.c\
|
lib_strndup.c lib_strcasestr.c lib_strpbrk.c lib_strrchr.c\
|
||||||
lib_strspn.c lib_strstr.c lib_strtok.c lib_strtokr.c lib_strtol.c \
|
lib_strspn.c lib_strstr.c lib_strtok.c lib_strtokr.c lib_strtol.c \
|
||||||
lib_strtoll.c lib_strtoul.c lib_strtoull.c lib_strtod.c
|
lib_strtoll.c lib_strtoul.c lib_strtoull.c
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_LIBC_FLOATINGPOINT),y)
|
||||||
|
CSRCS += lib_strtod.c
|
||||||
|
endif
|
||||||
|
|
||||||
# Add the string directory to the build
|
# Add the string directory to the build
|
||||||
|
|
||||||
|
@ -1090,7 +1090,8 @@ static ssize_t tcp_recvfrom(FAR struct socket *psock, FAR void *buf, size_t len,
|
|||||||
* 2) if read-ahead buffering is enabled (CONFIG_NET_NTCP_READAHEAD_BUFFERS > 0)
|
* 2) if read-ahead buffering is enabled (CONFIG_NET_NTCP_READAHEAD_BUFFERS > 0)
|
||||||
* and delay logic is disabled (CONFIG_NET_TCP_RECVDELAY == 0), then we
|
* and delay logic is disabled (CONFIG_NET_TCP_RECVDELAY == 0), then we
|
||||||
* not want to wait if we already obtained some data from the read-ahead
|
* not want to wait if we already obtained some data from the read-ahead
|
||||||
* buffer. In that case, return now with what we have.
|
* buffer. In that case, return now with what we have (don't want for more
|
||||||
|
* because there may be no timeout).
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#if CONFIG_NET_TCP_RECVDELAY == 0 && CONFIG_NET_NTCP_READAHEAD_BUFFERS > 0
|
#if CONFIG_NET_TCP_RECVDELAY == 0 && CONFIG_NET_NTCP_READAHEAD_BUFFERS > 0
|
||||||
|
@ -91,7 +91,7 @@ int prctl(int option, ...)
|
|||||||
{
|
{
|
||||||
/* Get the prctl arguments */
|
/* Get the prctl arguments */
|
||||||
|
|
||||||
char *name = va_arg(ap, char *);
|
FAR char *name = va_arg(ap, FAR char *);
|
||||||
int pid = va_arg(ap, int);
|
int pid = va_arg(ap, int);
|
||||||
FAR _TCB *tcb;
|
FAR _TCB *tcb;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user