PofoWiki

Die ultimative Informationsquelle zum ATARI Portfolio

Benutzer-Werkzeuge

Webseiten-Werkzeuge


software:diy:assembler:int5fh

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
Letzte ÜberarbeitungBeide Seiten der Revision
software:diy:assembler:int5fh [18/09/2006 23:09] – ergänzt. uxtsoftware:diy:assembler:int5fh [24/02/2007 00:02] – internen Link eingefügt. uxt
Zeile 1: Zeile 1:
-====== PORTGR.EXE ====== 
-Portfolio Grafik-Treiber von Mark Reeves.\\ 
-PORTGR.EXE installiert ein TSR welches eienen Interrupt 5Fh zur Verfügung stellt. Diesen Interrupt kann man in z.B. Assembler oder BASIC aufrufen um folgende Grafik-Funktionen zu realisieren:\\ 
- Pixel setzten, Pixel lesen, Linie zeichnen, Viereck zeichnen, Kreis Zeichnen und Fläche Füllen. 
-Dies ist eine große Entlastung für den Programmierer und den Code, allerdings funktionieren die damit erstellten Programme (BAS, COM, EXE...) nur solange der Treiber installiert ist.\\ 
- 
-PORTGR.EXE ist 4352 KB groß und braucht 8KB RAM, das Programm hat einen internen Stack von 3KB der beim Füllen von Flächen verwendet wird.\\ 
- 
-Alle Aufrufe werden durch den Interrupt 5Fh durchgeführt, die gewünschten Werte müssen beim Aufruf in den Registern stehen.\\ 
- 
-Werte für die X-Koordinate müssen zwischen 1 und 240 und Werte für die Y-Koordinate zwischen 1 und 64 liegen, Werte die darunter oder darüber liegen werden auf das Maximum oder Minimum beschränkt.\\ 
- 
-^^Register^Bedeutung^ 
-|AH|Funktionsaufruf| 
-| |00h  Versionsnummer ausgeben (in AX)| 
-| |01h  Grafik-Modus| 
-| |02h  Text-Modus| 
-| |03h  Pixel setzten| 
-| |04h  Pixel lesen| 
-| |05h  Linie Zeichnen| 
-| |06h  Horizontale zeichnen (schneller als 05h)| 
-| |07h  Vertikale zeichnen (schneller als 05h)| 
-| |08h  Viereck Zeichnen| 
-| |09h  Kreis Zeichnen| 
-| |0Ah  Fläche füllen| 
-| |FEh  Lese Tastaturpuffer (0,1)| 
-| |FFh  Taste abfragen| 
-|AL|Pixel-Wert (0,1)| 
-|BH|X-Koordinate 1 (X1=1...240)| 
-|BL|Y-Koordinate 1 (Y1=1...64)| 
-|CH|X-Koordinate 2 (X2=1...240)| 
-|CL|Y-Koordinate 2 (Y2=1...64)| 
-|DL|Kreis-Radius| 
- 
-Ergebnisse (wenn AH=0,FEh oder FFh) stehen nach Rückkehr in AL oder AX, etwaige Fehler-Codes in BX.\\ 
-BX=0: Funktion durchgeführt\\ 
-BX=1: Stapelüberlauf, Funktion abgebrochen.\\ 
- 
-Das Spiel PUNKMAN JR von Robert Quezada wurde unter Verwendung von PORTGR.EXE programmiert. Das Spiel funktioniert also nur, wenn nach dem letzten Warmstart PORTGR.EXE installiert wurde.\\ 
- 
-Beispiel (ASM):\\ 
-Zeichnet ein Quadrat in der Mitte des Bildschirms: 
-  MOV AH,08h ;Viereck Zeichnen 
-  MOV AL,1 ;Pixel-Farbe 
-  MOV BH,98 ;X1 (Mitte minus 22) 
-  MOV BL,10 ;Y1 (Mitte minus 22) 
-  MOV CH,142 ;X2 (Mitte plus 22) 
-  MOV CL,54 ;Y2 (Mitte plus 22) 
-  INT 5Fh        ;PORTGR 
-Der Bildschirm muß sich natürlich im Grafik-Modus befinden, dies kann man mit dem INT 5Fh selbst, 
-  MOV AH,1 ;Grafik-Modus 
-  INT 5Fh               ;PORTGR 
-oder mit dem BIOS-INT 10h 
-  MOV AH,0 ;Bilschirm-Modus definieren 
-  MOV AL,8 ;Grafik-Modus 
-  INT 10h 
-erledigen. 
- 
  
software/diy/assembler/int5fh.txt · Zuletzt geändert: 24/02/2007 00:02 (Externe Bearbeitung)