)]}'
{
  "commit": "dd4744ef418b64b93b8eeda906545f6341c101d0",
  "tree": "2820d54a20bb4ae10adc5b74fed3449f23ad10f4",
  "parents": [
    "47cea9a2446c1078226f5a387f5afbf6ab6743c2"
  ],
  "author": {
    "name": "Nico Huber",
    "email": "nico.h@gmx.de",
    "time": "Sun Mar 22 15:47:25 2026 +0100"
  },
  "committer": {
    "name": "Nico Huber",
    "email": "nico.h@gmx.de",
    "time": "Fri Jul 17 18:07:04 2026 +0000"
  },
  "message": "nicamd: Introduce new programmer driver for AMD NICs\n\nOn a PCnet32 FAST card with a nice PLCC32 socket, only 18 of the 20 ad-\ndress lines were connected. It\u0027s not easy to detect this, but we\u0027ll do\nour best: Check the ROM contents for repeating patterns, and allow the\nuser to override the guessed size. We use the ROM BAR here, though not\nfor the actual flash reading / writing. According to the datasheet the\nROM BAR interface always reads four bytes, and doesn\u0027t seem to support\nwrites.\n\nOtherwise tested successfully with the first 256KiB of an SST39VF040.\n\nDatasheet used:\nhttps://www.amd.com/content/dam/amd/en/documents/archived-tech-docs/datasheets/20550.pdf\n\nChange-Id: I3bddfcd1e242d28790a0916197ebd8b8bba5a70a\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.sourcearcade.org/c/flashprog/+/530\nReviewed-by: Arthur Heymans \u003carthur@aheymans.xyz\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "ac73011c53c1e13c0945487c88397e62a1b9d2f9",
      "old_mode": 33188,
      "old_path": "Makefile",
      "new_id": "a9f2429eda083d38d25ab188b1a82c9df8688026",
      "new_mode": 33188,
      "new_path": "Makefile"
    },
    {
      "type": "modify",
      "old_id": "2048da7b702cfeca9aad13f05112c71ca3d35fac",
      "old_mode": 33188,
      "old_path": "flashprog.8.tmpl",
      "new_id": "d7713333227c08424002844f283725b5467b0d5e",
      "new_mode": 33188,
      "new_path": "flashprog.8.tmpl"
    },
    {
      "type": "modify",
      "old_id": "a2de74ed00e215e1af0b7403a0bf4b304b198e2e",
      "old_mode": 33188,
      "old_path": "include/programmer.h",
      "new_id": "1aa57b4873ab7e6a99cbae69ef68ee62ea2c9056",
      "new_mode": 33188,
      "new_path": "include/programmer.h"
    },
    {
      "type": "modify",
      "old_id": "d7865d47dc6366c992810dc09882d208daf128ae",
      "old_mode": 33188,
      "old_path": "meson.build",
      "new_id": "b94d9512272a490ea24982278324cfa9bd6798b0",
      "new_mode": 33188,
      "new_path": "meson.build"
    },
    {
      "type": "modify",
      "old_id": "d466bd49a0ef09de30f1f9f187a5d71c95f865ea",
      "old_mode": 33188,
      "old_path": "meson_options.txt",
      "new_id": "85a8752905c7d6b4f5797a22beaa33c704687bd4",
      "new_mode": 33188,
      "new_path": "meson_options.txt"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "b447a9461c0d5c1875cd3bf2f1c711a4abf5b067",
      "new_mode": 33188,
      "new_path": "nicamd.c"
    },
    {
      "type": "modify",
      "old_id": "b4b8a4d317c5aa47ddb3950bd2c0331a406a866f",
      "old_mode": 33188,
      "old_path": "programmer_table.c",
      "new_id": "b2ab8265e6e9c5099c4e2c5e5a709e732613cd1c",
      "new_mode": 33188,
      "new_path": "programmer_table.c"
    }
  ]
}
