在nds的子屏幕上绘制图像

2024-02-09

我对 libdns 完全陌生。我尝试更改示例 Graphics\Backgrounds\256_color_bmp 在子屏幕上显示背景。

这是我的代码。您知道在子屏幕上显示 hey_typBitmap 缺少什么吗?我已经设法在顶部屏幕上显示新图像。

#include <nds.h>
#include <stdio.h>
#include "drunkenlogo.h"
#include "hey_typ.h"

int main(void)
{
    videoSetMode(MODE_5_2D);
    vramSetBankA(VRAM_A_MAIN_BG_0x06000000);

    videoSetModeSub(MODE_5_2D);
    vramSetBankC(VRAM_C_SUB_BG_0x06200000);

    int bg3 = bgInit(3, BgType_Bmp8, BgSize_B8_256x256, 0,0);
    dmaCopy(hey_typBitmap, bgGetGfxPtr(bg3), 256*256);
    dmaCopy(hey_typPal, BG_PALETTE, 256*2);

    int bg2 = bgInit(2, BgType_Bmp8, BgSize_B8_256x256, 0,0);
    dmaCopy(drunkenlogoBitmap, bgGetGfxPtr(bg2), 256*256);
    dmaCopy(drunkenlogoPal, BG_PALETTE, 256*2);

    while(1)swiWaitForVBlank();

    return 0;
}

In mode 5 http://nocash.emubase.de/gbatek.htm#dsvideobgmodescontrolDS 有 3 个可用的背景层,并且调用bgInitwith 2 返回对同一屏幕上不同层的引用。如果你想在子屏幕上使用图层,请使用bgInitSub.

还有 2 个调色板;一个在主屏幕上,另一个在子屏幕上。子屏幕调色板位于BG_PALETTE_SUB.

希望这段代码能够在第二个屏幕上显示图像(用/* ! */):

