+
+[global NewTaskHeader]
+NewTaskHeader:
+ mov eax, [esp]
+ mov dr0, eax
+ xchg bx, bx
+
+ sti
+ ; TODO: SMP
+ mov al, 0x20
+ out 0x20, al
+
+ mov eax, [esp+4]
+ add esp, 12 ; Thread, Function, Args
+ call eax
+
+ push eax ; Ret val
+ push 0 ; 0 = This Thread
+ call Threads_Exit
+