That is very true, but in those days graphics were basically just typed characters/symbols, sort of like you see when you download a gamefaqs walkthrough in text format, the text graphics on those things are quite good, so that hardly took up much space as it was just plain text like this:
██
████
██████
█ ██ █
█ █
Obviously as whole levels and characters were designed in such a way it could of taken the designers quite some time to sort the graphics out. The sound would have taken the most space up, but I think a lot of those games just used a series of beeps at various frequencies and were just looped together (eg: For i = 1 to 10; beep;)so it was similar to the graphics in that sense and very clever, those guys were experts in both graphics and sound design as well as gifted programmers. So basically everything was just hard code, fully typed in just like this message, no actual graphics or sound just clever ways of manipulating them
Nowadays they have full length videos, soundtracks, complex 3D graphics and all sorts, there is still a lot of text based programming involved but mostly dedicated to the main structure of the game and its inner workings.
You are very right in saying most games are now repetitive, which would be fine if they were enjoyable, but unfortunately most of them just aren't.