资源简介
GVmaker1.0模拟器J2ME版的Netbeans工程文件
博文链接:https://eastsun.iteye.com/blog/226840

代码片段和文件信息
package eastsun.jgvm.module;
import eastsun.jgvm.module.io.*;
import eastsun.jgvm.module.event.Area;
import eastsun.jgvm.module.event.ScreenChangeListener;
import eastsun.jgvm.module.ram.Getable;
import eastsun.jgvm.module.ram.RuntimeRam;
import eastsun.jgvm.module.ram.Stack;
import eastsun.jgvm.module.ram.StringRam;
import java.io.UnsupportedEncodingException;
import java.util.Calendar;
import java.util.Date;
/**
* 完全支持GVmaker1.0的JGVM实现
* @version 1.0 2008/1/15
* @author Eastsun
*/
final class DefaultGVM extends JGVM {
private static final int FALSE = 0;
private static final int TRUE = -1;
private GvmConfig config;
private RamManager ramManager;
private RuntimeRam runtimeRam;
private StringRam stringRam;
private ScreenModel screen;
private Renderable render;
private TextModel text;
private KeyModel key;
private FileModel file;
private KeyModel.SysInfo keyInf;
private InputMethod input;
private LavApp app;
private Stack stack;
private int seed;
private boolean end;
private Calendar cal = Calendar.getInstance();
private Date date = new Date();
public DefaultGVM(GvmConfig cfg FileModel fileModel KeyModel keyModel) {
this.config = cfg;
runtimeRam = new RuntimeRam(cfg.runtimeRamSize());
stringRam = new StringRam(cfg.stringRamSize());
stack = new Stack(cfg.stackSize());
ramManager = new RamManager(runtimeRam stringRam stack);
text = new TextModel();
screen = ScreenModel.newScreenModel();
render = screen.getRender();
text.setScreenModel(screen);
if (screen.hasRelativeRam()) {
ramManager.install(screen.getGraphRam());
ramManager.install(screen.getBufferRam());
}
if (text.hasRelativeRam()) {
ramManager.install(text.getTextRam());
}
key = keyModel;
keyInf = key.getSysInfo();
file = fileModel;
}
/**
* 设置此GVM运行的lav程序文件并对JGVM做适当的初始化
* @param app GVmaker程序
* @throws java.lang.IllegalStateException 如果不支持此app的运行
*/
public void loadApp(LavApp app) throws IllegalStateException {
if (this.app != null) {
dispose();
}
this.app = app;
end = false;
}
/**
* 卸去目前执行的app并释放及清理相应资源
*/
public void dispose() {
if (this.app == null) {
return;
}
file.dispose();
render.clearBuffer();
render.refresh();
ramManager.clear();
text.setTextMode(0);
this.app = null;
this.end = true;
}
public boolean isEnd() {
return end;
}
public InputMethod setInputMethod(InputMethod im) {
InputMethod oldValue = input;
input = im;
return oldValue;
}
/**
* 运行下一个指令
* @throws java.lang.IllegalStateException 程序已经结束或不支持的操作
* @throws InterruptedException 运行期间当前线程被中断
*/
public void nextStep(
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 4122 2008-03-05 19:52 build.xm
文件 5851 2008-07-18 13:30 dist\doc\allclasses-fr
文件 5051 2008-07-18 13:30 dist\doc\allclasses-nofr
文件 32920 2008-07-18 13:30 dist\doc\constant-values.html
文件 5231 2008-07-18 13:30 dist\doc\deprecated-list.html
文件 9699 2008-07-18 13:30 dist\doc\eastsun\jgvm\module\class-use\FileModel.html
文件 9039 2008-07-18 13:30 dist\doc\eastsun\jgvm\module\class-use\GvmConfig.html
文件 10443 2008-07-18 13:30 dist\doc\eastsun\jgvm\module\class-use\InputMethod.html
文件 9507 2008-07-18 13:30 dist\doc\eastsun\jgvm\module\class-use\JGVM.html
文件 12114 2008-07-18 13:30 dist\doc\eastsun\jgvm\module\class-use\KeyModel.html
文件 10978 2008-07-18 13:30 dist\doc\eastsun\jgvm\module\class-use\KeyModel.SysInfo.html
文件 11869 2008-07-18 13:30 dist\doc\eastsun\jgvm\module\class-use\LavApp.html
文件 5920 2008-07-18 13:30 dist\doc\eastsun\jgvm\module\class-use\RamManager.html
文件 7737 2008-07-18 13:30 dist\doc\eastsun\jgvm\module\class-use\Renderable.html
文件 17086 2008-07-18 13:30 dist\doc\eastsun\jgvm\module\class-use\ScreenModel.html
文件 5910 2008-07-18 13:30 dist\doc\eastsun\jgvm\module\class-use\TextModel.html
文件 14241 2008-07-18 13:30 dist\doc\eastsun\jgvm\module\event\Area.html
文件 13491 2008-07-18 13:30 dist\doc\eastsun\jgvm\module\event\class-use\Area.html
文件 10280 2008-07-18 13:30 dist\doc\eastsun\jgvm\module\event\class-use\ScreenChangeListener.html
文件 1294 2008-07-18 13:30 dist\doc\eastsun\jgvm\module\event\package-fr
文件 6945 2008-07-18 13:30 dist\doc\eastsun\jgvm\module\event\package-summary.html
文件 6430 2008-07-18 13:30 dist\doc\eastsun\jgvm\module\event\package-tree.html
文件 9420 2008-07-18 13:30 dist\doc\eastsun\jgvm\module\event\package-use.html
文件 9107 2008-07-18 13:30 dist\doc\eastsun\jgvm\module\event\ScreenChangeListener.html
文件 21727 2008-07-18 13:30 dist\doc\eastsun\jgvm\module\FileModel.html
文件 12926 2008-07-18 13:30 dist\doc\eastsun\jgvm\module\GvmConfig.html
文件 13390 2008-07-18 13:30 dist\doc\eastsun\jgvm\module\InputMethod.html
文件 5951 2008-07-18 13:30 dist\doc\eastsun\jgvm\module\io\class-use\Crc16.html
文件 6061 2008-07-18 13:30 dist\doc\eastsun\jgvm\module\io\class-use\DefaultFileModel.html
文件 7892 2008-07-18 13:30 dist\doc\eastsun\jgvm\module\io\class-use\DefaultKeyModel.html
............此处省略202个文件信息
相关资源
- 东软实训
- VL53L0X 驱动源码
- 专业版 Visio 工具cn_visio_professional_20
- Visio2016 激活工具
- win10远程桌面开启工具
-
开机速度优化工具Startup Dela
yer3.0中 - 易语言取程序运行时间模块源码
- 易语言编译原理 易语言循环首尾配对
- delphi源码-检测是否运行了多个程序
- excelApi 和安装工具
- linux系统下的内存测试工具
- 跟踪,检测IRP的优秀工具IRPTrace
- DebugView、DriverMonitor、IRPTrace、WinObj、
- 第三方winToGo工具
- 易语言API定时关机源码
- 易语言小轩定时关机源码
- Delphi时钟助手源码,定时关机、提醒
- 安卓手机PC端一键重启工具
- delphi源码-实现软件注册机
- 原创:AnyExe2Swf flash exe文件还原、反
- 易语言mp3播放器3源码易语言mp3播放器
- 易语言QEHashV3.0源码
- 易语言打开记事本并写入内容源码
- 易语言完美模块化3.0源码易语言报表
- 易语言凡哥记事本V1源码易语言凡哥记
- 易语言屏幕画笔v3源码易语言屏幕画笔
- 易语言拖盘图标操作例程源码
- 易语言动态随机文本加解密源码
- 易语言自定义加解密文本源码
- 易语言字符串加解密源码
评论
共有 条评论