Check the Amiga class in the C++ source:
https://github.com/dirkwhoffmann/vAmiga/blob/master/Emulator...
Hilariously, the instance variables map 1:1 with the chips present on an Amiga motherboard. It's a great display of clean OOP modeling, but it might get messier once they add support for Amiga models with different chipsets.