finally runs on mac

This commit is contained in:
minjaesong
2023-05-19 14:54:37 +09:00
parent 3df989a213
commit bacb40b0ef
9 changed files with 20 additions and 8 deletions

View File

@@ -1,5 +1,7 @@
package net.torvald.tsvm;
import com.badlogic.gdx.ApplicationAdapter;
import com.badlogic.gdx.Gdx;
import com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application;
import com.badlogic.gdx.backends.lwjgl3.Lwjgl3ApplicationConfiguration;
import com.badlogic.gdx.graphics.glutils.ShaderProgram;
@@ -105,6 +107,13 @@ public class TerranBASIC {
VM tbasvm = new VM("./assets", 64 << 10, new TheRealWorld(), new VMProgramRom[]{TerranBASICreleaseBios.INSTANCE}, 2, watchdogs);
EmulInstance tbasrunner = new EmulInstance(tbasvm, "net.torvald.tsvm.peripheral.ReferenceGraphicsAdapter", diskDir, 560, 448);
new Lwjgl3Application(new VMGUI(tbasrunner, WIDTH, HEIGHT), appConfig);
try {
new Lwjgl3Application(new VMGUI(tbasrunner, WIDTH, HEIGHT), appConfig);
}
catch (Throwable e) {
e.printStackTrace();
if (Gdx.app != null) Gdx.app.exit();
}
}
}

View File

@@ -45,6 +45,8 @@ class VMGUI(val loaderInfo: EmulInstance, val viewportWidth: Int, val viewportHe
lateinit var fullscreenQuad: Mesh
override fun create() {
println("[VMGUI] create()")
super.create()
fullscreenQuad = Mesh(
@@ -66,6 +68,8 @@ class VMGUI(val loaderInfo: EmulInstance, val viewportWidth: Int, val viewportHe
}
private fun init() {
println("[VMGUI] init()")
if (loaderInfo.display != null) {
val loadedClass = Class.forName(loaderInfo.display)
val loadedClassConstructor = loadedClass.getConstructor(String::class.java, vm::class.java)
@@ -108,7 +112,6 @@ class VMGUI(val loaderInfo: EmulInstance, val viewportWidth: Int, val viewportHe
Gdx.input.inputProcessor = vm.getIO()
vmRunner = VMRunnerFactory("./assets", vm, "js")
coroutineJob = Thread({
vmRunner.executeCommand(vm.roms[0]!!.readAll())