Ejemplo n.º 1
0
	void (*Loader::finalize(const char *entryLabel))()
	{
		if(!machineCode)
		{
			loadCode();
		}

		finalized = true;

		delete instructions;
		instructions = 0;

		delete[] listing;
		listing = 0;

		if(!entryLabel)
		{
			return (void(*)())machineCode;
		}

		const unsigned char *entryPoint = resolveLocal(entryLabel, 0);

		if(!entryPoint)
		{
			throw Error("Entry point '%s' not found", entryLabel);
		}

		return (void(*)())entryPoint;
	}
void yeseulMenkmanInstitution::setup(){
    
    for (int i=0; i<7000; i++) {
        for (int j=0; j<11; j++) {
            patternRandomArray[i][j] = int(ofRandom(1, 11));
        }
    }
    
    for (int i=0; i<5000; i++) {
        patternRandomNumberArray[i] = int(ofRandom(1, 11));
    }
    
    for(int i=0; i<324; i++) {
        squareRandomArray[i] = int(ofRandom(0, 10));
    }
    
    parameters.add(amountOfSquares.set("amountOfSquares", 2, 0, 5));
    parameters.add(numberOfBricks.set("numberOfBricks", 118, 0, 475));
    
    setAuthor("Yeseul Song");
    setOriginalArtist("Rosa Menkman");
    loadCode("scenes/yeseulMenkmanInstitution/exampleCode.cpp");
    
    
}
void alexLissamojiWhitney::setup(){
  
    ofBackground(0);
    // ofEnableSmoothing();
    center.set(dimensions.width*0.5, dimensions.height*0.5, 0);
    
    // Removing for black-on-white aesthetic
    // bckgImg.loadImage("scenes/alexLissamojiWhitney/back.png");
    
    // To Do: flip through all emojis in the folder ?
//    eyesImg.load("scenes/alexLissamojiWhitney/emojis/1f440.png");
    
    emojiSheet.load("scenes/alexLissamojiWhitney/sheet_32.png");
    
    anim[0] = 0;
    anim[1] = 0;
    

    // setup pramameters
    parameters.add(pAmp.set( "Amplitude", 200, 10, 400 ));
    // parameters.add(pFreq[1].set( "Frequency ", 1, 1, 10 ));
    pPhase.set("Phase", PI / 2 ,0,TWO_PI);
    parameters.add(pDensity.set("Density", 140, 0, 200));
    parameters.add(plissajouRatioX.set("Lissajous Ratio X", 2, 1, 3));
    parameters.add(plissajouRatioY.set("Lissajous Ratio Y", 3, 1, 3));
    pAnimSpeed.set("Animation Speed", 10, 1, 60);
    pImgScale.set("Image scale", 0.15, 0.0, 1);
    
    timerLastTime = ofGetElapsedTimeMillis();

    setAuthor("Alex Tolar");
    setOriginalArtist("John Whitney");
    loadCode("scenes/alexLissamojiWhitney/exampleCode.cpp");
}
void mgsRileyEllipsesAndSquares::setup() {
    setAuthor("Michael Simpson");
    setOriginalArtist("Bridget Riley");
    //- Hidden Squares - 1990");
    px0 = 66;
    py0 = 97;
    px1 = 260;
    py1 = 310;
    px2 = 320;
    py2 = 100;
    px3 = 440;
    py3 = 270;
    px4 = 69;
    py4 = 349;
    px5 = 320;
    py5 = 430;
    px6 = 330;
    py6 = 320;
    px7 = 434;
    py7 = 429;

    bNeedRedraw = false;

    parameters.add(unitSize.set("Unit Size", 6, 2, 8));
    unitSize.addListener(this, &mgsRileyEllipsesAndSquares::redraw);
    loadCode("scenes/mgsRileyEllipsesAndSquares/exampleCode.cpp");

    ofBackground(255);
    ofSetCircleResolution(100);
    frame.allocate(dimensions.width, dimensions.height, GL_RGB32F_ARB);
    frame.begin();
    ofClear(0);
    frame.end();
    drawScene();
}
Ejemplo n.º 5
0
void manfredMohrP196A::setup(){

	zeroVector = ofVec4f(0., 0., 0., 0.);

	orthoCam = ofCamera();
	//Manfred Mohr commonly used an orthographic perspective
	orthoCam.enableOrtho();
	//push out clipping planes so we don't cut off the geometry
	orthoCam.setFarClip(1000);
	orthoCam.setNearClip(-1000);
  
// setup pramaters
//    param.set("param", 5, 0, 100);
//    parameters.add(param);
	cubeARotationPercent.set("cubeARotationPercent", 0., 0., 1.);
	cubeBRotationDiffPercent.set("cubeBRotationDiffPercent", 0., 0., 1.);
	cubeOthersRotationDiffPercent.set("cubeOthersRotationDiffPercent", 0., 0., 1.);
	scaleParam.set("scale", 0.8, 0, 1);
	whiteBackground.set("whiteBackground", true);
	rearLineOpacity.set("rearLineOpacity", 0, 0, 255);
	//~1.75 spacing is the smallest before overlap starts occuring
	spacing.set("spacing", 2, 1.75, 10);
	parameters.add(cubeARotationPercent);
	parameters.add(cubeBRotationDiffPercent);
	parameters.add(cubeOthersRotationDiffPercent);
	parameters.add(scaleParam);
	parameters.add(whiteBackground);
	parameters.add(rearLineOpacity);
	parameters.add(spacing);

    setAuthor("Quin Kennedy");
    setOriginalArtist("Manfred Mohr");
    loadCode("scenes/manfredMohrP196A/exampleCode.cpp");
}
Ejemplo n.º 6
0
void cantusFirmusRiley::setup(){
    ofBackground(255);
    size = 5000;
    
    y.c.setHex(0xA79C26);
    y.width = 9;
    
    p.c.setHex(0xC781A8);
    p.width = 9;
    
    b.c.setHex(0x64A2C9);
    b.width = 11;
    
    k.c.setHex(0x222B32);
    k.width = 39;
    
    w.c.setHex(0xE3E2DE);
    w.width = 29;
    
    g.c.set(127);
    g.width = 29;
    
    r.c.set(255,0,0);
    r.width = 10;
    
    int counter = 0;
    
    for (int i = 0; i <= size; i++){
        if(i == size/2) stripes.push_back(w);
        
        else if(abs(i-size/2)% 8 == 1) stripes.push_back(y);
        else if(abs(i-size/2)% 8 == 2) stripes.push_back(p);
        else if(abs(i-size/2)% 8 == 3) stripes.push_back(b);
        
        else if(abs(i-size/2)% 8 == 5) stripes.push_back(b);
        else if(abs(i-size/2)% 8 == 6) stripes.push_back(p);
        else if(abs(i-size/2)% 8 == 7) stripes.push_back(y);
        
        else if(abs(i-size/2)%12 == 0) stripes.push_back(w);
        else if(abs(i-size/2)%12 == 8) stripes.push_back(k);
        
        else if(abs(i-size/2)%12 == 4) {
            int rand = ofRandom(120,180);
            g.c.set(rand);
        //    cout << rand << endl;
            stripes.push_back(g);
        }
        
        else stripes.push_back(r);
    }

    parameters.add(posNoiseSpeed.set("offsetX", 0, -300, 300));
    parameters.add(zoomNoiseSpeed.set("zoom", 0.2, 0.05, 1));
    //parameters.add(range.set("scale", 0.3, 0.02, 1.0));

    setAuthor("Reed Tothong");
    setOriginalArtist("Bridget Riley");
    loadCode("scenes/cantusFirmusRiley/cantusFirmusRiley.cpp");
}
Ejemplo n.º 7
0
void olegVeraV::setup(){
  
    parameters.add(elementsAmount.set("elementsAmount", 25, 1, 36));
    parameters.add(thickness.set("thickness", 4, 0.001, 100));
    parameters.add(thicknessMultiplier.set("thicknessMultiplier", 1.01, 0.9, 1.1));
    parameters.add(curveHeight.set("heartBeat", 5, 1, 100));

    setAuthor("Oleg Pashkovsky");
    setOriginalArtist("Vera Molnar");
    loadCode("scenes/olegVeraV/exampleCode.cpp");
}
Ejemplo n.º 8
0
void veraFscene::setup(){
    
    //parameters.add(numberOfF.set("numberOfF", 4, 4, 50));
    numberOfF = 40;
    parameters.add(frequency.set("frequency", 0.0, 0.0, 0.5));
    parameters.add(margin.set("margin", 4, 0, 10));
    parameters.add(lineWidth.set("lineWidth", 2, 0, 10));
    parameters.add(zoom.set("zoom", 1, 0.66667, 3));
    lastValue = 0;
    
    setAuthor("Becca Moore");
    setOriginalArtist("Vera Molnar");
    loadCode("scenes/veraFscene/exampleCode.cpp");
}
Ejemplo n.º 9
0
void yeseulWhitneyScene::setup(){
    
    setAuthor("Yeseul Song");
    setOriginalArtist("John Whitney");
    
    parameters.add(spinSpeed.set("spinSpeed", 10, 10, 70));
    parameters.add(diffusionInterval.set("diffusionInterval", 5, 5, 10));
    parameters.add(diffusionSize.set("diffusionSize", 0.1, 0.1, 1.5));
    
    lastDiffusionTime = 0;
    
    integratedTime = 0;
    lastTimeBg = 0;
    lastTimeFg = 0;
    
    loadCode("scenes/yeseulWhitneyScene/exampleCode.cpp");
    
}
Ejemplo n.º 10
0
void johnWhitneyShader02::setup(){
    
    // setup pramaters
    speed.set("speed", 0.18, 0, 2.5);
    parameters.add(speed);
    
    thickness.set("thickness", 0.26, 0.001, 0.6);
    parameters.add(thickness);
    
    integratedTime = 0;
    lastTime = 0;
    
    shader.load("scenes/johnWhitneyShader02/shader");
    
    setAuthor("Chris Anderson");
    setOriginalArtist("John Whitney");
    loadCode("scenes/johnWhitneyShader02/exampleCode.cpp");
}
void RileyRemake_Catarina_Lee__Joao_Freire::setup(){
  
// setup pramaters
//    param.set("param", 5, 0, 100);
//    parameters.add(param);
    
    ofEnableAlphaBlending();
    
    for(int i = 0; i < 7; i++)
    {
        colors.push_back(ofParameter<ofColor>());
        parameters.add(colors.back().set("color"+ofToString(i), ofColor(100,100,140), ofColor(0,0),ofColor(255,255)));
    }
    
    for(int j = 0; j < 18; j++)
    {
        ofColor auxColor = colors[ofRandom(0,7)];
        
        stripe1.clear();
        for(int i = 0; i < 7; i ++)
        {
            vertical_stripe *aux;
            aux = new vertical_stripe();
            aux->create(j * 60, -j*30+ i*7*30, auxColor);
            stripe1.push_back(aux);
        }
        stripes.push_back(stripe1);
    }
    
    int nFloating = ofRandom(400,500);
    cell aux;
    
    for(int i = 0; i < nFloating; i++)
    {
        int x = ofRandom(17);
        int y = ofRandom(4);
        int num_cell = ofRandom(7);
        aux.create(stripes[x][y]->cells[num_cell]->origin.x + 1*17*60,  stripes[x][y]->cells[num_cell]->origin.y-30*30,"diagonal", colors[ofRandom(7)]);
        floating_cells.push_back(aux);
    }
    

    loadCode("scenes/RileyRemake-Catarina_Lee__Joao_Freire/exampleCode.cpp");
}
Ejemplo n.º 12
0
void RileyArcsRoy::setup(){
  
// setup pramaters
//    param.set("param", 5, 0, 100);
//    parameters.add(param);

    setAuthor("Roy MacDonald");
    setOriginalArtist("Bridget Riley");
    loadCode("scenes/RileyArcsRoy/exampleCode.cpp");
    
    minWidth = 1;
    minSpacing = 4;
    parameters.add(thinWideRatio.set("thinWideRatio", 0.2, 0,1));
//    parameters.add(oscMax.set("oscMax", 0.98, 0,1));
  //  parameters.add(speed.set("speed", 0.2, 0,1));
    
    initTime = TWO_PI*0.8;
    
    
}
Ejemplo n.º 13
0
void rodrigoBelfort::setup(){
  
    timeBtwnLines.set("timeBtwnLines", 0.2, 0, 1);
    parameters.add(timeBtwnLines);
    
    pNewLine.set("pNewLine", 0.1, 0, 1);
    parameters.add(pNewLine);
    
    // Calculate rectangle size and padding from width
    float availableSpaceX = (VISUALS_WIDTH - WINDOW_PADDING * 2);
    float widthUnits = BELFORT_COLS * RECT_WIDTH_TO_PADDING + (BELFORT_COLS - 1);
    float unitWidth = availableSpaceX / widthUnits;
    rectSize = unitWidth * RECT_WIDTH_TO_PADDING;
    paddingSizeX = unitWidth;
    
    // Calculate Y padding
    float availableSpaceY = (VISUALS_HEIGHT - WINDOW_PADDING * 2);
    float totalPaddingY = availableSpaceY - unitWidth * BELFORT_ROWS;
    paddingSizeY = availableSpaceY / ((BELFORT_ROWS - 1) * 2);
    
    // Load in original
    for (int i = 0; i < BELFORT_ROWS; i++) {
        const int (*shape)[BELFORT_COLS];
        
        if (i < 5) {
            shape = &origA;
        } else if (i < 29) {
            shape = &origB;
        } else {
            shape = &origC;
        }

        for (int j = 0; j < BELFORT_COLS; j++) {
            dots[i][j]=(*shape)[j];
        }
    }

    setAuthor("Rodrigo Carvalho");
    setOriginalArtist("Belfort Group");
    loadCode("scenes/rodrigoBelfort/exampleCode.cpp");
}
Ejemplo n.º 14
0
void mgsCooperSymbols::setup() {
  setAuthor("Michael Simpson");
  setOriginalArtist("Muriel Cooper");
  // - 'A Primer Of Visual Literacy' Book Cover - 1973
  setupParameters();
  ofSetCircleResolution(100);
  loadCode("scenes/mgsCooperSymbols/exampleCode.cpp");
  
  cursorColor = ofColor(0,0,255,1);
  clearColor = ofColor(0,0,0,255);
  symbolColor = ofColor(255,255,255,255);
  gw = dimensions.width/gridSize;
  gh = dimensions.height/gridSize;
  bNeedsRedraw = bNeedRedrawFullScene = true;
  frame.allocate(dimensions.width, dimensions.height);
  frame.begin();
  ofClear(0);
  frame.end();
  drawFullScene();
  drawScene();
}
void yeseulCooperMessages::setup(){
    
    setAuthor("Yeseul Song");
    setOriginalArtist("Muriel Cooper");

    texture.load("scenes/yeseulCooperMessages/texture.png");
    
    font.load("Helvetica Neue", 50, true,true,true);
    font.setLineHeight(60);
    
    text1 = "MEANS";
    text2 = "MESSAGES";
    
    parameters.add(greenTextSpeed.set("greenTextSpeed", 20, 5, 35));
    parameters.add(redTextSpeed.set("redTextSpeed", 20, 5, 35));
    parameters.add(purpleTextSpeed.set("purpleTextSpeed", 20, 5, 35));
    parameters.add(rotation.set("rotation", 0, 0, 360));
    
    loadCode("scenes/yeseulCooperMessages/exampleCode.cpp");
    
}
Ejemplo n.º 16
0
void veraMolnarTrapezium::setup(){

	iCenterX = 0;
	iCenterY = 1;
	iTopLeftOffsetX = 2;
	iTopRightOffsetX = 3;
	iBottomLeftOffsetX = 4;
	iBottomRightOffsetX = 5;
  
    fboScale = 2;
    bigScreen.allocate(dimensions.width*fboScale, dimensions.height*fboScale);
    
// setup pramaters
//    param.set("param", 5, 0, 100);
//    parameters.add(param);
	spacingPercent.set("spacingPercent", 1.2, 0, 10);
	spacingPercentX.set("spacingPercentX", 1.2, 0, 10);
	spacingPercentY.set("spacingPercentY", 1.2, 0, 10);
	unifiedSpacing.set("unifiedSpacing", true);
	whiteBackground.set("whiteBackground", false);
	numWide.set("numWide", 40, 1, 100);
	baseSize.set("baseSize", 140, 40, bigScreen.getWidth());
	cornerNoise.set("cornerNoise", 0., 0., 1.);
	centerNoise.set("centerNoise", 0., 0., 1.);
	
	parameters.add(baseSize);
	parameters.add(spacingPercent);
	parameters.add(unifiedSpacing);
	parameters.add(spacingPercentX);
	parameters.add(spacingPercentY);
	//parameters.add(numWide);
	parameters.add(cornerNoise);
	parameters.add(centerNoise);
	parameters.add(whiteBackground);

    setAuthor("Quin Kennedy");
    setOriginalArtist("Vera Molnar");
    loadCode("scenes/veraMolnarTrapezium/exampleCode.cpp");
}
Ejemplo n.º 17
0
HuffmanCode::WeightSum HuffmanCode::build(const std::vector<HuffmanCode::WeightTp>& W) {
	if (W.empty()) {
		output_code.clear();
		return WeightSum();
	}
	unsigned int n = W.size();
	typedef std::pair<WeightTp, unsigned int> PP;
	std::priority_queue<PP, std::vector<PP>, std::greater<PP> > pq;
	unsigned int i = 0;
	for (std::vector<WeightTp>::const_iterator it = W.begin(); it != W.end(); ++it)
		pq.push(std::make_pair(*it, i++));
	std::vector<unsigned int> parent(W.size());
	parent.reserve(W.size()*2 - 1);
	assert(!pq.empty());
	while (true) {
		PP t1 = pq.top();
		pq.pop();
		if (pq.empty()) break;
		PP t2 = pq.top();
		pq.pop();
		parent.push_back(0);
		unsigned int newid = parent.size() - 1;
		parent[t1.second] = newid;
		parent[t2.second] = newid;
		pq.push(std::make_pair(t1.first + t2.first, newid));
	}
	assert(pq.empty());
	// compute code length
	std::vector<uint16_t> L(parent.size());
	L[L.size() - 1] = 0;
	WeightSum total = 0;
	for (int i = (int)L.size()-2; i >= 0; i--) {
		L[i] = 1 + L[parent[i]];
		if ((unsigned int) i <  n) total += ((WeightSum)W[i]) * L[i];
	}
	loadCode(W.size(), L);
	return total;
}
Ejemplo n.º 18
0
	void (*Loader::callable(const char *entryLabel))()
	{
		if(finalized) throw Error("Cannot retrieve callable from finalized code");

		if(!machineCode)
		{
			loadCode();
		}

		if(!entryLabel)
		{
			return (void(*)())machineCode;
		}

		const unsigned char *entryPoint = resolveLocal(entryLabel, 0);

		if(!entryPoint)
		{
			throw Error("Entry point '%s' not found", entryLabel);
		}

		return (void(*)())entryPoint;
	}
