add test code to NativeBindings.java
This commit is contained in:
@@ -1,19 +1,63 @@
|
|||||||
package org.neoflock.NeoNucleus;
|
package org.neoflock.NeoNucleus;
|
||||||
|
|
||||||
|
import java.util.UUID;
|
||||||
|
|
||||||
public class NativeBindings {
|
public class NativeBindings {
|
||||||
static {
|
static {
|
||||||
System.loadLibrary("neonucleusjni");
|
System.loadLibrary("neonucleusjni");
|
||||||
}
|
}
|
||||||
public static void main(String[] args) {
|
public static void main(String[] args) {
|
||||||
//nn_Context ctx = nn_initContext();
|
//nn_Context ctx = nn_initContext();
|
||||||
nn_EEPROM eeprom = new nn_EEPROM(100, 200, 300, 400, 0, 0, 0, 0);
|
/*nn_EEPROM eeprom = new nn_EEPROM(100, 200, 300, 400, 0, 0, 0, 0);
|
||||||
eeprom.allocate();
|
eeprom.allocate();
|
||||||
System.out.println("we live");
|
System.out.println("we live");
|
||||||
eeprom.free();
|
eeprom.free();
|
||||||
System.out.println("about to double free");
|
System.out.println("about to double free");
|
||||||
eeprom.free();
|
eeprom.free();*/
|
||||||
|
nn_Context ctx = nn_initContext();
|
||||||
|
nn_initPalettes();
|
||||||
|
nn_Universe universe = nn_createUniverse(ctx);
|
||||||
|
nn_Architecture arch = getLuaArch();
|
||||||
|
nn_EEPROM eeprom = new nn_EEPROM(2048, 2048, 1, 1, 1, 1, 1, 1);
|
||||||
|
nn_Component eepromCard = ncl_createEEPROM(universe, UUID.randomUUID().toString(), eeprom, "error('amog us')", false);
|
||||||
|
nn_Computer computer = nn_createComputer(universe, UUID.randomUUID().toString(), 4096, 100, 100);
|
||||||
|
nn_setCallBudget(computer, 0);
|
||||||
|
nn_setArchitecture(computer, arch);
|
||||||
|
nn_addSupportedArchitecture(computer, arch);
|
||||||
|
nn_Exit e = nn_tick(computer);
|
||||||
|
if (e != nn_Exit.NN_OK) {
|
||||||
|
System.out.println("NN tick error: " + nn_getError(computer));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
e = nn_tickSynchronized(computer);
|
||||||
|
if (e != nn_Exit.NN_OK) {
|
||||||
|
System.out.println("NN synchronized tick error: " + nn_getError(computer));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
nn_ComputerState state = nn_getComputerState(computer);
|
||||||
|
/*if(state == nn_Exit.NN_POWEROFF) break;
|
||||||
|
if(state == nn_Exit.NN_CRASHED) {
|
||||||
|
System.out.println("error: %s\n", nn_getError(c));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if(state == nn_Exit.NN_CHARCH) {
|
||||||
|
System.out.println("new arch: %s\n", nn_getDesiredArchitecture(c).name);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if(state == nn_Exit.NN_BLACKOUT) {
|
||||||
|
System.out.println("out of energy\n");
|
||||||
|
goto cleanup;
|
||||||
|
}
|
||||||
|
if(state == nn_Exit.NN_RESTART) {
|
||||||
|
System.out.println("restart requested\n");
|
||||||
|
nn_stopComputer(computer);
|
||||||
|
//ncl_resetScreen(nn_getComponentState(screen));
|
||||||
|
nn_addIdleTime(computer, 1);
|
||||||
|
continue;
|
||||||
|
}*/
|
||||||
//System.out.println(ctx.ptr);
|
//System.out.println(ctx.ptr);
|
||||||
}
|
}
|
||||||
|
public static native nn_Architecture getLuaArch();
|
||||||
public static native nn_Context nn_initContext();
|
public static native nn_Context nn_initContext();
|
||||||
public static native void nn_initPalettes();
|
public static native void nn_initPalettes();
|
||||||
// nn_Universe *nn_createUniverse(nn_Context *ctx, void *userdata)
|
// nn_Universe *nn_createUniverse(nn_Context *ctx, void *userdata)
|
||||||
|
|||||||
@@ -2,6 +2,7 @@
|
|||||||
#include <iostream>
|
#include <iostream>
|
||||||
#include "neonucleus.h"
|
#include "neonucleus.h"
|
||||||
#include "ncomplib.h"
|
#include "ncomplib.h"
|
||||||
|
#include <jni.h>
|
||||||
|
|
||||||
#include "carbon.hpp"
|
#include "carbon.hpp"
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user