www.mikrocontroller.net

Forum: PC-Programmierung Zugiff auf die Grafikkarte


Autor: Matheguru L. (matheguru)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo ich habe eine Frage.
Ich habe die Grafikkarte: Intel(R) 82852/82855 GM/GME Graphics 
Controller
Und möchte in einem C++ Konsolen Programm, etwas auf den Bildschirm 
zeichnen. Will aber nicht mit WinApi progn...
Hat jemand eine Lösung für mich?

Autor: Der Fast (der9gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Direkt in den Frambuffer schreiben?

mfg

Autor: Matheguru L. (matheguru)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Entschuldigung aber keine Ahnung was das ist! Habe noch nie Zugriff auf 
irgendwelche Hardware gemacht!

Autor: Der Fast (der9gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Matheguru L. wrote:
> Entschuldigung aber keine Ahnung was das ist! Habe noch nie Zugriff auf
> irgendwelche Hardware gemacht!

Ist mir so eingefallen.. .-) ich mache das auch net, aber wenn ich mich 
net irre, dann machen das setop boxen so (dbox2). Konsole meinst doch 
ohne XServer? Dort ein Bild zeichnen, k.a., aber man kann vielleicht 
direkt in den Framebuffer deiner Graka schreiben..

http://de.wikipedia.org/wiki/Framebuffer

mfg

Autor: Matheguru L. (matheguru)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
danke ich schau mal nach

Autor: Der Fast (der9gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Matheguru L. wrote:
> danke ich schau mal nach

schau mal hier:
http://www.linuxwiki.de/FrameBuffer

mfg

Autor: Matheguru L. (matheguru)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das ist ja gut, aber ich arbeite unter Windows!

Autor: Matheguru L. (matheguru)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jetz weis ich was du mit X_Server meinst, das ist mir egal ob ich den 
benutze mit konsole meinte ich ein Fenster mit schwarzem background und 
weißer Schrift. Und da will ich auch sachen reinzeichen hallt ohne die 
winapi zu verwenen also die gdi von windows!

Autor: Der Fast (der9gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Matheguru L. wrote:
> Jetz weis ich was du mit X_Server meinst, das ist mir egal ob ich den
> benutze mit konsole meinte ich ein Fenster mit schwarzem background und
> weißer Schrift. Und da will ich auch sachen reinzeichen hallt ohne die
> winapi zu verwenen also die gdi von windows!

öh.. wie komm ich den auf linux? sorry, da habe ich einen beitrag 
durcheinander gebracht :-) dann kann der admin den blödsin von mir 
löschen.

sorry nochmals

*peinlich, aber nu kennst den vorteil, warum linux in vielen kleinen 
systemchen steckt  :-=)

Autor: Matheguru L. (matheguru)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Aber wie löse ich mein Problem?
Ich fasse noch mal zusammen:
-ich will in einem WindowsKonsolenProgramm mit C++ Grafik über die 
Grafikkarte ausgeben und habe keine Ahnung
-ich will aber nicht die Windows GDI verwenden
-also so Grafik erzeugen, wie es die früheren DOS-Programmierer gemacht 
haben
-ich will wissen was X-Server ist
Das müsste genügen, jetz nur noch antworten danke!

Autor: Der Fast (der9gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Matheguru L. wrote:

> -ich will wissen was X-Server ist

Grafischer Basis für die Linuxoberfläche.. vergiss was ich geschrieben 
habe. Passt alles nicht für dein Problem! *blitzdings

Autor: Louis Cypher (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Matheguru L
>-ich will in einem WindowsKonsolenProgramm mit C++ Grafik über die
>Grafikkarte ausgeben und habe keine Ahnung
>-ich will aber nicht die Windows GDI verwenden

Erklär doch mal nachvollziehbar, warum du nicht die Winapi verwenden 
willst?

Autor: Sven P. (haku) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Dann benutz halt die SDL-Bibliothek, ist auch dazu noch 
plattformunabhängig.

Autor: Matheguru L. (matheguru)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Weil ich lernen möchte wie Hardware zugriffe funktionieren und ich auch 
wissen möchte wie es die früher gemacht haben außerdem ist die gdi zu 
langsam

Autor: Louis Cypher (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Weil ich lernen möchte wie Hardware zugriffe funktionieren und ich auch
>wissen möchte wie es die früher gemacht haben außerdem ist die gdi zu
>langsam
Dann solltest du am Besten unter Dos (oder Linux) arbeiten. Mit Windows 
ist das zwar auch möglich, aber nicht vorteilhaft.

Autor: Tom (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Mathe..,

wenn du wissen willst wie es früher gemacht worden ist, dann mache es 
auch wie früher. Und zwar ganz einfach unter DOS. Nix Dosbox, nix 
Windows.

Tom

Autor: Matheguru L. (matheguru)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ok andere Frage gdi ist zu langsam für mein Projekt deswegen wollte ich 
direkt auf die grafikkarte zugriff nehmen!
In meinem Projekt will ich ein Fenster mit transparentem Rahmen erzeugen 
wie bei Windows Vista aber die gdi ist zu langsam für meine Algorithmen!
Kann mir jetzt jemand vieleicht helfen?

Autor: Arc Net (arc)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Matheguru L. wrote:
> Ok andere Frage gdi ist zu langsam für mein Projekt deswegen wollte ich
> direkt auf die grafikkarte zugriff nehmen!
> In meinem Projekt will ich ein Fenster mit transparentem Rahmen erzeugen
> wie bei Windows Vista aber die gdi ist zu langsam für meine Algorithmen!

Das hängt auch stark von den verwendeten Methoden ab.

> Kann mir jetzt jemand vieleicht helfen?

http://msdn.microsoft.com/en-us/library/ms997507.aspx

Zur SDL: Unter Win32 gibt's zwei Varianten eine die GDI zur 
Grafikausgabe benutzt, die andere DirectX...

Autor: Frank (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>gdi ist zu langsam für mein Projekt deswegen wollte ich
>direkt auf die grafikkarte zugriff nehmen!

Dann nimm DirectX oder Quicktime (gibts auch für Windows), die sind für 
Alles, wofür GDI zu langsam ist (z.B. Multimedia), quasi als Bypass, 
geschaffen worden.
Aber verschätz' dich da nicht, das Programmieren mit deren APIs ist um 
keinen Deut einfacher ...

Ein direkter Zugriff auf den Grafikspeicher ist eine Aufgabe, mit der du 
nicht froh werden wirst. Je nach Karte, Auflösung, Farbtiefe und 
Speicherbestückung liegen die Bits, die zu einem Pixel auf dem Screen 
gehören irgendwo schön verteilt im Ardessraum. Da müsstest du von gnz 
unten an primitive Grafikkommandos schreiben mit nach oben wachsender 
Abstaktion ... ich glaube nicht, dass die am Ende wirklich schneller 
sind als die, die dir die API bereits bietet.

Frank

Autor: Matheguru L. (matheguru)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wie bekomme ich den DirectX also ich benutze den GCC Cmpiler mit der 
Bloodshed IDE DevC++ !

Autor: Εrnst B✶ (ernst)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der GCC den du verwendest ist vermutlich der Mingw, oder?

Einfach mal in http://www.gidf.de/ "Mingw Directx" eingeben, und die 
ersten paar Links anschauen.

Autor: Matheguru L. (matheguru)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Da sind nur Seiten in Englisch gibt es auch was Deutsches zur benutzung 
von DirectX mit DevC++

Autor: Manuel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
In diesem Bereich würde ich Englisch als Grundvoraussetzung sehen. 
Vielleicht solltest du hier anfangen...

Autor: Outi Outlaw (outlaw)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ein direkter Zugriff auf die Grafikkarte ist unter Windows XP oder Vista 
nicht möglich, daher bleibt Dir nur DirectX und IMHO OpenGL ....

Autor: Manuel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ist so natürlich auch nicht ganz richtig. Er kann ja seinen eigenen 
Grafikkartentreiber schreiben... Aber aus dem User-Mode ist das 
natürlich tatsächlich nicht möglich.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.