TempleOSCDV4.06.ISO
This commit is contained in:
1 parent
6fe38d2d9d
commit
b632ab9a4f
261 files changed
+6282
-5801
No files matched your search
@@ -41,7 +41,7 @@ If no message fit mask, return NULL immediately.
|
||||
Remove desired message, return $LK,"msg_code",A="MN:MSG_CMD"$.
|
||||
Note: This delivers messages from parent down to pop-up.
|
||||
*/
|
||||
I64 result,old_flags;
|
||||
I64 res,old_flags;
|
||||
CSrvCmd *tempc,*tempc1;
|
||||
if (!task) task=Fs;
|
||||
old_flags=GetRFlags;
|
||||
@@ -57,20 +57,20 @@ Note: This delivers messages from parent down to pop-up.
|
||||
if (tempc->cmd_code==SVCT_MSG) {
|
||||
QueRem(tempc);
|
||||
SetRFlags(old_flags);
|
||||
result=tempc->msg_code;
|
||||
res=tempc->msg_code;
|
||||
if (_a1)
|
||||
*_a1=tempc->aux1;
|
||||
if (_a2)
|
||||
*_a2=tempc->aux2;
|
||||
SrvCmdDel(tempc);
|
||||
if ((result!=MSG_KEY_DOWN || !(tempc->aux2&SCF_KEY_DESC) ||
|
||||
!Bt(&task->win_inhibit,WIf_SELF_KEY_DESC)) && Bt(&mask,result))
|
||||
if ((res!=MSG_KEY_DOWN || !(tempc->aux2&SCF_KEY_DESC) ||
|
||||
!Bt(&task->win_inhibit,WIf_SELF_KEY_DESC)) && Bt(&mask,res))
|
||||
goto sm_done;
|
||||
}
|
||||
}
|
||||
SetRFlags(old_flags);
|
||||
}
|
||||
result=MSG_NULL;
|
||||
res=MSG_NULL;
|
||||
if (_a1)
|
||||
*_a1=0;
|
||||
if (_a2)
|
||||
@@ -81,30 +81,30 @@ Note: This delivers messages from parent down to pop-up.
|
||||
}
|
||||
sm_done:
|
||||
SetRFlags(old_flags);
|
||||
return result;
|
||||
return res;
|
||||
}
|
||||
|
||||
I64 FlushMsgs(CTask *task=NULL)
|
||||
{//Throw away all messages. Return count.
|
||||
I64 result=0,a1,a2;
|
||||
I64 res=0,a1,a2;
|
||||
while (ScanMsg(&a1,&a2,~1,task))
|
||||
result++;
|
||||
return result;
|
||||
res++;
|
||||
return res;
|
||||
}
|
||||
|
||||
I64 GetMsg(I64 *_a1=NULL,I64 *_a2=NULL,I64 mask=~1,CTask *task=NULL)
|
||||
{//Wait for a message of type specified by a one in the mask.
|
||||
//Throw-out all messages not in mask.
|
||||
//Returns $LK,"msg_code",A="MN:MSG_CMD"$. See $LK,"::/Demo/MsgLoop.CPP"$.
|
||||
I64 result;
|
||||
I64 res;
|
||||
if (!task) task=Fs;
|
||||
LBtr(&task->task_flags,TASKf_IDLE);
|
||||
while (!(result=ScanMsg(_a1,_a2,mask,task))) {
|
||||
while (!(res=ScanMsg(_a1,_a2,mask,task))) {
|
||||
LBts(&task->task_flags,TASKf_IDLE);
|
||||
Yield;
|
||||
}
|
||||
LBtr(&task->task_flags,TASKf_IDLE);
|
||||
return result;
|
||||
return res;
|
||||
}
|
||||
|
||||
I64 ScanChar()
|
||||
|
||||
@@ -37,22 +37,17 @@ U0 MouseGetDevType()
|
||||
Bool MouseRst()
|
||||
{
|
||||
U8 b,*_b;
|
||||
U16 *_w;
|
||||
F64 timeout;
|
||||
Bool result=FALSE,present;
|
||||
Bool res=FALSE;
|
||||
|
||||
mouse.has_wheel=FALSE;
|
||||
mouse.has_ext_buttons=FALSE;
|
||||
|
||||
_w=0x40E;
|
||||
present=MemPagePresentMark(_w,TRUE);
|
||||
if (*_w==0x9FC0) {
|
||||
if (*0x40E(U16 *)==0x9FC0) {
|
||||
_b=0x9FC00+0x30;
|
||||
*_b=1; //This enables my mouse. It might be for one machine.
|
||||
//USB DMA packets, set-up by BIOS to make legacy PS/2?
|
||||
}
|
||||
if (!present)
|
||||
MemPagePresentMark(_w,FALSE);
|
||||
|
||||
try {
|
||||
KbdCmdFlush;
|
||||
@@ -80,7 +75,7 @@ Bool MouseRst()
|
||||
KbdMouseCmdAck(0xF3,10);
|
||||
MouseGetDevType;
|
||||
KbdMouseCmdAck(0xE8,0x03,0xE6,0xF3,100,0xF4);
|
||||
result=TRUE;
|
||||
res=TRUE;
|
||||
|
||||
//Enable IRQ 12
|
||||
KbdCmdSend(KBD_CTRL,0x20);
|
||||
@@ -93,7 +88,7 @@ Bool MouseRst()
|
||||
|
||||
//This is been added to override failure
|
||||
//because the mouse sometimes still works.
|
||||
result=TRUE;
|
||||
res=TRUE;
|
||||
|
||||
try
|
||||
KbdCmdSend(KBD_CTRL,0xAE); //Enable Keyboard
|
||||
@@ -103,12 +98,12 @@ Bool MouseRst()
|
||||
mouse.pkt_size=4;
|
||||
else
|
||||
mouse.pkt_size=3;
|
||||
if (!result)
|
||||
if (!res)
|
||||
try
|
||||
KbdCmdSend(KBD_CTRL,0xA7); //Disable Mouse
|
||||
catch
|
||||
Fs->catch_except=TRUE;
|
||||
return result;
|
||||
return res;
|
||||
}
|
||||
|
||||
U0 MouseSpeedSet()
|
||||
|
||||
Reference in new issue
Block a user