code wiki / _hdl_build / nx_game_racing_gate.nx

nx_game_racing_gate.nx

buildroot/runtime/_hdl_build/nx_game_racing_gate.nx

6538 B94 linesdepth 4pulls 7 transitivereach 0 importersview sourcekind gate/prooftopic game
docsdependenciesstructsconstsfunctions

dependencies 5 imports · 0 importers

nx_gate_gn.nx nx_gate_base.nx nx_game_raster.nx nx_png.nx nx_syscalls.nx nx_game_racing_gate.nx

imports: nx_gate_gn.nxnx_gate_base.nxnx_game_raster.nxnx_png.nxnx_syscalls.nx

imported by: nobody (leaf or entry point)

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

main gw sys_write sys_mmap r_reset r_dodge r_near gn r_render gr_clear gr_pack gr_rect r_lanex write_png sys_mmap ↻ png_g png_paeth png_sabs dfe_compress sys_mmap ↻ dfe_fill_tables dfe_deflate sys_mmap ↻ dfe_bits dfe_hash dfe_matchlen dfe_sym dfe_bits ↻ dfe_rev dfe_rev ↻ sys_munmap sys_munmap ↻ png_be32 png_adler32 png_crc32 sys_openat_wr sys_write ↻ sys_close sys_exit

structs

none

consts

none

functions

15func grow(name: *u8, ok: i64) -> i64 { if ok==1 { gw(" PASS " as *u8) } else { gw(" FAIL " as *u8) } gw(name); gw("
calls 1: gw
18func r_lanex(l: i64) -> i64 { return 24 + l*24 } // 3 lanes: x = 24, 48, 72
called by 1: main
19func r_reset(olane: *i64, oy: *i64, no: i64) -> i64 { var i: i64=0; while i<no { olane[i]=i%3; oy[i]=0-((i+1)*36); i=i+1 } return 0 }
called by 1: r_dodge
20func r_near(oy: *i64, olane: *i64, no: i64, py: i64, lane: i64, band: i64) -> i64 { // an active opp in `lane` within +/-band of py?
26func r_dodge(oy: *i64, olane: *i64, no: i64, py: i64, cur: i64) -> i64
33func r_render(fb: *i64, w: i64, h: i64, py: i64, plane: i64, olane: *i64, oy: *i64, no: i64, scroll: i64) -> i64
45func main() -> i64