Week 1 – Getting started.

The first week of GSoC was a slow one for me. I had my semester-end exams which kept me occupied for most of the week. So instead of starting with writing code I decided to instead spend time on some other things.

First was going through theย Pro Git book for a better understanding of how git works and it helped me a lot. My previous knowledge of git was limited to a bunch of commands I picked up from here and there which meant I had no idea of what’s possible to do and what isn’t. I can now actually understand why things are the way they are and can do better than just copying commands from stackoverflow and hope that it works.

Second was to find some C64 games which are also supported by spatterlight for testing my implementation. Luckily there’s a set of game on ifarchive I can use. While I can’t run spatterlight myself because it’s only available for macs, I can look into the source code and sure enough those games are also supported by it.

The file size and checksum matches ๐Ÿ™‚

I started working on adding these games to detection which is when I encountered a minor bug. The Scott engine has a list of supported games along with their filesizes and md5 hash. When adding a new game, the file is matched against this list but a wrong condition caused it to match with the first entry in the list with the same filesize. This wasn’t a problem till now because every supported game had a different file size but the C64 games happen to be of the same size. I fixed it and sure enough, the games are now detected properly.

An easy fix

Now that the games are detected and can be loaded, the next thing to work on is loading the game data and that’s what I am doing right now. It’s a bit involved and might be the hardest part of this task so I hope I can make some good progress in the coming week.

Hello world!

Welcome to my blog!

I am Avijeet Maurya and I’ll be a part of Google Summer of Code this year. This is great opportunity for me to learn some new things and work alongside some experienced people so I am really excited for this journey.

In my first blog post I’d like to share my pre-GSoC experience with ScummVM. I had known about ScummVM for quite some time now so I immediately decided to try and see if I could participate as a contributor here. I had no experience with working on a codebase as big as ScummVM’s and I was very overwhelmed when I first cloned the repo and started going through it. Luckily there’s a very comprehensive resource with a lot of helpful info on about everything you need to know as a beginner and I found myself referring to it a lot in the following weeks.

I found an appropriate task to get me started with contributing to ScummVM and after a few weeks of coding I finally managed to finish it.

Thanks to Jaderlund for suggesting the task!

There were many problems I encountered along the way, the biggest being my lack of git knowledge which delayed my PR by quite some time but I received a lot of help from the ScummVM team, especially from DreamMaster who helped me a lot with this task.

Finally merged!

My proposal for GSoC involves working on several engines which are already in ScummVM but with an incomplete implementation. I’ll be starting with continuing my work on the scott sub-engine to add support for more platforms and games to it. More details will be in the coming blog posts so look forward to those!