问题标签 [commodore]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
assembly - 6502 间接寻址问题
我在使用 6502 机器的以下代码时遇到了一些问题:
练习是存储从地址 2000 开始的数字 2、1 和 4,并说出 A、X 和 Y 的值是多少。
我正在用笔和纸“运行”我的代码,但由于以下原因我卡在了 C011:
LDA ($FE),Y
它在 A 中加载了存储在以这种方式计算的内存地址的值:
- 选择
$FE
值(最初是 00) - 添加 Y 的值(第一次迭代时为 7)
- 我现在有07
- 用存储在 07 的值加载 A
这个对吗?我错过了什么吗?如果我不是,我在哪里使用存储在2000
2001
and中的值2002
?
提前致谢..
function - Multi-line functions in Commodore 64 BASIC
So, I'd like to write larger functions in Commodore 64 BASIC. So far, from what I'm seeing from other sources (such as various C64 wikis, as well as the user's manual for the C64 itself,) function definitions can only be one line long. That is to say, I can't seem to find an analogous construct in BASIC to brackets/whatever else other languages use to delineate code blocks.
Does anyone know how I'd write code blocks in BASIC that are more than one line?
Example of one-line function:
But I can't do something like:
Thank you for your time!
c64 - 为什么总是设置 53280 $D020 的高位(c64)
至少运行 VICE 2.4:
很明显,只使用了#0-#3位,并且用 获得了“正确”的值AND 15
,但是为什么6510将高位设置为1
?
basic - 是否可以在 Commodore BASIC 的 DATA 语句字符串中存储任何 PETSCII 字符?
我想将一些二进制数据作为DATA
语句存储在 Commodore 64 上的 BASIC 程序中。为了节省空间,我更喜欢存储为字符串,而不是数字序列。
是否可以在语句中存储任何字符,从CHR$(0)
through ,或者某些字符不可能以这种方式表示?不能在语句中表示的字符的完整列表(如果有的话)是什么?CHR$(255)
DATA
DATA
我特别想知道CHR$(0)
双引号("
)、换行符和回车符。如果这些可以表示,如何表示?
linux - Gentoo + VICE(commodore 64 模拟器)
嗯,这是尴尬。我已经在 Gentoo(Commodore 64 模拟器)上安装了 VICE,但...无法启动它。我已经查看了 distfiles,我应该将“x64”作为启动命令(还有一堆其他程序),但没有这样的东西。
这是我拥有的 USE 标志:
有什么建议吗?
basic - Ex Commodore 64 程序员想重新开始编程——有什么建议吗?
当我还是个孩子的时候,我用 BASIC 编写了数百个程序,但随着年龄的增长,我摆脱了它(当我发现女孩时)。现在我想重新开始,我不想让我以前的知识和经验浪费掉——有没有一种至少有点相似的现代语言?每次我尝试搜索时,我都会被推向 Visual BASIC,但我宁愿学习一种使用更广泛的现代语言。有什么建议么?先感谢您!
string - DASM 汇编器中的 ASCII 到 C64 屏幕代码
我正在通过 C64 仿真器学习 6502 micro 的组装。当前正在尝试将字符串输出到屏幕。这是我的代码:
因为我的编辑器(win 10 上的记事本++)使用类似 ascii 的字符代码,所以"HELLO"
inmessage
是位 48 45 4C 4C 4F。这会在屏幕的左上角给出以下输出:
通过查看此处的准将屏幕代码表,我猜这是正确的。
如果我将第 6 行更改为,lda hexmsg,x
那么我得到的正是我所追求的,单词HELLO
.
我对 DASM 汇编器还不是很熟悉,并且很难找到它的完整文档(如果存在的话)。我发现的大多数教程只有你声明message .byte "HELLO"
或类似的东西,它只是工作,因为他们使用的汇编程序自动将类似 ascii 的文本字符串自动转换为准将字符串,但 DASM 似乎没有这样做。
有谁知道我可以让 DASM 做到这一点的方法,或者推荐另一种方法来简单地将字符串输入到汇编程序中,而不是手动将我的字符串输入为一堆十六进制数据?
c64 - 如何在光栅线中有 9 个精灵
在真正的 Commodore 64 上(不是在模拟器上),一个光栅线上是否可以有超过 8 个精灵?精灵不需要不同。
pdf - 如何使用现有的 PDF 作为容器?
我有一个为旧的 8 位计算机编写的游戏的 PDF(从 Word 创建),我想将该游戏的代码(二进制,小于 32k)嵌入到该 PDF 中。这样,我的模拟器就可以通过读取PDF来加载程序,两者可以存储在一个文件中共享。
你可以称之为隐写术的一种形式。
我知道 PDF 具有树结构并使用 ASCII 来定义其组件;有没有办法添加不会给 PDF 阅读器带来问题的惰性“孤立”元素?我认为这将是最简单的方法。但我不知道该怎么做。
assembly - 准将基本 4 套路
我在 cbm 编程工作室观看了一段视频。该演示适用于使用 C64 仿真器的 hello world。它调用$AB1E。C64 的内存映射表示这个输出字符串:输出字符串,由 accu/Y reg 指示,直到找到 0 字节或引号。
我为 commodore 8032 寻找了这样的例程。我没有看到它,但内存映射可能不准确。有谁知道basic4 / cbm 8032是否有这样的例程?我知道有一个打印字符的例程,我希望有一个打印字符串的例程。