Hi, I'm a new user, hoping to use Simulavr to figure out how to run FreeRTOS on an ATmega328. I started with an older version distributed with Ubuntu, but support was limited to ATmega32, so I downloaded & compiled the version from Git (1.0rc0). The old version was able to load my ELF file and step through some instructions (dying when SP was initialized to something it thought was outside RAM), but the new version seems to be confused about instruction word size (?). The vector table at 0x0000 should contain:

00000000 <__vectors>:
       0:       0c 94 34 00     jmp     0x68    ; 0x68 <__ctors_end>
       4:       0c 94 51 00     jmp     0xa2    ; 0xa2 <__bad_interrupt>

(from the list file) but SimulAVR/GDB say:

(gdb) x/2i 0
=> 0x0 <__vectors>:    jmp     0x1800  ;  0x1800 <xPortGetFreeHeapSize+18>
   0x4 <__vectors+4>:     .word   0x0034  ; ????
(gdb) x/32b 0
0x0 <__vectors>:  0x0c    0x94    0x00    0x0c    0x34    0x00    0x94    0x34
0x8 <__vectors+8>:        0x0c    0x94    0x00    0x0c    0x51    0x00    0x94  
  0x51
0x10 <__vectors+16>:      0x0c    0x94    0x00    0x0c    0x51    0x00    0x94  
  0x51
0x18 <__vectors+24>:      0x0c    0x94    0x00    0x0c    0x51    0x00    0x94  
  0x51

In other words, 0c.94.34.00 somehow turns into 0c.94.00.0c.34.00

Am I making a simple stupid newbie mistake, or is this uncharted/untested waters?

Thanks,
--
Mersenne Law LLC  ·  www.mersenne.com  ·  +1-503-679-1671
- Small Business, Startup and Intellectual Property Law -
1500 SW First Ave. · Suite 1170 · Portland, Oregon  97201

_______________________________________________
Simulavr-devel mailing list
[email protected]
http://lists.nongnu.org/mailman/listinfo/simulavr-devel

Reply via email to