arm

ARMV4i (Windows Mobile 6) Native Code disassembler

Does anyone know of a disassembler for ARMV4i compiled executables and dlls? I've got a plugin DLL I'm writing and it has a very rare data abort (<5% of the time) that I have narrowed down to a specific function (via dumpbin and the memory address output by the data abort) however it's a fairly large function and I would like to narrow i...

Is GCC broken when taking the address of an argument on ARM7TDMI?

My C code snippet takes the address of an argument and stores it in a volatile memory location (preprocessed code): void foo(unsigned int x) { *(volatile unsigned int*)(0x4000000 + 0xd4) = (unsigned int)(&x); } int main() { foo(1); while(1); } I used an SVN version of GCC for compiling this code. At the end of function fo...

Free Wavetable Synthesizer?

I need to implement a wavetable synthesizer in an ARM Cortex-M3 core. I'm looking for any code or tools to help me get started. I'm aware of this AVR implementation. I actually converted it to a PIC a while back. Now I am looking for something similar, but a little better sounding. ANSI C code would be great. Any code snippets (C or C+...

gdb linux arm

Hello, I have a ARM11 based hardware board which runs a Linux kernel ver. 2.6.21.5-cfs-v19. I have my application running on this ARM-LINUX board. To do sourlce level debugging, of my application i used to use gdb from command prompt of the linux board, that was with some earlier version of the board linux version. With this version ...

Prefetch instructions on ARM

Newer ARM processors include the PLD and PLI instructions. I'm writing tight inner loops (in C++) which have a non-sequential memory access pattern, but a pattern that naturally my code fully understands. I would anticipate a substantial speedup if I could prefetch the next location whilst processing the current memory location, and I ...

Best platform for learning embedded programming?

Hi, I'm looking to learn about embedded programming (in C mainly, but I hope to brush up on my ASM as well) and I was wondering what the best platform would be. I have some experience in using Atmel AVR's and programming them with the stk500 and found that to be relatively easy. I especially like AVR Studio and the debugger that lets y...

.NET Micro Framework on a ARM Cortex-M3 Core

I have a RDK-IDM from Luminary Micro. This board has a 32-bit ARM® Cortex™-M3 core. Has anybody tried to run a .NET Micro Framework application on such a device? ...

Process for reducing the size of a executable

Hey! I'm producing a hex file to run on an ARM processor which I want to keep below 32K. It's currently a lot larger than that and I wondered if someone might have some advice on what's the best approach to slim it down? Here's what i've done so far So I've run 'size' on it to determine how big the hex file is. Then 'size' again to ...

Loader scripts for ARM STR7xx

I'm trying to program ARM using Eclipse + CDT + yagarto (gnu toolchain) + OpenOCD. In several sample projects (from yagarto site for example) I found linker scripts (*.ld) where a lot of linking information specified (along with sections definitions). Actually I haven't faced this files before (IAR doesn't need them), and I find them som...

Boost C++ libraries for gcc-arm toolchain

I have no trouble building 1.35.0, as well as 1.36.0 on the timesys arm-gcc toolchain, both statically (link-static) as well as dynamically (.so, default option). However, when I try to link a simple sample filesystem app: #include <boost/filesystem.hpp> #include <iostream> namespace fs = boost::filesystem; int main(int argc, char *a...

ARM to C calling convention, registers to save

It's been a while since I last coded arm assembler and I'm a little rusty on the details. If I call a C function from arm, I only have to worry about saving r0-r3 and lr, right? If the C function uses any other registers, is it responsible for saving those on the stack and restoring them? In other words, the compiler would generate code...

Resources for learning ARM assembly

I am looking for resources, either online tutorials or books, for learning ARM assembly. What would you recommend? ...

Clear upper 16-bits in 1 ARM instruction

In ARM assembly immediates are encoded by an 8-bit rotated value which means we can only encode (0-256)^2n. Now my problem is that I want to clear the upper 16-bits of r0 and replace it with the half-word stored r1. But because of the limited range of the immediates I have to do: - bic r0, r0, #0xff000000 bic r0, r0, #0x00ff0000 add...

Steps to compile darwin for arm on ubuntu gcc

Has anyone got the steps to compile darwin libraries on gcc for arm on ubuntu? ...

How to compile and install a Linux kernel into an ARM kit

I have an ARM kit beside me and a Linux kernel source code patched with Xenomai on my machine. I understand I can send data to the kit through an USB cable and a (windows-based, of course) software, but I'm stumped as to exactly what I should be sending that would make the kit run Linux. (clarifications from comments: It is an Atmel AT9...

What is the typical interrupt latency for WinCE 6.0 on an ARM target?

What is a typical interrupt latency for WinCE 6.0 on an ARM target? (Just looking for a ballpark value for performance estimation) ...

Use GDB to examine Objective C class from crash (HandleDelegateSource bad access)

I am trying to debug an intermittent error on the iPhone, a crash with a trace that looks like: objc_message_send __invoking__ [NSInvocation invoke] HandleDelegateSource MainRunLoop .... When GDB stops, I'd like to be able to determine details about what selector the system is attempting to be invoked - I've set a break point now arou...

OMAP SPI controller

Does anyone ever develop some application to control the spi device on OMAP3? I can load the spi driver "mcspi", but I don't know how to use it. ...

ARM. Access user R13 and R14 from Supervisor mode

How do I access the user R13 and R14 which are saved when supervisor mode is entered? I am using an ARM7TDMI. I.E. I do not want to access supervisor R14 which now contains the return address to user mode, instead want the value of user mode's link register. This is part of a debugger I am writing. Are there special aliases for these ...

Building Gnuarm toolchain from source

I want to build a toolchain from gnuarm.org from sources. I don't want to use binary version because i'm running x64 linux. Can you point me to some kind of tutorial? ...