feat(tools): 仿真调试台适配新版显存,并修好 xsim 里跑 python 的环境问题
tb_saolei.v / tb_saolei_play.v: - dump 从 1200 字节(1 字节/格)改成 2400 字节(每格 2 字节) - 变量地址按新 ELF 更新(g_state 0x7AC、mine_bm 0x86C、g_ncells 0x8B4 ...) - 已揭开格数直接读 opened_cnt(0x7B4),通关目标改成 g_ncells - g_mines fb2png.py: - 支持每格 2 字节(byte0 字形[5:0] / byte1 颜色[2:0]) - 字库不再手工抄表,改成直接解析 cpu21_vga.v 的 font_row(),RTL 加字模会自动跟随 - 字形 16..41 显示成 A-Z play_saolei.tcl: - 用绝对路径找系统 Python:xsim 的环境里 py 会选中 Vivado 自带的 python3.8, 报 SRE module mismatch - 清掉 PYTHONHOME/PYTHONPATH,否则系统 python 也会去 Vivado 的 lib 找模块 - render/save_shot 补 global python 实测:hard 模式 30x16 棋盘在终端正常显示,点击展开的区域横跨屏幕第 13~22 行 (含中线以下的 8 行)-> 证实 FB_WORDS 那个"只能写前 15 行"的 bug 已修好
This commit is contained in:
@@ -189,8 +189,8 @@ module tb_saolei_play;
|
||||
$fwrite(df, "CURSOR %0d %0d\n",
|
||||
dut.u_vga.cursor_i[12:8], dut.u_vga.cursor_i[4:0]);
|
||||
$fwrite(df, "CTRL 0x%02X\n", dut.u_vga.ctrl_i[7:0]);
|
||||
$fwrite(df, "FB 1200\n");
|
||||
for (w2 = 0; w2 < 300; w2 = w2 + 1)
|
||||
$fwrite(df, "FB 2400\n");
|
||||
for (w2 = 0; w2 < 600; w2 = w2 + 1)
|
||||
for (b2 = 0; b2 < 4; b2 = b2 + 1)
|
||||
$fwrite(df, "%02X\n", dut.fb[w2][b2*8 +: 8]);
|
||||
$fclose(df);
|
||||
|
||||
Reference in New Issue
Block a user