\savebox\annotbox{\parbox[tt]{.4\linewidth}{#1}}%
Die Anmerkung in einer Box der Breite 0.4\linewidth (das sind 40% der aktuellen Zeilenlänge) setzen und das Ergebnis in dem Boxregister \annotbox speichern (in Wirklichkeit wird da von LaTeX noch eine \hbox drumherum gepackt, aber das ist nicht so wichtig).
\vspace{\dimexpr \ht\annotbox+\dp\annotbox\relax}%
Vertikal um den Wert der Höhe und Tiefe der im Boxregister \annotbox gespeicherten Box nach unten gehen.
\vspace{-\dimexpr \ht\annotbox-\dp\annotbox\relax}%
Vertikal um den Wert der Höhe und Tiefe der im Boxregister \annotbox gespeicherten Box nach oben gehen.
Da \vspace am Seitenende ggf. nur bis zum Anfang der nächsten Seite geht und am Anfang einer Seite gar nichts macht, wird durch die beiden \vspace-Anweisungen sichergestellt, dass die Anmerkungen komplett auf die Seite passen - außer sind sie länger als eine Seite. Es wird also ggf. ein Seitenumbruch erzeugt, wenn die Anmerkung nicht mehr auf die Seite passen würde.
Um 0.6\linewidth (das sind 60% der aktuellen Zeilenlänge) nach rechts gehen. Aufgrund der Sternvariante passiert das auch am Zeilen-/Absatzanfang. Hm, da gehört eventuell noch ein \noindent davor.
Die im Boxregister \annotbox gespeicherte Box ausgeben.
Da wir jetzt am ende der Zeile sind, fahren wir wieder an den Anfang selbiger. Warum habe ich das eigentlich gemacht? Das ist vollkommen überflüssig weil wir jetzt:
\\[-\dimexpr\ht\annotbox+\dp\annotbox+\lst@aboveskip+\dp\strutbox\relax]%
einen Zeilenumbruch durchführen, dabei aber um die Höhe und Tiefe der im Boxregister \annotbox gespeicherten Box und um den Abstand, den listing am Anfang einer Listings-Umgebung einfügt und die Tiefe einer \strutbox wieder nach oben gehen.
Mit den ganzen vertikalen Abständen muss man eventuell noch ein wenig spielen. So sollte man vielleicht vor dem \hspace* noch ein \vspace{\lst@aboveskip} einfügen und am Ende statt \dp\strutbox sogar \baselineskip verwenden. Keine Ahnung. Kommt darauf an, ob das Ergebnis so schon gut aussieht, oder noch etwas daran stört.
\dimexpr ist übrigens eine e-TeX-Erweiterung. Das sollte aber kein Problem darstellen, da bereits seit Jahren e-TeX als Basis für LaTeX empfohlen wird, und das normalerweise auch bei allen modernen LaTeX-Distributionen so gemacht wird (außer man installiert ein System, das so minimal ist, dass gar kein e-TeX bzw. e-PDFTeX hat).
\savebox und \usebox sind AFAIK im usrguide erklärt und sollten in jeder ausführlichen LaTeX-Einführung zu finden sein (beispielsweise
3. Auflage des Praxisbuchs).