PROCEDURE mouse_reset(VAR mouse: Boolean);
{ Maus initialisieren - Test auf Verfügbarkeit des Maustreibers }
BEGIN
ASM
MOV AX, 0 { Maustreiber-Funktion 0 }
INT 33h
MOV mouse_installed, AL; { Maustreiber verfügbar Ja/Nein }
END;
mouse := mouse_installed;
END;
Turbo Pascal und Delphi lassen nicht nur die Integration von Assembler-Anweisungen, sondern erlauben auch das Einfügen von Maschinenbefehlen mit Hilfe der INLINE-Anweisung.
Beispiel:
PROCEDURE fillword(VAR dest; count: WORD; data: WORD);
BEGIN
INLINE(
$C4/$7E/dest/ (* LES DI,dest[BP] *)
$8B/$4E/count/ (* MOV CX,count[BP] *)
$8B/$46/data/ (* MOV AX,data[BP] *)
$FC/ (* CLD *)
$F3/$AB); (* REP STOSW *)
END;
Unix-Pascal-Systeme bieten oft einen anderen Weg an:
Beim Compileraufruf können Pascal- und Assemblerquelltextdateien gemeinsam
als Parameter angegeben werden.
Beispiel (XL Pascal):
xlp -o bsp bsp1.pas bsp2.pas bsp3.s bsp4.sDer Dateisuffix weist auf Pascal (.pas) bzw. Assembler (.s) Quelltexte hin.