code wiki / _hdl_build / nx_myoset.nx
nx_myoset.nx
buildroot/runtime/_hdl_build/nx_myoset.nx
about
nx_myoset.nx -- NAMED MUSCLES with real origins and insertions, composed into one swell profile.
The integration that landed before this swelled an anonymous HEIGHT BAND. That proved the laws could
drive a body, and it is not anatomy: a band has no name, no attachment, and no relationship to the
skeleton underneath. A muscle is defined by WHERE IT ATTACHES -- an ORIGIN on one bone and an INSERTION
on another -- and everything else about it follows from that pair.
★WHY THIS COULD ONLY BE BUILT AFTER THE TAPER: real muscles OVERLAP. The pectoral and the deltoid share
the shoulder; the erector spinae runs the length of everything. If each contributed a rectangular swell
they would stack into steps wherever they met. Because every muscle now fades to zero at its own
attachments, overlapping muscles SUM SMOOTHLY -- the taper is what makes a set of muscles composable at
all, which is why it was a prerequisite and not a cosmetic fix.
Attachments are expressed as per-mille of stature, so the set scales with whatever skeleton nx_skelgen
generated rather than assuming a fixed body.
nx_myoset <station_permil> [flex_deg] -> the composed swell at that height, and which muscles act
nx_myoset profile [flex_deg] -> the whole head-to-toe swell profile
nx_myoset selftest
license_tier: ORIGINAL expect_exit: 0 No hw writes (Rule 26).
dependencies 1 imports · 0 importers
imports: nx_gate_verdict.nx
imported by: nobody (leaf or entry point)
call flow from main pre-order; caps 40 nodes / depth 6 declared; ↻ = already shown
structs
| none |
consts
| 23 | const MS_Q: i64 = 1000 |
| 24 | const MS_N: i64 = 8 |
| 25 | const MS_MAXDEG: i64 = 150 |
| 26 | const MS_DATBUF: i64 = 65536 |
functions
| 28 | func ms_puts(s: *u8) -> i64 { var n: i64=0; while s[n]!=(0 as u8){n=n+1} sys_write(1,s,n); return 0 } called by 1: main |
| 29 | func ms_pn(v: i64) -> i64 called by 1: main |
| 38 | func ms_streq(a: *u8, b: *u8) -> i64 called by 1: main |
| 43 | func ms_atoi(s: *u8) -> i64 called by 1: main |
| 51 | func ms_origin(m: i64) -> i64 |
| 61 | func ms_insert(m: i64) -> i64 |
| 71 | func ms_peak(m: i64) -> i64 |
| 81 | func ms_name(m: i64) -> *u8 called by 1: main |
| 93 | func ms_weight(m: i64, station: i64) -> i64 |
| 110 | func ms_contract(deg: i64) -> i64 called by 1: ms_swell |
| 118 | func ms_swell(station: i64, deg: i64) -> i64 |
| 128 | func ms_gate() -> i64 |
| 215 | func main(argc: i64, argv: *i64) -> i64 |