chip8/src/main.c

53 lines
1.4 KiB
C

#include <gint/display.h>
#include <gint/keyboard.h>
#include <gint/bfile.h>
#include "Chip8.h"
#include "opcode.h"
struct Chip8 chip8 = {
.PC = 0x200,
.memory= { //bitmap for the fonts
0xF0, 0x90, 0x90, 0x90, 0xF0, //0
0x20, 0x60, 0x20, 0x20, 0x70, //1
0xF0, 0x10, 0xF0, 0x80, 0xF0, //2
0xF0, 0x10, 0xF0, 0x10, 0xF0, //3
0x90, 0x90, 0xF0, 0x10, 0x10, //4
0xF0, 0x80, 0xF0, 0x10, 0xF0, //5
0xF0, 0x80, 0xF0, 0x90, 0xF0, //6
0xF0, 0x10, 0x20, 0x40, 0x40, //7
0xF0, 0x90, 0xF0, 0x90, 0xF0, //8
0xF0, 0x90, 0xF0, 0x10, 0xF0, //9
0xF0, 0x90, 0xF0, 0x90, 0x90, //A
0xE0, 0x90, 0xE0, 0x90, 0xE0, //B
0xF0, 0x80, 0x80, 0x80, 0xF0, //C
0xE0, 0x90, 0x90, 0x90, 0xE0, //D
0xF0, 0x80, 0xF0, 0x80, 0xF0, //E
0xF0, 0x80, 0xF0, 0x80, 0x80 //F
}};
int main(void)
{
int file_handler;
uint16_t const * pathname = u"\\\\fls0\\PUZZLE.ch8";
dclear(C_BLACK);
dupdate();
file_handler = BFile_Open(pathname, BFile_ReadOnly);
/* if(file_handler > 0)
{
dtext(1,1,"reading", C_BLACK, C_WHITE);
dupdate();
getkey();
}
if(BFile_Read(file_handler, &chip8.memory[0x200], 3000,-1) > 0)
{
dtext(1,1,"reading", C_BLACK, C_WHITE);
dupdate();
getkey();
}*/
BFile_Read(file_handler, &chip8.memory[0x200], 264,-1);
while(1)
{
execute();
}
return 1;
}