code wiki / (root) / nx_solar_system_catalog.nx

nx_solar_system_catalog.nx

buildroot/runtime/nx_solar_system_catalog.nx

37107 B728 linesdepth 3pulls 3 transitivereach 1 importersview sourcekind tool
docsdependenciesstructsconstsfunctions

about

nx_solar_system_catalog.nx -- catalog of solar-system bodies. Cross-cutting Substrate C foundational data primitive per nxc2/docs/NISHI_GAME_ENGINE_ROADMAP.md "Solar system macro- benchmark." Holds physical parameters (mass, radius, orbit, composition flags) for every major solar-system body the substrate generates. FULL CATALOG (per feedback-maximum-capability-no-simplification cardinal, 2026-05-16): 37 bodies covering all 5 categories: - 1 star (Sun) - 8 planets (Mercury -> Neptune) - 13 major moons (Luna, Phobos, Deimos, 4 Galileans, Titan + 3 Saturn icy, Titania, Oberon, Triton) - 5 dwarf planets (Ceres, Pluto, Haumea, Makemake, Eris) - 3 representative asteroids (Vesta, Pallas, Hygiea) - 3 well-known comets (1P/Halley, C/1995 O1 Hale-Bopp, 2I/Borisov interstellar) - 3 TNOs (Sedna, Quaoar, Orcus) Per-body fields: ID, kind, radius_km, mass_e20kg (0 for sub-Phobos bodies where Q14 underflows), semi-major axis (AU for solar orbits; thousands-km for moon orbits relative to their parent), orbital period (days), rotation period (hours), atmosphere flag, rings flag, PARENT BODY ID (NX_BODY_SUN for planets/dwarfs/asteroids/TNOs; parent planet for moons; 0 - 1 for the Sun itself). Data source: NASA JPL Horizons + Wikipedia infoboxes for the physical parameters. Per cardinal `feedback-no-third-party-trust-native-or-nothing`: these are PUBLIC-DOMAIN scientific reference values (NASA is US federal civil-service work, TIER_0_UNENCUMBERED). No copyrighted imagery or text absorbed -- only numbers. Per cardinal `feedback-procgen-causal-growth-not-direct-sampling`: these parameters are the CAUSAL INPUTS to per-body generators (atmosphere -> climate -> biome -> surface features). Without this catalog, the per-body generators would be guessing. Q14 conventions across the catalog:

dependencies 3 imports · 1 importers

nx_syscalls.nx nx_hal.nx nx_tier.nx nx_solar_system_catalog.nx nx_body_anchors.nx

imports: nx_syscalls.nxnx_hal.nxnx_tier.nx

imported by: nx_body_anchors.nx

call flow from main pre-order; caps 40 nodes / depth 6 declared; ↻ = already shown

main nx_hal_exit nx_hal_active_shim nx_hal_exit_linux nx_hal_exit_bare_metal nx_hal_exit_nishi_silicon nx_solar_body_id_is_valid nx_celestial_kind_is_valid nx_solar_body_kind nx_solar_body_radius_km_q1 nx_solar_body_semi_major_a nx_solar_body_orbital_peri nx_solar_body_rotation_per nx_solar_body_has_atmosphe nx_solar_body_has_rings nx_solar_body_mass_e20kg_q nx_solar_body_parent_id

structs

none

consts

64const NX_MAGIC_695700: i64 = 695700
65const NX_MAGIC_2440: i64 = 2440
66const NX_MAGIC_6052: i64 = 6052
67const NX_MAGIC_6371: i64 = 6371
68const NX_MAGIC_3390: i64 = 3390
69const NX_MAGIC_69911: i64 = 69911
70const NX_MAGIC_58232: i64 = 58232
71const NX_MAGIC_25362: i64 = 25362
72const NX_MAGIC_24622: i64 = 24622
73const NX_MAGIC_1737: i64 = 1737
74const NX_MAGIC_1821: i64 = 1821
75const NX_MAGIC_1561: i64 = 1561
76const NX_MAGIC_2634: i64 = 2634
77const NX_MAGIC_2410: i64 = 2410
78const NX_MAGIC_2575: i64 = 2575
79const NX_MAGIC_1353: i64 = 1353
80const NX_MAGIC_1188: i64 = 1188
81const NX_MAGIC_1163: i64 = 1163
82const NX_MAGIC_19890000000: i64 = 19890000000
83const NX_MAGIC_3301: i64 = 3301
84const NX_MAGIC_48675: i64 = 48675
85const NX_MAGIC_59720: i64 = 59720
86const NX_MAGIC_6417: i64 = 6417
87const NX_MAGIC_18981300: i64 = 18981300
88const NX_MAGIC_5683300: i64 = 5683300
89const NX_MAGIC_868100: i64 = 868100
90const NX_MAGIC_1024100: i64 = 1024100
91const NX_MAGIC_1482: i64 = 1482
92const NX_MAGIC_1076: i64 = 1076
93const NX_MAGIC_1345: i64 = 1345
94const NX_MAGIC_1524: i64 = 1524
95const NX_MAGIC_5203: i64 = 5203
96const NX_MAGIC_9539: i64 = 9539
97const NX_MAGIC_19180: i64 = 19180
98const NX_MAGIC_30070: i64 = 30070
99const NX_MAGIC_16000: i64 = 16000
100const NX_MAGIC_6400: i64 = 6400
101const NX_MAGIC_2766: i64 = 2766
102const NX_MAGIC_3948: i64 = 3948
103const NX_MAGIC_4317: i64 = 4317
104const NX_MAGIC_4571: i64 = 4571
105const NX_MAGIC_6778: i64 = 6778
106const NX_MAGIC_2362: i64 = 2362
107const NX_MAGIC_2773: i64 = 2773
108const NX_MAGIC_3140: i64 = 3140
109const NX_MAGIC_1782: i64 = 1782
110const NX_MAGIC_1800: i64 = 1800
111const NX_MAGIC_4348: i64 = 4348
112const NX_MAGIC_3927: i64 = 3927
113const NX_MAGIC_4333: i64 = 4333
114const NX_MAGIC_10759: i64 = 10759
115const NX_MAGIC_30688: i64 = 30688
116const NX_MAGIC_60182: i64 = 60182
117const NX_MAGIC_1669: i64 = 1669
118const NX_MAGIC_1595: i64 = 1595
119const NX_MAGIC_1346: i64 = 1346
120const NX_MAGIC_1681: i64 = 1681
121const NX_MAGIC_90560: i64 = 90560
122const NX_MAGIC_103774: i64 = 103774
123const NX_MAGIC_112897: i64 = 112897
124const NX_MAGIC_203830: i64 = 203830
125const NX_MAGIC_1325: i64 = 1325
126const NX_MAGIC_1686: i64 = 1686
127const NX_MAGIC_2034: i64 = 2034
128const NX_MAGIC_27759: i64 = 27759
129const NX_MAGIC_924795: i64 = 924795
130const NX_MAGIC_4150000: i64 = 4150000
131const NX_MAGIC_11400: i64 = 11400
132const NX_MAGIC_104744: i64 = 104744
133const NX_MAGIC_89530: i64 = 89530
134const NX_MAGIC_1408: i64 = 1408
135const NX_MAGIC_5832: i64 = 5832
136const NX_MAGIC_100000: i64 = 100000
139const NX_SOLAR_Q: nx_int = 16384
144const NX_BODY_SUN: nx_int = 0
145const NX_BODY_MERCURY: nx_int = 1
146const NX_BODY_VENUS: nx_int = 2
147const NX_BODY_EARTH: nx_int = 3
148const NX_BODY_MARS: nx_int = 4
149const NX_BODY_JUPITER: nx_int = 5
150const NX_BODY_SATURN: nx_int = 6
151const NX_BODY_URANUS: nx_int = 7
152const NX_BODY_NEPTUNE: nx_int = 8
155const NX_BODY_LUNA: nx_int = 9 // Earth's moon
156const NX_BODY_PHOBOS: nx_int = 10
157const NX_BODY_DEIMOS: nx_int = 11
158const NX_BODY_IO: nx_int = 12
159const NX_BODY_EUROPA: nx_int = 13
160const NX_BODY_GANYMEDE: nx_int = 14
161const NX_BODY_CALLISTO: nx_int = 15
162const NX_BODY_TITAN: nx_int = 16
163const NX_BODY_ENCELADUS: nx_int = 17
164const NX_BODY_RHEA: nx_int = 18
165const NX_BODY_IAPETUS: nx_int = 19
166const NX_BODY_TITANIA: nx_int = 20
167const NX_BODY_OBERON: nx_int = 21
168const NX_BODY_TRITON: nx_int = 22
171const NX_BODY_CERES: nx_int = 23
172const NX_BODY_PLUTO: nx_int = 24
173const NX_BODY_HAUMEA: nx_int = 25
174const NX_BODY_MAKEMAKE: nx_int = 26
175const NX_BODY_ERIS: nx_int = 27
178const NX_BODY_VESTA: nx_int = 28
179const NX_BODY_PALLAS: nx_int = 29
180const NX_BODY_HYGIEA: nx_int = 30
183const NX_BODY_HALLEY: nx_int = 31 // 1P/Halley
184const NX_BODY_HALE_BOPP: nx_int = 32 // C/1995 O1
185const NX_BODY_BORISOV: nx_int = 33 // 2I/Borisov (interstellar)
188const NX_BODY_SEDNA: nx_int = 34
189const NX_BODY_QUAOAR: nx_int = 35
190const NX_BODY_ORCUS: nx_int = 36
192const NX_SOLAR_BODY_COUNT: nx_int = 37
196const NX_CELESTIAL_KIND_STAR: nx_int = 0
197const NX_CELESTIAL_KIND_TERRESTRIAL_PLANET: nx_int = 1
198const NX_CELESTIAL_KIND_GAS_GIANT: nx_int = 2
199const NX_CELESTIAL_KIND_ICE_GIANT: nx_int = 3
200const NX_CELESTIAL_KIND_DWARF_PLANET: nx_int = 4 // queued S5
201const NX_CELESTIAL_KIND_ROCKY_MOON: nx_int = 5 // queued S2
202const NX_CELESTIAL_KIND_ICY_MOON: nx_int = 6 // queued S2-S4
203const NX_CELESTIAL_KIND_ASTEROID: nx_int = 7 // queued S6
204const NX_CELESTIAL_KIND_COMET: nx_int = 8 // queued S7
205const NX_CELESTIAL_KIND_KUIPER_OBJECT: nx_int = 9 // queued S8
207const NX_CELESTIAL_KIND_COUNT: nx_int = 10

functions

210func nx_solar_body_id_is_valid(id: nx_int) -> nx_int
called by 1: main
216func nx_celestial_kind_is_valid(k: nx_int) -> nx_int
called by 1: main
234func nx_solar_body_kind(id: nx_int) -> nx_int
called by 1: main
284func nx_solar_body_parent_id(id: nx_int) -> nx_int
called by 1: main
308func nx_solar_body_radius_km_q14(id: nx_int) -> nx_int
called by 1: main
370func nx_solar_body_mass_e20kg_q14(id: nx_int) -> nx_int
called by 1: main
408func nx_solar_body_semi_major_axis_au_q14(id: nx_int) -> nx_int
called by 1: main
459func nx_solar_body_orbital_period_days_q14(id: nx_int) -> nx_int
called by 1: main
509func nx_solar_body_rotation_period_hours_q14(id: nx_int) -> nx_int
called by 1: main
527func nx_solar_body_has_atmosphere(id: nx_int) -> nx_int
called by 1: main
553func nx_solar_body_has_rings(id: nx_int) -> nx_int
called by 1: main
567func main() -> i64