The camera holds only 30 pictures, so you get about a 35mm film roll's worth of tiny pictures before they have to be offloaded somewhere... which is no mean feat. You can't just use a link cable and save them somewhere, you can't insert SD cards... so what do?
There are several very good solutions out there, the best perhaps being the BitBoy, which allows the user to save images pixel-for-pixel to an SD card by using the print function originally intended for the Game Boy Printer accessory. But as that device is a bit too pricey for lowlifes such as ourselves, we use a more complicated and imperfect pipeline to capture images:
Here's how it's going to work: you'll insert the GBC into the SGB and the SGB into the SNES. You'll then attach the SNES to the capture card and the capture card to your PC.
Like this (it'll look a bit different for North America, where a redesigned SNES and SGB were sold). Keep in mind you'll need a SNES controller to use the camera and open the pictures in it.
sudo cp ./somagic_firmware.bin /lib/firmware/somagic_firmware.bin
sudo apt install gcc make libgcrypt20* libusb-1.0-0 libusb-1.0-0-dev debhelper devscripts
sudo dpkg -i multiarch-support_2.29-0ubuntu2_i386.deb
sudo dpkg -i libgcrypt11_1.5.3-2ubuntu4_i386.deb
sudo dpkg -i libgcrypt11-dev_1.5.4-3+really1.8.4-3ubuntu1_i386.deb
cd somagic-easycap_1.1it may complain about some stuff; pay it no mind.
make && sudo make install
somagic-initIt should return nothing if it works. If it tells you the device isn't hooked up, try reconnecting, try different USB ports, et cetera.
Now you can view the video stream in VLC Media Player:
sudo somagic-capture --cvbs-input=1 --pal | vlc --demux rawvid --rawvid-fps 30 --rawvid-width 720 --rawvid-height 576 --rawvid-chroma=UYVY -Change --pal to --ntsc or --secam depending on the colour system used in your region. Look at that, you're playing Nintendo on your computer! If it doesn't work, try turning the SNES off and on, or re-initialising the stream.
Once the GBC has booted up, use the controller to select 'SHOOT' and then 'CHECK'. This allows you to view your photos.
As these pictures are monochrome and the SGB has some colour emulation settings, if your pictures appear in colour, press START+SELECT simultaneously and repeat until the display is black and white. Look here for a complete guide to the SGB.
Select a photo, wait a second for the little cursor at the bottom to disappear, and then hit Shift+S on your keyboard to take a screenshot. Go to the next picture, wait, hit Shift+S. Keep doing this until you've screenshotted all of your pictures. VLC usually saves them to your home directory.
ls | cat -n | while read n f; do mv "$f" `printf "%03d.png" $n`; doneWhich changes the filenames to a numbered list. No real reason for this other than neatness. Now for the real magic:
mkdir out | for f in *.png; do convert $f -crop 325x225+192+167 +repage -grayscale rec709luma -resize 325x281\! -level 15%,97%,1.6 -unsharp 0x2.75x0.5x0.0015686 out/$f; doneLook, a folder called out has appeared! And what's more, it contains beautiful, sharp, correctly proportioned Game Boy Camera images! A wonder of computing.
And that's it, friend. It isn't pixel perfect and the process is a bit messy what with analog signals and dodgy capture cards, but it gets the job done. Enjoy!