cnCalc计算器论坛

 找回密码
 注册
搜索
楼主: CalcLoverHK

[fx-9860/9750] C.Basic中文资讯站

[复制链接]
 楼主| 发表于 2023-12-10 16:25:39 | 显示全部楼层
本帖最后由 CalcLoverHK 于 2023-12-11 19:13 编辑

C.Basic FX版本(2.47 beta 1)和CG版本(1.47 beta 1)已经发布。

所有版本
  • 加入了专属指令目录(Catalog)。
      - FX版按键为[SHIFT][5],CG版为[SHIFT][4]。
      - [F5]为指令输入记录。
  • Locate指令的style参数现支持flag值输入。
  1. Locate <x>,<y>,<value/"string">,(<style flag>)
复制代码
      - 0:N(正常显示)
      - 1:R(反转显示)
      - 2:O(正常显示并重叠)
      - 3:V(反转显示并重叠)
      - 以flag值为输入时要加上括号(),否则将导致错误。
      - flag值支持数学表达式输入。
      (例1)Locate 1,1,##"测试1",(1) 等价于 Locate 1,1,##"测试",R
      (例2)Locate 1,2,##"测试2",(_reverse+_overlap*2)
  • FKeyMenu指令的style参数现支持flag值输入。
  1. FKeyMenu(<start>[~<end>],"string",(<style flag>),...)
复制代码
      - 0:C(清除)
      - 1:N(默认白色)
      - 2:R(黑色、右下角缺口)
      - 3:I(黑色、无缺角)
      - 4:S(FX版本:白色、无缺边,CG版本:黑色、白色轮廓)
      - 16:U(上移1个像素点,仅CG版本)
      - 32:L(当字符串长度大于4时,左移1/2个像素点)
      - 64:M(套用网状设计)
      - 128:m(仅在轮廓上套用网状设计,仅FX版本)
      - 以flag值为输入时要加上括号(),否则将导致错误。
      - flag值支持数学表达式输入。
      (例)FKeyMenu(1,"12345",(1+16+32+64)) 等价于 FKeyMenu(1,"12345",NULM)
  • 文件管理器现支持小字体(Minifont)显示。
  • 文件管理器和变量编辑器现随EditFontSize设置而改变其字体大小。
  • 更改了以下程序错误的文本显示:
      - "For without Next" -> "Missing Next"
      - "Next without For" -> "Missing For"
      - "While w/o W.End" -> "Missing WhileEnd"
      - "W.End w/o While" -> "Missing While"
      - "Do w/o LpWhile" -> "Missing LpWhile"
      - "LpWhile w/o Do" -> "Missing Do"
      - "Division By Zero" -> "Zero Division"
      - "Not enough Memory" -> "Not Enough Memory"
      - "Illegal Ary size" -> "Invalid Ary Size"
      - "No Prog found" -> "Prog Not Found"
      - "Too many SubProg" -> "Too Many SubProg"
      - "If without IfEnd" -> "Missing IfEnd"
      - "Then without If" -> "Missing If"
      - "Case w/o Switch", "Default w/o Swtch", "S.End w/o Switch" -> "Missing Switch"
      - "Switch w/o S.End" -> "Missing SwitchEnd"
      - "Can't find file" -> "File Not Found"
      - "Already Opened" -> "Com Opened"
      - "Com Not Opened" -> "Com Closed"
      - "Type Mismatched" -> "Invalid Type"
      - "Undefined Var." -> "Var Undefined"
      - "Undefined Func." -> "Func Undefined"
      - "Exceed Var. limit" -> "VarLimit Exceeded"
      - "Duplicated Def." -> "Duplicate Def"
      - "Not met Accuracy" -> "Time Out"
      - "Try w/o Except" -> "Missing Except"
      - "Except w/o Try", "TryEnd w/o Try" -> "Missing Try"
  • 为非9860GII机型禁用了Use Hidn RAM(使用隐藏RAM)设置。
  • 现可按下[AC]键中止执行中的Beep指令。
  • 修复了调用不支持的指令(0x7Fxx)会使程序卡死的问题。

仅限FX版本
  • 变量编辑器现支持小字体(Minifont)显示。
  • ?指令现支持小字体(Minifont)输入显示。
      - 调用格式如下:
  1. ?(@<x>,<y>,...)
复制代码
      - 位置参数以Graph坐标为参考系。

