3.2 KiB
3.2 KiB
LinuxCNC kinematics source map
This map tracks the LinuxCNC source/configuration basis for kinematics, switchkins, RTCP, and M428/M429/M430 remap coverage. It is intentionally a source-coverage document: the manifest entries here must not become browser or application behavior by themselves. It must not add CNC behavior and must not expand the temporary smoke parser.
Manifest groups
The kinematics manifest currently contains these LinuxCNC-root relative source groups:
| Group | Count | Source coverage role |
|---|---|---|
core |
30 | LinuxCNC kinematics and posemath C/C++ sources. |
config |
33 | LinuxCNC switchkins INI/HAL/POSTGUI sources used by M428/M429/M430 and RTCP coverage. |
remap |
31 | LinuxCNC M428/M429/M430 remap subroutines. |
component |
8 | LinuxCNC halcompile component sources referenced by kinematics configs. |
generated |
8 | LinuxCNC halcompile-generated C sources adjacent to component coverage. |
header |
13 | LinuxCNC kinematics and posemath declarations. |
metadata |
34 | LinuxCNC build/manpage metadata adjacent to covered kinematics sources. |
asset |
122 | LinuxCNC INI-adjacent HAL, README, GUI, demo, PYVCP, and other source assets. |
tooldata |
10 | LinuxCNC tool table files referenced by covered M428/M429/M430 INI files. |
LinuxCNC Source Anchors
src/emc/kinematics/Submakefiledefines the kinematics build source surface, includingGENSERKINSSRCS.src/emc/kinematics/kinematics.hdeclareskinematicsInverse()andkinematicsSwitch()for switchkins-capable modules.configs/sim/axis/vismach/5axis/bridgemill/5axis.iniwiresmotion.switchkins-typeand representative M428/M429/M430 switchkins configuration.configs/sim/axis/vismach/5axis/bridgemill/remap_subs/428remap.ngcprovides a representative#<kinstype>remap assignment.
Boundaries
asset,metadata,header, andtooldataentries are source coverage, not browser API surface.- Browser-side file persistence remains OPFS-only and is not expanded by this manifest.
- Switchkins/remap generation must continue to derive M428/M429/M430 cases from LinuxCNC INI/HAL/remap sources, not from hand-authored behavior.
- RTCP and five-axis coverage must remain tied to LinuxCNC kinematics sources, remap files, and configuration files.
test-native.sh,test-linuxcnc-source-link.sh, andbuild-wasm.shmust run./check-linuxcnc-kinematics-source-map.shbefore consuming generated config aliases, source-linked LinuxCNC objects, or browser artifacts.- The kinematics source-map guard validates LinuxCNC source/config ownership and manifest drift only; it does not interpret G-code.
Checks
Run:
./check-linuxcnc-kinematics-source-map.sh
./check-linuxcnc-inputs.sh linuxcnc-kinematics-source-files.txt --require-kinematics-complete
./check-linuxcnc-switchkins-remap-table.sh linuxcnc-kinematics-source-files.txt
./test-native.sh
./test-linuxcnc-source-link.sh
check-linuxcnc-kinematics-source-map.sh keeps this document's group counts in
sync with linuxcnc-kinematics-source-files.txt; the input and table checkers
validate LinuxCNC source existence, directory completeness, remap kinstype
notes, and switchkins/remap table generation.