Ejemplo n.º 19
0
InfoTable *
loadInfoTable(const char *filename,
              FILE *f, const StringTabEntry *strings,
              HashTable *itbls, HashTable *closures)
{
  u4 magic = fget_u4(f);
  assert(magic == INFO_MAGIC);

  char *itbl_name = loadId(f, strings, ".");
  u2 cl_type = fget_varuint(f);
  InfoTable *new_itbl = NULL;
  FwdRefInfoTable *old_itbl = HashTable_lookup(itbls, itbl_name);

  if (old_itbl && old_itbl->i.type != INVALID_OBJECT) {
    fprintf(stderr, "ERROR: Duplicate info table: %s\n",
            itbl_name);
    exit(1);
  }

  switch (cl_type) {
  case CONSTR:
    // A statically allocated constructor
    {
      ConInfoTable *info = allocInfoTable(wordsof(ConInfoTable));
      info->i.type = cl_type;
      info->i.tagOrBitmap = fget_varuint(f);  // tag
      Word sz = fget_varuint(f);
      assert(sz <= 32);
      info->i.size = sz;
      info->i.layout.bitmap = sz > 0 ? fget_u4(f) : 0;
      // info->i.layout.payload.ptrs = fget_varuint(f);
      // info->i.layout.payload.nptrs = fget_varuint(f);
      info->name = loadId(f, strings, ".");
      new_itbl = (InfoTable*)info;
    }
    break;
  case FUN:
    {
      FuncInfoTable *info = allocInfoTable(wordsof(FuncInfoTable));
      info->i.type = cl_type;
      info->i.tagOrBitmap = 0; // TODO: anything useful to put in here?
      Word sz = fget_varuint(f);
      assert(sz <= 32);
      info->i.size = sz;
      info->i.layout.bitmap = sz > 0 ? fget_u4(f) : 0;
      info->name = loadId(f, strings, ".");
      loadCode(filename, f, &info->code, strings, itbls, closures);
      new_itbl = (InfoTable*)info;
    }
    break;
  case CAF:
  case THUNK:
    {
      ThunkInfoTable *info = allocInfoTable(wordsof(ThunkInfoTable));
      info->i.type = cl_type;
      info->i.tagOrBitmap = 0; // TODO: anything useful to put in here?
      Word sz = fget_varuint(f);
      assert(sz <= 32);
      info->i.size = sz;
      info->i.layout.bitmap = sz > 0 ? fget_u4(f) : 0;
      info->name = loadId(f, strings, ".");
      loadCode(filename, f, &info->code, strings, itbls, closures);
      new_itbl = (InfoTable*)info;
    }
    break;
  default:
    fprintf(stderr, "ERROR: Unknown info table type (%d)", cl_type);
    exit(1);
  }
  // new_itbl is the new info table.  There may have been forward
  // references (even during loading the code for this info table).
  if (old_itbl != NULL) {
    LD_DBG_PR(1, "Fixing itable forward reference for: %s, %p\n", itbl_name, new_itbl);
    void **p, *next;
    LC_ASSERT(old_itbl->i.type == INVALID_OBJECT);

    for (p = old_itbl->next; p != NULL; p = next) {
      next = *p;
      *p = (void*)new_itbl;
    }

    // TODO: fixup forward refs
    xfree(old_itbl);
    HashTable_update(itbls, itbl_name, new_itbl);
    xfree(itbl_name);
  } else {
    HashTable_insert(itbls, itbl_name, new_itbl);
  }

  return new_itbl;
}
Ejemplo n.º 20
0
Archivo: VM.c Proyecto: kiendt07/ctd
int loadExecutable(FILE* f) {
  loadCode(codeBlock,f);
  resetVM();
  return 1;
}
Ejemplo n.º 21
0
void triangleScene::setup(){
    numTriangles.set("numTriangles", 5, 0, 100);
    parameters.add(numTriangles);
    loadCode("scenes/triangleScene/triangle.txt");
    
}