zoukankan      html  css  js  c++  java
  • 【原创】NES第三波:解释一下为什么有了牛叉的VSCode还留着第一波教程6502Sim--调试的办法

      我早前在163写过好多教程,但没有这次这么有条理,有进阶性的。

      我早前的确是用6502Sim写程序的。VS Code是2019年年底才发现的。我记得2019年在曾哥的群里听他跟别人聊插件的事。所以插件也是最新做的。当然大家也看见了别的6502插件,但我不推荐。说不定你喜欢CC65,也可以用CC65插件,不过后面的配套办法就要你自己解决了。我想也不难。

      偏了偏了。

      说说什么要留下6502Sim。初学者对指令的领悟很有限。那么我们需要一个直观的Debug,最好的就是这个6502Sim。我们可以拿一部分代码在这上面调试。这比在NES模拟器上面调试,更能看出指令对CPU的作用,对内存的变化。

      调试的办法

      一、代码:

      先要指定一个起始地址,一般.org $8000或者$C000

      我们还要一个.START start。这个start就是代码开始的地址。

    例如

    .START start

    .ORG $C000
    start

      再贴你要调试的代码,

    注意代码不能顶格。插个空格或者Tab。标签必须顶格。建议标签不带冒号,(6502Sim上的冒号可有可无)为了VSCode插件兼容。

      有变量的话,也要指定地址呀,分配变量地址那段也要帖,就帖在.START上面就可以。

      不过6502Sim不支持等号。你要用.ORG和.RS配合。前者指定地址,后者指定字节长度。

    例子:

     其中dbXX是一个变量,dwAddr也可以认为是一个(地址)变量

    这个例子没什么实际意义,只是为了做例子。

      二、编译

      也可以不保存,为了调试而尔。改好放回源代码中。

      点击(或菜单“仿真-编译”。或 F7)如果没出错,就不会出窗口。如果有出错,则会跳出错窗口。然后出现一个红色三角指明出错所在行。

      下一步。

      点击(或菜单“仿真-进入/退出调试模式”。或F6)则显示所有调试窗口,或通过菜单“查看”,可以点开更多窗口。

      然后就可以用单步调试。图中这几个都调试工具,不再多说。

      我们最需要的是CPU窗口

       还有内存地址窗口

       代码窗口还会用黄色箭头指向当前指令。帮助我们理解指令的工作。

  • 相关阅读:
    介绍几个创建GUID的函数
    BOM创建修改(CS01,CS02)保存时增强BADI[BOM_UPDATE]
    REUSE_ALV_GRID_DISPLAY_LVC-双击事件’&IC1′
    REUSE_ALV_GRID_DISPLAY_LVC-行选择功能
    css实现超出部分用...代替
    调用高德地图
    原生验证码 不区分大小写
    原生验证码
    手写验证表单
    获取对象中值的两种方法
  • 原文地址:https://www.cnblogs.com/fogota/p/12249690.html
Copyright © 2011-2022 走看看