Debug in progress...
This commit is contained in:
8
vdp.cpp
8
vdp.cpp
@@ -58,14 +58,16 @@ void vdp_init() {
|
|||||||
sdlRenderer = SDL_CreateRenderer(sdlWindow, -1, SDL_RENDERER_PRESENTVSYNC);
|
sdlRenderer = SDL_CreateRenderer(sdlWindow, -1, SDL_RENDERER_PRESENTVSYNC);
|
||||||
//SDL_SetRenderDrawBlendMode(sdlRenderer, SDL_BLENDMODE_BLEND);
|
//SDL_SetRenderDrawBlendMode(sdlRenderer, SDL_BLENDMODE_BLEND);
|
||||||
SDL_RenderSetLogicalSize(sdlRenderer, 152, 120);
|
SDL_RenderSetLogicalSize(sdlRenderer, 152, 120);
|
||||||
|
SDL_SetRenderDrawColor(sdlRenderer, palette[border][3], palette[border][2], palette[border][1], palette[border][0]);
|
||||||
|
|
||||||
|
for (int i = 0; i < 16 * 12; i++) screen_map[i] = i;
|
||||||
//jtexture texture = (jtexture)malloc(sizeof(jtexture_t));
|
//jtexture texture = (jtexture)malloc(sizeof(jtexture_t));
|
||||||
//FILE* f = fopen("font.png", "rb");
|
//FILE* f = fopen("font.png", "rb");
|
||||||
//if (!f) { error = 2; return; }
|
//if (!f) { error = 2; return; }
|
||||||
//int c;
|
//int c;
|
||||||
//int size = 128;
|
//int size = 128;
|
||||||
//Uint8* buffer = stbi_load_from_file(f, &size, &size, &c, 4);
|
//Uint8* buffer = stbi_load_from_file(f, &size, &size, &c, 4);
|
||||||
sdlTexture = SDL_CreateTexture(sdlRenderer, SDL_PIXELFORMAT_ABGR8888, SDL_TEXTUREACCESS_STATIC, 128, 128);
|
sdlTexture = SDL_CreateTexture(sdlRenderer, SDL_PIXELFORMAT_ARGB8888, SDL_TEXTUREACCESS_STATIC, 128, 128);
|
||||||
//SDL_UpdateTexture(sdlTexture, NULL, buffer, 128 * sizeof(Uint32));
|
//SDL_UpdateTexture(sdlTexture, NULL, buffer, 128 * sizeof(Uint32));
|
||||||
//SDL_SetTextureBlendMode(sdlTexture, SDL_BLENDMODE_BLEND);
|
//SDL_SetTextureBlendMode(sdlTexture, SDL_BLENDMODE_BLEND);
|
||||||
//stbi_image_free(buffer);
|
//stbi_image_free(buffer);
|
||||||
@@ -108,6 +110,7 @@ static void flip() {
|
|||||||
sb += 3584;
|
sb += 3584;
|
||||||
}
|
}
|
||||||
SDL_UpdateTexture(sdlTexture, NULL, screen_buffer, 128 * sizeof(Uint32));
|
SDL_UpdateTexture(sdlTexture, NULL, screen_buffer, 128 * sizeof(Uint32));
|
||||||
|
SDL_RenderClear(sdlRenderer);
|
||||||
SDL_RenderCopy(sdlRenderer, sdlTexture, &src, &dst);
|
SDL_RenderCopy(sdlRenderer, sdlTexture, &src, &dst);
|
||||||
SDL_RenderPresent(sdlRenderer);
|
SDL_RenderPresent(sdlRenderer);
|
||||||
}
|
}
|
||||||
@@ -155,7 +158,8 @@ void vdp_cmd_out(const unsigned char& value) {
|
|||||||
color = data_stack[0];
|
color = data_stack[0];
|
||||||
break;
|
break;
|
||||||
case VDP_CMD_BORDER:
|
case VDP_CMD_BORDER:
|
||||||
border = data_stack[0];
|
border = data_stack[0] & 0xF;
|
||||||
|
SDL_SetRenderDrawColor(sdlRenderer, palette[border][3], palette[border][2], palette[border][1], palette[border][0]);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
data_stack_pos = 0;
|
data_stack_pos = 0;
|
||||||
|
|||||||
4
vm.cpp
4
vm.cpp
@@ -93,7 +93,7 @@ t_in_port in_ports[256];
|
|||||||
|
|
||||||
unsigned char mem[65536];
|
unsigned char mem[65536];
|
||||||
const unsigned char* vm_program = mem;
|
const unsigned char* vm_program = mem;
|
||||||
int vm_pc = 0;
|
int vm_pc = 2;
|
||||||
int vm_cycles = 0;
|
int vm_cycles = 0;
|
||||||
t_stack vm_datastack;
|
t_stack vm_datastack;
|
||||||
t_stack vm_callstack;
|
t_stack vm_callstack;
|
||||||
@@ -122,7 +122,7 @@ static void load_program(const char* filename) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void vm_init(const char* filename) {
|
void vm_init(const char* filename) {
|
||||||
vm_pc = rX = rY = rZ = 0;
|
vm_pc = 2; rX = rY = rZ = 0;
|
||||||
vm_datastack.data = &mem[0x8800];
|
vm_datastack.data = &mem[0x8800];
|
||||||
vm_callstack.data = &mem[0x8900];
|
vm_callstack.data = &mem[0x8900];
|
||||||
vm_datastack.top = vm_callstack.top = 0;
|
vm_datastack.top = vm_callstack.top = 0;
|
||||||
|
|||||||
Reference in New Issue
Block a user