'**************************************************************************** ' ' Text-Schreiben ber VGA-BIOS incl. Farbe in PowerBASIC 3.0/3.2 ' ' entwickelt von / developed by : Thomas Gohel ' Fido : Thomas Gohel@2:2410/330.1 ' InterNet: author@pbsound.snafu.de ' Homepage: http://www.snafu.de/~pbsound/ ' '**************************************************************************** $COMPILE EXE PUBLIC Vmode% TEXT$="Demo-Text fr extendend VGA-Modes" Vmode% = 50 CLS SUB Videomode(Vmode%) IF Vmode% = 50 THEN REG 1,&h1112 IF Vmode% = 28 THEN REG 1,&h1111 IF Vmode% = 25 THEN REG 1,&h1114 REG 2,&h0 CALL INTERRUPT &h10 :'Zeichensatz setzen END SUB SUB Schreibe(ByVal Zeile%, ByVal Spalte%, ByVal Farbe%, ByVal Text$) TextSeg% = STRSEG(Text$): TextOff% = STRPTR(Text$) TextLen% = LEN(Text$) DECR Zeile% DECR Spalte% ! push bp ! mov ah, &h13 ! mov al, &h01 ! mov bx, Farbe% ! mov cx, TextLen% ! mov dh, Zeile% ! mov dl, Spalte% ! mov es, TextSeg% ! mov bp, TextOff% ! int &h10 ! pop bp END SUB CALL Videomode(Vmode%) FOR i%= 1 TO 50 CALL Schreibe (i%,1,i%,"Farbe"+ STR$(i%)) NEXT i% FOR i%= 51 TO 100 CALL Schreibe (i%-50,10,i%,"Farbe" + STR$(i%)) NEXT i% FOR i%= 101 TO 150 CALL Schreibe (i%-100,20,i%,"Farbe" + STR$(i%)) NEXT i% FOR i%= 151 TO 200 CALL Schreibe (i%-150,30,i%,"Farbe" + STR$(i%)) NEXT i% FOR i%= 201 TO 250 CALL Schreibe (i%-200,41,i%,"Farbe" + STR$(i%)) NEXT i% FOR i%= 251 TO 255 CALL Schreibe (i%-250,52,i%,"Farbe" + STR$(i%)) NEXT i% COLOR 14,8 LOCATE 10,53: PRINT "Farben fr VGA-Controller" LOCATE 11,53: PRINT "zur direkten Programmierung" LOCATE 12,53: PRINT "ber VGA-BIOS" LOCATE 20,53:print " (c) 1993/1994 Th.Gohel" a$=INPUT$(1) SCREEN 12: SCREEN 0 CLS END