diff src/haptic/nds/SDL_syshaptic.c @ 2750:e3affc66d963

Fixes to the NDS sprite2 test. Illustrates partially working texture-as-sprite functionality.
author Darren Alton <dalton@stevens.edu>
date Sat, 06 Sep 2008 04:31:34 +0000
parents 1c5f440a60fe
children 8f4ed5ec2b06
line wrap: on
line diff
--- a/src/haptic/nds/SDL_syshaptic.c	Sat Sep 06 00:10:16 2008 +0000
+++ b/src/haptic/nds/SDL_syshaptic.c	Sat Sep 06 04:31:34 2008 +0000
@@ -43,36 +43,35 @@
 } NDS_HapticData;
 
 
-
-void NDS_EZF_OpenNorWrite()
-{
-    GBA_BUS[0x0FF0000] = 0xD200;
-    GBA_BUS[0x0000000] = 0x1500;
-    GBA_BUS[0x0010000] = 0xD200;
-    GBA_BUS[0x0020000] = 0x1500;
-    GBA_BUS[0x0E20000] = 0x1500;
-    GBA_BUS[0x0FE0000] = 0x1500;
-}
-
-
-void NDS_EZF_CloseNorWrite()
-{
-    GBA_BUS[0x0FF0000] = 0xD200;
-    GBA_BUS[0x0000000] = 0x1500;
-    GBA_BUS[0x0010000] = 0xD200;
-    GBA_BUS[0x0020000] = 0x1500;
-    GBA_BUS[0x0E20000] = 0xD200;
-    GBA_BUS[0x0FE0000] = 0x1500;
-}
+
void
+NDS_EZF_OpenNorWrite() 
+{
+    
GBA_BUS[0x0FF0000] = 0xD200;
+    
GBA_BUS[0x0000000] = 0x1500;
+    
GBA_BUS[0x0010000] = 0xD200;
+    
GBA_BUS[0x0020000] = 0x1500;
+    
GBA_BUS[0x0E20000] = 0x1500;
+    
GBA_BUS[0x0FE0000] = 0x1500;
+
} 


void
 
-void NDS_EZF_ChipReset()
-{
-    GBA_BUS[0x0000] = 0x00F0 ;
-    GBA_BUS[0x1000] = 0x00F0 ;
-}
-uint32 NDS_EZF_IsPresent()
-{
-    vuint16 id1,id2;
+NDS_EZF_CloseNorWrite() 
+{
+    
GBA_BUS[0x0FF0000] = 0xD200;
+    
GBA_BUS[0x0000000] = 0x1500;
+    
GBA_BUS[0x0010000] = 0xD200;
+    
GBA_BUS[0x0020000] = 0x1500;
+    
GBA_BUS[0x0E20000] = 0xD200;
+    
GBA_BUS[0x0FE0000] = 0x1500;
+
}
+
+void
+NDS_EZF_ChipReset()
+{
+    
GBA_BUS[0x0000] = 0x00F0;
+    
GBA_BUS[0x1000] = 0x00F0;
+} 
uint32 NDS_EZF_IsPresent() 
+{
+    
vuint16 id1, id2;
 
     NDS_EZF_OpenNorWrite();
 
@@ -82,41 +81,35 @@
     GBA_BUS[0x1555] = 0x00AA;
     GBA_BUS[0x12AA] = 0x0055;
     GBA_BUS[0x1555] = 0x0090;
-
-    id1 = GBA_BUS[0x0001];
-    id2 = GBA_BUS[0x1001];
-
-    if((id1!=0x227E)|| (id2!=0x227E)) {
-        NDS_EZF_CloseNorWrite();
-        return 0;
-    }
-
-    id1 = GBA_BUS[0x000E];
-    id2 = GBA_BUS[0x100E];
+    
id1 = GBA_BUS[0x0001];
+    
id2 = GBA_BUS[0x1001];
+    
if ((id1 != 0x227E) || (id2 != 0x227E)) {
+        NDS_EZF_CloseNorWrite();
+        
return 0;
+    }
+    

id1 = GBA_BUS[0x000E];
+    
id2 = GBA_BUS[0x100E];
 
     NDS_EZF_CloseNorWrite();
-
-    if(id1==0x2218 && id2==0x2218) {
-        return 1;
+    
if (id1 == 0x2218 && id2 == 0x2218) {
+        
return 1;
     }
-
-    return 0;
-}
-
-void NDS_EZF_SetShake(u8 pos)
+    
return 0;
+
}
+
void
+NDS_EZF_SetShake(u8 pos) 
 {
-    u16 data = ((pos%3)|0x00F0);
-
-    GBA_BUS[0x0FF0000] = 0xD200;
-    GBA_BUS[0x0000000] = 0x1500;
-    GBA_BUS[0x0010000] = 0xD200;
-    GBA_BUS[0x0020000] = 0x1500;
-    GBA_BUS[0x0F10000] = data;
-    GBA_BUS[0x0FE0000] = 0x1500;
+    u16 data = ((pos % 3) | 0x00F0);
+    
GBA_BUS[0x0FF0000] = 0xD200;
+    
GBA_BUS[0x0000000] = 0x1500;
+    
GBA_BUS[0x0010000] = 0xD200;
+    
GBA_BUS[0x0020000] = 0x1500;
+    
GBA_BUS[0x0F10000] = data;
+    
GBA_BUS[0x0FE0000] = 0x1500;
 
-    GBA_BUS[0] = 0x0000; /* write any value for vibration. */
-    GBA_BUS[0] = 0x0002;
-}
+    GBA_BUS[0] = 0x0000;        /* write any value for vibration. */
+    GBA_BUS[0] = 0x0002;
+
}
 
 static int
 SDL_SYS_LogicError(void)
