前提是你要运行MiSTer-CRT-Wallpapers脚本。
1. 背景
显示器:JVC TM-H150CG(15kHz CRT 监视器,支持 NTSC/PAL,RGBS 输入)
输出方式:MiSTer I/O 板 VGA → JVC咸鱼定制IO板
需求:
默认的
video_mode
会显示成 1280×720,而不是我想要的 384×224。菜单/壁纸不居中,左边留有黑边。
希望得到类似街机板的 384×224@60Hz(CPS1/CPS2 常见分辨率)。
2. 初始尝试
根据 MiSTer 文档,video_mode
的格式是:
video_mode=hact,hfp,hs,hbp,vact,vfp,vs,vbp,fpix
hact / vact:有效显示区域(像素/行)
hfp / hbp / vfp / vbp:前沿消隐、后沿消隐
hs / vs:同步脉冲宽度
fpix:像素时钟频率,单位 KHz
我一开始用标准的 BT.601 定时(13.5 MHz 像素时钟),写成类似:
video_mode=720,16,62,60,240,4,3,15,13500
结果虽然能出图,但分辨率依旧是 640×240,并且菜单不居中,画面偏移奇怪,并不是 384×224。
3. 正确的突破口
后来参考了街机的时序,尝试降低像素时钟。
当我使用以下参数时,终于得到了 真实的 384×224 输出:
video_mode=384,31,25,71,224,12,3,23,8040
像素时钟 8.04 MHz
行总长度 = 384+31+25+71 = 511
行频 = 8040 kHz ÷ 511 ≈ 15.734 kHz ✅
帧总高度 = 224+12+3+23 = 262
垂直刷新率 = 15.734 kHz ÷ 262 ≈ 60 Hz ✅
4. 居中问题与解决
刚开始画面还是偏右,左边有黑边。
原因是 前沿/后沿消隐 (hfp/hbp, vfp/vbp) 的比例没调好。
调整方法:
水平居中:改变 hfp/hbp,保持总和不变。
例如:
偏右 → 增加 hfp,减少 hbp
偏左 → 增加 hbp,减少 hfp
垂直居中:改变 vfp/vbp,保持总和不变。
偏下 → 增加 vbp,减少 vfp
偏上 → 增加 vfp,减少 vbp
我的微调结果
基础:
video_mode=384,31,25,71,224,12,3,23,8040
偏右 → 向左移:
video_mode=384,23,25,79,224,12,3,23,8040
偏下 → 向上移:
video_mode=384,31,25,71,224,14,3,21,8040
最终我用的参数
[menu] vga_scaler=1 fb_terminal=1 video_mode=384,38,25,64,224,11,3,24,8040
以上这段添加在TF卡根目录MiSTer.ini文件的末尾,代表这个参数只在菜单界面下生效。
5. 总结
关键点:要得到 384×224,必须降低像素时钟到 8.04 MHz,而不是沿用 13.5 MHz。
微调秘诀:保持水平总长 511,垂直总高 262 不变,只改 hfp/hbp、vfp/vbp 进行平移。
适用性:这种方法不仅适用于 JVC TM-H150CG,也适合大多数 15kHz CRT(街机显示器、PVM/BVM 等)。
最终我在 MiSTer 上得到了标准街机分辨率的输出,壁纸和菜单都完美贴合,效果非常棒。
📌 如果你也在折腾 MiSTer CRT 输出,可以直接用我的参数起步,然后再根据自己显示器的偏移情况,微调 porch 数值就行。