]> Chaos Git - corbenik/ctrulib.git/commitdiff
Remove service handle parameter from APT IPC wrappers
authorfincs <fincs.alt1@gmail.com>
Sun, 6 Sep 2015 15:41:47 +0000 (17:41 +0200)
committerfincs <fincs.alt1@gmail.com>
Sun, 6 Sep 2015 15:41:47 +0000 (17:41 +0200)
libctru/include/3ds/services/apt.h
libctru/source/gpu/gpu.c
libctru/source/services/apt.c
libctru/source/services/hid.c

index 7c5620c7a1d23de4576a396abc161dbf1f593eb6..160a2c9cfef83eda4da9ebb5e25362372422392c 100644 (file)
@@ -71,55 +71,55 @@ typedef struct tag_aptHookCookie
 
 extern Handle aptEvents[3];
 
-Result aptInit();
-void aptExit();
-void aptOpenSession();
-void aptCloseSession();
+Result aptInit(void);
+void aptExit(void);
+void aptOpenSession(void);
+void aptCloseSession(void);
 void aptSetStatus(APP_STATUS status);
-APP_STATUS aptGetStatus();
-u32 aptGetStatusPower();//This can be used when the status is APP_SUSPEND* to check how the return-to-menu was triggered: 0 = home-button, 1 = power-button.
+APP_STATUS aptGetStatus(void);
+u32 aptGetStatusPower(void);//This can be used when the status is APP_SUSPEND* to check how the return-to-menu was triggered: 0 = home-button, 1 = power-button.
 void aptSetStatusPower(u32 status);
-void aptReturnToMenu();//This should be called by the user application when aptGetStatus() returns APP_SUSPENDING, not calling this will result in return-to-menu being disabled with the status left at APP_SUSPENDING. This function will not return until the system returns to the application, or when the status was changed to APP_EXITING.
-void aptWaitStatusEvent();
-void aptSignalReadyForSleep();
-NS_APPID aptGetMenuAppID();
-bool aptMainLoop(); // Use like this in your main(): while (aptMainLoop()) { your code here... }
+void aptReturnToMenu(void);//This should be called by the user application when aptGetStatus() returns APP_SUSPENDING, not calling this will result in return-to-menu being disabled with the status left at APP_SUSPENDING. This function will not return until the system returns to the application, or when the status was changed to APP_EXITING.
+void aptWaitStatusEvent(void);
+void aptSignalReadyForSleep(void);
+NS_APPID aptGetMenuAppID(void);
+bool aptMainLoop(void); // Use like this in your main(): while (aptMainLoop()) { your code here... }
 
 void aptHook(aptHookCookie* cookie, aptHookFn callback, void* param);
 void aptUnhook(aptHookCookie* cookie);
 
-Result APT_GetLockHandle(Handle* handle, u16 flags, Handle* lockHandle);
-Result APT_Initialize(Handle* handle, NS_APPID appId, Handle* eventHandle1, Handle* eventHandle2);
-Result APT_Finalize(Handle* handle, NS_APPID appId);
-Result APT_HardwareResetAsync(Handle* handle);
-Result APT_Enable(Handle* handle, u32 a);
-Result APT_GetAppletManInfo(Handle* handle, u8 inval, u8 *outval8, u32 *outval32, NS_APPID *menu_appid, NS_APPID *active_appid);
-Result APT_PrepareToJumpToHomeMenu(Handle* handle);
-Result APT_JumpToHomeMenu(Handle* handle, u32 a, u32 b, u32 c);
-Result APT_PrepareToJumpToApplication(Handle* handle, u32 a);
-Result APT_JumpToApplication(Handle* handle, u32 a, u32 b, u32 c);
-Result APT_IsRegistered(Handle* handle, NS_APPID appID, u8* out);
-Result APT_InquireNotification(Handle* handle, u32 appID, u8* signalType);
-Result APT_NotifyToWait(Handle* handle, NS_APPID appID);
-Result APT_AppletUtility(Handle* handle, u32* out, u32 a, u32 size1, u8* buf1, u32 size2, u8* buf2);
-Result APT_GlanceParameter(Handle* handle, NS_APPID appID, u32 bufferSize, u32* buffer, u32* actualSize, u8* signalType);
-Result APT_ReceiveParameter(Handle* handle, NS_APPID appID, u32 bufferSize, u32* buffer, u32* actualSize, u8* signalType);
-Result APT_SendParameter(Handle* handle, NS_APPID src_appID, NS_APPID dst_appID, u32 bufferSize, u32* buffer, Handle paramhandle, u8 signalType);
-Result APT_SendCaptureBufferInfo(Handle* handle, u32 bufferSize, u32* buffer);
-Result APT_ReplySleepQuery(Handle* handle, NS_APPID appID, u32 a);
-Result APT_ReplySleepNotificationComplete(Handle* handle, NS_APPID appID);
-Result APT_PrepareToCloseApplication(Handle* handle, u8 a);
-Result APT_CloseApplication(Handle* handle, u32 a, u32 b, u32 c);
-Result APT_SetAppCpuTimeLimit(Handle* handle, u32 percent);
-Result APT_GetAppCpuTimeLimit(Handle* handle, u32 *percent);
-Result APT_CheckNew3DS_Application(Handle* handle, u8 *out);// Note: this function is unreliable, see: http://3dbrew.org/wiki/APT:PrepareToStartApplication
-Result APT_CheckNew3DS_System(Handle* handle, u8 *out);
-Result APT_CheckNew3DS(Handle* handle, u8 *out);
-Result APT_PrepareToDoAppJump(Handle* handle, u8 flags, u64 programID, u8 mediatype);
-Result APT_DoAppJump(Handle* handle, u32 NSbuf0Size, u32 NSbuf1Size, u8 *NSbuf0Ptr, u8 *NSbuf1Ptr);
-Result APT_PrepareToStartLibraryApplet(Handle* handle, NS_APPID appID);
-Result APT_StartLibraryApplet(Handle* handle, NS_APPID appID, Handle inhandle, u32 *parambuf, u32 parambufsize);
+Result APT_GetLockHandle(u16 flags, Handle* lockHandle);
+Result APT_Initialize(NS_APPID appId, Handle* eventHandle1, Handle* eventHandle2);
+Result APT_Finalize(NS_APPID appId);
+Result APT_HardwareResetAsync(void);
+Result APT_Enable(u32 a);
+Result APT_GetAppletManInfo(u8 inval, u8 *outval8, u32 *outval32, NS_APPID *menu_appid, NS_APPID *active_appid);
+Result APT_PrepareToJumpToHomeMenu(void);
+Result APT_JumpToHomeMenu(u32 a, u32 b, u32 c);
+Result APT_PrepareToJumpToApplication(u32 a);
+Result APT_JumpToApplication(u32 a, u32 b, u32 c);
+Result APT_IsRegistered(NS_APPID appID, u8* out);
+Result APT_InquireNotification(u32 appID, u8* signalType);
+Result APT_NotifyToWait(NS_APPID appID);
+Result APT_AppletUtility(u32* out, u32 a, u32 size1, u8* buf1, u32 size2, u8* buf2);
+Result APT_GlanceParameter(NS_APPID appID, u32 bufferSize, u32* buffer, u32* actualSize, u8* signalType);
+Result APT_ReceiveParameter(NS_APPID appID, u32 bufferSize, u32* buffer, u32* actualSize, u8* signalType);
+Result APT_SendParameter(NS_APPID src_appID, NS_APPID dst_appID, u32 bufferSize, u32* buffer, Handle paramhandle, u8 signalType);
+Result APT_SendCaptureBufferInfo(u32 bufferSize, u32* buffer);
+Result APT_ReplySleepQuery(NS_APPID appID, u32 a);
+Result APT_ReplySleepNotificationComplete(NS_APPID appID);
+Result APT_PrepareToCloseApplication(u8 a);
+Result APT_CloseApplication(u32 a, u32 b, u32 c);
+Result APT_SetAppCpuTimeLimit(u32 percent);
+Result APT_GetAppCpuTimeLimit(u32 *percent);
+Result APT_CheckNew3DS_Application(u8 *out);// Note: this function is unreliable, see: http://3dbrew.org/wiki/APT:PrepareToStartApplication
+Result APT_CheckNew3DS_System(u8 *out);
+Result APT_CheckNew3DS(u8 *out);
+Result APT_PrepareToDoAppJump(u8 flags, u64 programID, u8 mediatype);
+Result APT_DoAppJump(u32 NSbuf0Size, u32 NSbuf1Size, u8 *NSbuf0Ptr, u8 *NSbuf1Ptr);
+Result APT_PrepareToStartLibraryApplet(NS_APPID appID);
+Result APT_StartLibraryApplet(NS_APPID appID, Handle inhandle, u32 *parambuf, u32 parambufsize);
 Result APT_LaunchLibraryApplet(NS_APPID appID, Handle inhandle, u32 *parambuf, u32 parambufsize);//This should be used for launching library applets, this uses the above APT_StartLibraryApplet/APT_PrepareToStartLibraryApplet funcs + apt*Session(). parambuf is used for APT params input, when the applet closes the output param block is copied here. This is not usable from the homebrew launcher. This is broken: when the applet does get launched at all, the applet process doesn't actually get terminated when the applet gets closed.
