encapsuled wifi abilities in #ifdef EXPERIMENTAL_WIFI
This commit is contained in:
parent
7e91c55b0a
commit
a408099120
|
@ -648,10 +648,12 @@ u16 FASTCALL MMU_read16(u32 proc, u32 adr)
|
||||||
// CFlash reading, Mic
|
// CFlash reading, Mic
|
||||||
if ((adr>=0x08800000)&&(adr<0x09900000))
|
if ((adr>=0x08800000)&&(adr<0x09900000))
|
||||||
return (unsigned short)cflash_read(adr);
|
return (unsigned short)cflash_read(adr);
|
||||||
|
|
||||||
|
#ifdef EXPERIMENTAL_WIFI
|
||||||
/* wifi mac access */
|
/* wifi mac access */
|
||||||
if ((proc==ARMCPU_ARM7) && (adr>=0x04800000)&&(adr<0x05000000))
|
if ((proc==ARMCPU_ARM7) && (adr>=0x04800000)&&(adr<0x05000000))
|
||||||
return WIFI_read16(&wifiMac,adr) ;
|
return WIFI_read16(&wifiMac,adr) ;
|
||||||
|
#endif
|
||||||
|
|
||||||
adr &= 0x0FFFFFFF;
|
adr &= 0x0FFFFFFF;
|
||||||
|
|
||||||
|
@ -1165,9 +1167,12 @@ void FASTCALL MMU_write16(u32 proc, u32 adr, u16 val)
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef EXPERIMENTAL_WIFI
|
||||||
|
|
||||||
/* wifi mac access */
|
/* wifi mac access */
|
||||||
if ((proc==ARMCPU_ARM7) && (adr>=0x04800000)&&(adr<0x05000000))
|
if ((proc==ARMCPU_ARM7) && (adr>=0x04800000)&&(adr<0x05000000))
|
||||||
WIFI_write16(&wifiMac,adr,val) ;
|
WIFI_write16(&wifiMac,adr,val) ;
|
||||||
|
#endif
|
||||||
|
|
||||||
adr &= 0x0FFFFFFF;
|
adr &= 0x0FFFFFFF;
|
||||||
|
|
||||||
|
@ -1418,40 +1423,40 @@ void FASTCALL MMU_write16(u32 proc, u32 adr, u16 val)
|
||||||
return;
|
return;
|
||||||
case REG_DISPB_BG2PA :
|
case REG_DISPB_BG2PA :
|
||||||
if(proc == ARMCPU_ARM9) GPU_setPA(SubScreen.gpu, 2, val);
|
if(proc == ARMCPU_ARM9) GPU_setPA(SubScreen.gpu, 2, val);
|
||||||
return;
|
break;
|
||||||
case REG_DISPB_BG2PB :
|
case REG_DISPB_BG2PB :
|
||||||
if(proc == ARMCPU_ARM9) GPU_setPB(SubScreen.gpu, 2, val);
|
if(proc == ARMCPU_ARM9) GPU_setPB(SubScreen.gpu, 2, val);
|
||||||
return;
|
break;
|
||||||
case REG_DISPB_BG2PC :
|
case REG_DISPB_BG2PC :
|
||||||
if(proc == ARMCPU_ARM9) GPU_setPC(SubScreen.gpu, 2, val);
|
if(proc == ARMCPU_ARM9) GPU_setPC(SubScreen.gpu, 2, val);
|
||||||
return;
|
break;
|
||||||
case REG_DISPB_BG2PD :
|
case REG_DISPB_BG2PD :
|
||||||
if(proc == ARMCPU_ARM9) GPU_setPD(SubScreen.gpu, 2, val);
|
if(proc == ARMCPU_ARM9) GPU_setPD(SubScreen.gpu, 2, val);
|
||||||
return;
|
break;
|
||||||
case REG_DISPA_BG3PA :
|
case REG_DISPA_BG3PA :
|
||||||
if(proc == ARMCPU_ARM9) GPU_setPA(MainScreen.gpu, 3, val);
|
if(proc == ARMCPU_ARM9) GPU_setPA(MainScreen.gpu, 3, val);
|
||||||
return;
|
break;
|
||||||
case REG_DISPA_BG3PB :
|
case REG_DISPA_BG3PB :
|
||||||
if(proc == ARMCPU_ARM9) GPU_setPB(MainScreen.gpu, 3, val);
|
if(proc == ARMCPU_ARM9) GPU_setPB(MainScreen.gpu, 3, val);
|
||||||
return;
|
break;
|
||||||
case REG_DISPA_BG3PC :
|
case REG_DISPA_BG3PC :
|
||||||
if(proc == ARMCPU_ARM9) GPU_setPC(MainScreen.gpu, 3, val);
|
if(proc == ARMCPU_ARM9) GPU_setPC(MainScreen.gpu, 3, val);
|
||||||
return;
|
break;
|
||||||
case REG_DISPA_BG3PD :
|
case REG_DISPA_BG3PD :
|
||||||
if(proc == ARMCPU_ARM9) GPU_setPD(MainScreen.gpu, 3, val);
|
if(proc == ARMCPU_ARM9) GPU_setPD(MainScreen.gpu, 3, val);
|
||||||
return;
|
break;
|
||||||
case REG_DISPB_BG3PA :
|
case REG_DISPB_BG3PA :
|
||||||
if(proc == ARMCPU_ARM9) GPU_setPA(SubScreen.gpu, 3, val);
|
if(proc == ARMCPU_ARM9) GPU_setPA(SubScreen.gpu, 3, val);
|
||||||
return;
|
break;
|
||||||
case REG_DISPB_BG3PB :
|
case REG_DISPB_BG3PB :
|
||||||
if(proc == ARMCPU_ARM9) GPU_setPB(SubScreen.gpu, 3, val);
|
if(proc == ARMCPU_ARM9) GPU_setPB(SubScreen.gpu, 3, val);
|
||||||
return;
|
break;
|
||||||
case REG_DISPB_BG3PC :
|
case REG_DISPB_BG3PC :
|
||||||
if(proc == ARMCPU_ARM9) GPU_setPC(SubScreen.gpu, 3, val);
|
if(proc == ARMCPU_ARM9) GPU_setPC(SubScreen.gpu, 3, val);
|
||||||
return;
|
break;
|
||||||
case REG_DISPB_BG3PD :
|
case REG_DISPB_BG3PD :
|
||||||
if(proc == ARMCPU_ARM9) GPU_setPD(SubScreen.gpu, 3, val);
|
if(proc == ARMCPU_ARM9) GPU_setPD(SubScreen.gpu, 3, val);
|
||||||
return;
|
break;
|
||||||
case REG_DISPA_BG2XL :
|
case REG_DISPA_BG2XL :
|
||||||
if(proc == ARMCPU_ARM9) GPU_setXL(MainScreen.gpu, 2, val);
|
if(proc == ARMCPU_ARM9) GPU_setXL(MainScreen.gpu, 2, val);
|
||||||
return;
|
return;
|
||||||
|
@ -2028,53 +2033,53 @@ void FASTCALL MMU_write32(u32 proc, u32 adr, u32 val)
|
||||||
#endif
|
#endif
|
||||||
case REG_DISPA_BG2PA :
|
case REG_DISPA_BG2PA :
|
||||||
if (proc == ARMCPU_ARM9) GPU_setPAPB(MainScreen.gpu, 2, val);
|
if (proc == ARMCPU_ARM9) GPU_setPAPB(MainScreen.gpu, 2, val);
|
||||||
return;
|
break;
|
||||||
case REG_DISPA_BG2PC :
|
case REG_DISPA_BG2PC :
|
||||||
if (proc == ARMCPU_ARM9) GPU_setPCPD(MainScreen.gpu, 2, val);
|
if (proc == ARMCPU_ARM9) GPU_setPCPD(MainScreen.gpu, 2, val);
|
||||||
return;
|
break;
|
||||||
|
|
||||||
case REG_DISPB_BG2PA :
|
case REG_DISPB_BG2PA :
|
||||||
if (proc == ARMCPU_ARM9) GPU_setPAPB(SubScreen.gpu, 2, val);
|
if (proc == ARMCPU_ARM9) GPU_setPAPB(SubScreen.gpu, 2, val);
|
||||||
return;
|
break;
|
||||||
case REG_DISPB_BG2PC :
|
case REG_DISPB_BG2PC :
|
||||||
if (proc == ARMCPU_ARM9) GPU_setPCPD(SubScreen.gpu, 2, val);
|
if (proc == ARMCPU_ARM9) GPU_setPCPD(SubScreen.gpu, 2, val);
|
||||||
return;
|
break;
|
||||||
case REG_DISPA_BG3PA :
|
case REG_DISPA_BG3PA :
|
||||||
if (proc == ARMCPU_ARM9) GPU_setPAPB(MainScreen.gpu, 3, val);
|
if (proc == ARMCPU_ARM9) GPU_setPAPB(MainScreen.gpu, 3, val);
|
||||||
return;
|
break;
|
||||||
case REG_DISPA_BG3PC :
|
case REG_DISPA_BG3PC :
|
||||||
if (proc == ARMCPU_ARM9) GPU_setPCPD(MainScreen.gpu, 3, val);
|
if (proc == ARMCPU_ARM9) GPU_setPCPD(MainScreen.gpu, 3, val);
|
||||||
return;
|
break;
|
||||||
case REG_DISPB_BG3PA :
|
case REG_DISPB_BG3PA :
|
||||||
if (proc == ARMCPU_ARM9) GPU_setPAPB(SubScreen.gpu, 3, val);
|
if (proc == ARMCPU_ARM9) GPU_setPAPB(SubScreen.gpu, 3, val);
|
||||||
return;
|
break;
|
||||||
case REG_DISPB_BG3PC :
|
case REG_DISPB_BG3PC :
|
||||||
if (proc == ARMCPU_ARM9) GPU_setPCPD(SubScreen.gpu, 3, val);
|
if (proc == ARMCPU_ARM9) GPU_setPCPD(SubScreen.gpu, 3, val);
|
||||||
return;
|
break;
|
||||||
case REG_DISPA_BG2XL :
|
case REG_DISPA_BG2XL :
|
||||||
if (proc == ARMCPU_ARM9) GPU_setX(MainScreen.gpu, 2, val);
|
if (proc == ARMCPU_ARM9) GPU_setX(MainScreen.gpu, 2, val);
|
||||||
return;
|
break;
|
||||||
case REG_DISPA_BG2YL :
|
case REG_DISPA_BG2YL :
|
||||||
if (proc == ARMCPU_ARM9) GPU_setY(MainScreen.gpu, 2, val);
|
if (proc == ARMCPU_ARM9) GPU_setY(MainScreen.gpu, 2, val);
|
||||||
return;
|
break;
|
||||||
case REG_DISPB_BG2XL :
|
case REG_DISPB_BG2XL :
|
||||||
if (proc == ARMCPU_ARM9) GPU_setX(SubScreen.gpu, 2, val);
|
if (proc == ARMCPU_ARM9) GPU_setX(SubScreen.gpu, 2, val);
|
||||||
return;
|
break;
|
||||||
case REG_DISPB_BG2YL :
|
case REG_DISPB_BG2YL :
|
||||||
if (proc == ARMCPU_ARM9) GPU_setY(SubScreen.gpu, 2, val);
|
if (proc == ARMCPU_ARM9) GPU_setY(SubScreen.gpu, 2, val);
|
||||||
return;
|
break;
|
||||||
case REG_DISPA_BG3XL :
|
case REG_DISPA_BG3XL :
|
||||||
if (proc == ARMCPU_ARM9) GPU_setX(MainScreen.gpu, 3, val);
|
if (proc == ARMCPU_ARM9) GPU_setX(MainScreen.gpu, 3, val);
|
||||||
return;
|
break;
|
||||||
case REG_DISPA_BG3YL :
|
case REG_DISPA_BG3YL :
|
||||||
if (proc == ARMCPU_ARM9) GPU_setY(MainScreen.gpu, 3, val);
|
if (proc == ARMCPU_ARM9) GPU_setY(MainScreen.gpu, 3, val);
|
||||||
return;
|
break;
|
||||||
case REG_DISPB_BG3XL :
|
case REG_DISPB_BG3XL :
|
||||||
if (proc == ARMCPU_ARM9) GPU_setX(SubScreen.gpu, 3, val);
|
if (proc == ARMCPU_ARM9) GPU_setX(SubScreen.gpu, 3, val);
|
||||||
return;
|
break;
|
||||||
case REG_DISPB_BG3YL :
|
case REG_DISPB_BG3YL :
|
||||||
if (proc == ARMCPU_ARM9) GPU_setY(SubScreen.gpu, 3, val);
|
if (proc == ARMCPU_ARM9) GPU_setY(SubScreen.gpu, 3, val);
|
||||||
return;
|
break;
|
||||||
case REG_DISPA_BG0HOFS :
|
case REG_DISPA_BG0HOFS :
|
||||||
if (proc == ARMCPU_ARM9) GPU_scrollXY(MainScreen.gpu, 0, val);
|
if (proc == ARMCPU_ARM9) GPU_scrollXY(MainScreen.gpu, 0, val);
|
||||||
return;
|
return;
|
||||||
|
|
|
@ -45,7 +45,9 @@ int NDS_Init(void) {
|
||||||
if (SPU_Init(SNDCORE_DUMMY, 735) != 0)
|
if (SPU_Init(SNDCORE_DUMMY, 735) != 0)
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
|
#ifdef EXPERIMENTAL_WIFI
|
||||||
WIFI_Init(&wifiMac) ;
|
WIFI_Init(&wifiMac) ;
|
||||||
|
#endif
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
@ -522,6 +524,8 @@ int NDS_WriteBMP(const char *filename)
|
||||||
/* creates an firmware flash image, which contains all needed info to initiate a wifi connection */
|
/* creates an firmware flash image, which contains all needed info to initiate a wifi connection */
|
||||||
int NDS_CreateDummyFirmware(void)
|
int NDS_CreateDummyFirmware(void)
|
||||||
{
|
{
|
||||||
|
#ifdef EXPERIMENTAL_WIFI
|
||||||
|
|
||||||
memcpy(MMU.fw.data+0x36,FW_Mac,sizeof(FW_Mac)) ;
|
memcpy(MMU.fw.data+0x36,FW_Mac,sizeof(FW_Mac)) ;
|
||||||
memcpy(MMU.fw.data+0x44,FW_WIFIInit,sizeof(FW_WIFIInit)) ;
|
memcpy(MMU.fw.data+0x44,FW_WIFIInit,sizeof(FW_WIFIInit)) ;
|
||||||
MMU.fw.data[0x41] = 18 ; /* bits per RF value */
|
MMU.fw.data[0x41] = 18 ; /* bits per RF value */
|
||||||
|
@ -532,6 +536,7 @@ int NDS_CreateDummyFirmware(void)
|
||||||
memcpy(MMU.fw.data+0x146,FW_BBChannel,sizeof(FW_BBChannel)) ;
|
memcpy(MMU.fw.data+0x146,FW_BBChannel,sizeof(FW_BBChannel)) ;
|
||||||
|
|
||||||
memcpy(MMU.fw.data+0x03FA40,FW_WFCProfile,sizeof(FW_WFCProfile)) ;
|
memcpy(MMU.fw.data+0x03FA40,FW_WFCProfile,sizeof(FW_WFCProfile)) ;
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
int NDS_LoadFirmware(const char *filename)
|
int NDS_LoadFirmware(const char *filename)
|
||||||
|
|
|
@ -203,12 +203,15 @@ int NDS_CreateDummyFirmware(void);
|
||||||
nds.ARM9Cycle += armcpu_exec(&NDS_ARM9);
|
nds.ARM9Cycle += armcpu_exec(&NDS_ARM9);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef EXPERIMENTAL_WIFI
|
||||||
|
|
||||||
if((nds.ARM7Cycle % 0x3F03) == 0)
|
if((nds.ARM7Cycle % 0x3F03) == 0)
|
||||||
{
|
{
|
||||||
/* 3F03 arm7 cyles = ~1usec */
|
/* 3F03 arm7 cyles = ~1usec */
|
||||||
WIFI_usTrigger(&wifiMac) ;
|
WIFI_usTrigger(&wifiMac) ;
|
||||||
}
|
}
|
||||||
if(nds.ARM7Cycle<=nds.cycles)
|
#endif
|
||||||
|
if(nds.ARM7Cycle<=nds.cycles)
|
||||||
{
|
{
|
||||||
#ifdef LOG_ARM7
|
#ifdef LOG_ARM7
|
||||||
if(logcount==1){
|
if(logcount==1){
|
||||||
|
|
Loading…
Reference in New Issue