nx_pe_dll_d3d11ctx.nx
buildroot/runtime/nx_pe_dll_d3d11ctx.nx
about
nx_pe_dll_d3d11ctx.nx -- ACCEPTANCE SLICE: a real multi-interface D3D11 render through the COM API. Data-driven
generation of TWO vtables -- ID3D11Device (43 slots) + ID3D11DeviceContext (108 slots) -- from slot tables. A foreign
process: create device -> dev->GetImmediateContext(&ctx) [dev slot 40] -> dev->CreateRenderTargetView(buf,..,&rtv)
[dev slot 9] -> ctx->ClearRenderTargetView(rtv, FLOAT[4]) [ctx slot 50] -> the render target buffer is filled with the
UNORM8 color (round(f*255), the D3D spec already WARP-validated). Object mem: [0]dev_vtbl [1]dev_rc [2]ctx_vtbl [3]ctx_rc
[4]rtv_buffer; context=&mem[2], RTV=&mem[4]. Method bodies = sovereign nx_cc NishiLang (float via sys_mmap-free nx_f32_hw);
vtables+factory+thunks = sovereign emitter glue. Graded vs Microsoft <d3d11.h> slots. ⚠baked @ fixed base 0x180000000.
Input /tmp/nishi_export_lib.s Output knowledge/nishi_d3d11ctx.dll license_tier: ORIGINAL expect_exit: 0
dependencies 3 imports · 0 importers
imports: nx_syscalls.nxnxasm_x86.nxnx_pe_writer.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
| 13 | const N_DEV: i64 = 43 |
| 14 | const N_CTX: i64 = 108 |
functions
| 16 | func d11_puts(s: *u8) -> i64 { var n: i64=0; while s[n]!=(0 as u8){n=n+1} sys_write(1,s,n); return 0 } |
| 17 | func d11_putn(v: i64) -> i64 { let b: *u8=sys_mmap(32) as *u8; var x: i64=v; var ng: i64=0; if x<0{ng=1;x=0-x} var i: i64=31; if x==0{b[i]=48 as u8;i=i-1} while x>0{b[i]=(48+x%10) as u8;x=x/10;i=i-1} if ng==1{b[i]=45 as u8;i=i-1} sys_write(1,(b as i64+i+1) as *u8,31-i); return 0 } |
| 18 | func d11_wstr(buf: *u8, off: i64, s: *u8) -> i64 { var i: i64=0; while s[i]!=(0 as u8){ buf[off+i]=s[i]; i=i+1 } buf[off+i]=0 as u8; return i+1 } called by 1: d11_emit |
| 20 | func d11_assemble(src: *u8, n: i64, out: *u8, out_cap: i64, names: *i64, offs: *i64, cnt: i64) -> i64 |
| 50 | func d11_thunk(buf: *u8, tco: i64, moff: i64) -> i64 |
| 65 | func d11_dev_slot(s: i64) -> i64 called by 1: d11_emit |
| 74 | func d11_ctx_slot(s: i64) -> i64 called by 1: d11_emit |
| 82 | func d11_emit(buf: *u8, code: *u8, code_len: i64, offs: *i64) -> i64 |
| 157 | func main() -> i64 |