// 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 #include IMPL_START_1(prn) { // Magic value? :) if (__builtin_expect(v1 == 0xC15000AF, 0)) console_clear(ctx); else { if (p1->mlen > 1) { trace("prn warning: large access size\n"); } console_putc(ctx, (char)v1); } } IMPL_END IMPL_START_0(prns) { uchar ch = readmemzx(ctx, R(p1->reg), 1); COMPARE(ch, 0); if ((rfx & ZF) == 0) { console_putc(ctx, ch); if (rfx & DF) R(p1->reg)--; else R(p1->reg)++; } } IMPL_END IMPL_START_1(scan) { v1 = console_scankeybuf(ctx); } IMPL_OUT;