mirror of
https://gitlab.os-k.eu/os-k-team/kvisc.git
synced 2023-08-25 14:05:46 +02:00
72 lines
1.1 KiB
C
72 lines
1.1 KiB
C
// The OS/K Team licenses this file to you under the MIT license.
|
|
// See the LICENSE file in the project root for more information.
|
|
|
|
#include <in/instrs.h>
|
|
|
|
//----------------------------------------------------------------------------//
|
|
|
|
IMPL_START_0(cli)
|
|
{
|
|
CHK_SUPERV();
|
|
cr0 &= ~IF;
|
|
}
|
|
IMPL_END;
|
|
|
|
IMPL_START_0(sti)
|
|
{
|
|
CHK_SUPERV();
|
|
cr0 |= IF;
|
|
}
|
|
IMPL_END;
|
|
|
|
//----------------------------------------------------------------------------//
|
|
|
|
IMPL_START_0(cld)
|
|
{
|
|
flg &= ~DF;
|
|
}
|
|
IMPL_END;
|
|
|
|
IMPL_START_0(std)
|
|
{
|
|
flg |= DF;
|
|
}
|
|
IMPL_END;
|
|
|
|
//----------------------------------------------------------------------------//
|
|
|
|
IMPL_START_0(cmc)
|
|
{
|
|
flg = (flg&CF ? flg&~CF : flg|CF);
|
|
}
|
|
IMPL_END;
|
|
|
|
IMPL_START_0(clc)
|
|
{
|
|
flg &= ~CF;
|
|
}
|
|
IMPL_END;
|
|
|
|
IMPL_START_0(stc)
|
|
{
|
|
flg |= CF;
|
|
}
|
|
IMPL_END;
|
|
|
|
//----------------------------------------------------------------------------//
|
|
|
|
IMPL_START_1(lodf)
|
|
{
|
|
v1 = flg;
|
|
}
|
|
IMPL_OUT;
|
|
|
|
IMPL_START_1(stofb)
|
|
{
|
|
flg = (flg & ~0xFF) | (v1 & 0xFF);
|
|
}
|
|
IMPL_END;
|
|
|
|
//----------------------------------------------------------------------------//
|
|
|