My Projects

# Some interesting posts and personal projects I’ve worked on,

_______________________________________________________________

_______________________________________________________________

Game of Life for Windows Phone 7

Game of Life is a Windows Phone 7 application written in Silverlight which is based on Conway’s Game of Life. The post covers how to make use of gestures using the silverlight toolkit for windows phone, implementing pinch-to-zoom correctly and improving the performance of the application using BitmapCaching on visual elements. Follow the below link for more information on this,

Game of Life – Translation, rotation, scaling and the effect of ‘BitmapCache’ on performance

Here is a video explaining the inner workings,

Go To Top

_______________________________________________________________

Bombsweeper for Windows Phone 7

Bombsweeper for Windows Phone 7 is a mobile version of the classic Minesweeper game. It is written in C# using Windows Phone 7’s Silverlight application framework. Bombsweeper is my first major application written using C# and Silverlight, and provided for some great and fun learning experiences. The objective of the game is to flag all the bombs (or mines) as quickly as possible. The game play is simple, to uncover a tile you tap on it, and to flag a tile you tap-and-hold on the tile for a short duration. The game was published on the Windows Phone 7 marketplace on 19th Jan, 2011.

Some of the game features:

  • Two themes, Classic and Neo
  • 3 game levels; Beginner, Intermediate and Expert (the trial version includes only the Beginner level)
  • Top 5 scores for each level
  • Finger friendly and easy game play

Here are some of the sceenshots,

The game is available on the Windows Phone 7 marketplace, do check it out and let me know what you think, the following link will open the app if you have Zune software installed on your PC,

http://social.zune.net/redirect?type=phoneApp&id=e2553db1-ee18-e011-9264-00237de2db9e

Bombsweeper currently does not support tombstoning, so you can’t actually suspend and resume the game, a new instance of the game would start. I am waiting and watching the app download numbers, if it’s promising then I will work on adding tombstoning support, meanwhile I got some other projects that I need to work on.

Here is a video of the game in action (note that the actual performance on device is much better than in the emulator shown here)

Go to top

_______________________________________________________________

Minesweeper for Windows Mobile 6.x

Minesweeper is a mobile version of the classic Minesweeper game for the Windows Mobile 6.x platform. The game is written using C++ and the DirectDraw api’s supported by Windows Mobile.  The game runs on various versions of Windows Mobile like 5.0/6.0/6.5.  Here is a description of the game from the marketplace,

Description:

Mobile Minesweeper is a mobile version of the classic Minesweeper game that we all love. This game was designed keeping the small screen size and the touch capabilities of the phone in mind so as to provide a good user experience. The game runs on multiple resolutions, has two levels of play and maintains the top 5 scores of each level. The player uncovers a tile by clicking on it, and to flag a tile you just need to hold and press on a tile for a short duration. The player can also change settings related to game sounds and the duration of the ‘hold and press’.

Features:

  • Finger friendly
  • Has two levels of game play
  • Nice classic styled graphics

Here are a few screenshots of the application,

screenshot

screenshot screenshot

Here are some of the reviews from users,

Review Comment 1

Review Comment 2

Review Comment

Review Comment

Review Comment

More details about the application can be found in these posts,

Minesweeper approaches completion, slowly but steadily

Minesweeper: Getting started, App statistics and other details

Go to top

_______________________________________________________________________

Using HTC HD2’s accelerometer in Windows Phone 7 Emulator

When the Windows Phone 7 developers tools were released there was no support to simulate sensors like GPS, accelerometer etc on the emulator. I had an idea revolving around using my HTC HD’2 sensor data on the Windows Phone 7 emulator. I had to figure out a way to send the data from the physical device to the emulator running on the PC, and I went with using a WCF service. The WCF service is hosted inside a process running on the PC, a client application running on HD2 uploads the accelerometer data to the WCF service using WCF web api calls, another application running on the windows phone 7 emulator reads the data from the service, again, using web api calls, and uses it.

This project got some good recognition in the community and was covered on sites like WMPoweruser.com,

WMPoweruser coverage

Mentioned on Phone7 blog

Video demonstration and a tutorial covering the source code can be found on the below links,

Video demontration – HTC HD2, Accerlerometer and Windows Phone 7

Source Code – HTC HD2, Accelerometer and Windows Phone 7

the video,

Go To Top

______________________________________________________________________

Process Viewer for Windows Mobile 6.x

Process Viewer is simple Windows Mobile 6.x application which shows all the current running processes in the system and shows other details about each process like process id, number of threads running in the process, load address etc.

Here are the posts covering Process Viewer in detail,

Here is what is did over the weekend, Process Viewer, Part 1

Creating a simple UI application from scratch, Process Viewer, Part 2

Creating a simple UI application from scratch, Process Viewer, Part 3

Go To Top

______________________________________________________________________

DirectDraw for Windows Mobile 6.x – 12 parts

When I was learning DirectDraw, I thought I’d jot down my experiences and that led to this 12 part tutorial series on DirectDraw. The learning didn’t go in vain and was fruitful.

Here are the posts from the series,

Lets do some graphics, DirectDraw, Part 1

Lets do some graphics, DirectDraw, Part 2

Lets make the spaceship move! DirectDraw, Part 3

Lets make the spaceship move! DirectDraw, Part 4

Transparent Blitting, DirectDraw, Part 5

Lets make the spaceship move! DirectDraw, Part 6

Bouncing and Colliding Marbles, DirectDraw, Part 7

Bouncing and Colliding Marbles, DirectDraw, Part 8

Dragging the Marbles around, DirectDraw, Part 9

Combining the pieces, DirectDraw, Part 10

A glitch corrected, DirectDraw, Part 11

Skeletons of a game, DirectDraw, Part 12

Go To Top

______________________________________________________________________

Mathematics of Movement – 3 Parts

These are some of the posts I wrote when I was learning about the physics of movement and how to move objects from one place to another on screen, colliding and bouncing them off surfaces.

Here are the three posts,

The Mathematics of Movement, Part 1

The Mathematics of Movement, Part 2

The Mathematics of Movement, Part 3

Go To Top

______________________________________________________________________

Getting Device Information

Here we create a Win32 PC application which uses the embedded exe approach to get information about a windows mobile device connected to the PC. The application works by using the RapiConfig tool, DeviceInformation CSP and RAPI apis.

Getting Device Information – Embedded EXE, RAPI and more

Go To Top

______________________________________________________________________

How to embed an exe inside another exe as a resource and then launch it

As the title says, this post shows how to embed an exe inside another exe as a resource and then launch it using CreateProcess.

How to embed an exe inside another exe as a resource and then launch it

Go To Top

______________________________________________________________________