You are looking at the representation of polynomials and rational
functions in CRE form. That is what the
header ((MRAT ...) ....) means.
I do not know what you want to do with solvequad, but it is pretty much
certain that you will have to learn
a lot more about the internal representation of maxima, if you want to
use it. There are global variables
called varlist and genvars (I think) that are used to map from CRE form
to ordinary form, by programs
like ratdisrep.
there should be some documentation about all this..
regarding solvequad,
Use :lisp (trace solvequad)
to see what it does.
If you are only interested in solving quadratics and showing
substitutions, I suggest you write your own program.
Your traces of ratf look quite suspicious.