Mercurial > hg-old > index.cgi
diff lwlink/link.c @ 204:048ebb85f6ef
Added 8 bit external references for base page addressing mode
author | lost |
---|---|
date | Sun, 29 Mar 2009 14:52:28 +0000 |
parents | 857cb407229e |
children | 42df94f30d82 |
line wrap: on
line diff
--- a/lwlink/link.c Sun Mar 22 22:11:12 2009 +0000 +++ b/lwlink/link.c Sun Mar 29 14:52:28 2009 +0000 @@ -356,8 +356,15 @@ { // put the value into the relocation address rval = lw_expr_get_value(rl -> expr); - sectlist[sn].ptr -> code[rl -> offset] = (rval >> 8) & 0xff; - sectlist[sn].ptr -> code[rl -> offset + 1] = rval & 0xff; + if (rl -> flags & RELOC_8BIT) + { + sectlist[sn].ptr -> code[rl -> offset] = rval & 0xff; + } + else + { + sectlist[sn].ptr -> code[rl -> offset] = (rval >> 8) & 0xff; + sectlist[sn].ptr -> code[rl -> offset + 1] = rval & 0xff; + } } } }