Skip to content

Can't load binary via USB Gecko and bootmii-utils client #3

Description

@bryankeller

I've set up my cross-compile build environment successfully (on macOS), and can build a basic PPC binary (based on ppcskel) that flashes the drive light. It runs correctly if I:

  • save it as bootmii/ppcboot.elf
  • select it from the SD loader built into BootMii

I've also compiled bootmii-utils, and the client seems to run correctly, automatically detecting my USB Gecko:

% ./bootmii -p blink.elf
bootmii client v0.1
coded by dhewg, #wiidev efnet

using /dev/tty.usbserial-GECKUSB0
sending PPC upload request
sending file size (3632 bytes)
sending data.
done.

Despite appearing to succeed, nothing happens, and I remain at the BootMii screen able to navigate the menu with the face buttons.

Additional context:

  • BootMii installed as boot2
  • BootMii 1.5, installed via HackMii Installer 1.2
  • USB Gecko serial output working correctly (although I can't use it simultaneously when trying to send a binary, since the bootmii terminal app says the "gecko_open: Resource busy unable to open the device"

Full USB Gecko log:

BootMii v1.5
Copyright (C) 2008-2010 Team Twiizers.
All rights reserved.  Redistribution or sale is prohibited.
ARMBOOT header (@0x28700):
 Header size: 00000010
 Loader size: 00003cd0
 ELF size: 00027674
 Argument: 00000001
 ELF at 0x2c3e0
Trying to mount SD...
sdhc_bus_power(1)
sdhc_bus_clock(25000)
CID: mid=03 name='SDSU04G' prv=128.5 psn=0028d529 mdt=10/2008
csd: 00 40 0e 00 32 5b 59 00 00 1d 8a 7f 80 0a 40 40 
sdmmc: sdhc mode, c_size=7562, card size = 3872256k
sdmmc_select: resp=700
Trying to open SD:/bootmii/armboot.bin
Trying to read ARMBOOT header to 0x10407c00
ARMBOOT header (@0x10407c00):
 Header size: 00000010
 Loader size: 000004d0
 ELF size: 00008774
 Argument: 00000000
 ELF at 0x104080e0
Total ARMBOOT size: 0x8c54
Trying to read ARMBOOT to 0x10407c00
ARMBOOT read
Launching ARMBOOT @ 0x10407c10

mini 0.4-1-gbefb loading
Initializing exceptions...
Configuring caches and MMU...
MEM: cleaning up
MEM: unprotecting memory
MEM: mapping sections
MEM: enabling caches
MEM: enabling MMU
MEM: init done
IOSflags: 0000ff91 00000000 00000000
          00000000 00000000 cafebabe
Interrupts initialized
crypto support initialized
NAND initialized.
found valid boot2 blockmap at page 0xbf, submap 0, generation 4
found valid boot2 blockmap at page 0x13f, submap 0, generation 11
found valid boot2 blockmap at page 0x1bf, submap 0, generation 5
boot2 blocks: 03 04 05 06 07
boot2 title key: 180d129b36dbc2b9094f77a34e7000f6
boot2 content size: 0x2b354 (padded: 0x2b360)
boot2 copy 0 loaded to 0x13f01e80
Initializing IPC...
Initializing SDHC...
sdhc_bus_power(1)
sdhc_bus_clock(25000)
CID: mid=03 name='SDSU04G' prv=128.5 psn=0028d529 mdt=10/2008
csd: 00 40 0e 00 32 5b 59 00 00 1d 8a 7f 80 0a 40 40 
sdmmc: sdhc mode, c_size=7562, card size = 3872256k
sdmmc_select: resp=700
Mounting SD...
Trying to boot:/bootmii/ppcboot.elf
LOAD 0x80 @0x00003400 [0x140]
LOAD 0x1c0 @0x00004000 [0x4d060]
ELF load done, booting PPC...
disabling EXI now...
PPC booted!
Going into IPC mainloop...
sdhc_bus_power(1)
sdhc_bus_clock(25000)
CID: mid=03 name='SDSU04G' prv=128.5 psn=0028d529 mdt=10/2008
csd: 00 40 0e 00 32 5b 59 00 00 1d 8a 7f 80 0a 40 40 
sdmmc: sdhc mode, c_size=7562, card size = 3872256k
sdmmc_select: resp=700
cache init ok
cache init ok
cleared 1 pending power IRQs and 1 pending eject IRMini version: 1.3

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions