code wiki / _hdl_build / nx_ad_core.nx
nx_ad_core.nx
buildroot/runtime/_hdl_build/nx_ad_core.nx
about
nx_ad_core.nx -- AUTORUN BEAT CORE (mainless; X-Q-007 "beat list as DATA").
The 6h slow beat's TARGETS come from conf rows, not code:
T <basename> one durable-lane target per row (order preserved, cap 8)
No T rows -> the historical default (nx_math_rung_run) so the existing
conf keeps working unchanged. adc_beat runs each target sequentially via
_offc/nx_sov_build_run.elf (rebuild-from-source = the evidence renewal),
appends one AUTORUN-TGT row per target and ONE AUTORUN-BEAT row keeping
the historical rung_rc= field (= worst rc) plus targets=<n>.
license_tier: ORIGINAL
dependencies 2 imports · 4 importers
imports: nx_syscalls.nxnx_itoa_lib.nx
imported by: _ad_dupguard_test.nx_ad_selfmeasure_test.nx_autorun_targets_gate_authored.nxnx_autorun_daemon.nx
structs
| none |
consts
| 13 | const ADC_MAGIC_8192: i64 = 8192 |
| 15 | const ADC_MAXTGT: i64 = 8 |
| 16 | const ADC_NAMECAP: i64 = 64 |
functions
| 31 | func ad_acquire_lock(path: *u8) -> i64 |
| 37 | func adc_w(fd: i64, s: *u8) -> i64 { var n: i64=0; while s[n]!=(0 as u8){n=n+1} sys_write(fd,s,n); return 0 } |
| 42 | func adc_wn(fd: i64, v: i64) -> i64 { nxi_fd(fd, v); return 0 } |
| 44 | func adc_read(path: *u8, buf: *u8, cap: i64) -> i64 |
| 56 | func adc_targets(confpath: *u8, arena: *u8) -> i64 |
| 108 | func adc_run_one(name: *u8, outpath: *u8) -> i64 |
| 132 | func adc_beat(confpath: *u8, outpath: *u8, logpath: *u8) -> i64 called by 3: mainmainad_beat calls 8: sys_mmapadc_targetssys_now_realtime_secsys_openat_appendadc_run_oneadc_w+2 |