Re: [avr-gcc-list] re-initialising an ATMega128 as much as possible (start a bootloader)

2005-08-14 Thread Torsten Mohr
(); Regards, Mudiaga Obada Torsten Mohr wrote: i program an ATMega128, there's a bootloader at 0x1e000 and a normal application at 0x0. When the application starts the bootloader, it does that by directly jumping into it. In the bootloader i'd like to un-initialise as much

[avr-gcc-list] start a bootloader

2005-07-29 Thread Torsten Mohr
Hi, i have continuous problems with my bootloader, maybe somebody can give me some hints? I have the bootloader and the normal application as two separate programs, the application at 0x, the bootloader at 0x1e000. This all happens in an ATMega128. The reset vector is in the bootloader, it

Re: [avr-gcc-list] section flags .data

2005-07-24 Thread Torsten Mohr
Hi, to have the data that belong into .data somewhere in flash makes sense, but the address of the section .data pointed to 0x800100. I found out that the condition that this section gets copied from the ELF file into the SREC file (section type == PROGBITS, allocate flag set) is correct, but

Re: [avr-gcc-list] section flags .data

2005-07-23 Thread Torsten Mohr
Hi, investigating further i found out that the data section actually is contained in the SREC file and that the information seems to be in the program header of the ELF file: program header 1 p_type 0x0001 p_offset 0x222E p_vaddr 0x00800100 p_paddr 0x219A p_filesz 0x000C p_memsz

[avr-gcc-list] asm question

2005-07-14 Thread Torsten Mohr
Hi, i tried to write an inline asm function that gets two input parameters in Y and Z. These two pointers should point to two uint32_t locations in RAM and the asm function should copy from Y to Z and while copying change the endianness of the copied value: static __inline__ void

[avr-gcc-list] inline assembler, ijmp, X-Register

2005-07-01 Thread Torsten Mohr
Hi, i have a functionpointer that is located in the variable fptr: uint32_t fptr; I'd now like to jump to that location. From the avr-libc-user-manual-1.2.3 i thought i'd need to put it like this: asm(ijmp:: x (fptr / 2)); As i understood it, fptr/2 would then be loaded into r27:r26 abd

Re: [avr-gcc-list] inline assembler, ijmp, X-Register

2005-07-01 Thread Torsten Mohr
Hi, Have you tried it just using a 'vanilla' C function pointer? Although I don't use the 128 I had the impression that avrlib did this for you. But he wants to jump, not call... thanks for the hint with the function pointer, but i already thought of that and: - I'm interested what went

Re: [avr-gcc-list] linker issue, resolving a pointer as uint32_t

2005-06-27 Thread Torsten Mohr
Hi, i've been testing and re-casting values for quite some time now. Is there a possibility to put a pointer into flash memory and from that pointer tell where in flash it is pointing to (to my understanding this is 99% of the sense of a pointer)? Can i then somehow tell if this pointer is in

[avr-gcc-list] pgm_read_byte_far, RAMPZ

2005-06-26 Thread Torsten Mohr
Hi, when i browsed through the sources for pgm_read_byte_far i saw that this macro changes the content of RAMPZ, right? It looks ok and necessary to me to do this. But also, the operation does not seem to be atomic to me, it could be interrupted at any time inbetween. When this happens, maybe

[avr-gcc-list] stack layout

2005-06-23 Thread Torsten Mohr
Hi, i'd like to change the memory layout of a program, especially the stack. So i linked my program with --defsym,__stack=0x900 When i look into the listing of my program that i got with: avr-objdump -h -S file.elf Then in __init the stackpointer still gets loaded as 0x10ff. But in the

[avr-gcc-list] memory layout for bootloader

2005-06-15 Thread Torsten Mohr
Hi, i'd like to write a bootloader for an ATMega128 and some questions came up, it would be great if you could give me some hints. In avr-libc-usermanual-1.2.3 there is an example in the FAQ how to put a function into a certain section and how to put that section to a certain address. In that

Re: [avr-gcc-list] why does this not work?!?

2005-06-08 Thread Torsten Mohr
-gcc line - seems to fix this. Ben -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Torsten Mohr Sent: Wednesday, 8 June 2005 8:11 AM To: avr-gcc-list@nongnu.org Subject: [avr-gcc-list] why does this not work?!? Hi, i use binutils-2.15, gcc-3.4.4

[avr-gcc-list] output current for ATMega128 on output pins

2005-06-07 Thread Torsten Mohr
Hi, i just browsed the data sheet but could not find in the electrical characteristics how much current i can output on a port. I'd like to drive some LEDs. I wonder, but this value should be in the data sheet, i must have missed it. Best regards, Torsten.

[avr-gcc-list] why does this not work?!?

2005-06-07 Thread Torsten Mohr
Hi, i use binutils-2.15, gcc-3.4.4 and avr-libc-1.2.3 I tracked down a certain problem to the attached example code. There are two switches on PB2 and PB3 and there are two LEDs on PB4 and PB5. Sometimes the code after the simple for() is reached (what i expect, it works), sometimes not. I see

[avr-gcc-list] ATMega128, fuse bits, program optimisation, several questions

2005-06-05 Thread Torsten Mohr
Hi, the fuse bits of the ATMega128 were (when i bought it): low: 0xe1 high: 0x99 ext.: 0xfd I only programed the ext. fuse bits to 0xff. Is that ok? Regarding the interpretation of the fuse bits i'm a bit unsure, is there a general rule about what is active / not-active? One bit is called

Re: [avr-gcc-list] avrdude, ATMega128

2005-06-05 Thread Torsten Mohr
Hi, The supply voltages look ok. PEN is connected to GND. This should be VCC. Not even JTAG programming works if this is GND. i just soldered some additional capacitors to the pcb i made. Just when i did this, the wire that held PEN to GND fell off. Now the program works and i see 2.5 V

Re: [avr-gcc-list] ATMega128 pcb, startup problem...

2005-06-01 Thread Torsten Mohr
Hi, MOSI, Pin 12 is logically connected to parallel port D0 MISO, Pin 13 is logically connected to parallel port Busy and Sel.In. SCK, Pin 11 is logically connected to parallel port Strobe. PEN, Pin 1 is at GND level. Here is where the mistake seems to be. On the mega128 the ISP pins do