#107764 - Lick - Wed Nov 01, 2006 8:56 pm
I've tried without success. Anyone who can give me more insight on this?
Taken from hbfirmware
Calling above code on ARM9
I get random junk, different on each run. =(
- Lick
_________________
http://licklick.wordpress.com
Taken from hbfirmware
Code: |
typedef struct {
int id; int id2; u32 CRCs; int invalid; u8 _10[8]; } PACKED CARDINFO; static CARDINFO *cardinfo=(CARDINFO*)0x27ff800; typedef struct { u8 _00[0x20]; u32 arm9src; u32 arm9exec; u32 arm9dst; u32 arm9size; u32 arm7src; u32 arm7exec; u32 arm7dst; u32 arm7size; u8 _40[0x20]; u32 flags0; u32 flags1; } PACKED NDSHEADER; static NDSHEADER *head=(NDSHEADER*)0x27ffe00; void read_card(u32 src, u32 dst, int size) { u32 flags; u32 cmd[2]; flags=CARD_ACTIVATE | CARD_nRESET | 0x01000000 | head->flags0; cmd[0]=0x00000000; cmd[1]=0xb7000000 | (src>>8); while(size>0) { cardPolledTransfer(flags, (u32*)dst, size>512?512:size, (u8*)cmd); cmd[1]+=2; dst+=512; size-=512; } } |
Calling above code on ARM9
Code: |
sNDSHeader physicalNDSHeader;
sysSetBusOwners(true, true); read_card(0, (u32)&physicalNDSHeader, 512); sysSetBusOwners(false, false); |
I get random junk, different on each run. =(
- Lick
_________________
http://licklick.wordpress.com