#include <pitrex/pitrexio-gpio.h> #include <vectrex/vectrexInterface.h> #ifndef TRUE #define TRUE (0==0) #define FALSE (!TRUE) #endif int tx(int x) { // rescale return x*50; } int ty(int y) { return y*50; } void line(int xl, int yb, int xr, int yt) { v_directDraw32(tx(xl),ty(yb), tx(xr),ty(yt), 64); } void DrawFrame(void) { int width, height, x, y, step; v_WaitRecal(); //v_doSound(); v_setBrightness(64); /* set intensity of vector beam... */ v_readButtons(); v_readJoystick1Analog(); //v_playAllSFX(); v_setBrightness(60); height = 180; width = 80; x = 240; for (step = 0; step < 4; step++) { x = x - width; y = y - height; width = width*2/3; height = height*2/3; } line(-240,-180, -x,-height); line(x,height, 240,180); line(-240,180, -x,height); line(x,-height, 240,-180); height = 180; width = 80; x = 240; for (step = 0; step < 5; step++) { line(-x, -height, -x, height); line(x, height, x, -height); x = x - width; y = y - height; width = width*2/3; height = height*2/3; } } int main(int argc, char **argv) { vectrexinit(1); v_init(); usePipeline = 1; v_setRefresh(60); for (;;) DrawFrame(); return 0; }