int main(void)
{
    videoSetMode(MODE_5_2D);
    vramSetBankA(VRAM_A_MAIN_BG_0x06000000);

    videoSetModeSub(MODE_5_2D);
    vramSetBankC(VRAM_C_SUB_BG_0x06200000);

    int bg3 = bgInit(3, BgType_Bmp8, BgSize_B8_256x256, 0,0);
    dmaCopy(hey_typBitmap, bgGetGfxPtr(bg3), 256*256);
    dmaCopy(hey_typPal, BG_PALETTE, 256*2);

    int bg3sub = bgInitSub(3, BgType_Bmp8, BgSize_B8_256x256, 0,0);  /* ! */
    dmaCopy(drunkenlogoBitmap, bgGetGfxPtr(bg3sub), 256*256);  /* ! */
    dmaCopy(drunkenlogoPal, BG_PALETTE_SUB, 256*2);  /* ! */

    while(1)swiWaitForVBlank();

    return 0;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在nds的子屏幕上绘制图像 的相关文章

  • 有些浏览器会对 cookie 进行编码吗?

    这是一种后续行动为什么我的包含 JSON 的 cookie 偶尔会出现格式错误 https stackoverflow com questions 2329395 why are my cookies containing json occ
  • java.text.ParseException:无法解析的日期:“20:01:00.000Z”

    我得到的时间字段值采用 10 30 00 000Z 格式 我想将其转换为 10 30 AM PM 格式 我正在尝试使用 SimpleDateFormat 并解析它 但我收到了 java text ParseException 有人可以帮我解
  • asp.net MVC - 如何制作主页面/详细信息页面

    我希望创建一个主 详细信息页面 我认为它以两种方式之一工作 单击网格中的一行会再次调用同一页面 并添加详细信息面板 单击一行会对控制器操作进行 javascript JSON 调用 该操作返回详细信息并填充面板 我希望突出显示所选行 所选行
  • 可以将输入字符串转换为Python中的可调用函数对象吗? [复制]

    这个问题在这里已经有答案了 我希望能够获取一个描述 Python 函数的字符串 并将其转换为一个我可以调用的函数对象 例如 myString def add5 x return x 5 myFunc myString toFunction
  • 使用 Python 的 Dataflow/Beam 示例

    我正在尝试获取以下项目的样本PCollection在 Dataflow Beam 上使用 Python SDK 虽然没有记录 Sample FixedSizeGlobally n 存在 测试时 它seems返回一个PCollection包含
  • 未找到类 Android 支持设计小部件 NavigationView

    美好的一天 你能帮我一个忙吗 在模拟器上编译 运行代码时出现此错误 这是我以前制作的示例教程 我使用了 min Target API 15 并编译了最新的 gradle com android support design 23 0 0 h
  • 当初始状态和最终状态相同时,不会触发transitionend

    在下面的例子中我正在做background color使用 CSS 进行过渡并尝试处理transitionend两个 div 的事件 很遗憾 transitionend没有被解雇div2因为初始和最终背景颜色相同 var div1 div1
  • ASP.NET WebAPI 默认登陆页面

    我已经使用 ASP NET WebApi v2 创建了一个 RESTful Web 服务 并且正在使用虚张声势 https github com domaindrivendev Swashbuckle为 API 文档生成 swagger U
  • 使用 C# 反射从字典生成动态对象

    我一直在研究 C 中的反射 想知道我是否使用带有键值的字典可以创建一个带有变量的对象 该变量包含字典中每个键的名称及其值 该字典的键值 我有一个相反的方法 它从字典中提取一个对象 该字典包含键和类属性及其值 即属性的值 我想知道如果可能的话
  • Julia 中加载/导入的包列表

    如何获取 Julia 会话导入 使用的包的列表 Pkg status 列出所有已安装的软件包 我对通过以下方式导入 加载的内容感兴趣using or import 看起来whos 包含相关信息 名称以及是否是模块 可以输出whos 被捕获在
  • jQuery every 循环重命名 ID 的每个实例

    我有一个页面正在表中创建动态创建的行 其输入的 ID 为 fixedRate 我正在尝试重命名fixedRate id 的每个实例 这仅适用于我当前代码的 id 的第一个实例 这是代码 var amountRows billTasks gt
  • 析构函数永远不会被调用[重复]

    这个问题在这里已经有答案了 我有课Class这创造了一个Thread在它的构造函数中 该线程运行一个while true 循环正在读取非关键数据NetStream 该线程将被析构函数中止 Class thread Abort thread
  • 进程是否在远程计算机上运行?

    我有三台远程连接的远程电脑 我正在尝试编写一个简单的 Windows 应用程序 该应用程序将在单个窗口中显示特定进程是否在任意一台机器上运行 例如 Server1 Chrome 未运行 Server2 Chrome 正在运行 Server3
  • 为 Android 创建 PDU

    我目前正在编写和应用程序 即发送 接收短信 出于单元测试的目的 我需要以编程方式创建 PDU 解码非常简单 Bundle bundle intent getExtras if bundle null Get all messages con
  • 有人尝试过用Z3本身来证明Z3吗?

    有没有人尝试证明Z3 http research microsoft com en us um redmond projects z3 与Z3本身 是否有可能使用 Z3 来证明 Z3 是正确的 更理论化的是 是否有可能使用 X 本身来证明工
  • 模型不会在 ng-if 内更新

    我在角度应用程序中遇到了奇怪的行为 我不知道这是一个错误还是已知的限制 use strict var ctrl function scope scope foo false div foo foo div style background

随机推荐

  • 使用另一个表中的数据创建 SQL 表

    如何使用另一个表 表的副本 中已存在的数据创建表 复制表的最便携方法是 使用 CREATE TABLE 语句创建新表 基于旧表中的 SELECT 使用 INSERT INSERT INTO new table SELECT FROM old
  • 以类似于 Windows 的 MessageBox() 的方式使用 UIAlertView?

    我是 iPhone 新手 我希望能够以类似于 Windows 的方式使用 UIAlertViewMessageBox or the MessageDlg in Delphi 例如 我有一个方法需要询问用户对某件事的确认 并根据他们的响应继续
  • 仅返回与 Solr 匹配足够 NGram 的结果

    为了使用 Solr 实现某种程度的容错 我开始使用NGramFilterFactory 以下是来自schema xml
  • RegAsm.exe 和 regsvr32 有什么区别?如何使用regsvr32生成tlb文件?

    谁能告诉我 regsvr32 和 RegAsm 之间有什么区别 我的 Dll 是 C 语言 那么如何将类导入到 C 中 regsvr32将加载库并尝试调用DllRegisterServer 从那个图书馆 它不在乎什么DllRegisterS
  • PostgreSQL 与 SQL Server NVARCHAR 等效的是什么?

    如果 Microsoft SQL Server 数据库中有 NVARCHAR 或 NTEXT 数据类型的字段 那么 PostgreSQL 数据库中的等效数据类型是什么 我很确定 postgres varchar 与 Oracle Sybas
  • 基本字符串输入

    我刚刚遇到了这段代码 它允许用户在命令提示符中输入字符串 我知道他们所做的一切 这一切都很棒 但我有一个关于 cin 和 getline 函数的问题 string name cout lt lt Please enter your full
  • 如何创建这样的渐变进度指示器?

    我注意到基本的CircularProgressIndicator小部件有很少的参数来定制它 我想要达到像 gif 上那样的结果 不幸的是 我的知识不足以从头开始创建这样一个指标 在 pub dev 上搜索没有带来任何结果 Make a Cu
  • PHP 返回错误 500,但没有记录任何内容

    当我有一个 php 应用程序返回内部服务器错误 500 但错误日志中没有显示任何内容时 我遇到了问题 现在我知道我正在尝试运行的内容有错误 我知道我丢失了一些文件以及什么没有 但是 apache 错误日志中应该显示一些内容 否则我应该如何确
  • 使用 opencv 3.0 的 cv2 中的 KNN train()

    我正在尝试使用 cv2 python 2 7 和 opencv 3 0 运行 k 最近邻 我使用类似的代码复制了相同的错误消息http docs opencv org 3 0 beta doc py tutorials py ml py k
  • 使用 AWS SimpleDB 从 Java Servlet 创建域

    我是一名大学生 正在从事一个研究项目 该项目涉及将 Web 应用程序迁移到亚马逊云 上学期我一直在研究 servlet 并且能够使用 Tomcat 中运行的 java servlet 来实现应用程序的大部分功能 我现在正在尝试集成 Amaz
  • 将 TYPO3 extbase storagePageIds / storagePid 设置为当前

    我正在使用 TYPO3 扩展 feupload 它依赖于 extbase 这是我第一次接触extbase 但问题是关于 extbase 的 我希望 TYPO3 在查询中默认包含通常的 IN 当前页面 pid 检查 除非另有说明 但在 ext
  • AngularJS 上传文件并将其发送到数据库

    我一直在努力得到ng文件上传 https github com danialfarid ng file upload工作 以便我可以上传图像并将它们发送到数据库 在我的例子中是mongoLab http mongolab com接受 JSO
  • vue-devtools 总是被 nuxt.js 禁用

    我正在使用 nuxt js 创建一个新项目v2 3 0 当我跑步时npm run dev在我的 IDE 控制台中 一切都可以正确编译 但是当我转到该页面时 出现以下错误 Nuxt js Vue js is detected on this
  • Python - 检查两个单词是否在字符串中

    我想检查Python数组的每个元素中是否有两个单词 汽车 和 摩托车 我知道如何检查一个单词in但不知道如何用两个词来做 非常感谢任何帮助 两字解决方案 for string in array if car in string and mo
  • 如何在 SharePoint 2010 中获取服务应用程序权限

    在 SharePoint 2010 中读取特定服务应用程序的帐户权限的最佳 最简单方法是什么 目前我一直在搞乱 var solution SPFarm Local Solutions Service App Name wsp var sol
  • Spark 任务无法使用滞后窗口函数进行序列化

    我注意到 在 DataFrame 上使用 Window 函数后 如果我使用函数调用 map Spark 将返回 任务不可序列化 异常 这是我的代码 val hc org apache spark sql hive HiveContext n
  • 将键值对列表转换为哈希表

    将列表转换为哈希表的最佳方法是什么 假设我有一个像这样的列表 Key value Key2 value2 将其转换为哈希表的最短语法是什么 尝试以下操作 table new object System Collections Hashtab
  • GORM 域类属性默认值

    也许是一个愚蠢的问题 但我应该在哪里 如何定义 GORM 域类属性的默认值 例如 当我创建一个新的 Company 对象实例时 我希望属性国家 地区的默认值为 美国 我想我可以在创建控制器中做到这一点 但它看起来有点脏 就像是 def cr
  • 搜索 youtube 并在我的网站上显示结果

    如何从我的网站搜索 YouTube 并将结果显示在同一页面下方 我已经设法使用以下代码添加搜索功能
  • 在nds的子屏幕上绘制图像

    我对 libdns 完全陌生 我尝试更改示例 Graphics Backgrounds 256 color bmp 在子屏幕上显示背景 这是我的代码 您知道在子屏幕上显示 hey typBitmap 缺少什么吗 我已经设法在顶部屏幕上显示新