Bundles state that lives OUTSIDE the xenia-rs repo so a fresh clone on
another machine can be brought up to identical configuration via
migration/setup.sh:
- claude-memory/ ~/.claude/projects/-home-fabi-RE-Project-Sylpheed/memory/
(103 files, 1.1 MB - MEMORY.md + every
project_xenia_rs_*.md from audits
addis_signext through audit-058)
- project-root/dot-claude/ <project-root>/.claude/settings.json
(Stop hook + permissions)
- project-root/ppc-manual/ <project-root>/ppc-manual/
(PowerPC reference docs, 397 files, 3.7 MB)
- project-root/run-canary.sh <project-root>/run-canary.sh
- README.md Human-readable setup checklist
- setup.sh Idempotent installer (also reclones
xenia-canary at pinned HEAD 6de80dffe)
- MANIFEST.md Per-file mapping + per-file-not-bundled
restoration recipe
Excluded from bundle (not shippable via git):
- Sylpheed ISO (7.8 GB; copyright; manual copy required)
- sylpheed.db (395 MB; regenerable from XEX via analysis tooling)
- target/ build artifacts (rebuild on target)
- audit-runs probe firehoses (.log/.stdout/.stderr ~11 GB; rerun if needed)
- audit-runs memory dumps (.bin ~4.5 GB; rerun audit-026/027/029 if needed)
- xenia-canary checkout (setup.sh reclones from
git.mc02.dev/fabi/Xenia-Canary.git at HEAD 6de80dffe)
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
3.7 KiB
3.7 KiB
Form D — D — Displacement (load/store and immediate ALU)
Bit Layout
| Bits | Field | Meaning |
|---|---|---|
| 0–5 | OPCD |
primary opcode |
| 6–10 | RT |
destination GPR (or RS when storing) |
| 11–15 | RA |
source GPR (0 ⇒ literal 0 for RA0 forms) |
| 16–31 | D/SI/UI |
16-bit signed or unsigned immediate |
Instructions Using This Form
| Mnemonic | Opcode | Group | Description |
|---|---|---|---|
tdi |
0x08000000 |
branch | Trap Doubleword Immediate |
twi |
0x0c000000 |
branch | Trap Word Immediate |
mulli |
0x1c000000 |
integer | Multiply Low Immediate |
subficx |
0x20000000 |
integer | Subtract From Immediate Carrying |
cmpli |
0x28000000 |
integer | Compare Logical Immediate |
cmpi |
0x2c000000 |
integer | Compare Immediate |
addic |
0x30000000 |
integer | Add Immediate Carrying |
addic. |
0x34000000 |
integer | Add Immediate Carrying and Record |
addi |
0x38000000 |
integer | Add Immediate |
addis |
0x3c000000 |
integer | Add Immediate Shifted |
ori |
0x60000000 |
integer | OR Immediate |
oris |
0x64000000 |
integer | OR Immediate Shifted |
xori |
0x68000000 |
integer | XOR Immediate |
xoris |
0x6c000000 |
integer | XOR Immediate Shifted |
andi. |
0x70000000 |
integer | AND Immediate |
andis. |
0x74000000 |
integer | AND Immediate Shifted |
lwz |
0x80000000 |
memory | Load Word and Zero |
lwzu |
0x84000000 |
memory | Load Word and Zero with Update |
lbz |
0x88000000 |
memory | Load Byte and Zero |
lbzu |
0x8c000000 |
memory | Load Byte and Zero with Update |
stw |
0x90000000 |
memory | Store Word |
stwu |
0x94000000 |
memory | Store Word with Update |
stb |
0x98000000 |
memory | Store Byte |
stbu |
0x9c000000 |
memory | Store Byte with Update |
lhz |
0xa0000000 |
memory | Load Half Word and Zero |
lhzu |
0xa4000000 |
memory | Load Half Word and Zero with Update |
lha |
0xa8000000 |
memory | Load Half Word Algebraic |
lhau |
0xac000000 |
memory | Load Half Word Algebraic with Update |
sth |
0xb0000000 |
memory | Store Half Word |
sthu |
0xb4000000 |
memory | Store Half Word with Update |
lmw |
0xb8000000 |
memory | Load Multiple Word |
stmw |
0xbc000000 |
memory | Store Multiple Word |
lfs |
0xc0000000 |
memory | Load Floating-Point Single |
lfsu |
0xc4000000 |
memory | Load Floating-Point Single with Update |
lfd |
0xc8000000 |
memory | Load Floating-Point Double |
lfdu |
0xcc000000 |
memory | Load Floating-Point Double with Update |
stfs |
0xd0000000 |
memory | Store Floating-Point Single |
stfsu |
0xd4000000 |
memory | Store Floating-Point Single with Update |
stfd |
0xd8000000 |
memory | Store Floating-Point Double |
stfdu |
0xdc000000 |
memory | Store Floating-Point Double with Update |