diff --git a/sys/lib/newuser b/sys/lib/newuser old mode 100644 new mode 100755 diff --git a/sys/lib/sysconfig/proto/cdproto b/sys/lib/sysconfig/proto/cdproto index fa6cd104a..c45984a97 100644 --- a/sys/lib/sysconfig/proto/cdproto +++ b/sys/lib/sysconfig/proto/cdproto @@ -86,7 +86,7 @@ sys d775 + include + - lib + lib d775 + log man diff --git a/sys/src/cmd/aux/realemu/xec.c b/sys/src/cmd/aux/realemu/xec.c index 4d81c4d5c..c39ad27b5 100644 --- a/sys/src/cmd/aux/realemu/xec.c +++ b/sys/src/cmd/aux/realemu/xec.c @@ -485,38 +485,42 @@ opror(Cpu *cpu, Inst *i) } static void -opbts(Cpu *cpu, Inst *i) +opbt(Cpu *cpu, Inst *i) { ulong a, m; - int n; + int n, s; + Iarg *x; - a = ar(i->a1); - n = ar(i->a2) & 31; + n = ar(i->a2); + x = i->a1; + s = x->len*8; + if(x->tag == TMEM){ + x = adup(x); + x->off += n / s; + x->off &= mask(i->alen*8); + } + a = ar(x); + n &= s-1; m = 1<reg[RFL] |= CF; - else { + cpu->reg[RFL] |= CF; + else cpu->reg[RFL] &= ~CF; - aw(i->a1, a | m); + switch(i->op){ + case OBT: + break; + case OBTS: + aw(x, a | m); + break; + case OBTR: + aw(x, a & ~m); + break; + case OBTC: + aw(x, a ^ m); + break; } } -static void -opbtr(Cpu *cpu, Inst *i) -{ - ulong a, m; - int n; - - a = ar(i->a1); - n = ar(i->a2) & 31; - m = 1<reg[RFL] |= CF; - aw(i->a1, a & ~m); - } else - cpu->reg[RFL] &= ~CF; -} - static void opbitscan(Cpu *cpu, Inst *i) { @@ -1204,8 +1208,11 @@ static void (*exctab[NUMOP])(Cpu *cpu, Inst*) = { [OROL] = oprol, [OROR] = opror, - [OBTS] = opbts, - [OBTR] = opbtr, + [OBT] = opbt, + [OBTS] = opbt, + [OBTR] = opbt, + [OBTC] = opbt, + [OBSF] = opbitscan, [OBSR] = opbitscan, diff --git a/sys/src/mkfile b/sys/src/mkfile index 4f5344e9f..a57df5b77 100644 --- a/sys/src/mkfile +++ b/sys/src/mkfile @@ -40,7 +40,7 @@ CMDS=cmd\ games\ SUBSYS=ape\ -# /acme\ + /acme\ none:VQ: echo mk all, install, clean, nuke, release, kernels, or libs