From 64045ba0916623ab9e7c2f1eed837a2aae081e63 Mon Sep 17 00:00:00 2001 From: Leo C Date: Fri, 11 Jul 2014 17:14:53 +0200 Subject: Refactor Tupfiles --- stm32/Tupfile | 44 +++++++++----------------------------------- stm32/z180-stamp-stm32.c | 14 ++++++++++++-- 2 files changed, 21 insertions(+), 37 deletions(-) (limited to 'stm32') diff --git a/stm32/Tupfile b/stm32/Tupfile index 1778623..8512bfe 100644 --- a/stm32/Tupfile +++ b/stm32/Tupfile @@ -1,8 +1,13 @@ include_rules PROG = z180-stamp-stm32 + SRC = z180-stamp-stm32.c serial.c z80-if.c + SRC_Z = ../z180/hdrom.c +PREDEP = ../z180/hdrom.h + +#SRC += $(SRC_Z) #TARGETS = $(PROG).elf FP_FLAGS = -msoft-float @@ -13,62 +18,31 @@ OPENCM3_DIR = $(TOP)/libopencm3 LDSCRIPT = stm32vl-discovery.ld ############################################################################### -# Executables TOOLCHAINDIR = /usr/local/gcc-arm-none-eabi-4_8-2014q2/bin TOOLCHAIN = $(TOOLCHAINDIR)/arm-none-eabi -CC = $(TOOLCHAIN)-gcc -LD = $(TOOLCHAIN)-gcc -AR = $(TOOLCHAIN)-ar -AS = $(TOOLCHAIN)-as -OBJCOPY = $(TOOLCHAIN)-objcopy -OBJDUMP = $(TOOLCHAIN)-objdump -SIZE = $(TOOLCHAIN)-size -GDB = $(TOOLCHAIN)-gdb - ############################################################################### INCLUDES += $(OPENCM3_DIR)/include LIBDIRS += $(OPENCM3_DIR)/lib -SCRIPT_DIR = $(OPENCM3_DIR)/scripts - ifdef DEBUG DEFS += -DDEBUG=2 endif -CFLAGS += -g -Os CFLAGS += -mthumb -mcpu=cortex-m3 $(FP_FLAGS) -mfix-cortex-m3-ldrd -CFLAGS += -std=gnu99 -CFLAGS += -Wall -Wextra -Wimplicit-function-declaration -CFLAGS += -Wredundant-decls -#CFLAGS += -fno-common -ffunction-sections -fdata-sections + CFLAGS += -I $(INCLUDES) CPPFLAGS += $(DEFS) # Linker flags LDFLAGS += --static -nostartfiles -LDFLAGS += -T$(LDSCRIPT) -LDFLAGS += -Wl,--gc-sections -LDFLAGS += -Wl,--cref - -LDLIBS += -L$(LIBDIRS) -l$(LIBNAME) -LDLIBS += -Wl,--start-group -lc -lgcc -lnosys -Wl,--end-group - - -!cc = |> ^ CC %f^ $(CC) $(CFLAGS) $(CPPFLAGS) -c %f -o %o |> %B.o -!LINK = |> ^ LINK %o^ $(LD) $(CFLAGS) $(LDFLAGS) -Wl,-Map=%O.map %f $(LDLIBS) -o %o |> | %O.map -!OBJCOPY= |> ^ OBJCOPY %o^ $(OBJCOPY) -Oihex %f %o |> -!OBJDUMP= |> ^ OBJDUMP %o^ $(OBJDUMP) -h -S %f > %o |> %O.lss -!SIZE = |> ^ SIZE^ $(SIZE) %f |> -: foreach $(SRC) $(SRC_Z) | ../z180/hdrom.h |> !cc |> {objs} +LDLIBS += -L$(LIBDIRS) -l$(LIBNAME) +LDLIBS += -Wl,--start-group -lc -lgcc -lnosys -Wl,--end-group -: {objs} |> !LINK |> $(PROG).elf -: $(PROG).elf |> !OBJCOPY |> %B.hex -: $(PROG).elf |> !OBJDUMP |> %B.lss -: $(PROG).elf |> !SIZE |> +include $(CONFIG)/gcc.tup diff --git a/stm32/z180-stamp-stm32.c b/stm32/z180-stamp-stm32.c index 15d732d..96d724c 100644 --- a/stm32/z180-stamp-stm32.c +++ b/stm32/z180-stamp-stm32.c @@ -1,7 +1,6 @@ /* */ -#include #include #include @@ -11,6 +10,8 @@ #include #include +#include + #define ODR 0x0c #define IDR 0x08 @@ -394,7 +395,7 @@ static uint32_t z80_sram_cmp(uint32_t addr, uint32_t length, uint8_t wval, int i uint8_t rval; int_fast8_t errors = 0; - DBG_P(1, "SRAM: Check %#.5x byte... ", length); + DBG_P(1, "SRAM: Check 0x%.5lX byte... ", length); while (length--) { if ((rval = z80_read(addr)) != wval) { if (errors == 0) { @@ -462,6 +463,8 @@ const char * const qbcat = "Zhe quick brown fox jumps over the lazy cat!"; #endif +/*--------------------------------------------------------------------------*/ + uint8_t z80_get_byte(uint32_t adr) { uint8_t data; @@ -508,6 +511,7 @@ struct msg_item { void (*func)(uint8_t, int, uint8_t *); }; +static uint32_t msg_to_addr(uint8_t *msg) { uint32_t addr = msg[0] | (msg[1] << 8) | ((uint32_t)msg[2] << 16); @@ -516,6 +520,7 @@ uint32_t msg_to_addr(uint8_t *msg) } +static void do_msg_ini_msgfifo(uint8_t subf, int len, uint8_t * msg) { (void)subf; (void)len; @@ -524,6 +529,7 @@ void do_msg_ini_msgfifo(uint8_t subf, int len, uint8_t * msg) } +static void do_msg_ini_memfifo(uint8_t subf, int len, uint8_t * msg) { (void)len; @@ -532,6 +538,7 @@ void do_msg_ini_memfifo(uint8_t subf, int len, uint8_t * msg) } +static void do_msg_char_out(uint8_t subf, int len, uint8_t * msg) { (void)subf; @@ -541,6 +548,7 @@ void do_msg_char_out(uint8_t subf, int len, uint8_t * msg) } +static const struct msg_item z80_messages[] = { { 0, /* fct nr. */ @@ -561,6 +569,7 @@ const struct msg_item z80_messages[] = +static void do_message(int len, uint8_t *msg) { uint8_t fct, sub_fct; @@ -605,6 +614,7 @@ void do_message(int len, uint8_t *msg) #define CTRBUF_LEN 256 +static void check_msg_fifo(void) { int ch; -- cgit v1.2.3