Mouse Beispielprogramm in Turbo Pascal 7 (englisch), das unter DOSBox läuft?

Antwort

Hier ist ein einfaches Beispielprogramm in Turbo Pascal 7, das die Maus unter DOSBox anspricht. Das Programm zeigt, wie du die Maus initialisierst, den Mauszeiger anzeigst und die aktuelle Position sowie den Status der Maustasten abfragst. ```pascal program MouseDemo; uses Dos, Crt; var regs: Registers; x, y, buttons: Integer; procedure InitMouse; begin regs.ax := $0000; { Reset mouse } Intr($33, regs); end; procedure ShowMouse; begin regs.ax := $0001; { Show mouse pointer } Intr($33, regs); end; procedure HideMouse; begin regs.ax := $0002; { Hide mouse pointer } Intr($33, regs); end; procedure GetMousePos(var x, y, buttons: Integer); begin regs.ax := $0003; { Get mouse position and button status } Intr($33, regs); buttons := regs.bx; x := regs.cx div 8; { Convert to text mode columns } y := regs.dx div 8; { Convert to text mode rows } end; begin ClrScr; InitMouse; ShowMouse; WriteLn('Press any key to show mouse position and button status. Press ESC to exit.'); repeat if KeyPressed then begin if ReadKey = #27 then Break; { ESC to exit } GetMousePos(x, y, buttons); GotoXY(1, 3); Write('Mouse X: ', x:3, ' Y: ', y:3, ' Buttons: ', buttons:1, ' '); end; until False; HideMouse; end. ``` **Hinweise:** - Das Programm funktioniert in DOSBox mit Turbo Pascal 7. - Die Maus muss in DOSBox aktiviert sein (`mouse.com` laden). - Die Spalten- und Zeilenberechnung (`div 8`) ist für Textmodus-Anzeige gedacht. - `buttons` gibt den Status der Maustasten zurück (Bit 0 = links, Bit 1 = rechts, Bit 2 = mittlere Taste). **Weitere Infos zu DOSBox:** [https://www.dosbox.com/](https://www.dosbox.com/) **Weitere Infos zu Turbo Pascal:** [https://winworldpc.com/product/turbo-pascal/7x](https://winworldpc.com/product/turbo-pascal/7x)

KI fragen