random warning fixes
[fceu.git] / cart.c
diff --git a/cart.c b/cart.c
index 742f9b0..909506a 100644 (file)
--- a/cart.c
+++ b/cart.c
 #include <stdlib.h>
 #include <stdio.h>
 
+#ifdef GP2X
+#include <unistd.h> // for sync()
+#endif
+
 #include "types.h"
 #include "fce.h"
 #include "ppu.h"
+#include "ppu098.h"
 
 #include "cart.h"
 #include "memory.h"
@@ -35,8 +40,6 @@
 #include "svga.h"
 #include "file.h"
 
-#define FCEUPPU_LineUpdate(...)
-
 /*
    This file contains all code for coordinating the mapping in of the
    address space external to the NES.
@@ -304,7 +307,7 @@ void FASTAPASS(2) setchr8r(int r, unsigned int V)
   if(CHRram[r])
    PPUCHRRAM|=(255);
   else
-   PPUCHRRAM&=~(255);
+   PPUCHRRAM&=0;
 }
 
 void FASTAPASS(2) setchr1(unsigned int A, unsigned int V)
@@ -683,6 +686,10 @@ void FCEU_SaveGameSave(CartInfo *LocalHWInfo)
      fwrite(LocalHWInfo->SaveGame[x],1,
       LocalHWInfo->SaveGameLen[x],sp);
     }
+   fclose(sp);
+#ifdef GP2X
+   sync();
+#endif
   }
   free(soot);
  }
@@ -706,6 +713,7 @@ void FCEU_LoadGameSave(CartInfo *LocalHWInfo)
    for(x=0;x<4;x++)
     if(LocalHWInfo->SaveGame[x])
      fread(LocalHWInfo->SaveGame[x],1,LocalHWInfo->SaveGameLen[x],sp);
+   fclose(sp);
   }
   free(soot);
  }