Assembly Vic 20使用汇编程序滚动

Assembly Vic 20使用汇编程序滚动,assembly,6502,Assembly,6502,我正在试着让Vic 20上的6502汇编程序运行。以下是使用CBM PRG Studio构建的扩展Vic(例如16k) 我了解维克在写游戏时一样多的是静态的,但我不能得到滚动工作 两个优秀的滚动示例是:- 或多向 我注意到它们看起来都是单色的(我可能错了)——这是线索吗 我进行了实验,在计时器/光栅IRQ下运行,将值放入$9001,类似于:- lda $9001 and #$f0 ora MY_SCROLL_AMOUNT sta $9001 因此,如果我的滚动量每帧增加0-7,那么我会得到

我正在试着让Vic 20上的6502汇编程序运行。以下是使用CBM PRG Studio构建的扩展Vic(例如16k)

我了解维克在写游戏时一样多的是静态的,但我不能得到滚动工作

两个优秀的滚动示例是:-

或多向

我注意到它们看起来都是单色的(我可能错了)——这是线索吗

我进行了实验,在计时器/光栅IRQ下运行,将值放入$9001,类似于:-

lda $9001
and #$f0
ora MY_SCROLL_AMOUNT
sta $9001
因此,如果我的滚动量每帧增加0-7,那么我会得到一种“类似”的滚动效果,但屏幕是“反弹”而不是滚动的(预计会调整垂直偏移$9001),但这与上面链接中的滚动器的工作方式不同

我读过关于将字符数据设置为1000美元,这样您可以获得512个字符进行编辑,如果我理解正确,可以显示512个字符的屏幕,每个字符(或平铺)构成位图的一部分,然后动态(在IRQ上使用双屏技术)将数据绘制到字符映射内存中,但是:-

  • 如何在字符/平铺单元中显示代码字符,例如531,其中包含字节值(0-ff)

  • 如果角色映射内存使用$1000到$1fff,这两个屏幕会去哪里

  • 问候,


    G

    A好的,在VC20上只能滚动两个像素。上/下移动屏幕,滚动一个字符后,将屏幕移回原始位置,并将屏幕内容上/下移动一行。这样你就得到了滚动效果。 当然,左/右也是如此

    您只能显示0-ff中的字符,没有字符531

    至于字符滚动,这是一种完全不同的技术,只对背景滚动效果有用,但不能用于级别数据滚动,因为这样会减慢速度


    最好去模拟器论坛看看。我怀疑stackoverflow是否是解决此类问题的好资源。:)

    你的问题可能过于宽泛。你最好的选择是在论坛上提问,并学习其他人的例子。快速搜索会出现滚动示例,如和。