コード例 #1
0
table_offset::table_offset(uint u) {
	this->u = u;
	users_count = 0;
	short_bitmaps = new ushort[((1<<u)+1)];
	offset_class = new ushort[u+2];
	binomial = new uint*[u+1];
	log2binomial = new ushort*[u+1];
	for(uint i=0;i<u+1;i++) {
		binomial[i] = new uint[u+1];
		log2binomial[i] = new ushort[u+1];
		for(uint j=0;j<u+1;j++) {
			binomial[i][j] = 0;
			log2binomial[i][j] = 0;
		}
	}
	for(uint i=0;i<u+1;i++) {
		binomial[i][0] = 1;
		binomial[i][1] = 1;
		binomial[i][i] = 1;
		log2binomial[i][0] = 0;
		log2binomial[i][1] = 0;
		log2binomial[i][i] = 0;
	}
	for(uint j=1;j<u+1;j++) {
		for(uint i=j+1;i<u+1;i++) {
			binomial[i][j] = binomial[i-1][j-1]+binomial[i-1][j];
			log2binomial[i][j] = bits(binomial[i][j]-1);
		}
  }
	fill_tables();
}
コード例 #2
0
ファイル: sceio.c プロジェクト: Rolen47/prxpatch
SceUID mhp3_open(const char *file, int flags, SceMode mode) {
    u32 k1;
    SceUID fd = sceIoOpen(file, flags, mode);
    if (fd >= 0) {
        k1 = pspSdkSetK1(0);
        if (strcmp(file, DATABIN_PATH) == 0) {
            kprintf("DATA.BIN opened\n");
            reopen_translation();
            if (fill_tables(transfd) >= 0) {
                fill_install_tables(transfd);
                datafd = fd;
            }
        } else {
            register_install(file, fd);
        }
        pspSdkSetK1(k1);
    }
    return fd;
}