https://github.com/mcclure/analogue-core-template-amaranth/tree/cellular-toy/src/fpga/amaranth_core/embed_amaranth_core in this folder there is a "toplevel.py" and an "app_toplevel.py". toplevel.py has the basic mechanics like, drive the audio SPI, drive the pixel clock. app_toplevel inherits from toplevel and determines the bits sent to the audio spi and the value of video_rgb_out at any one particular time. https://github.com/mcclure/analogue-core-template-amaranth/blob/cellular-toy/src/fpga/core/core_top.v this is the verilog code the amaranth is plugging into; that happens here https://github.com/mcclure/analogue-core-template-amaranth/blob/cellular-toy/src/fpga/core/core_top.v#L498