~shiny/gbcap

Gameboy LCD frame capture using an FPGA
Fix readme formatting
Increase baud rate to 2Mbaud
Add uart test helper

refs

main
browse  log 

clone

read-only
https://git.sr.ht/~shiny/gbcap
read/write
git@git.sr.ht:~shiny/gbcap

You can also use your local clone with git send-email.

This is a hardware design to capture the LCD output of a Gameboy by connecting an FPGA to some of the pins on the ribbon cable between the main and LCD boards of a Gameboy.

#Quickstart

Make sure git submodules are initialised.

Make sure you've got the papilio-prog bitfile loader from here.

If using a Papilio Pro board

 ./run gbcap build
 ./papilio-prog/papilio-prog -f build/top.bit
 ./recv.py -b 2000000 /dev/ttyUSB1 -o frames

#Pin assignment

This code (in gbcap.py) sets up which pins on the FPGA are expected to be connected to which pins on the Gameboy:

plat.add_extension([
    ('gb_lcd', 0,
        Subsignal('vsync', Pins('B:5')),
        Subsignal('hsync', Pins('B:4')),
        Subsignal('cpl', Pins('B:6')),
        Subsignal('clk', Pins('B:2')),
        Subsignal('pixel', Pins('B:0', 'B:1')))])

#UART testing

 ./run uart_echo build
 ./papilio-prog/papilio-prog -f build/top.bit
 ./com.py -b 2000000 /dev/ttyUSB1 abcde

Should output the second argument 'abcde' in the example back. If it doesn't then something is wrong!