#include <grub/types.h>
#endif
-#define GRUB_MACHINE_MEMORY_STACK_HIGH 0x81000000
+#define GRUB_MACHINE_MEMORY_STACK_HIGH 0x80f00000
+#define GRUB_MACHINE_MEMORY_USABLE 0x81000000
#define GRUB_MACHINE_MEMORY_AVAILABLE 1
#elif defined (GRUB_CPU_MIPS)
/* mips is big-endian. */
#define GRUB_TARGET_WORDS_BIGENDIAN
-#else
+#elif !defined (GRUB_SYMBOL_GENERATOR)
#error Neither GRUB_CPU_MIPS nor GRUB_CPU_MIPSEL is defined
#endif
switch (type)
{
case STT_NOTYPE:
+ case STT_OBJECT:
/* Resolve a global symbol. */
if (sym->st_name != 0 && sym->st_shndx == 0)
{
"the symbol `%s' not found", name);
}
else
- sym->st_value = 0;
- break;
-
- case STT_OBJECT:
- sym->st_value += (Elf_Addr) grub_dl_get_section_addr (mod,
- sym->st_shndx);
- if (bind != STB_LOCAL)
- if (grub_dl_register_symbol (name, (void *) sym->st_value, mod))
- return grub_errno;
+ {
+ sym->st_value += (Elf_Addr) grub_dl_get_section_addr (mod,
+ sym->st_shndx);
+ if (bind != STB_LOCAL)
+ if (grub_dl_register_symbol (name, (void *) sym->st_value, mod))
+ return grub_errno;
+ }
break;
case STT_FUNC:
void
grub_machine_init (void)
{
- void *tst;
- grub_mm_init_region ((void *) GRUB_MACHINE_MEMORY_STACK_HIGH,
- RAMSIZE - (GRUB_MACHINE_MEMORY_STACK_HIGH & 0x7fffffff));
+ grub_mm_init_region ((void *) GRUB_MACHINE_MEMORY_USABLE,
+ RAMSIZE - (GRUB_MACHINE_MEMORY_USABLE & 0x7fffffff));
grub_install_get_time_ms (grub_rtc_get_time_ms);
}
int
grub_getkey (void)
{
- int c;
if (!grub_cur_term_input)
return 0;
return (grub_cur_term_input->getkey) ();
#include <grub/extcmd.h>
#define TEXT_WIDTH 80
-#define TEXT_HEIGHT 25
+#define TEXT_HEIGHT 24
static unsigned int xpos, ypos;
static unsigned int keep_track = 1;
break;
case '\n':
- if (ypos < TEXT_HEIGHT)
+ if (ypos < TEXT_HEIGHT - 1)
ypos++;
break;