0
votes

I'm trying to build assembly firmware written for Ikea Dioder v2 (3 buttons and color wheel, project presented at http://www.vagrearg.org/content/skilt20):

https://github.com/openspaceaarhus/ikea-sign/blob/master/idh-firmware.asm#L430

The assembler gpasm is part of gputils which can be found at http://sourceforge.net/projects/gputils/

>gpasm -v
gpasm-1.2.0 #980 (May 17 2013)

>gpasm -DCOD=1 -p16f684 -o idh-firmware-16f684.hex idh-firmware.asm
idh-firmware.asm:430:Error[118]   Overwriting previous address contents (0020)

The source code mentions something about "jump-table misalignments" which I don't understand (I know C but no asm). Could this have to do with the error?

1

1 Answers

-1
votes

Looks like some jump table misalignment might be to blame. Have you looked at the listings, like it says in the idh-firmware.asm line 121 on?

The error as such mean that the assembler outputs of different pieces of code overlap.

Looks like that appens at address

RAM_B0_START        equ        0x0020

It could also have to do with the configuration (absolute/relocatable code):

; Running variables
IFDEF COD        ; {
                org        0x0020
ELSE                ; }{
databank        udata                0x0020
ENDIF                ; }