Showing posts with label game. Show all posts
Showing posts with label game. Show all posts

Wednesday, March 12, 2008

My New Toy: X360 Controller for Windows

It is my summer! And I am spending my free time playing Need for Speed Prostreet, learning some new programming skills, and prepare myself for the internship program at IBM Solution Delivery, Thailand which will start at 17th this month.

When I played Need for Speed Prostreet for the first time, I found that Microsoft Wireless Keyboard was not responsive enough for playing this kind of game.

So, I decided to buy a new toy :)



I bought it from Pantip, Thailand's biggest computer store [and software vendors' nightmare :P], at the price of 1500 THB which seems to be too expensive for a game controller. I bought the wired version because some people in the forum said that the wired version is more responsive than the wireless ones. The wireless version also costs around 1900 THB.

The design is exactly the same as XBOX360 version. It has two analog sticks, one D-pad and four buttons. Despite the fact that I am a SONY fanboy. I have to say that this design is great!




There are more things to note about the controller's package design. First, there was a green stick wrapped around the end of the USB cord to warn the users to install hardware driver before plug the controller into USB port. It is really a great package design technique which can prevent technical problems for most users.



Second, it has a part in its cord that is loosely connected. So when people walk over the cord and accidentally trapped by it. The cord is consequently taken apart. So, the damage is not done to the game console, or the USB port of the computer.





My brother seems happy playing with it too. Here is photo of my brother playing Need for Speed :)



Friday, September 21, 2007

FPGA Project Completed!




This semester I has enrolled in course Hardware Synthesis Lab. It was about designing an ASIC (Application Specific Integrated Circuit) using HDL (Hardware Description Language). With HDL, the circuit designers do not have to interfere with primitive elements such as AND, OR gates. Instead, they write a module specification in a human-readable language (VHDL, Verilog) and let the synthesizer do the rests. In my class, everyone has to use Verilog with Xilinx ISE Webpack with Xilinx Spartan-3 Starter kit board.

The final project assignment is to design the classic Pong game. The video is displayed through VGA interface in 640 x 480 8 colors mode. And the users can also control their paddles using PS/2 keyboard.

It took me a week to finish this project, Here is its screen shot. (I had took this photo with my phone. The famous PrntScrn is useless in this situation :P )



Only this FPGA board and a monitor needed to run the game!
No need for CPU!




While playing



Set of in-game objects


The really hard part in this project is to make the user interface looks good while you can use only 8 colors! My lab partner, Oei, helped me a big part in choosing the color for this design. To make the screen more beautiful, I decided to put my effort into finding a way to load an image data onto my board. It took me hours reading through Xilinx documentations to find a method to load initial values for Blocked RAM on Spartan-3. I will write an entry on this later when I am free.

In conclusion, this course show me what I can get from little Spartan-3 FPGA board. And how hard it is to make a little Pong game.

I would rather code this in Java or C# and get the result in a blink if I ever need to make my own version of Pong next time o__O