A P-ROC combined with a PC or embedded microcontroller provides functionality equivalent to a CPU board in a pinball machine. Software runs on the PC or microcontroller and communicates with the pinball machine's features through the P-ROC via USB.
The P-ROC is essentially an FPGA (Field Programmable Gate Array) surrounded by some support logic and a bunch of connectors. The FPGA contains custom logic enabling it to perform tasks including:
- Communicating with a PC over USB
- Scanning switches for switch events (Direct, Matrixed, and Burst)
- Driving coils, lamps, motors, etc (Direct and Multiplexed)
- Driving a Dot Matrix Display (DMD)
Note that the P-ROC does not handle audio. Instead audio is typically processed by the computer or microcontroller which is running the game software connected to the P-ROC.
The support logic and connectors enable the P-ROC to be used as a controller in custom homebrew pinball machines or as a CPU board replacement in the following generations of machines:
- Stern Whitestar
- Stern S.A.M.