if(l>wordsize) { l=wordsize; dl=l<<3; }
// fall through
case 0x32:
+ case 0x39:
case 0x3b:
if(l>34) { l=34; dl=34<<3; }
GetMem(HILO(0x44),tmp,dl,0);
case 0x21:
case 0x30:
case 0x31:
+ case 0x3a:
case 0x43:
DoMap(f);
break;
I.GetLE(data,l<<3);
MonMul(B,I,B);
break;
- case 0x3a:
- MonInit();
- MonMul(B,A,B);
- MonMul(B,A,B);
- break;
default:
if(!cMapCore::DoMap(f,data,l))
PRINTF(L_SYS_MAP,"%04x: unsupported call %02x",mId,f);
case COPY_D_C:
last=3; BN_copy(C,D); cycles=462+(8*l1+3)/5*5-6; break;
+ case 0x39:
+ case 0x3a:
+ MonInit();
+ if(f==0x39) I.GetLE(data,wordsize<<3);
+ MonMul(B,(f==0x39?I:A),B);
+ MonMul(B,A,B);
+ break;
case 0x43: // init SHA1
SHA1_Init(&sctx);
break;