`
黑色杰克史密斯
  • 浏览: 16228 次
社区版块
存档分类
最新评论
文章列表
自己感觉都像在放P一样 ... 一点卵用都没有 ... 哈哈`~

2a03 ...

    博客分类:
  • NES
6502 .. 实际上这样称呼 NES/FC 的CPU是不对的 ... 这个汇编模拟的NES CPU经验证 ... 是可以正常运行的 ... 写的时间很短 》。。 很长时间都是浪费在BUG查找上 》。。为此。。用DirectX写了一个 PPU验证我结果的正确性 .. ; ========================== ; zero page get address ; ========================== __zrp_get: movzx eax, byt[ebx+1] mov byt[__addr8_r], al add wot[__ ...
.......
怎么慢的跟狗一样 ...
d3dUtility.cpp 直接删除 会返回1 都知道 HRESULT 成功是返回0 的 在 Device借口后面(void Cleanup()里面)删除即可 ... 龙书一整本在这里全是错的 今天调试才发现。。。

NES 的$4016

    博客分类:
  • NES
$4016 是 手柄1 的选通 ... 此 IO端口 在读写时候有着不同的行为 ... 首先读手柄的状态 ... 要先向 $4016 写 1 此时内部的计数器开始工作并且会为数据流上锁... 表示已经做好准备 ... 此时在往$4016 写0 解锁 数据才能正确读取出来 ... 数据流一共有 24 bit 如图 信号用来检测是4端口的接入状态:     %0000:没有连接设备     %0001:只有$4016手柄     %0010:只有$4017手柄 (此段话摘自任天堂产品文件) 对于一般的输入 ... 只要 获取0 - 7 位即可 ... NES的输入设备流 ...

Dinput8 杂

    博客分类:
  • n/a
 
10 12 00 00             _c_rgodfDIKeyboard dd offset _GUID_Key  ; DATA XREF: .rdata:00000200o .data:00000208 00                                      db    0 .data:00000209 00                                      db    0 .data:0000020A 00                                      db    0 .data:0000020B 00  ...
pragma (lib, "gdi32.lib"); pragma (lib, "d3d9.lib"); pragma (lib, "winmm.lib"); pragma (lib, "ole32.lib"); import core.runtime; import win32.windows; import core.stdc.stdio; import std.string; import std.conv; import std.math; extern(C) UINT GetKer ...
头文件 XAudio2.d 里 interface IXAudio2Voice 改为 extern(C++) interface IXAudio2Voice 不要继承自 COM 抽象基类 IUnknown 即可 (这帮为D DirectX 编写的程序员可能是粗心了 没注意到吧 ... 话说写完自己也不测试一下吗 ..-_-) 以及一下都要改 跟上面是一样的 ... IXAudio2EngineCallback IXAudio2VoiceCallback 以及一切继承至 IXAudio2Voice 的类 ... 参考自 : http://forum.dlang.org/thread/zw ...

NES PPU 杂

    博客分类:
  • n/a
      .686                      ; create 32 bit code                          .model flat, stdcall      ; 32 bit memory model       option casemap :none      ; case sensitive ; 43210 ; ||||| ; |||++- Pixel value from tile data ; |++--- Palette number from attribute table or OAM ; +----- Background/ ...
.686 ; create 32 bit code .mmx .xmm .model flat, stdcall ; 32 bit memory model option casemap :none ; case sensitive .code ; ml -c /omf ad.asm ; Microsoft (R) Macro Assembler Version 10.00.30319.01 ; Copyright ...
__declspec(naked) static __cdecl getCrc32(unsigned int size, unsigned char* buffer) { __asm { mov edx, 4[esp] ; - U ecx <- loop count mov esi, 8[esp] ; - V esi <- source buffer lea edi, [crc32_table] ; - U crc32 table xor ecx, ecx ; - V ...

masm 像素碰撞检测

    博客分类:
  • n/a
256 * 240 的 directx surface _spriteDrawAndTest proc C _pBuffer, _pSprite, _xPos, _yPos, _pStruct, _AColor ; esp + 4 +32 esp + 8 + 32 esp + 12 + 32 option prologue:none, epilogue:none ;.FPO ( 0, 6, 0, 0, 0, 0 ) pBuffer equ [esp+36] pSprite equ [esp+40] xPos ...

masm10.0

    博客分类:
  • n/a
 
masm 下载 是从 vs10 里抠出来的 裸程序 ml.exe + cmd 支持 sse 指令集 的使用 ... 内联汇编在一般程序中使用完全足够了 ... 不过一些动态跳表内联汇编还没见过支持的 ... 
跟 c 语言一样 ... 唯一注意的是 要用 extern (C) 默认的d风格修饰的变量 没有 linkage attribute ////////////////////////////// kl.d module kl; extern (C) int d; ////////////////////////// main.d import kl; extern extern(C) int d; int main(){ d = 5; return 0; } /////////////////////// dmd kl main
Global site tag (gtag.js) - Google Analytics