// 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 IMPL_START_1(trap) { if (v1 > 255) _except(ctx, E_ILL, "TRAP number greater than 255"); _except(ctx, v1 + 256, "TRAP instruction"); } IMPL_END; IMPL_START_0(into) { if (flg & OF) _except(ctx, E_OVF, "INTO instruction with FLG.OF=1"); } IMPL_END; // XXX more checks IMPL_START_0(iret) { trace("\nReturning from exception #%ld\n\n", R(R11)); rip = R(R13); rfs_current_idx = R(R12); ctx->rf = rfs[R(R12)]; } IMPL_END;