Back to list
nethercore-systems

zx-ffi-reference

by nethercore-systems

1🍴 0📅 Jan 15, 2026

SKILL.md


name: ZX FFI Reference description: | ZX console FFI bindings reference. Triggers on "ZX FFI", "zx.rs", "ZX API", "ZX functions", "ZX rendering", "ZX input", "ZX audio".

Load references when:

  • Render API details -> references/render-api.md
  • Input API details -> references/input-api.md
  • Audio API details -> references/audio-api.md
  • Full FFI -> Read nethercore/include/zx.rs directly version: 1.0.0

ZX FFI Reference

The ZX console provides 250+ FFI functions. Always read nethercore/include/zx.rs for accurate signatures.

FFI Categories

CategoryKey FunctionsFind In zx.rs
Systemdelta_time, tick_count, logLines 1-100
Randomrandom, random_range, random_f32Search "random"
Inputbutton_held, button_pressed, left_stick_xSearch "button"
Cameracamera_set, camera_fovSearch "camera"
Transformspush_translate, push_rotate_y, push_scaleSearch "push_"
Meshesload_mesh, draw_mesh, cube, sphereSearch "mesh"
Texturesload_texture, texture_bindSearch "texture"
Materialsmaterial_albedo, material_mre, material_normalSearch "material"
Audioload_sound, play_sound, music_playSearch "sound"
2D Drawingdraw_sprite, draw_text, draw_rectSearch "draw_"
Environmentdraw_env, env_gradientSearch "env_"
Debugdebug_register_*, debug_watch_*, debug_group_*Search "debug_"

Init-Only Functions

Must call only during init():

  • set_tick_rate(rate) - 0=24fps, 1=30fps, 2=60fps, 3=120fps
  • set_clear_color(color) - 0xRRGGBBAA
  • render_mode(mode) - 0=Lambert, 1=Matcap, 2=PBR, 3=Hybrid
  • All rom_*(), load_*(), procedural mesh functions

Render-Only Functions

Call only during render():

  • All draw_* functions
  • camera_set(), camera_fov()
  • push_translate(), push_rotate_y(), push_scale()
  • texture_bind(), font_bind()
  • begin_pass(), begin_pass_stencil_write()

Asset Loading

// In init()
let tex = rom_texture_str("player");
let mesh = rom_mesh_str("character");
let sfx = rom_sound_str("jump");
let music = rom_music_str("theme");

Transform Stack

// In render()
push_translate(x, y, z);
push_rotate_y(angle_degrees);
push_scale_uniform(scale);
draw_mesh(MESH);
push_identity();  // Reset

Coordinate System

  • Y-up, right-handed, -Z forward
  • When yaw=0, camera looks toward -Z
  • Angles in degrees for FFI functions

Score

Total Score

60/100

Based on repository quality metrics

SKILL.md

SKILL.mdファイルが含まれている

+20
LICENSE

ライセンスが設定されている

+10
説明文

100文字以上の説明がある

0/10
人気

GitHub Stars 100以上

0/15
最近の活動

3ヶ月以内に更新がある

0/10
フォーク

10回以上フォークされている

0/5
Issue管理

オープンIssueが50未満

+5
言語

プログラミング言語が設定されている

+5
タグ

1つ以上のタグが設定されている

0/5

Reviews

💬

Reviews coming soon