diff options
-rw-r--r-- | doc/nasmdoc.src | 4 | ||||
-rw-r--r-- | nasm.h | 2 | ||||
-rw-r--r-- | ndisasm.c | 14 | ||||
-rw-r--r-- | outelf.c | 8 |
4 files changed, 14 insertions, 14 deletions
diff --git a/doc/nasmdoc.src b/doc/nasmdoc.src index 66825ed..53e4b70 100644 --- a/doc/nasmdoc.src +++ b/doc/nasmdoc.src @@ -7920,8 +7920,8 @@ destination (first) operand. \c MOVSW ; o16 A5 [8086] \c MOVSD ; o32 A5 [386] -\c{MOVSB} copies the byte at \c{[ES:DI]} or \c{[ES:EDI]} to -\c{[DS:SI]} or \c{[DS:ESI]}. It then increments or decrements +\c{MOVSB} copies the byte at \c{[DS:SI]} or \c{[DS:ESI]} to +\c{[ES:DI]} or \c{[ES:EDI]}. It then increments or decrements (depending on the direction flag: increments if the flag is clear, decrements if it is set) \c{SI} and \c{DI} (or \c{ESI} and \c{EDI}). @@ -13,7 +13,7 @@ #define NASM_MAJOR_VER 0 #define NASM_MINOR_VER 98 -#define NASM_VER "0.98.16" +#define NASM_VER "0.98.17" #ifndef NULL #define NULL 0 @@ -235,7 +235,7 @@ int main(int argc, char **argv) p += lenread; if ((unsigned long)offset == nextsync) { if (synclen) { - printf("%08lX skipping 0x%lX bytes\n", offset, synclen); + fprintf(stdout, "%08lX skipping 0x%lX bytes\n", offset, synclen); offset += synclen; skip (synclen, fp); } @@ -271,26 +271,26 @@ static void output_ins (unsigned long offset, unsigned char *data, int datalen, char *insn) { int bytes; - printf("%08lX ", offset); + fprintf(stdout, "%08lX ", offset); bytes = 0; while (datalen > 0 && bytes < BPL) { - printf("%02X", *data++); + fprintf(stdout, "%02X", *data++); bytes++; datalen--; } - printf("%*s%s\n", (BPL+1-bytes)*2, "", insn); + fprintf(stdout, "%*s%s\n", (BPL+1-bytes)*2, "", insn); while (datalen > 0) { - printf(" -"); + fprintf(stdout, " -"); bytes = 0; while (datalen > 0 && bytes < BPL) { - printf("%02X", *data++); + fprintf(stdout, "%02X", *data++); bytes++; datalen--; } - printf("\n"); + fprintf(stdout, "\n"); } } @@ -554,7 +554,7 @@ static void elf_add_reloc (struct Section *sect, long segment, r->symbol = 0; for (i=0; i<nsects; i++) if (segment == sects[i]->index) - r->symbol = i+3; + r->symbol = i+2; if (!r->symbol) r->symbol = GLOBAL_TEMP_BASE + raa_read(bsym, segment); } @@ -928,13 +928,13 @@ static struct SAA *elf_build_symtab (long *len, long *local) * Now some standard symbols defining the segments, for relocation * purposes. */ - for (i = 1; i <= nsects+1; i++) { + for (i = 1; i <= nsects; i++) { p = entry; WRITELONG (p, 0); /* no symbol name */ WRITELONG (p, 0); /* offset zero */ WRITELONG (p, 0); /* size zero */ WRITESHORT (p, 3); /* local section-type thing */ - WRITESHORT (p, (i==1 ? SHN_ABS : i-1)); /* the section id */ + WRITESHORT (p, i); /* the section id */ saa_wbytes (s, entry, 16L); *len += 16; (*local)++; @@ -992,7 +992,7 @@ static struct SAA *elf_build_reltab (long *len, struct Reloc *r) { long sym = r->symbol; if (sym >= GLOBAL_TEMP_BASE) - sym += -GLOBAL_TEMP_BASE + (nsects+3) + nlocals; + sym += -GLOBAL_TEMP_BASE + (nsects+2) + nlocals; p = entry; WRITELONG (p, r->address); |