The same way they do it today. Nothing has changed about the basics of a game loop. The only difference is the language used to do it, and modern games typically access the hardware through an API like DirectX instead of speaking to the hardware directly. This is a great leap forward and gone are the days of "selecting your soundcard"
because games don't have to know the hardware anymore - they leave that to the O/S layer (eg windows), and the Windows O/S interacts with the hardware for you.
There's more though. Are you sure you want to know this?
Tricks of the Game Programming Gurus is from 1994. It talks about how games of it's time were made (like Doom 1 and Heretic). Andre Lamothe also released The Black Art of Video Game Console Design in 2005. I haven't read it.
If you want to go further back, Jordan Mechner recently released the Prince of Persia source code on github. Mechner also wrote a book about his experience developing it. There also is a pdf brief explaining the source, with diagrams and the like.