UniOS 首个包含 第三方程序接口 的概念操作系统
scratch吧
全部回复
仅看楼主
level 11
whdi😳
楼主
标签: 直播,快速编程,操作系统
2016年02月06日 11点02分
1
level 11
whdi😳
楼主
系统开发我来凑热闹了
全程流程图使用画图软件
2016年02月06日 12点02分
2
level 11
whdi😳
楼主
开发系统主要结构:
系统核心就是一些开关机,桌面的实现
内置程序思路也很简单,因为内容是固定的。
自带函数是一堆对只要调用就行的系统初始化或懒人程序,具体到时候再说
但主要难度是第三方程序,因为要提供接口给其他人编程使用。
2016年02月06日 12点02分
3
meijunyi是我
这叫API
2016年02月06日 12点02分
whdi😳
@meijunyi是我
听懂就好
反正又不是什么正式的东东
2016年02月06日 12点02分
小magic♋
CORE
i3?i5?i7?
2016年02月07日 05点02分
whdi😳
回复
我是钻石剑
:Intel COREi233
2016年02月07日 07点02分
level 11
whdi😳
楼主
先从第三方程序开始吧,因为这是重点
2016年02月06日 12点02分
4
level 11
whdi😳
楼主
额我该怎么解释。。
一个程序限制在一个角色中,
由一个接口调用来启动并显示该程序内容,另一个接口关闭(红色的)
如何调用?用克隆
前提是第三方程序块保证克隆一次就完全开启。
也就是说带一个值给克隆体以后,那个克隆体会明白开始程序并自我克隆成其他程序的零部件,然后运行。可能有点绕,不过不要紧,这是以后的事情了。
克隆程序的条件是知道克隆的名字,
所以我们需要进行一次广播(
检测程序是否安装)让所有在文件里所有
没有安装的程序把自己的名字报上来(加入到软件列表,也就是
软件安装接口)。
2016年02月06日 12点02分
6
whdi😳
这一楼的内容已完成
2016年02月08日 07点02分
level 11
whdi😳
楼主
拿一个叫 测试1 的小程序说吧
收到广播以后,确认自己的名字。
然后(这个函数其实调用就行,原理下图)
2016年02月06日 12点02分
7
level 11
whdi😳
楼主
这时程序安装完成了。
接下来是程序开启接口,简单来说就是图标创建就行了。
在它被系统克隆的时候,会附带一个值
(这里参数错了)
那就是UniSoftInitValue!!!
这是一个参数,它会展示被克隆时展示的功能
比如这里就是
那个函数属于UniOS公用函数的一部分,不用管它。
2016年02月06日 12点02分
8
level 11
☞ddeep☜
dd
2016年02月07日 04点02分
9
level 11
whdi😳
楼主
举个例子,这是其中的一个游戏的主界面
开始接口在这里,从角色Start开始,
它将成为背景,随后创建
标题 和 开始按钮
2016年02月07日 07点02分
10
level 11
whdi😳
楼主
开始按钮 和 标题的脚本放在下面
使用创建角色时,会自动匹配克隆然后运行角色ID匹配的脚本
2016年02月07日 07点02分
11
☞ddeep☜
楼主,我说你到底要讲什么?好高深听不懂啊
2016年02月07日 07点02分
whdi😳
@☞ddeep☜
就是这样,我要做一个系统,让它允许包含其他人的软件
2016年02月07日 07点02分
whdi😳
@☞ddeep☜
因此我要给安装在系统的软件一个规矩,它们必须是以克隆体的格式写的
2016年02月07日 07点02分
whdi😳
@☞ddeep☜
这样只要克隆被系统运行了以后,它会自己克隆自己所需要的零部件
2016年02月07日 07点02分
level 11
whdi😳
楼主
接下来的按钮需要一个全局变量来控制整个游戏。
但是在UniOS中,不推荐第三方程序创建全局变量,
因为变量可能和其他程序冲突,而且将很难进行管理
今天的进度就是解决这个问题。
2016年02月07日 07点02分
12
level 11
☞ddeep☜
我竟然看不懂楼主在说什么!
看来,是在下输了
2016年02月07日 07点02分
13
水瓶座ZzXxYy
你没学过全局变量
2016年02月29日 23点02分
level 13
风泯
高深
2016年02月07日 07点02分
14
level 11
whdi😳
楼主
自带函数更新
在游戏过程中允许从模拟内存(一段链表)中添加全局变量,第三方程序中共享这个变量。
第一个函数是修改,包含两个参数:变量名和设定值
如果这个变量不存在,会在模拟内存中创建它
如果这个变量存在,会在模拟内存中寻找位置然后替换这个值。
第二个函数是获取全局函数的值,包含一个参数: 变量名
返回的值在UniGlobVarValueA里
如果这个变量不存在,UniGlobVarValue=“未找到此全局变量”
如果这个变量存在,则返回它的值
2016年02月07日 13点02分
15
level 11
whdi😳
楼主
制作一个模板以后,就可以直接复制黏贴,改一改图标
UniOS可以自己识别所有角色,然后在主界面显示
2016年02月08日 07点02分
16
1
2
3
尾页