http://harmful.cat-v.org/software/OO_programming/ <- OOP allows a generic build to scale approach to solve problems. And compatibility. In my experience an API/Shared Libraries by being encapsulated, is less likely to get optimized/destroyed by the compiler, specifically in embedded platforms.
Also allows to separate pieces in components: Init, update, destroy, which enables the whole program to be inheritable. If you're creating a first person shooter, and want to add multiplayer, you will have to use OOP regardless.
I remember when you had to write your code exactly or things would just break instantly lol 48K was all you had on an Apple IIe and that was with added RAM ai think... Forgot so much over the years lol