Re: bootloader issue
Izumi Tsutsui <[email protected]>
| Newsgroups | gmane.os.netbsd.ports.atari |
|---|---|
| Message-ID | <[email protected]> |
David Ross wrote: > I thought it would be a bug in the first stage because I don't even see the > banner from the second stage. But I guess it must be something that's > happening in the second stage before the banner gets printed. Okay, now I've managed to get the problem. The aggressive gcc4 strikes us again. /usr/mdec/bootxx binary should have bootxx() function at the top as an entry point (because the xxboot jumps to the fixed address) and it is the first function in atari/stand/bootxx/bootxx.c. 1.6.x bootxx looks like: --- bootxx: file format elf32-m68k Disassembly of section .text: 00020000 <bootxx>: 20000: 48e7 3c30 moveml %d2-%d5/%a2-%a3,%sp@- 20004: 2a2f 001c movel %sp@(28),%d5 20008: 282f 0020 movel %sp@(32),%d4 2000c: 262f 0024 movel %sp@(36),%d3 : --- But 4.0 bootxx (maybe same with HEAD) shows: --- bootxx: file format elf32-m68k Disassembly of section .text: 00020000 <_rtt>: 20000: 4879 0002 1780 pea 21780 <putchar+0x28> 20006: 61ff 0000 1538 bsrl 21540 <printf> 2000c: 588f addql #4,%sp 2000e: 60fe bras 2000e <_rtt+0xe> 20010: 4e71 nop 00020012 <load_booter>: 20012: 2f03 movel %d3,%sp@- : 0002030a <bootxx>: 2030a: 48e7 3800 moveml %d2-%d4,%sp@- : --- As you can see in sys/arch/atari/stand/bootxx/bootxx.c, _rtt() function just prints "Halting...", that's what you saw! The tertiary boot.atari also has the same problem. I'll check how we can make gcc put bootxx() at the top of the binary. --- Izumi Tsutsui