From 3eb484bd4d79de731b743d9dccf9a2535b82699f Mon Sep 17 00:00:00 2001 From: patacongo Date: Sun, 30 Dec 2007 18:13:22 +0000 Subject: Integrating z80 git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@463 42af7a65-404d-4744-a932-0658087f49c3 --- nuttx/configs/z80sim/defconfig | 4 ++-- nuttx/configs/z80sim/src/z80_irq.c | 17 ++++++++++++++--- nuttx/configs/z80sim/src/z80_timerisr.c | 1 + 3 files changed, 17 insertions(+), 5 deletions(-) (limited to 'nuttx/configs/z80sim') diff --git a/nuttx/configs/z80sim/defconfig b/nuttx/configs/z80sim/defconfig index 0603818d0..a993a6aeb 100644 --- a/nuttx/configs/z80sim/defconfig +++ b/nuttx/configs/z80sim/defconfig @@ -285,5 +285,5 @@ CONFIG_CUSTOM_STACK=n CONFIG_PROC_STACK_SIZE=1024 CONFIG_PTHREAD_STACK_MIN= CONFIG_PTHREAD_STACK_DEFAULT= -CONFIG_HEAP_SIZE=32768 -CONFIG_HEAP_BASE=CONFIG_DRAM_SIZE-CONFIG_HEAP_SIZE +CONFIG_HEAP_SIZE= +CONFIG_HEAP_BASE= diff --git a/nuttx/configs/z80sim/src/z80_irq.c b/nuttx/configs/z80sim/src/z80_irq.c index b6e81b32e..5fd150359 100644 --- a/nuttx/configs/z80sim/src/z80_irq.c +++ b/nuttx/configs/z80sim/src/z80_irq.c @@ -76,10 +76,21 @@ void up_irqinitialize(void) current_regs = NULL; - /* And finally, enable interrupts */ + /* Attach the timer interrupt -- There is not special timer interrupt + * enable in the simulation so it must be enabled here before interrupts + * are enabled. + * + * NOTE: Normally, there are seperate enables for "global" interrupts + * and specific device interrupts. In such a "normal" case, the timer + * interrupt should be attached and enabled in the the function up_timerinit() + */ + + irq_attach(Z80_IRQ_SYSTIMER, (xcpt_t)up_timerisr); + + /* And finally, enable interrupts (including the timer) */ #ifndef CONFIG_SUPPRESS_INTERRUPTS - irqrestore(TRUE); + irqrestore(Z80_C_FLAG); #endif } @@ -93,7 +104,7 @@ void up_irqinitialize(void) void up_disable_irq(int irq) { - irqrestore(FALSE); + irqrestore(0); } /**************************************************************************** diff --git a/nuttx/configs/z80sim/src/z80_timerisr.c b/nuttx/configs/z80sim/src/z80_timerisr.c index e56678d13..a088d14b8 100644 --- a/nuttx/configs/z80sim/src/z80_timerisr.c +++ b/nuttx/configs/z80sim/src/z80_timerisr.c @@ -91,5 +91,6 @@ int up_timerisr(int irq, FAR chipreg_t *regs) void up_timerinit(void) { + /* The timer interrupt was attached in up_irqinitialize -- see comments there */ } -- cgit v1.2.3