Have you programmed live tool Y-axis subspindle before? Swiss is (IMHO) easier as long as you understand the physical and programming differences. Those are (in no particular order) the concept of wait codes (M5XX) and synchronized operations. You also have some zero-setting codes that are used on re-chucks and such, and negative offsets on some tools like a gang lathe. Otherwise it is pretty straightforward. You try to split cycle time on the front and back spindle so one isn't waiting for the other.
If you can get your hands on an Esprit post processor manual for Swiss, there is a ton of great info in there but I don't know how valuable that would be absent a way to play with some software while reading along.
Fusion could program a Swiss with the right post processor, but I don't know of any that exist currently.