Koder Heaven

Hello World

FPGA progress

I’ll document my FPGA progress here. I use a Xilinx Spartan6 on some Chink board which i bought from ebay a while ago. The git repo can be found here: https://github.com/qwqw330/vga_fpga


At first I wanted to add a VGA, because it is always good to have a nice output with super awesome colors n shit. Colors and Timings seem to work for 800x600@60Hz. All the timings are from here: http://tinyvga.com/vga-timing/800x600@60Hz

Next step: Drawing a pattern with some kind of framebuffer - maybe in lower resolution.



Got the framebuffer more or less ready. A working, but very low resolution (160x120 stretched to 800x600), and still a bit of wobble, but that should not bother right now.


Note for myself: Overengineering is never good. Do dumb things first. If it works then work your way up. TIL: KISS, ffs. Since i don’t have enough space for a framebuffer i need to calculate everypixel everytime. But this just works out fine. See:

Lesson of the day: Never trust your despressions, KISS and
BTW: Final register Status is 123 Flipfops. Yesterday it was 60k Flipflops. So there is a little difference. **15.09.2018** Nothing much to say today. Just added quick controls. Functionality to come. Btw: I am working now at full resolution of 800x600 and it works fine. The tile is 20x20px


Getting pong ready is getting closer. Finally been able to fix my vga flickering and now it looks kinda beautiful. All updated kode is in my repository. pic related

Also added ebin tile that jumps back an forth if you hit it. Real pong comin’ soon ™


Dear diary, today was a pretty good day. The ball is finally a circle, got a score counter (only upto 9, but nvm), improved my code a bit and finally free’d up 11 i/o-pins which were not needed for vga (since i only do 3 bit colors rn) and then i could add some external controls and the shitty buttons on that dev-board are not needed anymore. Good thing was i built a small button circuit a few days ago for testing so that i don’t need to wire up a breadboard when i need to try some button inputs. Gotta design a small gamepad and a neat case then. Pictures and webm related:


Fugg. Finally did it. Still a few flaws/bugs and minor esthetic shit, but it works for now. Webm related. Kode is on gitlab