Olimex Support Forum

ARM => ATMEL => Topic started by: Digimorf on December 06, 2012, 08:51:28 PM

Title: Demo PACMAN on OLIMEX SAM3-P256 board
Post by: Digimorf on December 06, 2012, 08:51:28 PM
Hi to everybody,
I have recently started to develop a demo game for the ARM Cortex M3.

I have chosen a SAM3-P256 board to build the video game because its prototype area is very useful to put all the components I need for video/audio generation and the interface of the controller.

This project involves the design of a simple VGA video driver that embeds a tile and sprite engine. Sound generation, IO reading from a common ATARI joystick and a lot of programming in C/C++.

My Goal is to practice the ARM Cortex M3 programming by writing a demo PACMAN using only C/C++ ad not inline assembler.  8)

This is the link to the video of the actual version of the demo:
https://www.youtube.com/watch?v=t61p9oB8IuI (https://www.youtube.com/watch?v=t61p9oB8IuI)

I hope you will enjoy it!
Title: Re: Demo PACMAN on OLIMEX SAM3-P256 board
Post by: olimex on December 06, 2012, 09:30:08 PM
wow :D well done!
Title: Re: Demo PACMAN on OLIMEX SAM3-P256 board
Post by: Digimorf on December 09, 2012, 01:07:23 PM
Thank you very much. :)
Soon some more information about this demo.
Title: Re: Demo PACMAN on OLIMEX SAM3-P256 board
Post by: Digimorf on December 16, 2012, 12:46:33 PM
Here it is another update.
Now the demo Pacman is fully playable.

http://youtu.be/qejeZYZenOs

These are the basic features:

- 5 levels of difficulty where ghosts become more aggressive.
  Their AI increases with the number of the level the time of CHASE.

- Extra bonuses at
  4 ghost eaten after an energy pill is eaten.
  If the player dies or another pill is eaten the ghost count resets.

- Extra life at
  5000 pt.

- Score table
  Dot = 10 pt.
  Energy pill = 100 pt.
  Ghost = 50 pt.
  All 4 ghosts   = 500 pt.
  Bonus   = ( 1000 * level number ) pt.

The game ends when the player runs out of lives or it reach the last level of difficulty. Soon I will build a dual channel tone generator with a pitch shifter and an envelope generator to play a basic music and some sound effects.

Hope you will enjoy the video!
Title: Re: Demo PACMAN on OLIMEX SAM3-P256 board
Post by: olimex on December 16, 2012, 06:30:23 PM
this is amazing, are you going to blog this project somewhere and to release the code?
Title: Re: Demo PACMAN on OLIMEX SAM3-P256 board
Post by: Digimorf on December 16, 2012, 10:49:11 PM
Thank you very much.
I'm not sure what I will do at the end of this project. The work behind blogging this project is really interesting but it can be a huge work. Actually the code is long, and there are several things to write about such as the VGA driver, the sprites and tiles engine, the AI etc...
I need to thin about it.
There is still some work to do, then I will see :)