# Accuracy Rules

Use this P0 reference before answering known confusing Xinje PLC/HMI questions, before changing the skill, and before making claims that depend on exact manual wording.

## Evidence Levels

| Level | Meaning | How to answer |
|---|---|---|
| A - manual | The bundled official manual or official Xinje document explicitly says it. | Answer directly and cite the manual/page or section. |
| B - software observation | XDPPro/TouchWin behavior was observed, but the manual wording is absent or incomplete. | Say "software appears/allows..." and do not turn it into an official definition. |
| C - engineering inference | A practical conclusion follows from PLC/HMI behavior or common practice. | Mark it as an inference and ask for model/version if it affects safety or compatibility. |
| D - unknown | The skill has not verified the claim. | Do not guess. Search the catalog/manual or ask for the exact model/manual. |

## Hard Rules And Forbidden Claims

| Topic | Correct rule | Do not say | Evidence/source anchor |
|---|---|---|---|
| `M8000` on XD/XL/XG | `M8000` is not documented as a Xinje XD/XL/XG special relay. If accepted by software and in range, treat it as ordinary `M` memory. | "`M8000 = SM000`" or "`M8000` is the run always-ON relay." | XD/XL and XG basic manuals list `SM000` for run always-ON; no explicit `M8000 = SM000` definition found. |
| Run always-ON | Use `SM000` / `SM0`. | Use `M8000` for XD/XL/XG run always-ON. | `soft-elements-and-special-relays.md`; XD/XL basic manual appendix special relays. |
| First scan | Use `SM002` / `SM2` for first-scan ON pulse. | Use `M8002` as an XD/XL/XG official first-scan relay unless the project/manual explicitly uses it. | `soft-elements-and-special-relays.md`. |
| `SM0` vs `SM000` | Treat `SM0` as short input form for `SM000` when software/manual context confirms zero-padded addressing. | Generalize this rule to every device family without checking. | XDPPro software and XD/XL/XG manuals use `SM000` naming; software/manual examples also use `SM0`. |
| `M` vs `HM` | `M` is ordinary auxiliary relay; `HM` is retentive auxiliary relay. | Claim every `M` persists after power loss. | Basic instruction manual soft-element chapter. |
| `SM` writes | Many `SM` bits are system/special bits. Read their function before writing. | Treat `SM` as free user memory. | `soft-elements-and-special-relays.md`; safety checklist. |
| `FD`/`SFD` writes | Flash-backed registers have write-life and behavior cautions; use edge-triggered writes and avoid periodic writes. | Drive `FD`/`SFD` writes with clock pulses such as `SM011`. | XD/XL basic manual soft-element notes mention Flash write life and edge-effective `MOV`. |
| Online download | Online download can change running-machine behavior. Require backup and safety check. | Present online download as routine and harmless. | XDPPro software manual PDF pages 53-54. |
| Secure/encrypted download | Secure download can make later upload impossible. Warn before recommending. | Tell users it is just a normal download option. | XDPPro software manual PDF page 53 and toolbar description page 24/31. |
| HMI button writes PLC bit | If TouchWin operates a PLC bit, avoid driving the same bit with PLC `OUT` in normal scan. Use command/status separation. | Use the same `M` as both HMI direct control bit and PLC output coil. | TouchWin manual PDF page 75. |
| TouchWin PLC-controlled screen switch | The interaction register value selects a screen number and is cleared to 0 after jump. Drive it with an edge/event. | Continuously write the target page number every scan. | TouchWin manual PDF page 38. |
| `ALT` | `ALT` toggles a bit and is edge-triggered; if driven by a level that is true every scan, it can repeatedly toggle. | Use `ALT` under always-ON condition for stable state. | XD/XL basic manual PDF page 88 and FAQ mention ALT output flashing. |

## Answering Pattern For Disputed Topics

Use this shape:

1. State the conclusion.
2. Separate manual wording from software observation.
3. Name the safe substitute.
4. Give a short verification path.

Example:

```text
For XD/XL/XG, do not use M8000 as a system always-ON bit. The manual documents SM000/SM0 as PLC running always-ON. If XDPPro accepts M8000, treat it as ordinary M memory within the valid address range. Verify by monitoring SM0 and M8000 separately while the PLC is in RUN.
```

## When To Escalate To Manual Lookup

Look up the original PDF or official catalog when:

- the answer depends on exact address ranges for a CPU model,
- the topic involves firmware/version support,
- a device may move, heat, clamp, pump, or write retentive/Flash data,
- the user reports software behavior that conflicts with current references,
- the user asks for a page number/source.
