{
  "added_at": "2026-11-10",
  "category": "reconstruction-cases",
  "class": "game",
  "description_en": "Coleco's 1982 Atari VCS cartridge of Donkey Kong is disassembled into labeled and commented 6502 assembly kept byte-identical to the cartridge, down to a filler byte that pushes the audio frequency table to the next page. Comments outline the overscan, vertical blank and kernel main loop and the horizontal positioning routine, and an NTSC switch selects the PAL listing, which retimes vertical blank and overscan for 312 scan lines and changes colours and sound frequencies.",
  "description_zh": "Coleco 1982 年 Atari VCS 卡带版《Donkey Kong》被反汇编为带标签和注释的 6502 汇编，连把音频频率表推到下一页的填充字节也保留，使汇编结果与卡带逐字节一致。注释梳理了 overscan、vertical blank 与 kernel 组成的主循环以及水平定位例程；NTSC 开关可切换到 PAL 版本，该版本把 vertical blank 和 overscan 时序调整为 312 条扫描线，并修改了颜色和音频频率。",
  "entry_url": "https://awesomerea.org/resources/donkey-kong-atari-vcs-disassembly-case/",
  "entry_url_zh": "https://awesomerea.org/zh/resources/donkey-kong-atari-vcs-disassembly-case/",
  "evidence_url": "https://web.archive.org/web/20260714101337/https://www.qotile.net/minidig/disassembly/dk.asm",
  "group": "cases",
  "id": "donkey-kong-atari-vcs-disassembly-case",
  "json_url": "https://awesomerea.org/resources/donkey-kong-atari-vcs-disassembly-case/record.json",
  "kind": "case-study",
  "markdown_url": "https://awesomerea.org/resources/donkey-kong-atari-vcs-disassembly-case/index.md",
  "markdown_url_zh": "https://awesomerea.org/zh/resources/donkey-kong-atari-vcs-disassembly-case/index.md",
  "name": "Donkey Kong: an annotated Atari VCS disassembly that rebuilds the cartridge",
  "name_zh": "Donkey Kong：可重建卡带 ROM 的 Atari VCS 版注释反汇编",
  "reconstruction_method": "matching-decompilation",
  "record_type": "resource",
  "relationship": "independent-reconstruction",
  "requirement_facets": [
    "prerequisites",
    "limits",
    "license"
  ],
  "requirements": [
    "Assembling needs a 6502 assembler and the vcs.h Atari VCS header that the listing includes.",
    "The author notes that heavy use of overlays and offsets may leave some variable meanings or table positions unidentified.",
    "No licence stated on the project page."
  ],
  "requirements_zh": [
    "汇编需要 6502 汇编器以及代码引用的 Atari VCS 头文件 vcs.h。",
    "作者说明，游戏大量使用内存复用和偏移，部分变量含义或表位置可能未能识别。",
    "项目页面未声明许可证。"
  ],
  "targets": [
    "game"
  ],
  "url": "https://www.qotile.net/minidig/disassembly/dk.asm",
  "verification": "source-reviewed",
  "verified_at": "2026-11-09"
}
