User:Buddha^/GSoC2007-ProjectDiary
2007-05-28 (Monday) - GSoC starts!
So the GSoC 2007's coding period started. I'm just getting started, I installed Ubuntu 7.04 on my Dell CPX laptop last saturday and got ScummVM to compile after some trying (Just playing with packages, knowing what to install etc. After all the needed packages were there, ./configure and make did the trick).
Right now I'm getting acquainted with ScummVM's internals & workings. And after knowing enough to do so I'll be working on AGI version fallback detection (sev did work on that previously).
Just installed Code::Blocks 2007-05-23 nightly build on my laptop.
So, I took some screenshots of most official AGI games. And submitted my first patch, woot! It was screenshots of Larry I (640x480, hq2x + aspect ratio correction turned on, opting + advpng -optimized).
2007-05-29 (Tuesday) - Taking screenshots of AGI games etc
Today I took and submitted screenshots for the following games (In addition to the Larry I screenshots I submitted yesterday):
Official Sierra AGI games:
- King's Quest I, II, III & IV
- Space Quest I & II
- Police Quest I
- Manhunter I & II
- Gold Rush!
- The Black Cauldron
- Mixed-Up Mother Goose
Fanmade AGI games:
- Voodoo Girl: Queen of the Darned
- Space Quest 0: Replicated
- Space Quest X: The Lost Chapter
- Serguei's Destiny 1
And I also made small thumbs for most of the games like "Larry's head thumb" for the Larry series and a "Sarien head thumb" for the Space Quest series etc.
2007-05-30 (Wednesday) - Starting work on WinAGI's wag-file loading
Installed MinGW and MSYS on my desktop machine (It's got Windows 2000 on it) and compiled ScummVM on it.
Worked on *.wag file loading.
2007-05-31 (Thursday) - Made a quick & ugly rudimentary parser for WinAGI's wag-file loading
Worked some more on *.wag file loading. I've already got a *.wag file parser but it's not pretty :). I'll have to convert it into something better suited for ScummVM.
2007-06-03 (Sunday) - Made class for WinAGI's properties
Made a Doxygen documented WagProperty class that represents a single property from a *.wag file (That can be the game's ID, the game's author's name, an about message about the game, the last edit date of the game or something else). Made it so that you can just read a property's header and choose whether to read the property's data also into memory or just skip it (Useful when you know beforehand what properties you are interested in and what you aren't).
Made WagFileParser class use WagProperty when parsing the *.wag file.
2007-06-04 (Monday) - More work on the WinAGI's wag-file parser
Modified WagProperty class and implemented more of WagFileParser's needed functionality. Documented WagFileParser's implemented parts.
2007-06-05 (Tuesday) - Fallback detection and WinAGI's wag-file parsing continues
Worked on the WagFileParser and Agi::fallbackDetector related code.
2007-06-06 (Wednesday) - Ran into trouble with fallback detection
Installed Visual Studio 2005 Express edition because MinGW+MSYS-combo jammed my Windows 2000 machine some of the time when using make. Hopefully this'll work better...
Ran into trouble with the AGI engine's fallbackDetector-routine needing dynamic ADGameDescription-structs. ADGameDescription has constant strings in it and we'd need to use dynamic strings so it looks like something will have to change. Sev said he'll talk with someone about this. Otherwise it looks like I might be getting to submit my first code patch real soon now. We'll see how soon that'll be...
And about Visual Studio 2005 Express... it does work quite nicely at the moment, thank you :) (Knocks wood).
2007-06-07 (Thursday) - Implemented fallback detection for the AGI engine
After some talk with a friend of mine and much talk with my mentor Sev about the problems with the current fallback detection system I set out to implement Fingolfin's suggestion.
Got it done! It took some hours though ;) And it compiles too... let's see about testing and hopefully my first code patch tomorrow.