-Result APT_PrepareToStartSystemApplet(Handle* handle, NS_APPID appID);
-Result APT_StartSystemApplet(Handle* handle, NS_APPID appID, u32 bufSize, Handle applHandle, u8 *buf);
+Result APT_PrepareToStartSystemApplet(NS_APPID appID);
+Result APT_StartSystemApplet(NS_APPID appID, u32 bufSize, Handle applHandle, u8 *buf);
 
index 401ea603aa71c89eabb40accbcf88c1042cf42df..e40ce68f7a6bf24179bb36b5d3a975417334c2a0 100644 (file)
@@ -90,14 +90,20 @@ void GPUCMD_Finalize(void)
        GPUCMD_AddWrite(GPUREG_FINALIZE, 0x12345678); //not the cleanest way of guaranteeing 0x10-byte size but whatever good enough for now
 }
 
+static inline u32 floatrawbits(float f)
+{
+       union { float f; u32 i; } s;
+       s.f = f;
+       return s.i;
+}
+
 // f24 has:
 //  - 1 sign bit
 //  - 7 exponent bits
 //  - 16 mantissa bits
 u32 f32tof24(float f)
 {
-       u32 i;
-       memcpy(&i, &f, 4);
+       u32 i = floatrawbits(f);
 
        u32 mantissa = (i << 9) >>  9;
        s32 exponent = (i << 1) >> 24;
@@ -128,8 +134,7 @@ u32 f32tof24(float f)
 //  - 23 mantissa bits
 u32 f32tof31(float f)
 {
-       u32 i;
-       memcpy(&i, &f, 4);
+       u32 i = floatrawbits(f);
 
        u32 mantissa = (i << 9) >>  9;
        s32 exponent = (i << 1) >> 24;
index 41a52284d5518037ca1bd4665e8b41f1c7bf2721..9aa30d39b7d273485ae60029b04090be9e0e14f0 100644 (file)
@@ -74,7 +74,7 @@ static bool aptIsCrippled(void)
        return (__system_runflags & RUNFLAG_APTWORKAROUND) != 0 && !aptIsReinit();
 }
 
-static Result __apt_initservicehandle()
+static Result __apt_initservicehandle(void)
 {
        Result ret=0;
        u32 i;
@@ -126,7 +126,7 @@ void aptInitCaptureInfo(u32 *ns_capinfo)
        ns_capinfo[0] = main_pixsz * 0x7000 + tmp;
 }
 
-void aptWaitStatusEvent()
+void aptWaitStatusEvent(void)
 {
        svcWaitSynchronization(aptStatusEvent, U64_MAX);
        svcClearEvent(aptStatusEvent);
@@ -140,48 +140,48 @@ void aptAppletUtility_Exit_RetToApp(u32 type)
        
        buf1[0]=0x10;
        aptOpenSession();
-       APT_AppletUtility(NULL, NULL, 0x7, 0x4, buf1, 0x1, buf2);
+       APT_AppletUtility(NULL, 0x7, 0x4, buf1, 0x1, buf2);
        aptCloseSession();
 
        buf1[0]=0x00;
        aptOpenSession();
-       APT_AppletUtility(NULL, NULL, 0x4, 0x1, buf1, 0x1, buf2);
+       APT_AppletUtility(NULL, 0x4, 0x1, buf1, 0x1, buf2);
        aptCloseSession();
 
        buf1[0]=0x01;
        aptOpenSession();
-       APT_AppletUtility(NULL, NULL, 0x7, 0x4, buf1, 0x1, buf2);
+       APT_AppletUtility(NULL, 0x7, 0x4, buf1, 0x1, buf2);
        aptCloseSession();
 
        buf1[0]=0x00;
        aptOpenSession();
-       APT_AppletUtility(NULL, NULL, 0x4, 0x1, buf1, 0x1, buf2);
+       APT_AppletUtility(NULL, 0x4, 0x1, buf1, 0x1, buf2);
        aptCloseSession();
 
        aptOpenSession();
-       APT_AppletUtility(NULL, NULL, 0x4, 0x1, buf1, 0x1, buf2);
+       APT_AppletUtility(NULL, 0x4, 0x1, buf1, 0x1, buf2);
        aptCloseSession();
 
        if(type)
        {
                aptOpenSession();
-               APT_AppletUtility(NULL, NULL, 0x4, 0x1, buf1, 0x1, buf2);
+               APT_AppletUtility(NULL, 0x4, 0x1, buf1, 0x1, buf2);
                aptCloseSession();
        }
 }
 
-NS_APPID aptGetMenuAppID()
+NS_APPID aptGetMenuAppID(void)
 {
        NS_APPID menu_appid;
 
        aptOpenSession();
-       APT_GetAppletManInfo(NULL, 0xff, NULL, NULL, &menu_appid, NULL);
+       APT_GetAppletManInfo(0xff, NULL, NULL, &menu_appid, NULL);
        aptCloseSession();
 
        return menu_appid;
 }
 
-void aptReturnToMenu()
+void aptReturnToMenu(void)
 {
        NS_APPID menu_appid;
        u32 tmp0 = 1, tmp1 = 0;
@@ -197,7 +197,7 @@ void aptReturnToMenu()
        if(aptGetStatusPower() == 0)
        {
                aptOpenSession();
-               APT_AppletUtility(NULL, NULL, 0x6, 0x4, (u8*)&tmp0, 0x1, (u8*)&tmp1);
+               APT_AppletUtility(NULL, 0x6, 0x4, (u8*)&tmp0, 0x1, (u8*)&tmp1);
                aptCloseSession();
        }
 
@@ -208,7 +208,7 @@ void aptReturnToMenu()
 
        // Prepare for return to menu
        aptOpenSession();
-       APT_PrepareToJumpToHomeMenu(NULL);
+       APT_PrepareToJumpToHomeMenu();
        aptCloseSession();
 
        // Save Vram
@@ -223,11 +223,11 @@ void aptReturnToMenu()
 
        // Send capture-screen info to menu.
        aptOpenSession();
-       APT_SendParameter(NULL, currentAppId, menu_appid, 0x20, __ns_capinfo, 0x0, 0x10);
+       APT_SendParameter(currentAppId, menu_appid, 0x20, __ns_capinfo, 0x0, 0x10);
        aptCloseSession();
 
        aptOpenSession();
-       APT_SendCaptureBufferInfo(NULL, 0x20, __ns_capinfo);
+       APT_SendCaptureBufferInfo(0x20, __ns_capinfo);
        aptCloseSession();
 
        // Release GSP module.
@@ -235,12 +235,12 @@ void aptReturnToMenu()
 
        // Jump to menu!
        aptOpenSession();
-       APT_JumpToHomeMenu(NULL, 0x0, 0x0, 0x0);
+       APT_JumpToHomeMenu(0x0, 0x0, 0x0);
        aptCloseSession();
 
        // Wait for return to application.
        aptOpenSession();
-       APT_NotifyToWait(NULL, currentAppId);
+       APT_NotifyToWait(currentAppId);
        aptCloseSession();
 
        // This is only executed when ret-to-menu was triggered via the home-button, not the power-button.
@@ -248,14 +248,14 @@ void aptReturnToMenu()
        {
                tmp0 = 0;
                aptOpenSession();
-               APT_AppletUtility(NULL, NULL, 0x4, 0x1, (u8*)&tmp0, 0x1, (u8*)&tmp1);
+               APT_AppletUtility(NULL, 0x4, 0x1, (u8*)&tmp0, 0x1, (u8*)&tmp1);
                aptCloseSession();
        }
 
        aptWaitStatusEvent();
 }
 
-void aptAppletStarted()
+void aptAppletStarted(void)
 {
        u8 buf1[4], buf2[4];
 
@@ -266,33 +266,33 @@ void aptAppletStarted()
        aptSetStatus(APP_SUSPENDED);
 
        aptOpenSession();
-       APT_SendCaptureBufferInfo(NULL, 0x20, __ns_capinfo);
+       APT_SendCaptureBufferInfo(0x20, __ns_capinfo);
        aptCloseSession();
 
        aptOpenSession();
-       APT_ReplySleepQuery(NULL, currentAppId, 0x0);
+       APT_ReplySleepQuery(currentAppId, 0x0);
        aptCloseSession();
 
        aptOpenSession();
-       APT_StartLibraryApplet(NULL, __apt_launchapplet_appID, __apt_launchapplet_inhandle, __apt_launchapplet_parambuf, __apt_launchapplet_parambufsize);
+       APT_StartLibraryApplet(__apt_launchapplet_appID, __apt_launchapplet_inhandle, __apt_launchapplet_parambuf, __apt_launchapplet_parambufsize);
        aptCloseSession();
 
        buf1[0]=0x00;
        aptOpenSession();
-       APT_AppletUtility(NULL, NULL, 0x4, 0x1, buf1, 0x1, buf2);
+       APT_AppletUtility(NULL, 0x4, 0x1, buf1, 0x1, buf2);
        aptCloseSession();
 
        aptOpenSession();
-       APT_NotifyToWait(NULL, currentAppId);
+       APT_NotifyToWait(currentAppId);
        aptCloseSession();
 
        buf1[0]=0x00;
        aptOpenSession();
-       APT_AppletUtility(NULL, NULL, 0x4, 0x1, buf1, 0x1, buf2);
+       APT_AppletUtility(NULL, 0x4, 0x1, buf1, 0x1, buf2);
        aptCloseSession();
 }
 
-void aptAppletClosed()
+void aptAppletClosed(void)
 {
        aptAppletUtility_Exit_RetToApp(1);
 
@@ -304,13 +304,13 @@ void aptAppletClosed()
        svcClearEvent(aptStatusEvent);
 }
 
-static void __handle_notification() {
+static void __handle_notification(void) {
        u8 type;
        Result ret=0;
 
        // Get notification type.
        aptOpenSession();
-       ret = APT_InquireNotification(NULL, currentAppId, &type);
+       ret = APT_InquireNotification(currentAppId, &type);
        aptCloseSession();
        if(ret!=0) return;
 
@@ -324,7 +324,7 @@ static void __handle_notification() {
                if(aptGetStatus() == APP_RUNNING)
                {
                        aptOpenSession();
-                       APT_ReplySleepQuery(NULL, currentAppId, 0x0);
+                       APT_ReplySleepQuery(currentAppId, 0x0);
                        aptCloseSession();
                
                        if(type == APTSIGNAL_HOMEBUTTON)  aptSetStatusPower(0);
@@ -341,7 +341,7 @@ static void __handle_notification() {
                svcClearEvent(aptSleepSync);
                
                aptOpenSession();
-               APT_ReplySleepQuery(NULL, currentAppId, 0x1);
+               APT_ReplySleepQuery(currentAppId, 0x1);
                aptCloseSession();
                break;
 
@@ -352,7 +352,7 @@ static void __handle_notification() {
                        aptSetStatus(APP_SLEEPMODE);
                        
                        aptOpenSession();
-                       APT_ReplySleepNotificationComplete(NULL, currentAppId);
+                       APT_ReplySleepNotificationComplete(currentAppId);
                        aptCloseSession();
                }
                break;
@@ -370,11 +370,11 @@ static void __handle_notification() {
        }
 }
 
-static bool __handle_incoming_parameter() {
+static bool __handle_incoming_parameter(void) {
        u8 type;
 
        aptOpenSession();
-       APT_ReceiveParameter(NULL, currentAppId, 0x1000, aptParameters, NULL, &type);
+       APT_ReceiveParameter(currentAppId, 0x1000, aptParameters, NULL, &type);
        aptCloseSession();
 
        _aptDebug(2, type);
@@ -455,7 +455,7 @@ Result aptInit(void)
        // Initialize APT stuff, escape load screen.
        ret = __apt_initservicehandle();
        if(ret!=0)return ret;
-       if((ret=APT_GetLockHandle(&aptuHandle, 0x0, &aptLockHandle)))return ret;
+       if((ret=APT_GetLockHandle(0x0, &aptLockHandle)))return ret;
        svcCloseHandle(aptuHandle);
 
        currentAppId = __apt_appid;
@@ -466,11 +466,11 @@ Result aptInit(void)
        if(!aptIsCrippled())
        {
                aptOpenSession();
-               if((ret=APT_Initialize(NULL, currentAppId, &aptEvents[0], &aptEvents[1])))return ret;
+               if((ret=APT_Initialize(currentAppId, &aptEvents[0], &aptEvents[1])))return ret;
                aptCloseSession();
                
                aptOpenSession();
-               if((ret=APT_Enable(NULL, 0x0)))return ret;
+               if((ret=APT_Enable(0x0)))return ret;
                aptCloseSession();
                
                // create APT close event
@@ -481,16 +481,16 @@ Result aptInit(void)
                if (aptIsReinit())
                {
                        aptOpenSession();
-                       APT_PrepareToJumpToApplication(NULL, 0x0);
+                       APT_PrepareToJumpToApplication(0x0);
                        aptCloseSession();
 
                        aptOpenSession();
-                       APT_JumpToApplication(NULL, 0x0, 0x0, 0x0);
+                       APT_JumpToApplication(0x0, 0x0, 0x0);
                        aptCloseSession();
                }
                
                aptOpenSession();
-               if((ret=APT_NotifyToWait(NULL, currentAppId)))return ret;
+               if((ret=APT_NotifyToWait(currentAppId)))return ret;
                aptCloseSession();
 
                // create APT event handler thread
@@ -504,7 +504,7 @@ Result aptInit(void)
        return 0;
 }
 
-void aptExit()
+void aptExit(void)
 {
        if (!aptInitialised) return;
 
@@ -514,7 +514,7 @@ void aptExit()
        if(aptGetStatusPower() == 1)
        {
                aptOpenSession();
-               APT_ReplySleepQuery(NULL, currentAppId, 0x0);
+               APT_ReplySleepQuery(currentAppId, 0x0);
                aptCloseSession();
        }
 
@@ -524,11 +524,11 @@ void aptExit()
                if (aptGetStatus() == APP_EXITING || !isReinit)
                {
                        aptOpenSession();
-                       APT_PrepareToCloseApplication(NULL, 0x1);
+                       APT_PrepareToCloseApplication(0x1);
                        aptCloseSession();
                
                        aptOpenSession();
-                       APT_CloseApplication(NULL, 0x0, 0x0, 0x0);
+                       APT_CloseApplication(0x0, 0x0, 0x0);
                        aptCloseSession();
 
                        if (isReinit)
@@ -539,7 +539,7 @@ void aptExit()
                } else if (isReinit)
                {
                        aptOpenSession();
-                       APT_Finalize(NULL, currentAppId);
+                       APT_Finalize(currentAppId);
                        aptCloseSession();
                }
        }
@@ -558,7 +558,7 @@ void aptExit()
        aptInitialised = false;
 }
 
-bool aptMainLoop()
+bool aptMainLoop(void)
 {
        while(1)
        {
@@ -622,7 +622,7 @@ void aptUnhook(aptHookCookie* cookie)
        }
 }
 
-void aptAppStarted()
+void aptAppStarted(void)
 {
        u8 buf1[4], buf2[4];
 
@@ -638,21 +638,21 @@ void aptAppStarted()
 
                buf1[0] = 0x10;
                aptOpenSession();
-               APT_AppletUtility(NULL, NULL, 0x7, 0x4, buf1, 0x1, buf2);
+               APT_AppletUtility(NULL, 0x7, 0x4, buf1, 0x1, buf2);
                aptCloseSession();
 
                buf1[0] = 0x00;
                aptOpenSession();
-               APT_AppletUtility(NULL, NULL, 0x4, 0x1, buf1, 0x1, buf2);
+               APT_AppletUtility(NULL, 0x4, 0x1, buf1, 0x1, buf2);
                aptCloseSession();
 
                aptOpenSession();
-               APT_AppletUtility(NULL, NULL, 0x4, 0x1, buf1, 0x1, buf2);
+               APT_AppletUtility(NULL, 0x4, 0x1, buf1, 0x1, buf2);
                aptCloseSession();
        }
 }
 
-APP_STATUS aptGetStatus()
+APP_STATUS aptGetStatus(void)
 {
        APP_STATUS ret;
        svcWaitSynchronization(aptStatusMutex, U64_MAX);
@@ -676,7 +676,7 @@ void aptSetStatus(APP_STATUS status)
        svcReleaseMutex(aptStatusMutex);
 }
 
-u32 aptGetStatusPower()
+u32 aptGetStatusPower(void)
 {
        u32 ret;
        svcWaitSynchronization(aptStatusMutex, U64_MAX);
@@ -692,7 +692,7 @@ void aptSetStatusPower(u32 status)
        svcReleaseMutex(aptStatusMutex);
 }
 
-void aptOpenSession()
+void aptOpenSession(void)
 {
        //Result ret;
 
@@ -700,42 +700,40 @@ void aptOpenSession()
        __apt_initservicehandle();
 }
 
-void aptCloseSession()
+void aptCloseSession(void)
 {
        svcCloseHandle(aptuHandle);
        svcReleaseMutex(aptLockHandle);
 }
 
-void aptSignalReadyForSleep()
+void aptSignalReadyForSleep(void)
 {
        svcSignalEvent(aptSleepSync);
 }
 
-Result APT_GetLockHandle(Handle* handle, u16 flags, Handle* lockHandle)
+Result APT_GetLockHandle(u16 flags, Handle* lockHandle)
 {
-       if(!handle)handle=&aptuHandle;
        u32* cmdbuf=getThreadCommandBuffer();
        cmdbuf[0]=0x10040; //request header code
        cmdbuf[1]=flags;
        
        Result ret=0;
-       if((ret=svcSendSyncRequest(*handle)))return ret;
+       if((ret=svcSendSyncRequest(aptuHandle)))return ret;
        
        if(lockHandle)*lockHandle=cmdbuf[5];
        
        return cmdbuf[1];
 }
 
-Result APT_Initialize(Handle* handle, NS_APPID appId, Handle* eventHandle1, Handle* eventHandle2)
+Result APT_Initialize(NS_APPID appId, Handle* eventHandle1, Handle* eventHandle2)
 {
-       if(!handle)handle=&aptuHandle;
        u32* cmdbuf=getThreadCommandBuffer();
        cmdbuf[0]=0x20080; //request header code
        cmdbuf[1]=appId;
        cmdbuf[2]=0x0;
        
        Result ret=0;
-       if((ret=svcSendSyncRequest(*handle)))return ret;
+       if((ret=svcSendSyncRequest(aptuHandle)))return ret;
        
        if(eventHandle1)*eventHandle1=cmdbuf[3]; //return to menu event ?
        if(eventHandle2)*eventHandle2=cmdbuf[4];
@@ -743,52 +741,48 @@ Result APT_Initialize(Handle* handle, NS_APPID appId, Handle* eventHandle1, Hand
        return cmdbuf[1];
 }
 
-Result APT_Finalize(Handle* handle, NS_APPID appId)
+Result APT_Finalize(NS_APPID appId)
 {
-       if(!handle)handle=&aptuHandle;
        u32* cmdbuf=getThreadCommandBuffer();
        cmdbuf[0]=0x40040; //request header code
        cmdbuf[1]=appId;
        
        Result ret=0;
-       if((ret=svcSendSyncRequest(*handle)))return ret;
+       if((ret=svcSendSyncRequest(aptuHandle)))return ret;
        return cmdbuf[1];
 }
 
-Result APT_HardwareResetAsync(Handle* handle)
+Result APT_HardwareResetAsync()
 {
-       if(!handle)handle=&aptuHandle;
        u32* cmdbuf=getThreadCommandBuffer();
        cmdbuf[0]=0x4E0000; //request header code
        
        Result ret=0;
-       if((ret=svcSendSyncRequest(*handle)))return ret;
+       if((ret=svcSendSyncRequest(aptuHandle)))return ret;
        
        return cmdbuf[1];
 }
 
-Result APT_Enable(Handle* handle, u32 a)
+Result APT_Enable(u32 a)
 {
-       if(!handle)handle=&aptuHandle;
        u32* cmdbuf=getThreadCommandBuffer();
        cmdbuf[0]=0x30040; //request header code
        cmdbuf[1]=a;
        
        Result ret=0;
-       if((ret=svcSendSyncRequest(*handle)))return ret;
+       if((ret=svcSendSyncRequest(aptuHandle)))return ret;
        
        return cmdbuf[1];
 }
 
-Result APT_GetAppletManInfo(Handle* handle, u8 inval, u8 *outval8, u32 *outval32, NS_APPID *menu_appid, NS_APPID *active_appid)
+Result APT_GetAppletManInfo(u8 inval, u8 *outval8, u32 *outval32, NS_APPID *menu_appid, NS_APPID *active_appid)
 {
-       if(!handle)handle=&aptuHandle;
        u32* cmdbuf=getThreadCommandBuffer();
        cmdbuf[0]=0x00050040; //request header code
        cmdbuf[1]=inval;
        
        Result ret=0;
-       if((ret=svcSendSyncRequest(*handle)))return ret;
+       if((ret=svcSendSyncRequest(aptuHandle)))return ret;
 
        if(outval8)*outval8=cmdbuf[2];
        if(outval32)*outval32=cmdbuf[3];
@@ -798,51 +792,47 @@ Result APT_GetAppletManInfo(Handle* handle, u8 inval, u8 *outval8, u32 *outval32
        return cmdbuf[1];
 }
 
-Result APT_IsRegistered(Handle* handle, NS_APPID appID, u8* out)
+Result APT_IsRegistered(NS_APPID appID, u8* out)
 {
-       if(!handle)handle=&aptuHandle;
        u32* cmdbuf=getThreadCommandBuffer();
        cmdbuf[0]=0x90040; //request header code
        cmdbuf[1]=appID;
        
        Result ret=0;
-       if((ret=svcSendSyncRequest(*handle)))return ret;
+       if((ret=svcSendSyncRequest(aptuHandle)))return ret;
 
        if(out)*out=cmdbuf[2];
        
        return cmdbuf[1];
 }
 
-Result APT_InquireNotification(Handle* handle, u32 appID, u8* signalType)
+Result APT_InquireNotification(u32 appID, u8* signalType)
 {
-       if(!handle)handle=&aptuHandle;
        u32* cmdbuf=getThreadCommandBuffer();
        cmdbuf[0]=0xB0040; //request header code
        cmdbuf[1]=appID;
        
        Result ret=0;
-       if((ret=svcSendSyncRequest(*handle)))return ret;
+       if((ret=svcSendSyncRequest(aptuHandle)))return ret;
 
        if(signalType)*signalType=cmdbuf[2];
        
        return cmdbuf[1];
 }
 
-Result APT_PrepareToJumpToHomeMenu(Handle* handle)
+Result APT_PrepareToJumpToHomeMenu()
 {
-       if(!handle)handle=&aptuHandle;
        u32* cmdbuf=getThreadCommandBuffer();
        cmdbuf[0]=0x2b0000; //request header code
        
        Result ret=0;
-       if((ret=svcSendSyncRequest(*handle)))return ret;
+       if((ret=svcSendSyncRequest(aptuHandle)))return ret;
        
        return cmdbuf[1];
 }
 
-Result APT_JumpToHomeMenu(Handle* handle, u32 a, u32 b, u32 c)
+Result APT_JumpToHomeMenu(u32 a, u32 b, u32 c)
 {
-       if(!handle)handle=&aptuHandle;
        u32* cmdbuf=getThreadCommandBuffer();
        cmdbuf[0]=0x2C0044; //request header code
        cmdbuf[1]=a;
@@ -851,27 +841,25 @@ Result APT_JumpToHomeMenu(Handle* handle, u32 a, u32 b, u32 c)
        cmdbuf[4]=(b<<14)|2;
        
        Result ret=0;
-       if((ret=svcSendSyncRequest(*handle)))return ret;
+       if((ret=svcSendSyncRequest(aptuHandle)))return ret;
        
        return cmdbuf[1];
 }
 
-Result APT_PrepareToJumpToApplication(Handle* handle, u32 a)
+Result APT_PrepareToJumpToApplication(u32 a)
 {
-       if(!handle)handle=&aptuHandle;
        u32* cmdbuf=getThreadCommandBuffer();
        cmdbuf[0]=0x230040; //request header code
        cmdbuf[1]=a;
 
        Result ret=0;
-       if((ret=svcSendSyncRequest(*handle)))return ret;
+       if((ret=svcSendSyncRequest(aptuHandle)))return ret;
        
        return cmdbuf[1];
 }
 
-Result APT_JumpToApplication(Handle* handle, u32 a, u32 b, u32 c)
+Result APT_JumpToApplication(u32 a, u32 b, u32 c)
 {
-       if(!handle)handle=&aptuHandle;
        u32* cmdbuf=getThreadCommandBuffer();
        cmdbuf[0]=0x240044; //request header code
        cmdbuf[1]=a;
@@ -880,27 +868,25 @@ Result APT_JumpToApplication(Handle* handle, u32 a, u32 b, u32 c)
        cmdbuf[4]=(b<<14)|2;
        
        Result ret=0;
-       if((ret=svcSendSyncRequest(*handle)))return ret;
+       if((ret=svcSendSyncRequest(aptuHandle)))return ret;
        
        return cmdbuf[1];
 }
 
-Result APT_NotifyToWait(Handle* handle, NS_APPID appID)
+Result APT_NotifyToWait(NS_APPID appID)
 {
-       if(!handle)handle=&aptuHandle;
        u32* cmdbuf=getThreadCommandBuffer();
        cmdbuf[0]=0x430040; //request header code
        cmdbuf[1]=appID;
        
        Result ret=0;
-       if((ret=svcSendSyncRequest(*handle)))return ret;
+       if((ret=svcSendSyncRequest(aptuHandle)))return ret;
 
        return cmdbuf[1];
 }
 
-Result APT_AppletUtility(Handle* handle, u32* out, u32 a, u32 size1, u8* buf1, u32 size2, u8* buf2)
+Result APT_AppletUtility(u32* out, u32 a, u32 size1, u8* buf1, u32 size2, u8* buf2)
 {
-       if(!handle)handle=&aptuHandle;
        u32* cmdbuf=getThreadCommandBuffer();
        cmdbuf[0]=0x4B00C2; //request header code
        cmdbuf[1]=a;
@@ -913,16 +899,15 @@ Result APT_AppletUtility(Handle* handle, u32* out, u32 a, u32 size1, u8* buf1, u
        cmdbuf[1+0x100/4]=(u32)buf2;
        
        Result ret=0;
-       if((ret=svcSendSyncRequest(*handle)))return ret;
+       if((ret=svcSendSyncRequest(aptuHandle)))return ret;
 
        if(out)*out=cmdbuf[2];
 
        return cmdbuf[1];
 }
 
-Result APT_GlanceParameter(Handle* handle, NS_APPID appID, u32 bufferSize, u32* buffer, u32* actualSize, u8* signalType)
+Result APT_GlanceParameter(NS_APPID appID, u32 bufferSize, u32* buffer, u32* actualSize, u8* signalType)
 {
-       if(!handle)handle=&aptuHandle;
        u32* cmdbuf=getThreadCommandBuffer();
        cmdbuf[0]=0xE0080; //request header code
        cmdbuf[1]=appID;
@@ -932,7 +917,7 @@ Result APT_GlanceParameter(Handle* handle, NS_APPID appID, u32 bufferSize, u32*
        cmdbuf[1+0x100/4]=(u32)buffer;
        
        Result ret=0;
-       if((ret=svcSendSyncRequest(*handle)))return ret;
+       if((ret=svcSendSyncRequest(aptuHandle)))return ret;
 
        if(signalType)*signalType=cmdbuf[3];
        if(actualSize)*actualSize=cmdbuf[4];
@@ -940,9 +925,8 @@ Result APT_GlanceParameter(Handle* handle, NS_APPID appID, u32 bufferSize, u32*
        return cmdbuf[1];
 }
 
-Result APT_ReceiveParameter(Handle* handle, NS_APPID appID, u32 bufferSize, u32* buffer, u32* actualSize, u8* signalType)
+Result APT_ReceiveParameter(NS_APPID appID, u32 bufferSize, u32* buffer, u32* actualSize, u8* signalType)
 {
-       if(!handle)handle=&aptuHandle;
        u32* cmdbuf=getThreadCommandBuffer();
        cmdbuf[0]=0xD0080; //request header code
        cmdbuf[1]=appID;
@@ -952,7 +936,7 @@ Result APT_ReceiveParameter(Handle* handle, NS_APPID appID, u32 bufferSize, u32*
        cmdbuf[1+0x100/4]=(u32)buffer;
        
        Result ret=0;
-       if((ret=svcSendSyncRequest(*handle)))return ret;
+       if((ret=svcSendSyncRequest(aptuHandle)))return ret;
 
        if(signalType)*signalType=cmdbuf[3];
        if(actualSize)*actualSize=cmdbuf[4];
@@ -960,12 +944,10 @@ Result APT_ReceiveParameter(Handle* handle, NS_APPID appID, u32 bufferSize, u32*
        return cmdbuf[1];
 }
 
-Result APT_SendParameter(Handle* handle, NS_APPID src_appID, NS_APPID dst_appID, u32 bufferSize, u32* buffer, Handle paramhandle, u8 signalType)
+Result APT_SendParameter(NS_APPID src_appID, NS_APPID dst_appID, u32 bufferSize, u32* buffer, Handle paramhandle, u8 signalType)
 {
        u32* cmdbuf=getThreadCommandBuffer();
 
-       if(!handle)handle=&aptuHandle;
-
        cmdbuf[0] = 0x000C0104; //request header code
        cmdbuf[1] = src_appID;
        cmdbuf[2] = dst_appID;
@@ -979,75 +961,65 @@ Result APT_SendParameter(Handle* handle, NS_APPID src_appID, NS_APPID dst_appID,
        cmdbuf[8] = (u32)buffer;
        
        Result ret=0;
-       if((ret=svcSendSyncRequest(*handle)))return ret;
+       if((ret=svcSendSyncRequest(aptuHandle)))return ret;
 
        return cmdbuf[1];
 }
 
-Result APT_SendCaptureBufferInfo(Handle* handle, u32 bufferSize, u32* buffer)
+Result APT_SendCaptureBufferInfo(u32 bufferSize, u32* buffer)
 {
        u32* cmdbuf=getThreadCommandBuffer();
 
-       if(!handle)handle=&aptuHandle;
-
        cmdbuf[0] = 0x00400042; //request header code
        cmdbuf[1] = bufferSize;
        cmdbuf[2] = (bufferSize<<14) | 2;
        cmdbuf[3] = (u32)buffer;
        
        Result ret=0;
-       if((ret=svcSendSyncRequest(*handle)))return ret;
+       if((ret=svcSendSyncRequest(aptuHandle)))return ret;
 
        return cmdbuf[1];
 }
 
-Result APT_ReplySleepQuery(Handle* handle, NS_APPID appID, u32 a)
+Result APT_ReplySleepQuery(NS_APPID appID, u32 a)
 {
-       if(!handle)handle=&aptuHandle;
-
        u32* cmdbuf=getThreadCommandBuffer();
        cmdbuf[0]=0x3E0080; //request header code
        cmdbuf[1]=appID;
        cmdbuf[2]=a;
        
        Result ret=0;
-       if((ret=svcSendSyncRequest(*handle)))return ret;
+       if((ret=svcSendSyncRequest(aptuHandle)))return ret;
 
        return cmdbuf[1];
 }
 
-Result APT_ReplySleepNotificationComplete(Handle* handle, NS_APPID appID)
+Result APT_ReplySleepNotificationComplete(NS_APPID appID)
 {
-       if(!handle)handle=&aptuHandle;
-
        u32* cmdbuf=getThreadCommandBuffer();
        cmdbuf[0]=0x3F0040; //request header code
        cmdbuf[1]=appID;
        
        Result ret=0;
-       if((ret=svcSendSyncRequest(*handle)))return ret;
+       if((ret=svcSendSyncRequest(aptuHandle)))return ret;
 
        return cmdbuf[1];
 }
 
-Result APT_PrepareToCloseApplication(Handle* handle, u8 a)
+Result APT_PrepareToCloseApplication(u8 a)
 {
-       if(!handle)handle=&aptuHandle;
-
        u32* cmdbuf=getThreadCommandBuffer();
        cmdbuf[0]=0x220040; //request header code
        cmdbuf[1]=a;
        
        Result ret=0;
-       if((ret=svcSendSyncRequest(*handle)))return ret;
+       if((ret=svcSendSyncRequest(aptuHandle)))return ret;
 
        return cmdbuf[1];
 }
 
-Result APT_CloseApplication(Handle* handle, u32 a, u32 b, u32 c)
+Result APT_CloseApplication(u32 a, u32 b, u32 c)
 {
-       if(!handle)handle=&aptuHandle;
-
        u32* cmdbuf=getThreadCommandBuffer();
        cmdbuf[0]=0x270044; //request header code
        cmdbuf[1]=a;
@@ -1057,37 +1029,33 @@ Result APT_CloseApplication(Handle* handle, u32 a, u32 b, u32 c)
        cmdbuf[5]=c;
        
        Result ret=0;
-       if((ret=svcSendSyncRequest(*handle)))return ret;
+       if((ret=svcSendSyncRequest(aptuHandle)))return ret;
 
        return cmdbuf[1];
 }
 
 //See http://3dbrew.org/APT:SetApplicationCpuTimeLimit
-Result APT_SetAppCpuTimeLimit(Handle* handle, u32 percent)
+Result APT_SetAppCpuTimeLimit(u32 percent)
 {
-       if(!handle)handle=&aptuHandle;
-
        u32* cmdbuf=getThreadCommandBuffer();
        cmdbuf[0]=0x4F0080;
        cmdbuf[1]=1;
        cmdbuf[2]=percent;
        
        Result ret=0;
-       if((ret=svcSendSyncRequest(*handle)))return ret;
+       if((ret=svcSendSyncRequest(aptuHandle)))return ret;
 
        return cmdbuf[1];
 }
 
-Result APT_GetAppCpuTimeLimit(Handle* handle, u32 *percent)
+Result APT_GetAppCpuTimeLimit(u32 *percent)
 {
-       if(!handle)handle=&aptuHandle;
-
        u32* cmdbuf=getThreadCommandBuffer();
        cmdbuf[0]=0x500040;
        cmdbuf[1]=1;
        
        Result ret=0;
-       if((ret=svcSendSyncRequest(*handle)))return ret;
+       if((ret=svcSendSyncRequest(aptuHandle)))return ret;
 
        if(percent)*percent=cmdbuf[2];
 
@@ -1095,15 +1063,13 @@ Result APT_GetAppCpuTimeLimit(Handle* handle, u32 *percent)
 }
 
 // Note: this function is unreliable, see: http://3dbrew.org/wiki/APT:PrepareToStartApplication
-Result APT_CheckNew3DS_Application(Handle* handle, u8 *out)
+Result APT_CheckNew3DS_Application(u8 *out)
 {
-       if(!handle)handle=&aptuHandle;
-
        u32* cmdbuf=getThreadCommandBuffer();
        cmdbuf[0]=0x01010000;
        
        Result ret=0;
-       if((ret=svcSendSyncRequest(*handle)))return ret;
+       if((ret=svcSendSyncRequest(aptuHandle)))return ret;
 
        if(ret==0)ret = cmdbuf[1];
 
@@ -1116,15 +1082,13 @@ Result APT_CheckNew3DS_Application(Handle* handle, u8 *out)
        return ret;
 }
 
-Result APT_CheckNew3DS_System(Handle* handle, u8 *out)
+Result APT_CheckNew3DS_System(u8 *out)
 {
-       if(!handle)handle=&aptuHandle;
-
        u32* cmdbuf=getThreadCommandBuffer();
        cmdbuf[0]=0x01020000;
        
        Result ret=0;
-       if((ret=svcSendSyncRequest(*handle)))return ret;
+       if((ret=svcSendSyncRequest(aptuHandle)))return ret;
 
        if(ret==0)ret = cmdbuf[1];
 
@@ -1137,7 +1101,7 @@ Result APT_CheckNew3DS_System(Handle* handle, u8 *out)
        return ret;
 }
 
-Result APT_CheckNew3DS(Handle* handle, u8 *out)
+Result APT_CheckNew3DS(u8 *out)
 {
        Result ret=0;
 
@@ -1152,7 +1116,7 @@ Result APT_CheckNew3DS(Handle* handle, u8 *out)
        }
 
        aptOpenSession();
-       ret = APT_CheckNew3DS_System(NULL, out);
+       ret = APT_CheckNew3DS_System(out);
        aptCloseSession();
 
        __apt_new3dsflag_initialized = 1;
@@ -1161,10 +1125,8 @@ Result APT_CheckNew3DS(Handle* handle, u8 *out)
        return ret;
 }
 
-Result APT_PrepareToDoAppJump(Handle* handle, u8 flags, u64 programID, u8 mediatype)
+Result APT_PrepareToDoAppJump(u8 flags, u64 programID, u8 mediatype)
 {
-       if(!handle)handle=&aptuHandle;
-
        u32* cmdbuf=getThreadCommandBuffer();
        cmdbuf[0]=0x310100; //request header code
        cmdbuf[1]=flags;
@@ -1173,15 +1135,13 @@ Result APT_PrepareToDoAppJump(Handle* handle, u8 flags, u64 programID, u8 mediat
        cmdbuf[4]=mediatype;
        
        Result ret=0;
-       if((ret=svcSendSyncRequest(*handle)))return ret;
+       if((ret=svcSendSyncRequest(aptuHandle)))return ret;
 
        return cmdbuf[1];
 }
 
-Result APT_DoAppJump(Handle* handle, u32 NSbuf0Size, u32 NSbuf1Size, u8 *NSbuf0Ptr, u8 *NSbuf1Ptr)
+Result APT_DoAppJump(u32 NSbuf0Size, u32 NSbuf1Size, u8 *NSbuf0Ptr, u8 *NSbuf1Ptr)
 {
-       if(!handle)handle=&aptuHandle;
-
        u32* cmdbuf=getThreadCommandBuffer();
        cmdbuf[0]=0x320084; //request header code
        cmdbuf[1]=NSbuf0Size;
@@ -1192,29 +1152,25 @@ Result APT_DoAppJump(Handle* handle, u32 NSbuf0Size, u32 NSbuf1Size, u8 *NSbuf0P
        cmdbuf[6]=(u32)NSbuf1Ptr;
        
        Result ret=0;
-       if((ret=svcSendSyncRequest(*handle)))return ret;
+       if((ret=svcSendSyncRequest(aptuHandle)))return ret;
 
        return cmdbuf[1];
 }
 
-Result APT_PrepareToStartLibraryApplet(Handle* handle, NS_APPID appID)
+Result APT_PrepareToStartLibraryApplet(NS_APPID appID)
 {
-       if(!handle)handle=&aptuHandle;
-
        u32* cmdbuf=getThreadCommandBuffer();
        cmdbuf[0]=0x180040; //request header code
        cmdbuf[1]=appID;
        
        Result ret=0;
-       if((ret=svcSendSyncRequest(*handle)))return ret;
+       if((ret=svcSendSyncRequest(aptuHandle)))return ret;
 
        return cmdbuf[1];
 }
 
-Result APT_StartLibraryApplet(Handle* handle, NS_APPID appID, Handle inhandle, u32 *parambuf, u32 parambufsize)
+Result APT_StartLibraryApplet(NS_APPID appID, Handle inhandle, u32 *parambuf, u32 parambufsize)
 {
-       if(!handle)handle=&aptuHandle;
-
        u32* cmdbuf=getThreadCommandBuffer();
        cmdbuf[0]=0x1E0084; //request header code
        cmdbuf[1]=appID;
@@ -1225,7 +1181,7 @@ Result APT_StartLibraryApplet(Handle* handle, NS_APPID appID, Handle inhandle, u
        cmdbuf[6]=(u32)parambuf;
        
        Result ret=0;
-       if((ret=svcSendSyncRequest(*handle)))return ret;
+       if((ret=svcSendSyncRequest(aptuHandle)))return ret;
 
        return cmdbuf[1];
 }
@@ -1239,23 +1195,23 @@ Result APT_LaunchLibraryApplet(NS_APPID appID, Handle inhandle, u32 *parambuf, u
        u8 buf2[4];
 
        aptOpenSession();
-       APT_ReplySleepQuery(NULL, currentAppId, 0);
+       APT_ReplySleepQuery(currentAppId, 0);
        aptCloseSession();
 
        aptOpenSession();
-       ret=APT_PrepareToStartLibraryApplet(NULL, appID);
+       ret=APT_PrepareToStartLibraryApplet(appID);
        aptCloseSession();
        if(ret!=0)return ret;
 
        memset(buf1, 0, 4);
        aptOpenSession();
-       APT_AppletUtility(NULL, NULL, 0x4, 0x1, buf1, 0x1, buf2);
+       APT_AppletUtility(NULL, 0x4, 0x1, buf1, 0x1, buf2);
        aptCloseSession();
 
        while(1)
        {
                aptOpenSession();
-               ret=APT_IsRegistered(NULL, appID, &tmp);
+               ret=APT_IsRegistered(appID, &tmp);
                aptCloseSession();
                if(ret!=0)return ret;
 
@@ -1283,7 +1239,7 @@ Result APT_LaunchLibraryApplet(NS_APPID appID, Handle inhandle, u32 *parambuf, u
 
        // Send capture-screen info to the library applet.
        aptOpenSession();
-       APT_SendParameter(NULL, currentAppId, appID, 0x20, __ns_capinfo, 0x0, 0x2);
+       APT_SendParameter(currentAppId, appID, 0x20, __ns_capinfo, 0x0, 0x2);
        aptCloseSession();
 
        // Release GSP module.
@@ -1292,24 +1248,20 @@ Result APT_LaunchLibraryApplet(NS_APPID appID, Handle inhandle, u32 *parambuf, u
        return 0;
 }
 
-Result APT_PrepareToStartSystemApplet(Handle* handle, NS_APPID appID)
+Result APT_PrepareToStartSystemApplet(NS_APPID appID)
 {
-       if(!handle)handle=&aptuHandle;
-
        u32* cmdbuf=getThreadCommandBuffer();
        cmdbuf[0]=0x00190040; //request header code
        cmdbuf[1]=appID;
        
        Result ret=0;
-       if((ret=svcSendSyncRequest(*handle)))return ret;
+       if((ret=svcSendSyncRequest(aptuHandle)))return ret;
 
        return cmdbuf[1];
 }
 
-Result APT_StartSystemApplet(Handle* handle, NS_APPID appID, u32 bufSize, Handle applHandle, u8 *buf)
+Result APT_StartSystemApplet(NS_APPID appID, u32 bufSize, Handle applHandle, u8 *buf)
 {
-       if(!handle)handle=&aptuHandle;
-
        u32* cmdbuf=getThreadCommandBuffer();
        cmdbuf[0] = 0x001F0084; //request header code
        cmdbuf[1] = appID;
@@ -1320,7 +1272,7 @@ Result APT_StartSystemApplet(Handle* handle, NS_APPID appID, u32 bufSize, Handle
        cmdbuf[6] = (u32)buf;
        
        Result ret=0;
-       if((ret=svcSendSyncRequest(*handle)))return ret;
+       if((ret=svcSendSyncRequest(aptuHandle)))return ret;
 
        return cmdbuf[1];
 }
index 8367e8d0f367f4117ba8bb1d94dbefc3919ff60e..652f4b524a43ba625d97104f5849a30c0c66345c 100644 (file)
@@ -44,7 +44,7 @@ Result hidInit(u32* sharedMem)
        hidSharedMem=sharedMem;
        if((ret=svcMapMemoryBlock(hidMemHandle, (u32)hidSharedMem, MEMPERM_READ, 0x10000000)))goto cleanup2;
 
-       APT_CheckNew3DS(NULL, &val);
+       APT_CheckNew3DS(&val);
 
        if(val)
        {
@@ -74,7 +74,7 @@ void hidExit()
        svcCloseHandle(hidMemHandle);
        svcCloseHandle(hidHandle);
 
-       APT_CheckNew3DS(NULL, &val);
+       APT_CheckNew3DS(&val);
 
        if(val)
        {