projekt
-
hi, ich möchte die tage mit assembler anfangen.
tutorials und bücher gibtst ja paar.habt ihr ne idee, für ein projekt für anfänger?
-
hanwe schrieb:
hi, ich möchte die tage mit assembler anfangen.
tutorials und bücher gibtst ja paar.habt ihr ne idee, für ein projekt für anfänger?
Hallo,
lerne die Befehle und das Programmieren unter DOS.
Ich bin seit 3 Monaten an der VGA Programmierung dran... klappt wunderbar
und mal richtig flott allesGruß, Nicky
-
Welche Tutorials =?
-
supernicky schrieb:
hanwe schrieb:
hi, ich möchte die tage mit assembler anfangen.
tutorials und bücher gibtst ja paar.habt ihr ne idee, für ein projekt für anfänger?
Hallo,
lerne die Befehle und das Programmieren unter DOS.
Ich bin seit 3 Monaten an der VGA Programmierung dran... klappt wunderbar
und mal richtig flott allesGruß, Nicky
Für 16 Farben(4 Bit) habe ich folgende Seite gefunden:
http://www.wagemakers.be/english/doc/vga
So ähnlich habe ich auch mal angefangen, jedoch ohne zu ahnen das Videomodi mit 8/16/24/32 Bit weniger umständlich zu benutzen sind.Auch denke ich ist es besonders am Anfang wichtig das man auch sehen kann ob man Erfolg beim Lernen hat und die Befelhle richtig verwendet.
So ist es bestimmt nicht verkehrt mit etwas Grafik anzufangen. Vorher kann man auch einzelne Befehle schnell mal in Debug eintippen und dort ausprobieren....
Um höhere Auflösungen (ggf. auch mit einer höheren Refreshrate als nur 60hz und einem linearen Zugriff auf den framebuffer) auch im RM unter DOS verwenden zu können kann man das VESA-Bios benutzen.
Wie man die VESA-Modi mit modernen GraKas verwenden kann findet man im public document "vbe3.pdf" von vesa.org (anmelden und/oder einloggen erforderlich).
Dort wird beschrieben wie man die Vesa-Mode-Liste der verwendeten GraKa finden und die dortigen Vesanummern auswerten kann, um die Eigenschaften dieser Vesamodi bestimmen zu können.
Es wird dort auch erklärt wie man das vesa hardware triple buffering und stereoskopische Modi für Shutterbrillen verwenden kann.Ich kann mit meiner Colorofull GTX 295(mit vbe3 bios) die native Auflösung meines 28"LCD von 1920 x 1200 x 32(widescreen 16:10) auch unter purem DOS verwenden.
Dirk
-
Kommt ein bißchen darauf an, was du machen willst. Wie wäre es mit einem kleinen Spiel?
http://www.madwizard.org/programming/tutorials/mosaic/Oder versuch einfach mal mit Hilfe eines Assemblerbuches und einem Einsteigerbuch für C oder C++ die Programmierbeispiele im C-Buch nach Assembler zu übersetzten, dabei kann man schon eine Menge lernen.
-
Auch denke ich ist es besonders am Anfang wichtig das man auch sehen kann ob man Erfolg beim Lernen hat und die Befelhle richtig verwendet.
So ist es bestimmt nicht verkehrt mit etwas Grafik anzufangen. Vorher kann man auch einzelne Befehle schnell mal in Debug eintippen und dort ausprobieren....
Um höhere Auflösungen (ggf. auch mit einer höheren Refreshrate als nur 60hz und einem linearen Zugriff auf den framebuffer) auch im RM unter DOS verwenden zu können kann man das VESA-Bios benutzen.
Wie man die VESA-Modi mit modernen GraKas verwenden kann findet man im public document "vbe3.pdf" von vesa.org (anmelden und/oder einloggen erforderlich).
Dort wird beschrieben wie man die Vesa-Mode-Liste der verwendeten GraKa finden und die dortigen Vesanummern auswerten kann, um die Eigenschaften dieser Vesamodi bestimmen zu können.
Es wird dort auch erklärt wie man das vesa hardware triple buffering und stereoskopische Modi für Shutterbrillen verwenden kann.Ich kann mit meiner Colorofull GTX 295(mit vbe3 bios) die native Auflösung meines 28"LCD von 1920 x 1200 x 32(widescreen 16:10) auch unter purem DOS verwenden.
Dirk
Hallo Dirk,
mit VESA habe ich mich auch schon beschäftigt, jedoch stört mich die Speicherbankumschaltung ein bisschen. Mit den 800x600x16 bin ich recht zufrieden.
Was mich noch interessiert ist, nicht nur 64K sondern 128K einzublenden und somit 512Kb zu nutzen, womit auch 640x480x256 möglich wären.
Gruß, Nicky
-
Hallo Nicky,
supernicky schrieb:
Hallo Dirk,
mit VESA habe ich mich auch schon beschäftigt, jedoch stört mich die Speicherbankumschaltung ein bisschen. Mit den 800x600x16 bin ich recht zufrieden.
mein erster 15" CRT unterstützte bereits schon 1280x1024 Pixel. Auf meinem heutigen 28" LCD wird 800x600 aber leider nur interpoliert dargestellt und das sieht dann eher bescheiden aus. Für welchen Monitor soll die Auflösung sein?
Was mich noch interessiert ist, nicht nur 64K sondern 128K einzublenden und somit 512Kb zu nutzen, womit auch 640x480x256 möglich wären.
Gruß, Nicky
Seit VBE 2 ist es auch möglich VESA-Modi mit dem linearen Framebuffer(LFB) zu verwenden. Damit ist es nicht mehr nötig die störende Speicherbankumschaltung zu benutzen. Die Adresse des LFBs liegt i.d.R. irgendwo im 4. GB. und sie läßt sich über die Mode-Eigenschaften des betreffenden Vesa-Modes mit der gewünschten Auflösung bzw. dessen VESA-Modenummer abfragen (Modeinfo_Buffer+28h). Um den linearen Framebuffer im 4. GB adressieren zu können kann man entweder XMS/EMS-Memory-Manager verwenden, oder anstelle dessen selber in den PM schalten und darüber dortige Zugriffe machen, oder den 16Bit-Unrealmode/Bigrealmode verwenden, um auch weiterhin alle 16-Bit-RM-BIOS-Funktionen(incl. das VESA-BIOS) benutzen zu können.
Dirk