Commit e94a54a7 authored by O'Reilly Media, Inc.'s avatar O'Reilly Media, Inc.
Browse files

Initial commit

parents
9780596009830
\ No newline at end of file
## Example files for the title:
# Programming Embedded Systems 2nd Edition, by Michael Barr
[![Programming Embedded Systems 2nd Edition, by Michael Barr](http://akamaicovers.oreilly.com/images/9780596009830/cat.gif)](https://www.safaribooksonline.com/library/view/title/0596009836//)
The following applies to example files from material published by O’Reilly Media, Inc. Content from other publishers may include different rules of usage. Please refer to any additional usage rights explained in the actual example files or refer to the publisher’s website.
O'Reilly books are here to help you get your job done. In general, you may use the code in O'Reilly books in your programs and documentation. You do not need to contact us for permission unless you're reproducing a significant portion of the code. For example, writing a program that uses several chunks of code from our books does not require permission. Answering a question by citing our books and quoting example code does not require permission. On the other hand, selling or distributing a CD-ROM of examples from O'Reilly books does require permission. Incorporating a significant amount of example code from our books into your product's documentation does require permission.
We appreciate, but do not require, attribution. An attribution usually includes the title, author, publisher, and ISBN.
If you think your use of code examples falls outside fair use or the permission given here, feel free to contact us at <permissions@oreilly.com>.
Please note that the examples are not production code and have not been carefully testing. They are provided "as-is" and come with no warranty of any kind.
/**********************************************************************
*
* Filename: blink.c
*
* Description: eCos Blinking LED program.
*
* Notes:
*
* Copyright (c) 2006 Anthony Massa and Michael Barr. All rights reserved.
* This code is from the book Programming Embedded Systems, With C and
* GNU Development Tools, 2nd Edition.
* It is provided AS-IS, WITHOUT ANY WARRANTY either expressed or implied.
* You may study, use, and modify it for any non-commercial purpose,
* including teaching and use in open-source projects.
* You may distribute it non-commercially as long as you retain this notice.
* For a commercial use license, or to purchase the book,
* please visit http://www.oreilly.com/catalog/embsys2.
*
**********************************************************************/
#include <cyg/kernel/kapi.h>
#include "stdint.h"
#include "pxa255.h"
#include "led.h"
#define TICKS_PER_SECOND (100)
#define LED_TASK_STACK_SIZE (4096)
#define LED_TASK_PRIORITY (12)
/* Declare the task variables. */
int8_t ledTaskStack[LED_TASK_STACK_SIZE];
cyg_thread ledTaskObj;
cyg_handle_t ledTaskHdl;
/**********************************************************************
*
* Function: blinkLedTask
*
* Description: This task handles toggling the green LED at a
* constant interval.
*
* Notes:
*
* Returns: None.
*
**********************************************************************/
void blinkLedTask(cyg_addrword_t data)
{
while (1)
{
/* Delay for 500 milliseconds. */
cyg_thread_delay(TICKS_PER_SECOND / 2);
ledToggle();
}
}
/**********************************************************************
*
* Function: cyg_user_start
*
* Description: Main routine for the eCos Blinking LED program. This
* function creates the LED task.
*
* Notes: This routine invokes the scheduler upon exit.
*
* Returns: None.
*
**********************************************************************/
void cyg_user_start(void)
{
/* Configure the green LED control pin. */
ledInit();
/* Create the LED task. */
cyg_thread_create(LED_TASK_PRIORITY,
blinkLedTask,
(cyg_addrword_t)0,
"LED Task",
(void *)ledTaskStack,
LED_TASK_STACK_SIZE,
&ledTaskHdl,
&ledTaskObj);
/* Notify the scheduler to start running the task. */
cyg_thread_resume(ledTaskHdl);
}
This diff is collapsed.
/**********************************************************************
*
* Filename: led.c
*
* Description: LED device driver.
*
* Notes: This file is specific to the Arcom board.
*
* Copyright (c) 2006 Anthony Massa and Michael Barr. All rights reserved.
* This code is from the book Programming Embedded Systems, With C and
* GNU Development Tools, 2nd Edition.
* It is provided AS-IS, WITHOUT ANY WARRANTY either expressed or implied.
* You may study, use, and modify it for any non-commercial purpose,
* including teaching and use in open-source projects.
* You may distribute it non-commercially as long as you retain this notice.
* For a commercial use license, or to purchase the book,
* please visit http://www.oreilly.com/catalog/embsys2.
*
**********************************************************************/
#include "stdint.h"
#include "pxa255.h"
#include "viperlite.h"
#include "led.h"
#define PIN22_FUNC_GENERAL (0xFFFFCFFF)
/**********************************************************************
*
* Function: ledInit
*
* Description: Initialize the GPIO pin that controls the LED.
*
* Notes: This function is specific to the Arcom board.
*
* Returns: None.
*
**********************************************************************/
void ledInit(void)
{
/* Turn the GPIO pin voltage off, which will light the LED. This should
* be done before the pins are configured. */
GPIO_0_CLEAR_REG = LED_GREEN;
/* Make sure the LED control pin is set to perform general
* purpose functions. RedBoot may have changed the pin's operation. */
GPIO_0_FUNC_HI_REG &= PIN22_FUNC_GENERAL;
/* Set the LED control pin to operate as output. */
GPIO_0_DIRECTION_REG |= LED_GREEN;
}
/**********************************************************************
*
* Function: ledToggle
*
* Description: Toggle the state of one LED.
*
* Notes: This function is specific to the Arcom board.
*
* Returns: None.
*
**********************************************************************/
void ledToggle(void)
{
/* Check the current state of the LED control pin. Then change the
* state accordingly. */
if (GPIO_0_LEVEL_REG & LED_GREEN)
GPIO_0_CLEAR_REG = LED_GREEN;
else
GPIO_0_SET_REG = LED_GREEN;
}
/**********************************************************************
*
* Filename: led.h
*
* Description: Header file for LED device driver.
*
* Notes:
*
* Copyright (c) 2006 Anthony Massa and Michael Barr. All rights reserved.
* This code is from the book Programming Embedded Systems, With C and
* GNU Development Tools, 2nd Edition.
* It is provided AS-IS, WITHOUT ANY WARRANTY either expressed or implied.
* You may study, use, and modify it for any non-commercial purpose,
* including teaching and use in open-source projects.
* You may distribute it non-commercially as long as you retain this notice.
* For a commercial use license, or to purchase the book,
* please visit http://www.oreilly.com/catalog/embsys2.
*
**********************************************************************/
#ifndef _LED_H
#define _LED_H
void ledInit(void);
void ledToggle(void);
#endif /* _LED_H */
#######################################################################
#
# Filename: makefile
#
# Description: eCos Blinking LED program.
#
# Copyright (c) 2006 Anthony Massa and Michael Barr. All rights reserved.
# This code is from the book Programming Embedded Systems, With C and
# GNU Development Tools, 2nd Edition.
# It is provided AS-IS, WITHOUT ANY WARRANTY either expressed or implied.
# You may study, use, and modify it for any non-commercial purpose,
# including teaching and use in open-source projects.
# You may distribute it non-commercially as long as you retain this notice.
# For a commercial use license, or to purchase the book,
# please visit http://www.oreilly.com/catalog/embsys2.
#
#######################################################################
ECOS_INSTALL_DIR = /opt/ProgEmbSys/chapter11/ecos/install
XCC = arm-elf-gcc
LD = arm-elf-gcc
STRIP = arm-elf-strip
CFLAGS = -mcpu=xscale -g -c -Wall -I$(ECOS_INSTALL_DIR)/include -I../../include \
-ffunction-sections -fdata-sections
LDFLAGS = -mcpu=xscale -nostartfiles -L$(ECOS_INSTALL_DIR)/lib -Wl,--gc-sections \
-Wl,--Map -Wl,blink.map
LIBS = -Ttarget.ld -nostdlib
all: blink.exe
led.o: led.c led.h
$(XCC) -o $@ $(CFLAGS) $<
blink.o: blink.c led.h
$(XCC) -o $@ $(CFLAGS) $<
blinkdbg.exe: blink.o led.o
$(LD) $(LDFLAGS) -o $@ $^ $(LIBS)
blink.exe: blinkdbg.exe
$(STRIP) --remove-section=.comment blinkdbg.exe -o $@
clean:
-rm -f *.exe *.o blink.map
This diff is collapsed.
src/strerror.o.d: \
/opt/ecos/ecos-redboot-viper-v3i7/packages/error/current/src/strerror.cxx \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/pkgconf/error.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/infra/cyg_type.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/stddef.h \
/opt/gnutools/arm-elf/lib/gcc/arm-elf/3.4.4/include/stddef.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/hal/basetype.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/infra/cyg_trac.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/pkgconf/infra.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/pkgconf/system.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/infra/cyg_ass.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/error/codes.h
src/errno.o.d: \
/opt/ecos/ecos-redboot-viper-v3i7/packages/error/current/src/errno.cxx \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/pkgconf/system.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/pkgconf/error.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/infra/cyg_type.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/stddef.h \
/opt/gnutools/arm-elf/lib/gcc/arm-elf/3.4.4/include/stddef.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/hal/basetype.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/infra/cyg_trac.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/pkgconf/infra.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/infra/cyg_ass.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/error/errno.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/error/codes.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/pkgconf/kernel.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/pkgconf/hal.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/pkgconf/hal_arm.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/pkgconf/hal_arm_xscale_pxa2x0.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/pkgconf/hal_arm_xscale_viper.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/kernel/thread.hxx \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/kernel/ktypes.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/kernel/sched.hxx \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/kernel/smp.hxx \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/hal/hal_intr.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/hal/hal_var_ints.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/hal/hal_pxa2x0.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/hal/hal_xscale.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/pkgconf/hal_arm_xscale_core.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/kernel/instrmnt.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/kernel/mlqueue.hxx \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/infra/clist.hxx \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/kernel/clock.hxx \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/kernel/except.hxx \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/hal/hal_arch.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/kernel/thread.inl \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/kernel/clock.inl \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/infra/diag.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/stdarg.h \
/opt/gnutools/arm-elf/lib/gcc/arm-elf/3.4.4/include/stdarg.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/kernel/mutex.hxx
# eCos makefile
# This is a generated file - do not edit
export PREFIX := /ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install
export COMMAND_PREFIX := arm-elf-
export CC := $(COMMAND_PREFIX)gcc
export OBJCOPY := $(COMMAND_PREFIX)objcopy
export HOST := CYGWIN
export AR := $(COMMAND_PREFIX)ar
export REPOSITORY := /opt/ecos/ecos-redboot-viper-v3i7/packages
PACKAGE := error/current
OBJECT_PREFIX := error
CFLAGS := -mcpu=xscale -Wall -Wpointer-arith -Wstrict-prototypes -Winline -Wundef -Woverloaded-virtual -g -O2 -ffunction-sections -fdata-sections -fno-rtti -fno-exceptions -fvtable-gc -finit-priority -mapcs-frame
LDFLAGS := -mcpu=xscale -Wl,--gc-sections -Wl,-static -g -O2 -nostdlib
VPATH := $(REPOSITORY)/$(PACKAGE)
INCLUDE_PATH := $(INCLUDE_PATH) -I$(PREFIX)/include $(foreach dir,$(VPATH),-I$(dir) -I$(dir)/src -I$(dir)/tests) -I.
MLT := $(wildcard $(REPOSITORY)/$(PACKAGE)/include/pkgconf/mlt*.ldi $(REPOSITORY)/$(PACKAGE)/include/pkgconf/mlt*.h)
TESTS :=
build: headers libtarget.a.stamp
LIBRARY := libtarget.a
COMPILE := src/strerror.cxx src/errno.cxx
OBJECTS := $(COMPILE:.cxx=.o.d)
OBJECTS := $(OBJECTS:.c=.o.d)
OBJECTS := $(OBJECTS:.S=.o.d)
$(LIBRARY).stamp: $(OBJECTS)
$(AR) rcs $(PREFIX)/lib/$(@:.stamp=) $(foreach obj,$?,$(dir $(obj))$(OBJECT_PREFIX)_$(notdir $(obj:.o.d=.o)))
@cat $^ > $(@:.stamp=.deps)
@touch $@
headers: mlt_headers $(PREFIX)/include/cyg/error/codes.h $(PREFIX)/include/cyg/error/errno.h $(PREFIX)/include/cyg/error/strerror.h
$(PREFIX)/include/cyg/error/codes.h: $(REPOSITORY)/$(PACKAGE)/include/codes.h
ifeq ($(HOST),CYGWIN)
@mkdir -p `cygpath -w "$(dir $@)" | sed "s@\\\\\\\\@/@g"`
else
@mkdir -p $(dir $@)
endif
@cp $< $@
@chmod u+w $@
$(PREFIX)/include/cyg/error/errno.h: $(REPOSITORY)/$(PACKAGE)/include/errno.h
ifeq ($(HOST),CYGWIN)
@mkdir -p `cygpath -w "$(dir $@)" | sed "s@\\\\\\\\@/@g"`
else
@mkdir -p $(dir $@)
endif
@cp $< $@
@chmod u+w $@
$(PREFIX)/include/cyg/error/strerror.h: $(REPOSITORY)/$(PACKAGE)/include/strerror.h
ifeq ($(HOST),CYGWIN)
@mkdir -p `cygpath -w "$(dir $@)" | sed "s@\\\\\\\\@/@g"`
else
@mkdir -p $(dir $@)
endif
@cp $< $@
@chmod u+w $@
include $(REPOSITORY)/pkgconf/rules.mak
src/errno.o.d: \
/opt/ecos/ecos-redboot-viper-v3i7/packages/error/current/src/errno.cxx \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/pkgconf/system.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/pkgconf/error.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/infra/cyg_type.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/stddef.h \
/opt/gnutools/arm-elf/lib/gcc/arm-elf/3.4.4/include/stddef.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/hal/basetype.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/infra/cyg_trac.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/pkgconf/infra.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/infra/cyg_ass.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/error/errno.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/error/codes.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/pkgconf/kernel.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/pkgconf/hal.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/pkgconf/hal_arm.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/pkgconf/hal_arm_xscale_pxa2x0.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/pkgconf/hal_arm_xscale_viper.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/kernel/thread.hxx \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/kernel/ktypes.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/kernel/sched.hxx \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/kernel/smp.hxx \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/hal/hal_intr.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/hal/hal_var_ints.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/hal/hal_pxa2x0.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/hal/hal_xscale.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/pkgconf/hal_arm_xscale_core.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/kernel/instrmnt.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/kernel/mlqueue.hxx \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/infra/clist.hxx \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/kernel/clock.hxx \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/kernel/except.hxx \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/hal/hal_arch.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/kernel/thread.inl \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/kernel/clock.inl \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/infra/diag.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/stdarg.h \
/opt/gnutools/arm-elf/lib/gcc/arm-elf/3.4.4/include/stdarg.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/kernel/mutex.hxx
src/strerror.o.d: \
/opt/ecos/ecos-redboot-viper-v3i7/packages/error/current/src/strerror.cxx \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/pkgconf/error.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/infra/cyg_type.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/stddef.h \
/opt/gnutools/arm-elf/lib/gcc/arm-elf/3.4.4/include/stddef.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/hal/basetype.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/infra/cyg_trac.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/pkgconf/infra.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/pkgconf/system.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/infra/cyg_ass.h \
/ecos-c/cygwin/opt/ProgEmbSys/chapter11/ecos/install/include/cyg/error/codes.h
.equ armreg_r0,0
.equ armreg_r4,16
.equ armreg_r8,32
.equ armreg_r9,36
.equ armreg_r10,40
.equ armreg_sp,52
.equ armreg_fp,44
.equ armreg_ip,48
.equ armreg_lr,56
.equ armreg_pc,60
.equ armreg_cpsr,64
.equ armreg_vector,68
.equ armreg_svclr,72
.equ armreg_svcsp,76
.equ ARMREG_SIZE,80
.equ CYGNUM_HAL_ISR_COUNT,118
.equ CYGNUM_HAL_VSR_COUNT,8
.equ CYGNUM_HAL_EXCEPTION_ILLEGAL_INSTRUCTION,1
.equ CYGNUM_HAL_EXCEPTION_INTERRUPT,2
.equ CYGNUM_HAL_EXCEPTION_CODE_ACCESS,3
.equ CYGNUM_HAL_EXCEPTION_DATA_ACCESS,4
.equ CYGNUM_HAL_VECTOR_IRQ,6
.equ RAISE_INTR,769
.equ CPSR_IRQ_DISABLE,128
.equ CPSR_FIQ_DISABLE,64
.equ CPSR_THUMB_ENABLE,32
.equ CPSR_USER_MODE,16
.equ CPSR_IRQ_MODE,18
.equ CPSR_FIQ_MODE,17
.equ CPSR_SUPERVISOR_MODE,19
.equ CPSR_UNDEF_MODE,27
.equ CPSR_MODE_BITS,31
.equ CPSR_INITIAL,211
.equ CPSR_THREAD_INITIAL,19
.equ CYGNUM_CALL_IF_TABLE_SIZE,64
.equ CYGNUM_HAL_INTERRUPT_NONE,-1
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment