Archiv verlassen und diese Seite im Standarddesign anzeigen : grafik- und textmodus auf einem screen?
freak182
05.09.2002, 09:35
besteht eine möglichkeit einen teil des bildschrims im grafikmodus zu betreiben und gleichzeitig den anderen teil im textmodus zu betreiben?
wenn ich zb ein diagram im oberen teil habe(grafikmodus) und im unteren teil die werte für das diagram eingebe(textmodus) sollte sich das diagram nach jeder eingabe automatisch updaten.
kann soetwas so oder so ähnlich funktionieren?
mfg,
timoK.
Lord_Otter
05.09.2002, 09:48
Ich habe mal in einem Turbo Pascal FAQ gelesen, dass das unmöglich ist, habe es aber noch nicht probiert.
Aber ich glaube, dass das nicht geht.
Aber du kannst ja in der 2. Hälfte den TextModus simulieren, wenn du das willst.
Aber das ich glaube nicht, dass du das willst.
freak182
05.09.2002, 09:52
was würde dann passieren? wie geht das? warum sollte ich es nicht wollen?
wenn ich dann alle textmodus möglichkeiten habe(denn darum gehts mir) wäre es auch gut.
Jan Krüger
05.09.2002, 12:53
naja, es ist aufwand. du brauchst schriftart-dateien, musst die zeichenausgabe selber organisieren, die cursorpositionierung... du kannst dann nicht mehr einfach writeln() benutzen. :)
freak182
05.09.2002, 13:28
@JaSt: was du beschreibst hört sich ganz nach dem dem grafikmodus an. da mußß ich auch den courser selbst positionieren u.s.w. ich meinte aber ob man grafik- UND textmodus in einem darstellen kann. oder zumidest den textmodus in einem teil des bildschirms simulieren kann, sodaß ich writeln(); verwenden.
mfg,
timoK.
Ne geht nicht. Außer du schreibst die Funktionen wie Writeln usw. selbst und zwar so, dass das auch im Grafikmodus geht :)
freak182
05.09.2002, 13:51
:D
na ok, aber trotzdem danke!
...wäre ja auch zu einfach gewesen!
;)
mfg,timoK.
Lord_Otter
05.09.2002, 14:15
Schriftdateien brauchst du nicht, du kannst direkt die Bios-Schriften verwenden.
Die sind bei einer (mir momenttan unbekannten) Adresse im RAM definiert.
Wenn du genau writeln(), write(), ReadLn(), und read() genau verwenden willst, kannst du die Eingabe/Ausgabe bei input/output verändern.
Ist aber alles sehr kompliziert, ich rate davon ab.
Felix Kaiser
05.09.2002, 14:52
Passt mal auf: Bei Grafikmodi bis 256 macht es durchaus Sinn als eine Art 'Textmodus' den TeleTyper Output des BIOS zu benutzen. Im übrigen schleift DOS das STDOUT direkt zu diesen Funktionen:
AH = 0Eh
AL = Zeichen
BH = Videopage (0)
BL = Farbe (0..15/0..255)
INT 10h
Ich weiß zwar jetzt nicht 100% genau wies geht, aber man kann auch den Cursor einigermaßen steuern in diesem Modus. Klappt aber glaube nicht einfach so. Übrigens: Wie das ganze dann ausschaut, sieht jeder, der auf seinem Board ein Award BIOS installiert hat ;)
writeln und readln im grafikmodus?
nach dem initialisieren
DirectVideo := 0; setzen!
bin varscheinlich zu doof, aber kann ich dann irgendwie die Farbe un größe des textes einstellen ??? :confused:
Bidde nich :mauer: hab noch nich lange info :rolleyes:
Ps.:
textcolor/textbackground funsen NICHT, oder ich mach was falsch :eek: :(
Ich hab das mal so gemacht, das ich mir die Schrift (ASCIIs) aus dem Bios geholt habe, die liegen da ja Pixelweise vor. Dann kannste ne schöne write()-Funktion schreiben, die diese Pixel einfach an der entsprechenden Stelle ausgibt. Brauchste n bissl Assembler dazu, dafür kriegste aber auch voll geile Texteffekte hin ;) ...Wenn du es brauchst, kann ichs dir ja mal posten. Diesen Alg. nutze ich übrigens heute noch, bei der Textausgabe in ein paar 3D-Demos.
ehhhm, noch paar Noob fragen :D
1. Wie geht das genau mit der BIOS Schriftart, denn soweit sin wir in Info (leider) noch net (wir ham noch nichmal Grafik, alles selbst gelernt :D).
2. Im Moment arbeite ich mit folgendem Grafimodus:
asm
mov ah,0
mov al,19
int 10h
end; {of asm}
So hab jetzt auch schon ein paar Prozeduren
(Kreis, Linie, Pixel ^^, Rechteck, usw. ...)
[Würd ja den initGraph Modus nehmen, da kann ich aber keine Farbe bei circle angeben :( (meine ich gesehn zu haben)]
[Wenn wenn intersiert ich arbeite an nem remake von S.N.A.K.E :eek: :rolleyes: :p]
Würd mich freuen wenn's mir wer zeigen kann mit der Schrfit, weil das is im mom mein größtest Prob :(
Felix Kaiser
22.07.2003, 15:35
write/writeln benutzen über Umwege im Normalfall auch nur TTY Output, hier kann man aber noch eine Schriftfarbe angeben, ist nur in der Systemunit dafür nicht vorgesehen. Müsstest dir mal die Beschreibung zu Int 10h, Funktion AH=0Eh anschauen.
Diogenes
27.07.2003, 17:21
Es gibt (jedenfalls unter Borland/Turbo-Pascal 7) die Möglichkeit, Texttreiber zu erstellen. Das ist eine Sammlung von vier Routinen, die es ermöglichen Text praktisch überhall hin zu schicken, an den Bildschirm im Graphik-Modus inklusive. Info darüber gibt's im Programmier-Handbuch. Das sind 10 Seiten oder so.
Wenn man das hat, den Standardoutput mit Close( Output) schließt, mit der Assign-Routine und Rewrite wieder aufmacht, kann man ganz normal mit Write usw., ohne Angabe des Dateinamens Textausgaben machen.
vBulletin® v3.8.6, Copyright ©2000-2012, Jelsoft Enterprises Ltd.