my "fix" for now:

INCLUDE mkelfImage.lds
OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386")
OUTPUT_ARCH(i386)
MEMORY
{
        /* 0x10000 - 0x90000 A good safe area in low memory I can use */
        low (rwx)    : ORIGIN = 0x050000, LENGTH = 0x0040000
                                ^^^^^^^^^
        middle (rwx) : ORIGIN = 0x091000, LENGTH = 0x0001000
        upper (rwx)  : ORIGIN = 0x100000, LENGTH = 0x37f00000
}
ENTRY(startup_32)
SECTIONS
{
  . = 0x50000 ;
  ^^^^^^^^^^^^
  _text = .;                    /* Text and read-only data */
  .text (.): {
        *(.text)
        *(.fixup)
        *(.gnu.warning)
        } > low  = 0x9090
  .rodata (.): { *(.rodata) *(.note.data)} > low
  .kstrtab (.): { *(.kstrtab) } > low


  . = ALIGN(16);                /* Exception table */
  _etext = .;                   /* End of text section */

  .data (.): {                  /* Data */
        *(.data)
        CONSTRUCTORS
        } > low

  _edata = .;                   /* End of data section */
  __bss_start = .;              /* BSS */
  .bss (.): {
        *(.bss)
        } > low


.
.
.

etc.

I moved the memory up to 0x50000. This has worked on almost everything.

ron

Reply via email to