old call  sx2  (fixed size cache)

:call
.. <call with ret ads on ts>
..  save v
..    alu(fp-4)->fp
..    vn->mW(fp), fp+1->fp
..    ... repeat to v1
..  sp+1
..  ts->mW(sp), pc+1			; flush stack
..  pc->ts
..  arg->tbus->nx, mR(tbus)->ir	; fetch fun, nx=ads
..  fp->mW(sp+arg), sp+arg->sp 	; save old fp, new sp
..  sp->fp 						; new fp
..  alu(nx+1)->pc
..  cache v
..    alu(fp-4)->fp
..    mR(fp)->vn, fp+1->fp
..    ..  repeat to v1, fetch
  x.fp y.4 alu.sub b.tbus lfp ;
  w.v4 a.fp d.v mW x.fp alu.inc b.tbus lfp ;
  w.v3 a.fp d.v mW x.fp alu.inc b.tbus lfp ;
  w.v2 a.fp d.v mW x.fp alu.inc b.tbus lfp ;
  w.v1 a.fp d.v mW x.fp alu.inc b.tbus lfp ;
  so.spx si.inc lsp a.sp d.ts mW j.pc1 lpc ;
  b.pc lts ;
  y.arg alu.p2 b.tbus lnx a.tbus mR lir ;
  si.parg lsp so.spx a.sp d.fp mW ;
  b.sp lfp ;
  x.nx alu.inc j.tbus lpc ;
:cachev
  x.fp y.4 alu.sub b.tbus lfp ;
  a.fp mR z.dbus lv4 x.fp alu.inc b.tbus lfp ;
  a.fp mR z.dbus lv3 x.fp alu.inc b.tbus lfp ;
  a.fp mR z.dbus lv2 x.fp alu.inc b.tbus lfp ;
  a.fp mR z.dbus lv1 x.fp alu.inc b.tbus lfp /fetch ;
:ret
.. <ret with retads on TS>
.. <retv with retads on frame>
..  sp->ff
..  alu(fp=ff), ifFalse r2	; do retv
..  ts->pc  			; do ret
..  alu(fp-arg)->sp
..  mR(sp)->ts			; pop ts
..  sp-1
..  mR(fp)->fp			; restore fp
..  cache v, fetch
  b.sp lff ;
  x.fp y.ff alu.eq ifF /r2 ;
  x.ts alu.p1 j.tbus lpc ;
  x.fp y.arg alu.sub si.tbus lsp ;
  so.sp si.dec lsp a.sp mR b.dbus lts ;
  a.fp mR b.dbus lfp /cachev ;
:r2
..  alu(fp+1)->tbus, mR(tbus)->ff ; ret ads
..  ff->pc
..  alu(fp-arg)->sp
..  mR(fp)->fp
..  cache v, fetch
  x.fp alu.inc a.tbus mR b.dbus lff ;
  y.ff alu.p2 j.tbus lpc ;
  x.fp y.arg alu.sub si.tbus lsp ;
  a.fp mR b.dbus lfp /cachev ;