仅限CG版本
  • 修复了RGB(,HSV(和HSL(指令在阵列时会导致错误的问题。(例:{RGB(255,0,255),123,456})
  • 修复了Load(指令不能读取超过4096字节部分的问题。

CBASIC247beta01.zip

915.26 KB, 下载次数: 63

FX版本

CBASICCG147beta01.zip

1.2 MB, 下载次数: 64

CG版本

 楼主| 发表于 2023-12-11 18:29:55 | 显示全部楼层
本帖最后由 CalcLoverHK 于 2023-12-11 19:13 编辑

C.Basic FX版本(2.47 beta 2)和CG版本(1.47 beta 2)已经发布。
点此查看 2.47/1.47 beta 1 更新内容

所有版本
  • 修复了在Catalog打开指令输入记录后按[EXIT]会直接返回到程序编辑器的问题。
  • 修复了在Main Mem的程序中使用Load(命令时,无法访问文件夹中的文件的问题。

仅限FX版本
  • 修复了文件管理器中光标位置不正确的问题。

CBASICCG147beta02.zip

1.2 MB, 下载次数: 148

CG版本

CBASIC247beta02.zip

1.18 MB, 下载次数: 153

FX版本

 楼主| 发表于 2024-8-4 15:00:03 | 显示全部楼层
本帖最后由 CalcLoverHK 于 2024-8-28 01:16 编辑

特別公告
本人已在今年一月份加入C.Basic开发团队。原作者因个人事务繁忙暂未能进行开发,此次更新由本人亲自发布。如发现有任何问题和漏洞,请在此帖或漏洞追踪器回馈。

此外,C.Basic的未来发展将分为两阶段。第一阶段会移植FX和CG版本到fxSDK和GCC(也就是此次更新的重点),而第二阶段将使用gint函数完全替代原有MonochromeLib指令,并伴随底层代码大改。想了解移植原因和更多细节,请参考此问题帖(英文版):https://git.planet-casio.com/CalcLoverHK/C.Basic/issues/16

感谢你的关注和支持!
---------------------------------------------------
C.Basic FX版本2.50 build 1已经发布,点击此处查阅该版本的源代码。

新功能
  • 在错误弹窗左下角加入错误代码。
  • 在版本信息弹窗加入Git提交(commit)标记。

更改
  • 编译工具更改:
       - 以fxSDK替代Casio官方SDK
       - 以GCC 14.1替代瑞萨SHC编译器
       - 相比上一版本有最高18%性能提升
       - 插件大小缩减约50 kB
  • 半型片假名字符的存储格式现从Shift-JIS更改成FONTCHARACTER。
  • C.Basic指令目录现始终处于字母锁定(Alpha-lock)输入模式。
  • `MOD(`现不会对输入的数值四捨五入。
  • `LCM(` 现接受负值输入,而不是提示`Argument ERROR`(参数错误)。
  • `RanInt#(`的独特数值范围现从2^15扩展到2^31。
  • 错误信息更改:
        - `Not Loop ERROR` -> `Not in Loop`
        - `No Matrix Array` -> `Undefined Matrix`
        - `Invalid Ary Size` -> `Invalid Size`
        - `Var Undefined` -> `Undefined Alias`
        - `VarLimit Exceeded` -> `Var Memory Full`
        - `Duplicated Def` -> `Assign ERROR`
        - `Address Align ERR` -> `Address ERROR`
  • 优化阶乘, `nPr`(组合), `nCr`(排列), `MOD(`(模除)和`GCD(`(最大公因数)的算法。
  • 优化字符显示的算法。
  • 禁用部分未使用的ASCII和#FFXX字符信息。
  • 禁用列表/矩阵字符的自定义字型。
  • 将列表/矩阵字符从字符选择器的F6(Kana)菜单移动到F1(MATH)菜单。
  • 预设的扩展FONTCHARACTER字符现为[?]。
  • #FFXX字符重写:
        - 半型片假名字符现完全依赖外部字体点阵图显示。
        - 移除内建的半型片假名字符集。(此字符集的全部字符与现有字符并列显示不和谐)
        - 合并片假名和外字(Gaiji)的标准/小字体点阵图。
  • 现只允许在文件管理器和因内存不足紧急中止的情况下按[MENU]返回主菜单(Main Menu)。

修复
  • 因`CB_Str.c`导致C.Basic编译失败。
  • 在C.Basic指令目录按特定按钮会意外退出页面。
  • 列表/矩阵字符的文本转换不正确。
  • C.Basic指令目录显示部分长指令的时候其文本非完整。
  • 复数模式下的隐除会提示`Zero division`(除以0错误)。
  • `nCr`和`nPr`的r数值足够高的时候会导致计算结果为0。
  • `GCD(`在其任一参数为0时会导致卡死。
  • `Try`结构缺失`TryEnd`会导致卡死。
  • 隐藏内存的扩展字符地址不正确。
  • 未保存的程序在主菜单打开其他软件后会遗失。
  • 文本转换的文本信息会覆写弹窗边界。
  • 因不正确的`MCS_ReadFileList()`函数原型导致SH3机型试图载入Main Mem时弹出系统错误。

CBASIC.g1a

454.9 KB, 下载次数: 7

发表于 2024-8-7 02:22:24 | 显示全部楼层
我传输到9860GII里面了,可是main menu里面没有Cbasic的图标,怎么处理?
 楼主| 发表于 2024-8-7 03:17:48 | 显示全部楼层
hinceleung 发表于 2024-8-7 02:22
我传输到9860GII里面了,可是main menu里面没有Cbasic的图标,怎么处理?

你确定你的计算器是9860而不是9750?
发表于 2024-8-7 11:33:14 | 显示全部楼层
CalcLoverHK 发表于 2024-8-7 03:17
你确定你的计算器是9860而不是9750?

确定是9860啊
 楼主| 发表于 2024-8-31 22:43:58 | 显示全部楼层
本帖最后由 CalcLoverHK 于 2024-8-31 22:45 编辑

C.Basic FX版本2.50 build 2已经发布,点击此处查阅该版本的源代码。

更改
  • 版本信息更改:
       - 版权声明改用小字体显示
       - 在鸣谢列表的开发者栏里新增CalcLoverHK
       - 标明软件许可证
  • 轻微重构syscall代码。
  • 切换Hidden RAM设置不再提示用户进行初始化。

修复
  • `_DispVram`无法正确更新VRAM。
  • Nrm模式下的0数值显示`0.E0`。
  • Sci模式下的0数值显示未定义。
  • 在SD和主内存之间切换时,可用空间显示不正确。
  • 初始化Hidden RAM两次后,在MCS模式下进行任何文件操作会显示`MCS memory full`(主内存已满)错误。

CBASIC.g1a

454.84 KB, 下载次数: 17

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|cnCalc计算器论坛

GMT+8, 2024-10-13 21:50 , Processed in 0.057594 second(s), 19 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表