diff --git a/SMILEBASIC/main.d b/SMILEBASIC/main.d index 8e230eb..d7f8b08 100644 --- a/SMILEBASIC/main.d +++ b/SMILEBASIC/main.d @@ -4,6 +4,7 @@ import std.conv; import std.file; import otya.smilebasic.parser; import otya.smilebasic.error; +import otya.smilebasic.petitcomputer; int main(string[] argv) { version(none) @@ -119,6 +120,8 @@ END { writeln(t); } + auto pc = new PetitComputer(); + pc.run(); readln(); return 0; } diff --git a/SMILEBASIC/petitcomputer.d b/SMILEBASIC/petitcomputer.d index dcdbfef..b8dc7a5 100644 --- a/SMILEBASIC/petitcomputer.d +++ b/SMILEBASIC/petitcomputer.d @@ -3,7 +3,35 @@ import derelict.sdl2.sdl; class PetitComputer { this() + { + } + void run() { DerelictSDL2.load(); + SDL_Init(SDL_INIT_VIDEO); + SDL_Window* window = SDL_CreateWindow("SMILEBASIC", SDL_WINDOWPOS_UNDEFINED, + SDL_WINDOWPOS_UNDEFINED, 400, 240, + SDL_WINDOW_SHOWN); + SDL_Renderer* renderer = SDL_CreateRenderer(window, -1, 0); + while (true) + { + SDL_Event event; + SDL_SetRenderDrawColor(renderer, 0, 0, 0, 255); + SDL_RenderClear(renderer); + SDL_RenderPresent(renderer); + while (SDL_PollEvent(&event)) + { + switch (event.type) + { + case SDL_KEYDOWN,SDL_QUIT: + return; + + default: + break; + } + } + } + SDL_DestroyWindow(window); + SDL_Quit(); } } \ No newline at end of file