Skip to content

Latest commit

 

History

History
57 lines (52 loc) · 1.92 KB

language.md

File metadata and controls

57 lines (52 loc) · 1.92 KB

模拟器增加了一些新语法,用以补充模拟器所欠缺的真实GVBASIC环境的特性。

语言特性

  • 标识符和关键字不区分大小写

新语法

  • 延时语句

     SLEEP ticks
    

    延时若干个tick,具体请查看配置文件config.ini

  • 绘制语句

     PAINT addr, x,y,w,h [,mode]
    

    绘制图片。和Lava的WriteBlock类似
    addr    图片数据地址
    x y    绘制图片左上角坐标, 可以是负数
    w h    绘制图片尺寸
    mode    0=copy  1=or  2=not  3=and  4=xor

  • 加载数据

    LOAD addr, size, ...

    addr    加载数据的地址
    size    数据字节数, 必须是常数
    ...    数据字节

  • 函数

    • POINT(x, y)
      判断像素点是否为黑
      x y    坐标, 可以是负数
    • CHECKKEY(wqxkey)
      判断键是否按下
      wqxkey    WQX键值
  • 文件操作

    • 语句
      • OPEN A$ FOR BINARY AS #n
        打开二进制文件
        和RANDOM模式类似, 区别是BINARY不会新建文件, 并且不能用LEN
      • FPUTC fnum, m_c$
        写入c$的第一字节, 用于BINARY/RANDOM模式
      • FREAD fnum, addr, size
        从文件读取size字节到地址addr, 用于BINARY/RANDOM模式
      • FWRITE fnum, addr, size
        写入地址addr开始的size字节到文件, 用于BINARY/RANDOM模式
      • FSEEK fnum, pt
        设置文件指针为pt的值, 用于BINARY/RANDOM模式
    • 函数
      • FOPEN(fnum)
        判断文件是否打开
      • FGETC(fnum)
        从文件读取一字节, 用于BINARY/RANDOM模式
      • FTELL(fnum)
        获取文件指针,用于BINARY/RANDOM模式