@@ -130,11 +123,11 @@
 SDL_SYS_HapticInit(void)
 {
     int ret = 0;
-    if(isRumbleInserted()) {
+    if (isRumbleInserted()) {
         /* official rumble pak is present. */
         ret = 1;
         printf("debug: haptic present: nintendo\n");
-    } else if(NDS_EZF_IsPresent()) {
+    } else if (NDS_EZF_IsPresent()) {
         /* ezflash 3-in-1 pak is present. */
         ret = 1;
         printf("debug: haptic present: ezf3in1\n");
@@ -150,11 +143,14 @@
 const char *
 SDL_SYS_HapticName(int index)
 {
-    if(nds_haptic) {
-        switch(nds_haptic->hwdata->type) {
-            case OFFICIAL: return "Nintendo DS Rumble Pak";
-            case EZF3IN1: return "EZFlash 3-in-1 Rumble";
-            default: return NULL;
+    if (nds_haptic) {
+        switch (nds_haptic->hwdata->type) {
+        case OFFICIAL:
+            return "Nintendo DS Rumble Pak";
+        case EZF3IN1:
+            return "EZFlash 3-in-1 Rumble";
+        default:
+            return NULL;
         }
     }
     return NULL;
@@ -164,12 +160,12 @@
 int
 SDL_SYS_HapticOpen(SDL_Haptic * haptic)
 {
-    if(!haptic) {
+    if (!haptic) {
         return -1;
     }
 
     haptic->hwdata = SDL_malloc(sizeof(NDS_HapticData));
-    if(!haptic->hwdata) {
+    if (!haptic->hwdata) {
         SDL_OutOfMemory();
         return -1;
     }
@@ -179,10 +175,10 @@
 
     /* determine what is here, if anything */
     haptic->hwdata->type = NONE;
-    if(isRumbleInserted()) {
+    if (isRumbleInserted()) {
         /* official rumble pak is present. */
         haptic->hwdata->type = OFFICIAL;
-    } else if(NDS_EZF_IsPresent()) {
+    } else if (NDS_EZF_IsPresent()) {
         /* ezflash 3-in-1 pak is present. */
         haptic->hwdata->type = EZF3IN1;
         NDS_EZF_ChipReset();
@@ -213,7 +209,7 @@
 int
 SDL_SYS_HapticOpenFromJoystick(SDL_Haptic * haptic, SDL_Joystick * joystick)
 {
-    /*SDL_SYS_LogicError();*/
+    /*SDL_SYS_LogicError(); */
     return -1;
 }