some warnings fixed, nsf fixed, palettes, more code backported
[fceu.git] / memory.c
index 8fb701d..de10c11 100644 (file)
--- a/memory.c
+++ b/memory.c
@@ -1,7 +1,7 @@
 /* FCE Ultra - NES/Famicom Emulator
  *
  * Copyright notice for this file:
 /* FCE Ultra - NES/Famicom Emulator
  *
  * Copyright notice for this file:
- *  Copyright (C) 2002 Ben Parnell
+ *  Copyright (C) 2002 Xodnizel
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
 #include <stdlib.h>
 
 #include "types.h"
 #include <stdlib.h>
 
 #include "types.h"
-#include "version.h"
+#include "fce.h"
 #include "memory.h"
 #include "general.h"
 #include "svga.h"
 
 #include "memory.h"
 #include "general.h"
 #include "svga.h"
 
+void *FCEU_gmalloc(uint32 size)
+{
+ void *ret;
+ ret=malloc(size);
+ if(!ret)
+ {
+  FCEU_PrintError("Error allocating memory!  Doing a hard exit.");
+  exit(1);
+ }
+ return ret;
+}
+
 void *FCEU_malloc(uint32 size)
 {
  void *ret;
  ret=malloc(size);
  if(!ret)
 void *FCEU_malloc(uint32 size)
 {
  void *ret;
  ret=malloc(size);
  if(!ret)
-  FCEU_PrintError(MSG_ERRAM);
+ {
+  FCEU_PrintError("Error allocating memory!");
+  return(0);
+ }
  return ret;
 }
 
  return ret;
 }
 
-void FCEU_free(void *ptr)              // Might do something with this and FCEU_malloc later...
+void FCEU_free(void *ptr)    // Might do something with this and FCEU_malloc later...
 {
  free(ptr);
 }
 
 {
  free(ptr);
 }
 
-
+void FCEU_gfree(void *ptr)
+{
+ free(ptr);
+}
 
 void FASTAPASS(3) FCEU_memmove(void *d, void *s, uint32 l)
 {
 
 void FASTAPASS(3) FCEU_memmove(void *d, void *s, uint32 l)
 {
@@ -52,20 +70,20 @@ void FASTAPASS(3) FCEU_memmove(void *d, void *s, uint32 l)
  t|=(int)s;
  t|=(int)l;
 
  t|=(int)s;
  t|=(int)l;
 
- if(t&3)          // Not 4-byte aligned and/or length is not a multiple of 4.
+ if(t&3)    // Not 4-byte aligned and/or length is not a multiple of 4.
  {
  {
-  uint8 *tmpd, *tmps;  
+  uint8 *tmpd, *tmps;
 
   tmpd = d;
   tmps = s;
 
 
   tmpd = d;
   tmps = s;
 
-  for(x=l;x;x--)        // This could be optimized further, though(more tests could be performed).
+  for(x=l;x;x--)  // This could be optimized further, though(more tests could be performed).
   {
    *tmpd=*tmps;
    tmpd++;
    tmps++;
   }
   {
    *tmpd=*tmps;
    tmpd++;
    tmps++;
   }
 }
+ }
  else
  {
   uint32 *tmpd, *tmps;
  else
  {
   uint32 *tmpd, *tmps;
@@ -79,6 +97,5 @@ void FASTAPASS(3) FCEU_memmove(void *d, void *s, uint32 l)
    tmpd++;
    tmps++;
   }
    tmpd++;
    tmps++;
   }
+ }
 }
 }
-}
-