#ifndef GBC_RENDER_H #define GBC_RENDER_H #include "gb.h" void term_init(void); void term_restore(void); void render_frame(GB *gb); void render_force_full(void); // force a complete repaint next frame void render_set_hud(int frameskip, bool turbo); // update HUD readout // Poll keyboard + control FIFO, update gb->buttons. False if quit requested. bool input_poll(GB *gb); // Optional external control channel: a named pipe (FIFO) that accepts button // commands (see README). Safe to call once at startup. void input_open_fifo(const char *path); void input_close_fifo(void); // Returns true once for each pending fast-forward (turbo) toggle keypress. bool input_take_turbo(void); // Net frameskip adjustment requested via '[' / ']' since last call. int input_take_frameskip_delta(void); #endif