a little more debugging: all the "gd->bd*" fields are past address 0xa4000000. there's no memory past a3ffffff. where does that come from? i've told it that there is only one bank at 0xa0000000 of size 0x04000000. -j