Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

Hoher speicherbereich

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Spezielle Fragen
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Flo
aka kleiner_hacker


Anmeldungsdatum: 23.06.2006
Beiträge: 1210

BeitragVerfasst am: 18.07.2006, 18:05    Titel: Hoher speicherbereich Antworten mit Zitat

hallo

ich will eine GUI (jaja, motzen bitte woanders oder mit [motzen] und [/motzen] kennzeichnen...) programmieren und frag mich, ob und wie ich an die 256 MB RAM von meim Laptop unter REINEM Dos komm...
is des der ems/xms oder muss ich da n ganzes os nehmen (oder mir nen linux kernel schnorren)
_________________
MFG
Flo

Satoru Iwata: Wer Spaß am Spielen hat, fragt nicht nach Grafik.

zum korrekten Verstaendnis meiner Beitraege ist die regelmaessige Wartung des Ironiedetektors unerlaesslich.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Mao



Anmeldungsdatum: 25.09.2005
Beiträge: 4409
Wohnort: /dev/hda1

BeitragVerfasst am: 19.07.2006, 07:53    Titel: Antworten mit Zitat

Unter reinem DOS nur per Protected Mode. Dann darfst du aber mit ASM und zumeist auch C bzw. C++ anfangen. Anders nicht, da die Kompatibilität zum 8086 gewärt bleiben sollte. Und dieser hatte nur 20 Bit breite Adressleitungen, ein bisschen getrickst und du konntest einen Megabyte ansprechen. Achja: im PM kannst du dich von den BIOS-Interrupts verabschieden - die liegen im unteren Speicherbereich, den du jetzt nicht mehr nutzen kannst. Schau dir am Besten mal die erste Folge von Adok's Assemblertutorial auf qbasic.de an.
Einen Linux-Kernel zurechttrimmen? Die Sourcen haben gepackt(!) schon rund 20-30 Megabyte. Von heute auf morgen siehst du im Linux-Kernel nicht durch...

Sorry, aber was and'res fällt mir momentan nicht ein...
_________________
Eine handvoll Glück reicht nie für zwei.
--


Zuletzt bearbeitet von Mao am 01.01.2008, 22:00, insgesamt einmal bearbeitet
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Sebastian
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 5969
Wohnort: Deutschland

BeitragVerfasst am: 19.07.2006, 12:52    Titel: Antworten mit Zitat

Wenn du gut ASM könntest, dann könntest du dir eine Routine für deine QB-Programme schreiben, die Arrays usw. in eine externe Datei auslagert. Dann hättest du so viel "Arbeitsspeicher" für deine Datenfelder etc., wie auf deine HDD passt. Das Problem dabei ist, dass das irre langsam wird, wenn du das in QB schreibst, was ja ansonsten möglich wäre. Um sowas vernünftig nutzen zu können, müsstest du dir solche Routinen halt in ASM schreiben und das ist nicht einfach.
_________________

Der Markt regelt das! | Opas Leistung muss sich wieder lohnen - für 6 bis 10 Generationen!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
croco97



Anmeldungsdatum: 04.11.2005
Beiträge: 260

BeitragVerfasst am: 03.08.2006, 11:10    Titel: Antworten mit Zitat

Einführung in das Problem auf
http://www.askos.de/ram

Kurzfassung: 3 Möglichkeiten

1.) Nutzung von EMS/XMS - maximal 64 MB, segmentiert in 16K- oder 64K-Pages. Gibt's für QB viele Libs, die man nutzen kann.

2.) Nutzung eines DOS-Extenders. Wie's da mit QB-Libs aussieht, weiss ich nicht.

3.) Gleich in den Protected Mode gehen ==> Sehr heikel, vor allem in Verbindung mit Grafiknutzung.

Grüsse!

Croco
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Mao



Anmeldungsdatum: 25.09.2005
Beiträge: 4409
Wohnort: /dev/hda1

BeitragVerfasst am: 03.08.2006, 14:36    Titel: Antworten mit Zitat

Die Grafiknutzung ist dort nicht das Problem, sondern meiner Meinung nach der direkte Hardwarezugriff, zu dem du dort "gezwungen" wirst. Über BIOS-Ints mal eben auf Diskette/Festplatte oder ähnliches zugreifen, oder über DOS-Ints mal so nebenbei 'nen Text ausgeben lassen is' nich'.
Grafikausgabe ist hingegen einfach gestrickt:
du schaltest, bevor du den PM aktivierst, in einen VESA-Mode (den kannst du im PM nicht mehr ändern!), aktivierst das A20-Gate (nicht unbedingt notwendig, jedenfalls bei kleinen Programmen) und schaltest in den PM in dem du ein Bit im CR0-Register auf 1 setzt. Danach, ich weiß nicht mehr die genauen Adressen, kannst du auf den Grafikspeicher zugreifen, wie auf "normalen" unter DOS oder im RM. lächeln
Ähm...naja, abgesehen davon, dass der Speicher linear angeordnet ist und du vorher noch mindestens 2 Segmente definieren musst. Hinweis: Bank-Switching entfällt!
_________________
Eine handvoll Glück reicht nie für zwei.
--
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Spezielle Fragen Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz