问题标签 [nintendo]

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.

0 投票
1 回答
179 浏览

c - 如何优化 PID 溢出?

我正在我的 Nintendo 3DS 上进行 PID 溢出,我认为可能存在某种更快的方法。Nintendo 3DS 有一个漏洞(一个愚蠢的漏洞),您可以将 PID 溢出到等于 0 以获得“adm 权限”。这些漏洞通常用于降级固件并安装自定义固件。3dbrew.org/wiki/Main_Page 您可以找到有关此的更多信息。限制为 0xFFFFFFFF,但需要很长时间才能获取此地址(因此下一个将是 PID = 0)。

我的代码:

0 投票
3 回答
688 浏览

lua - 如何在 Lua 中从 FCEUX 获取 PPU 内存?

我不确定这是否是合适的社区,但我想我会试一试。

FCEUX是 NES 的一个了不起的模拟器,它具有丰富的调试工具功能。它还为用户提供了运行 Lua 脚本的能力,这些脚本可以访问各种仿真器功能。但是,我似乎无法弄清楚如何访问 NES 的PPU 内存。它提供对CPU 内存和 ROM 数据的直接访问,但似乎无法直接访问 PPU 内存。由于 NES 使用内存映射 I/O,理论上可以从特殊的 CPU 内存地址获取数据,但这似乎很麻烦,而且可能会干扰仿真。

有谁知道通过 FCEUX 的 Lua API 以编程方式提取 PPU 内存的方法?如果没有,是否有人知道具有以编程方式提取 PPU 内存的 API 的模拟器?

0 投票
1 回答
370 浏览

vhdl - VHDL - 使用 FPGA 通过控制器端口的 SNES 接口

我正在尝试将廉价的 FPGA(ep2c5t144 Altera Cyclone II 迷你板)与 SNES 连接,以充当 SNES 控制器。到目前为止,它似乎可以打开和关闭......当前的问题是,它在打开后工作了大约 1 秒钟......但随后似乎陷入了一种状态,直到它被重置。

由于我花了很长时间查看逻辑问题的代码,我开始怀疑使用 FPGA 是否是一些奇怪的怪癖,但我已经尝试过测试任何未定义的状态,而且还没有没有解决问题。我将在下面发布 SNES 代码,以及显示问题的廉价逻辑分析仪的输出。警告,代码非常混乱......特别是我改变了一些东西来尝试修复它。任何想法都非常感谢!

非常感谢您的帮助!

逻辑分析仪的问题:

当请求有效时 - 状态转换按预期发生

当请求失败时 - 似乎错误地直接转换到“工作”状态并由于某种原因卡住

0 投票
0 回答
474 浏览

emulation - NES PPU 的命名表选择

我正在为 NES 编写一个模拟器,我正在尝试运行超级马里奥兄弟。一切运行良好,除了游戏使用 nametable 1 时发生的一些屏幕闪烁。

如果您不知道,SMB 在顶部有一个恒定的分数条显示(大约 31 条扫描线),其下方的屏幕其余部分水平滚动。此分数显示仅位于 Nametable 0(和 nametable 2,因为映射器使用垂直镜像)。

游戏在 NMI 开始时将 PPUCTRL 设置为名称表 0,然后等待精灵 0 命中(发生在第 30 行左右),然后根据屏幕其余部分的要求将名称表设置为 0 或 1。

我的模拟器发生了什么,即使在第一条扫描线被渲染之前,PPUCTRL 也被设置为奇数。结果,它显示了正确名称表中的分数栏,我得到了闪烁。

我使用标准模拟器 fceux 确认了该行为。PPUCTRL 也设置为奇数。但是那里的模拟器仍然从左边的名称表中提取。

我对 PPUCTRL 的理解不正确吗?PPU 是否总是在 sprite 0 命中之前使用 nametable 0?

0 投票
1 回答
1807 浏览

testing - 如何加载嵌套 ROM?

我完成了我的 6502 仿真器的编写,并准备开始测试它。我找到了带有一些文档的嵌套ROM,但我不确定加载 ROM 的正确方法是什么。作者说,模拟器应该从0xC000开始,当我加载ROM时包含0,所以我一定做错了什么。

所以现在我的加载过程看起来像这样:

0 投票
0 回答
65 浏览

visualization - 从 Gameboy Printer Spoof 重建串行图像数据

任天堂创造了一种与 Gameboy 兼容的打印机。Gameboy 可以通过串行 SPI 链接对其进行打印。我使用 STM32 通过捕获来自 Gameboy 的数据包并欺骗打印机响应来模拟打印机。

来自 Gameboy 的数据自然是字节流。每两位对应一个像素(为每个像素提供 4 种灰度级)。Gameboy 通常打印分辨率为 160 x 144 的图像。这些图像被分成 9 段,每段 16 像素高 (9*16=144)。

游戏男孩图像格式

然后在每个段中,从上到下,从左到右处理串行像素数据。

现在,我的问题是,当我使用 Java 应用程序处理数据时,它并没有按应有的方式显示。

使用此问题末尾的数据,我得到以下结果:畸形图像

但它应该看起来像这样:在此处输入图像描述

我不确定问题是什么,我已经研究了很长时间。您可以看到第一张照片看起来几乎就像实际照片的两个并排版本。有谁知道像素数据的格式是否与我所知道的不同,或者它只是我的代码中的一个错误?

这是我用来转换数据的代码:

这是我用来创建图像的数据(在项目文件夹中保存为“gbinput.txt”):

0 投票
0 回答
510 浏览

c - 如何从 C 中的 HTTP 服务器下载并保存文件

我需要从 HTTP 服务器下载并保存文件,但我不能使用 libcurl 或任何内置系统库。这是一个适用于 Nintendo 3ds 的程序,可以使用自制软件运行(如果您想知道,我正在使用 devkitpro)。我当前的代码仅在我手动输入下载函数的参数时才有效:

关于 char url 和 char out 的注释,当我的长度为 248(以前是这样)时,当我尝试删除文件说名称太长时,windows 给了我一个错误,说名称太长了,虽然改变了它到64没修好,下载还是失败。当我手动键入 URL 但使用变量作为输出文件名时,它会生成一个损坏的文件。这是我的下载功能的代码:

提前致谢!

0 投票
3 回答
2072 浏览

bluetooth - 是否可以使用 PC 来控制 Nintendo Switch 的乐趣?

我想创建一个可以玩只兼容joy cons的Nintendo Switch游戏的TAS。

市场上有 turbo pro 控制器,但没有 turbo Joy 缺点,所以我的下一个想法是以下两个之一:

  1. 使用蓝牙连接一个我可以用我的 PC 控制的设备,并且可以通过蓝牙(或 USB)连接到 Nintendo Switch 并欺骗它认为它是一个游戏控制器而不是一个专业控制器。
  2. 使用上面的想法,但设计是joy cont本身,在这种情况下,我必须将joy cont连接到PC并在它仍然与Nintendo Switch配对时对其进行命令

有什么方法可以实现我想要的吗?谢谢指教。

另外,如果堆栈溢出中有更好的分支来发布这个问题,我会移动它。

0 投票
1 回答
47 浏览

audio - 录制 Nintendo 3DS/Switch 音频时拆分音效和音乐

我正在使用将 Nintendo 的耳机插孔连接到笔记本电脑的麦克风插孔适配器的辅助电缆录制音频。我使用的程序是大胆的。

有没有办法将声音效果(即按下按钮或攻击声音)和背景音乐分成两个音轨?

0 投票
1 回答
93 浏览

python - 尝试使用 USB 将 Nintendo Switch 与 Raspberry 3b+ 通信

大家好,一个月前我的侄女不小心弄坏了我的任天堂开关控制器(https://www.powera.com/products/pokemon-wired-controller-for-nintendo-switch-pikachu-silhouette/),我决定尝试使用覆盆子 3b+ 与我的 Nintendo Switch 进行通信……我之前从未使用过 Python 编程,更不用说使用覆盆子了,所以我是一个完整的新手。所以3周后,我得到了这个代码:

启动代码后,我收到此错误代码

有谁如何解决这个错误?