Saturday, July 28, 2012

MSP430 Launchpad GamingPack

TEAM MEMBERS

Max Thrun
Brittany Finch
Kathleen Foster

PROJECT DESCRIPTION

Based on the Gameduino, the GamingPack transforms your MSP430 LaunchPad into a full fledged gaming console complete with audio / video output and two Nintendo controller sockets. Just hookup your computer monitor, plug in a controller and you'll be writing games in no time.

PROJECT FEATURES

- 400x300 Pixel VGA output
- 256 16x16 Pixel simultaneous sprite images
- Up to 256 colors per sprite
- 2 Nintendo (NES) controllers
- Nostalgia


Video




http://www.youtube.com/watch?v=hDE0ZfmsVrw

Design



The schematic capture and PCB layout were done in CadSoft EAGLE. The PCBs were fabricated by Silver Circuits










The GamePack is designed around a Xilinx Spartan 3A 200K Gate FPGA. It implements the same sprite rendering core as the Gameduino and communicates to the LaunchPad via SPI. The FPGA bitstream configuration is stored on an external EEPROM which was programed using a FTDI FT2232D development board and Flashrom in Linux. The FPGA 1.2V internal core voltage is provided by a TI TLV70212 low drop out regulator.

A resistor DAC provides the various voltage levels for the VGA interface and audio is achieved by passing 2 channels of digital audio through a 4KHz low pass filter. An optional SPI EEPROM can be installed to store large game data such as images and level maps. Two status LEDs indicate power and SPI data transfer to the FPGA.

2 Nintendo (NES) controller sockets are included to provide a classic gaming experience. They are ideal for this project as the interface is simple and they can be easily purchased online or simply found in a box in your closet.









With only a month and a half to complete this project designing for test was important. The GamingPack includes a 10 pin header that can plug directly into a Saleae Logic Analyzer










Schematics, layout, and CadSoft EAGLE file can be found here.

Basic Examples


Several basic examples were developed to demonstrate and show off the various functionality of the GamingPack.



sprites_256 - Demonstates the hardwares ability to draw up to 256 sprites simultaneously



palettes - Shows each of the different color palette modes



scroll - Randomly generated scrolling terrain to show off the hardwares ability to smoothly scroll backgroud images



rotate - Example program showing the different rotation and mirror options



controllers - Small program to show how to read the NES controllers



background - Simple program showing how to display a background image



random_numbers - Shows how to use random numbers and draw text



sprite_walking - Example showing to how create a smooth walking animation



Source code for these basic examples: https://github.com/bear24rw/gamepack/tree/master/code/examples/basics

Game Examples


The GamingPack wouldn't be a gaming pack without a few games.




Breakout / Brick Breaker





Tetris





Space Invaders



Source code for the game examples: https://github.com/bear24rw/gamepack/tree/master/code/examples/games


Resources


https://github.com/bear24rw/gamepack
http://excamera.com/sphinx/gameduino

45 comments:

  1. Saw this on DP! Is this going to be up for sale? The guys on the forums @ 43oh.com will probably be interested.

    ReplyDelete
    Replies
    1. At the moment there is no immediate plans to sell these, although if there is enough interest I'd definitely be willing to consider it. The only thing holding me back at the moment is the price per unit is fairly high with low quantities.

      Delete
    2. You might hit the guys up at the 43oh.com forums. They have a lot of booster packs that they've made and sold. I'm sure there are a lot of people that might be interested, and maybe even someone who would pick up the project.

      Delete
    3. Yes you should definitely post this on 43oh.com I'm sure lots of people would be interested in buying one.

      Delete
    4. I'd definitely be interested in buying one. What's the price per unit for the low quantities, if you don't mind me asking?

      Delete
    5. //bear24rw.blogspot.com/2012/07/msp430-launchpad-gamingpack.html

      Delete
  2. This is awesome stuff! Just Wow :-D .. saw on DP.

    ReplyDelete
  3. I would be interested in buying one. Why don't you try Kickstarter in getting funding? I would be willing to advertise for you.

    Chuckt
    from bradsprojects.com/forum

    ReplyDelete
    Replies
    1. Kickstarter would be a great place to start.

      Delete
  4. SeeedStudio and Dangerouse Prototypes would help you manufacture, espeacially if it is opensource.

    ReplyDelete
  5. Wow that's pretty sweet! Love the video.

    ReplyDelete
  6. if the price is similiar to the gameduino I'm in.

    ReplyDelete
  7. Hep, I want one too! Which price each, approximatively, the highest?

    ReplyDelete
  8. C'mon, tell me how much you want to sell this kit soldered and ship it to my home in Portugal?

    *throws money to the screen*

    ReplyDelete
  9. Do you have it in your offer? What could be total cost (I mean including shipping to Poland) of the set (of course, containing everything, incl. controllers)?

    ReplyDelete
    Replies
    1. OK, got NES game controllers - therefore when/if you'll be ready to ship the kit (or assembled device), just drop me a line (and let me know, how much is it).

      Delete
  10. Content is the greatest source for expressing your feelings, throughts and precious time. Your post is fabulous and very meaningful.

    ReplyDelete
  11. Wow. This is an awesome post. I just got started using the MSP430 launchpad (it was $10 no $4.30, although its still a steal) and I found a great tutorial on the deep aspects of configuring it using this MSP430 Tutorial. once i finish with the tutorial i'm going to try and compile your code to start playing. Are you planning on selling pcb? keep up the good work.

    ReplyDelete
    Replies
    1. Hi Jay, unfortunately I don't have any plans to sell the pcb's at the moment.

      Delete
  12. I see that the cape is based on THE LCD3 cape. Does that mean that the existing LCD3 cape drivers work under X windows?

    ReplyDelete
  13. Nice to read this article will be very helpful in the future, share more info with us. Good job!elo boositng service

    ReplyDelete
  14. With today's modern society, the demanding needs of people are increasing. Not only beauty, eating and playing, but choosing a child's bedroom also requires a lot of factors. Because the bedroom is a place to rest, relax, study and sometimes also play a place for your baby. More: Phòng ngủ trẻ em, Giường tầng bé traiNội thất trẻ em

    ReplyDelete
  15. This blog was very nicely formatted; it maintained a flow from the first word to the last. top gun 2 lady gaga jacket

    ReplyDelete
  16. I have read your full post and I want to say that this is a very nice blog with beautiful images thank you to share this. Guardians of The Galaxy 3 Star Lord Jacket

    ReplyDelete
  17. Your website's ability to provide comprehensive guides on personal finance and investment attracts backlinks from individuals seeking financial literacy resources.Han Solo Brown Leather Jacket

    ReplyDelete
  18. Shows expertise in distilling intricate theories into practical advice.top gun maverick jacket

    ReplyDelete
  19. Connects the dots between unrelated theories, unlocking new perspectives.Kill Em With Comedy Hoodie

    ReplyDelete
  20. Links theories through abstract concepts that transcend disciplines.Kill Em With Comedy Hoodie

    ReplyDelete
  21. Your writing becomes a tapestry of metaphors and analogies. Tom Cruise Top Gun Jacket

    ReplyDelete
  22. Metaphors and analogies breathe vitality into your words, captivating readers. Tom Cruise Top Gun Jacket

    ReplyDelete
  23. The user is delighted by the site's easy-to-use and efficient search functionality. I Love La Hoodie

    ReplyDelete