yuxuanchiadm
                                                      
                                                                              注意
                                                  本mod最终解释权归cthuwork及原作者所有
                                                            转载请联系cthuwork并注明
免责声明:
    此MOD尚处于Alpha版,不保证其稳定性。对任何由此MOD造成或由于此MOD无法工作造成的损失,原作者和cthuwork不承担任何责任。

前言:
    此MOD能够实现在Minecraft中模拟一台虚拟的基于VCPU-32指令集的一台计算机,并可以通过操作其外设实现各种功能,目前外设有:300Bytes存储器、键盘、显示器、数值显示器、控制台文本屏幕显示器、红石控制器。此MOD程序和材质由yuxuanchiadm开发制作,欢迎创建此MOD的外设扩展来丰富游戏内容 :D。对于没有相应的API文档和集中的API实现表示抱歉。为了修复BUG其版本会更新得很快,如果你发现任何BUG,请私信给我,我会尽快修复,thx。其原MOD开发进度贴:http://www.mcbbs.net/thread-56284-1-1.html

MOD介绍:
    此MOD最基础的设备是 “基于VCPU-32的电脑” ,此方块是整个MOD的核心内容,包含虚拟机引擎、CPU时钟和内存。计算机方块的前端有个红色按钮,右键可开启计算机,再右键关闭。右键可以打开GUI界面,此界面可插入 “CMOS芯片”,CMOS芯片储存最基础的BIOS程序,程序将从这里开始运行。“电擦写BIOS设备” 是用于编写BIOS程序物品。右键打开GUI,右边的物品槽里放置CMOS芯片,最上方的多行文本控件编写程序。右边分别有编译、写入、反编译三种命令。“数据接口” 用于连接 “数据线” 、“计算机” 和 外设。每个外设都有自己独特的端口ID,可用 “外设端口分配器”右键对应的外设来改变其端口。如果有多个外设端口重复,则后来的外设会被屏蔽。
APC基础教程

下载地址:
(注:Documents 包括 虚拟机、外设帮助文档)


1.1.4-ALPHA

MOD AssemblyProgramCraft-1.1.4-ALPHA.jar (838.29 KB, 下载次数: 1331)
Documents AssemblyProgramCraft Documents-1.1.4-ALPHA.zip (10.99 KB, 下载次数: 409)

历史版本:

计划特性(已挖未填的大坑):

当前计划:
移植到1.8
1.change 大幅更改虚拟机构架,为C编译器做准备(完成,将在下一版本发布)
2.change 完全更改O寄存器的指令错误消息格式(完成,将在下一版本发布)
3.change 重写虚拟机线程管理模型,解决线程锁死问题(完成,将在下一版本发布)
4.add 键盘外设的游戏内虚拟键盘,解决Alt+F4、Win、Ctrl+Alt+Del、Ctrl+Space、Alt+Tab、Alt+Shift、Ctrl+Shift等组合键的各种问题
5.add 线程同步指令集,预计会有CLCK(createLock),DLCK(deleteLock),GLCK(getLock),RLCK(releaseLock),WLCK(waitLock),NLCK(notifyLock),指令集将不兼容老版本,所有老版本程序需重新用源码编译(完成,将在下一版本发布)
6.add 虚拟机调试器接口(将类似于JDI,接口完成,部分实现完成,只剩虚拟机在启用事件后生成事件)
7.add 游戏内帮助文档(以后Documents将不复存在)
8.add 和MOD分离的API
9.add 物品“VCPU-32调试器”(支持单步运行、寄存器查看、等功能,方便编写程序,尚无任何功能)
10.add 编译器调试信息(供反编译器使用,包含字节码所在行和标签名称信息)(已完成,但反编译器未使用其数据)
11.add 新伪指令GSO(getStaticOffset),用于获取当前程序的静态储存区偏移量
12.fix 当在执行任何函数时保存重进游戏导致虚拟机意外终止(载入StackFrame顺序反了的结果)(已修复)
13.fix 在上一指令执行完成,并准备执行创建线程指令前暂停游戏(导致虚拟机暂停),可能导致虚拟机线程死锁(随手乱加锁及没想好就开始写导致233)
14.fix 虚拟机内存少1(233)(已修复)
15.fix 反编译器反编译标签时无法正确识别错误的标签位置(已修复)
16.fix 虚拟机线程在调用CRT创建后,STT开始前,调用EXT,线程未正确终止删除(已修复)
17.fix 虚拟机线程终止时另一线程对此线程调用STT可能导致线程重新开始和不正确状态(已修复)
18.fix 虚拟机暂停时如果一线程正在创建新线程,新创建的线程在创建后暂停时可能不会正确的通知主线程,导致线程死锁(已修复)
19.fix 编译器未正确链接静态数据(已修复)
20.突然想到的东西:
①加入高压电护盾方块,作为外设,当连接到某系统时,并且开启时(状态2:只要尝试右键操作任何方块也造成伤害,电能消耗II)(状态3:碰到就造成伤害,电能消耗III),所有对此系统的任何方块的破坏行为、开关计算机行为对玩家造成伤害。(加入电源系统后需要额外用电)(叫你拆我电脑→ →)
②加入黑曜石(基岩?)护盾方块,作为外设,当连接到某系统时,并且开启时,所有此系统的方块均无法破坏,甚至包括被爆炸、小黑、核弹→ →(加入电源系统后需要额外用电)(为了平衡,可以碰计算机开关)
@虚拟机脆弱的线程模型


长期计划:
1.add 部分实现ANSI C标准的编译器(缓慢填坑中)
2.add 合成表
3.add 电源系统

计划特性最后更新日期:2015-5-11(可看出此项目是否弃坑啥的→ →)

版本记录:
    Alpha 1.0.0

    Alpha 1.0.1

    Alpha 1.0.2

    Alpha 1.0.3

    Alpha 1.0.4

    1.1.0-ALPHA

    1.1.1-ALPHA

    1.1.2-ALPHA

    1.1.3-ALPHA

    1.1.4-ALPHA



BUG修复及反馈:
    bugzilla: http://build.cthuwork.com:8081/bugzilla/enter_bug.cgi?product=AssemblyProgramCraft


无关紧要的东西:








rom718
沙发是我的

九命猫
不明觉厉0.0

bali16
看见编程这两个字我就滚进来了

临时注册用
不明觉厉= =!
是不是有点类似以前的电脑MOD?

FVCKer
好像特別厲害!

紫枫
rom718 发表于 2013-11-16 19:14
沙发是我的了 0w0

rom还我沙发

ALTAR
虽然不太明白可是觉得好厉害啊,this J*

1163698402
虽然不懂但是看起来好高端!

熊猫丶晓能
cthu小组好厉害0A0 好棒~

A-Kreedz
没介绍吗?来支持一下

IceFreeze
以后MC要吃遍天下CPU了→o→、、

1106970826
谢谢楼主分享

liliangxu
码农爬过……膜拜……

最愛HIM
大觸啊!!!

我給工作組給跪了

第一页 上一页 下一页 最后一页