2018-11-10 23:16:32 +00:00
|
|
|
#ifndef sgb_h
|
|
|
|
#define sgb_h
|
2018-11-15 23:53:01 +00:00
|
|
|
#include "gb_struct_def.h"
|
|
|
|
#include <stdint.h>
|
|
|
|
#include <stdbool.h>
|
2018-11-10 23:16:32 +00:00
|
|
|
|
|
|
|
#ifdef GB_INTERNAL
|
2018-11-15 23:53:01 +00:00
|
|
|
typedef struct {
|
|
|
|
uint8_t command[16 * 7];
|
|
|
|
uint16_t command_write_index;
|
|
|
|
bool ready_for_pulse;
|
|
|
|
bool ready_for_write;
|
|
|
|
bool ready_for_stop;
|
|
|
|
bool disable_commands;
|
|
|
|
|
|
|
|
/* Screen buffer */
|
|
|
|
uint8_t screen_buffer[160 * 144];
|
|
|
|
/* Multiplayer Input */
|
|
|
|
uint8_t player_count, current_player;
|
|
|
|
} GB_sgb_t;
|
|
|
|
|
2018-11-10 23:16:32 +00:00
|
|
|
void GB_sgb_write(GB_gameboy_t *gb, uint8_t value);
|
2018-11-14 22:21:21 +00:00
|
|
|
void GB_sgb_render(GB_gameboy_t *gb);
|
2018-11-15 23:53:01 +00:00
|
|
|
|
2018-11-10 23:16:32 +00:00
|
|
|
#endif
|
|
|
|
|
|
|
|
#endif
|