mirror of
https://github.com/HarbourMasters/Starship.git
synced 2025-02-03 00:33:55 +03:00
Fixed save-files and rumble
This commit is contained in:
parent
59dc1cf083
commit
648e173a3c
@ -44,26 +44,15 @@ s32 Save_Write(void) {
|
||||
gSaveFile.save.checksum = Save_Checksum(&gSaveFile.save);
|
||||
gSaveFile.backup = gSaveFile.save;
|
||||
gSaveIOBuffer = gSaveFile;
|
||||
osSendMesg(&gSerialThreadMsgQueue, OS_MESG_32(SI_WRITE_SAVE), OS_MESG_PRI_NORMAL);
|
||||
osRecvMesg(&gSaveMsgQueue, &sp1C, OS_MESG_BLOCK);
|
||||
if (sp1C.data32 != SI_SAVE_SUCCESS) {
|
||||
return -1;
|
||||
}
|
||||
Save_WriteData();
|
||||
return 0;
|
||||
}
|
||||
|
||||
s32 Save_Read(void) {
|
||||
|
||||
return 0;
|
||||
OSMesg* sp24;
|
||||
s32 i;
|
||||
|
||||
osSendMesg(&gSerialThreadMsgQueue, OS_MESG_32(SI_READ_SAVE), OS_MESG_PRI_NORMAL);
|
||||
osRecvMesg(&gSaveMsgQueue, &sp24, OS_MESG_BLOCK);
|
||||
if (sp24->data32 != SI_SAVE_SUCCESS) {
|
||||
return -1;
|
||||
}
|
||||
|
||||
Save_ReadData();
|
||||
gSaveFile = gSaveIOBuffer;
|
||||
|
||||
if (gSaveFile.save.checksum == Save_Checksum(&gSaveFile.save)) {
|
||||
|
@ -88,7 +88,7 @@ void Controller_ReadData(void) {
|
||||
}
|
||||
} else {
|
||||
osContStartReadData(&gSerialEventQueue);
|
||||
osRecvMesg(&gSerialEventQueue, NULL, OS_MESG_BLOCK);
|
||||
osRecvMesg(&gSerialEventQueue, NULL, OS_MESG_NOBLOCK);
|
||||
osContGetReadData(sNextController);
|
||||
}
|
||||
osSendMesg(&gControllerMsgQueue, OS_MESG_32(SI_CONT_READ_DONE), OS_MESG_PRI_NORMAL);
|
||||
@ -113,10 +113,6 @@ void Save_WriteData(void) {
|
||||
void Controller_Rumble(void) {
|
||||
s32 i;
|
||||
|
||||
// osContStartQuery(&gSerialEventQueue);
|
||||
osRecvMesg(&gSerialEventQueue, NULL, OS_MESG_BLOCK);
|
||||
// osContGetQuery(sControllerStatus);
|
||||
|
||||
for (i = 0; i < 4; i++) {
|
||||
if ((gControllerPlugged[i] != 0) && (sControllerStatus[i].err_no == 0)) {
|
||||
if (sControllerStatus[i].status & 1) {
|
||||
|
@ -195,27 +195,17 @@ void Main_SetVIMode(void) {
|
||||
// }
|
||||
}
|
||||
|
||||
void SerialInterface_ThreadEntry(void* arg0) {
|
||||
void SerialInterface_ThreadUpdate() {
|
||||
OSMesg sp34;
|
||||
|
||||
Controller_Init();
|
||||
while (1) {
|
||||
osRecvMesg(&gSerialThreadMsgQueue, &sp34, OS_MESG_BLOCK);
|
||||
|
||||
switch (sp34.data32) {
|
||||
case SI_READ_CONTROLLER:
|
||||
Controller_ReadData();
|
||||
break;
|
||||
case SI_READ_SAVE:
|
||||
Save_ReadData();
|
||||
break;
|
||||
case SI_WRITE_SAVE:
|
||||
Save_WriteData();
|
||||
break;
|
||||
case SI_RUMBLE:
|
||||
Controller_Rumble();
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -263,10 +253,11 @@ void Graphics_ThreadUpdate(){
|
||||
|
||||
gSysFrameCount++;
|
||||
Graphics_InitializeTask(gSysFrameCount);
|
||||
osRecvMesg(&gControllerMsgQueue, NULL, OS_MESG_BLOCK);
|
||||
osRecvMesg(&gControllerMsgQueue, NULL, OS_MESG_NOBLOCK);
|
||||
osSendMesg(&gSerialThreadMsgQueue, OS_MESG_32(SI_RUMBLE), OS_MESG_PRI_NORMAL);
|
||||
Controller_UpdateInput();
|
||||
Controller_ReadData();
|
||||
Controller_Rumble();
|
||||
osSendMesg(&gSerialThreadMsgQueue, OS_MESG_32(SI_READ_CONTROLLER), OS_MESG_PRI_NORMAL);
|
||||
if (gControllerPress[3].button & U_JPAD) {
|
||||
Main_SetVIMode();
|
||||
|
Loading…
Reference in New Issue
Block a user