ID# 173 (19/20) --------------------------------------------------------- The blue line in your PPM file was at the bottom of the image instead of on the left side. ID# 292 (15/20) --------------------------------------------------------- Part 2: The blue line in your PPM file was in the wrong place. Part 3: Some of the necessary code is there, but there's quite a bit missing. ID# 515 (18/20) --------------------------------------------------------- There's a small C++ problem with your PPM program. You've got this chunk of code: // Ask for filename char *filename; cout << "Write the name of the file to save" << endl; cin >> filename; You've declared filename to be a char pointer, but it doesn't actually point to anything. So when I tried to run your program, it crashed when I entered the filename, because your code was trying to save the filename in some unknown chunk of memory that it wasn't allowed to write to. It's an easy fix: instead of declaring filename as a char*, do something like this: ``char filename[50];'' Then everything works great (although the PPM output is missing the blue line on the left). ID# 535 (17/20) --------------------------------------------------------- Part 2: The red line in your PPM file isn't outputting correctly - instead of the top row being red, the top two rows are alternately red and then random. Part 3: The clicks and releases aren't getting detected properly: the first click produces no messages, and after that the clicks are reported as releases and vice versa. ID# 550 (19/20) --------------------------------------------------------- The top line in your PPM image should be red, not blue. ID# 594 (15/20) --------------------------------------------------------- The source code for the second part of the project didn't compile correctly. ID# 780 (18/20) --------------------------------------------------------- The red and blue lines weren't present in the PPM output file.