diff --git a/loader/task.c b/loader/task.c
index 0cfc833..9ff7fed 100644
--- a/loader/task.c
+++ b/loader/task.c
@@ -231,7 +231,7 @@
     TDB *pTask = (TDB *)GlobalLock16( GetCurrentTask() );
     NE_MODULE *pModule = NE_GetPtr( pTask->hModule );
     SEGTABLEENTRY *pSegTable = NE_SEG_TABLE( pModule );
-    CONTEXT context;
+    CONTEXT86 context;
 
     /* Add task to 16-bit scheduler pool */
     TASK_Reschedule();
@@ -717,7 +717,7 @@
  *
  * Called by the application startup code.
  */
-void WINAPI InitTask16( CONTEXT *context )
+void WINAPI InitTask16( CONTEXT86 *context )
 {
     TDB *pTask;
     NE_MODULE *pModule;
@@ -1210,7 +1210,7 @@
 /***********************************************************************
  *           SwitchStackBack   (KERNEL.109)
  */
-void WINAPI SwitchStackBack16( CONTEXT *context )
+void WINAPI SwitchStackBack16( CONTEXT86 *context )
 {
     STACK16FRAME *oldFrame, *newFrame;
     INSTANCEDATA *pData;
@@ -1254,7 +1254,7 @@
 /***********************************************************************
  *           GetTaskQueueDS  (KERNEL.118)
  */
-void WINAPI GetTaskQueueDS16( CONTEXT *context )
+void WINAPI GetTaskQueueDS16( CONTEXT86 *context )
 {
     DS_reg(context) = GlobalHandleToSel16( GetTaskQueue16(0) );
 }
@@ -1263,7 +1263,7 @@
 /***********************************************************************
  *           GetTaskQueueES  (KERNEL.119)
  */
-void WINAPI GetTaskQueueES16( CONTEXT *context )
+void WINAPI GetTaskQueueES16( CONTEXT86 *context )
 {
     ES_reg(context) = GlobalHandleToSel16( GetTaskQueue16(0) );
 }
@@ -1374,7 +1374,7 @@
 /***********************************************************************
  *           GetDummyModuleHandleDS   (KERNEL.602)
  */
-VOID WINAPI GetDummyModuleHandleDS16( CONTEXT *context )
+VOID WINAPI GetDummyModuleHandleDS16( CONTEXT86 *context )
 {
     TDB *pTask;
     WORD selector;
@@ -1513,7 +1513,7 @@
     return GetExePtrHelper( handle, &dummy );
 }
 
-void WINAPI WIN16_GetExePtr( CONTEXT *context )
+void WINAPI WIN16_GetExePtr( CONTEXT86 *context )
 {
     WORD *stack = PTR_SEG_OFF_TO_LIN(SS_reg(context), SP_reg(context));
     HANDLE16 handle = (HANDLE16)stack[2];
