Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
DOSe aka EXP-S
Anmeldungsdatum: 05.07.2005 Beiträge: 96
|
Verfasst am: 13.12.2005, 18:14 Titel: ASM von FreeBASIC |
|
|
OK ich poste das bewusst net in die FB sparte da es mehr ums ASM geht
mich durchdringt da gerade die Frage, FB ist ja in der Lage ASM Code vom Basic Code zu generieren, wodrauf greift FB zurück? sind die Print / Input Routinen Betriebssystem abhängig geschrieben worden, oder sind das eigene Funktionen, so das man wenn man eine BIN datei erstellen würde, die ohne Probleme auch ohne OS ausführen könnte..
also wenn man sich REIN aufs Print und Input beschränken würde...
hat da wer FB schonmal soweit aus ein ander genommen?
Greez DOSe _________________
|
|
Nach oben |
|
|
volta
Anmeldungsdatum: 04.05.2005 Beiträge: 1875 Wohnort: D59192
|
Verfasst am: 13.12.2005, 19:41 Titel: |
|
|
Hi,
da es für verschiedene Betriebssysteme unterschiedliche FB-Versionen gibt, wird FB auch systemabhängige Routinen benutzen.
Wenn ich die Quellcode-Dateien von FB richtig deute, dann werden die erstellten Programme aus vorkompilierten SUBs und Funktionen zusammengebaut.
Ich bin zwar nicht 100% sicher, sehe aber keine Möglichkeit ohne ein Betriebssystem FBProgs zum laufen zu bekommen.
Gruß
Volta _________________ Warnung an Choleriker:
Dieser Beitrag kann Spuren von Ironie & Sarkasmus enthalten.
Zu Risiken & Nebenwirkungen fragen Sie Ihren Therapeuten oder Psychiater. |
|
Nach oben |
|
|
DOSe aka EXP-S
Anmeldungsdatum: 05.07.2005 Beiträge: 96
|
Verfasst am: 13.12.2005, 19:57 Titel: |
|
|
Alles klar, schade eigentlich xD _________________
|
|
Nach oben |
|
|
Eastler_dart
Anmeldungsdatum: 25.09.2005 Beiträge: 177 Wohnort: Baden-Würtemberg + Sachsen
|
Verfasst am: 13.12.2005, 21:56 Titel: |
|
|
Wenn das nu richtig verstanden hab, spielst du mit dem Gedanken, ein Programm laufen zu lassen, BEVOR ein Betriebssystem gestartet wird.
Volta hat bestimmt Recht, sonst wären ja nicht mehrere Versionen von FB vorhanden.
Aber daraus ergibt sich doch auch der Schluß, welche Version weitestgehendst an die Hardware ran geht.
Denken wir mal an die DOS-Version von FreeBasic.
In Verbindung (beim Compilieren) mit einer LIB (für Grafik) werden damit Programme erstellt, welche unter DOS Grafikauflösungen fahren, die DOS so nicht kennt.
Somit (zumindest für die Grafikausgabe) wird doch die Hardware (Grafikkarte) direkt (VESA-Standard) angesprochen.
Solche LIBs bringen oft auch alternative Tastaturtreiber mit, meist mit dem Hintergrund, daß diese schneller wären, als input/Inkey$.
Wäre zu testen, ob meine Vermutung stimmt, daß diese alternativen Tastaturabfrageroutinen ebenfalls mit der Hardware direkt arbeiten.
Sollte das alles so sein, wären doch die gefragten Voraussetzungen da: Eingabe und Bildschirmausgabe direkt mit der Hardware.
Sicher wirds schwierig, wie kriegt man die Programmdatei in den Speicher kopiert und dann zum Ausführen überredet???
Falls du tiefer forschen willst, denk ich mal, in diese Richtung sollte der Weg gehen. Versuch auch mal nach dem Thema Bios-Programme-schreiben zu googeln. Bios ist ja auch bloß ein Programm, und das läuft ebenfalls ohne Betriebssystem.
Hoffe das hilft dir ein bißchen
Eastler
EDIT P.S: Boot-Loader zum starten verschiedener Partitionen/Betriebssysteme laufen auch, bevor ein Betriebssystem da ist. z.B. unter Linux gibts lilo, der die Möglichkeiten Anzeigt und je nach Eingabe ein Betriebssystem startet. Google auch mal in Richtung "Boot-Loader programming" oder so _________________ Kaum macht mans richtig, schon geht's
Zuletzt bearbeitet von Eastler_dart am 13.12.2005, 22:02, insgesamt einmal bearbeitet |
|
Nach oben |
|
|
DOSe aka EXP-S
Anmeldungsdatum: 05.07.2005 Beiträge: 96
|
Verfasst am: 13.12.2005, 22:00 Titel: |
|
|
hm du gibst mir hoffnung
das müsste gehen, vorraussetzung wenn ich nen leeres FBC Programm in ASM Code umwandle, macht FBC da keinen Betriebsystem spezifischen code mit rein, und eine Binary zu sarten ist so auch kein Prob, da hab ich noch tonnenweise Besipiel Sources da, die mir demonstrieren wie man ohne OS was ausgeben kann...
jedoch tu ich mich mit ASM immer noch etwas schwer, daher dieser Gedanke
ich werds denke ich mal im nächsten jahr ausprobieren...
ich geh mal davpn aus das die .bi von QB auch FB Kompatibel sind? o_O _________________
|
|
Nach oben |
|
|
MisterD
Anmeldungsdatum: 10.09.2004 Beiträge: 3071 Wohnort: bei Darmstadt
|
Verfasst am: 13.12.2005, 22:06 Titel: |
|
|
die .bi vllt, aber die qb.qlb bekommst du nich portiert.. => call interrupt / call absolute gibts ned falls du da drauf rauswolltest.. _________________ "It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration."
Edsger W. Dijkstra |
|
Nach oben |
|
|
volta
Anmeldungsdatum: 04.05.2005 Beiträge: 1875 Wohnort: D59192
|
Verfasst am: 13.12.2005, 22:41 Titel: |
|
|
Na, dann spiel ich mal den Hoffnungskiller
Print und Imput lassen sich über BIOS-Interrups erstellen, das ist kein Problem.
Zitat: | wie kriegt man die Programmdatei in den Speicher kopiert und dann zum Ausführen überredet??? |
eben,
nach dem Kaltstart oder Reset wird die Adresse 0x0FFFF0 im BIOS-Segment angesprungen (Hardware gebunden).
Die verweist auf den POST (PowerOn SystemTest) dann wird die Bootstrap-Routine (Bootsektor laden) aufgerufen.
Bis dahin läuft alles über das BIOS (patchen?).
Der Urlader aus dem Bootsektor sucht genau nach IO.SYS und MSDOS.SYS auf dem Bootdrive, ja und dann bist du fast im OS.
Also ohne BIOS- oder Bootsektor-patch _________________ Warnung an Choleriker:
Dieser Beitrag kann Spuren von Ironie & Sarkasmus enthalten.
Zu Risiken & Nebenwirkungen fragen Sie Ihren Therapeuten oder Psychiater. |
|
Nach oben |
|
|
DOSe aka EXP-S
Anmeldungsdatum: 05.07.2005 Beiträge: 96
|
Verfasst am: 13.12.2005, 23:06 Titel: |
|
|
volta hat Folgendes geschrieben: | Der Urlader aus dem Bootsektor sucht genau nach IO.SYS und MSDOS.SYS auf dem Bootdrive, ja und dann bist du fast im OS.
Also ohne BIOS- oder Bootsektor-patch |
naja aber auch nur wenn der DOS-Bootsektor vorhanden ist wenn ich mein eigenen kleinen bootloader schreibe, der dann vom ersten sektor einer dis das prg in den speicher läft sollte das kein Prob sein, da hab ich sogar noch nen tutorial hier wie man sowas anstellt _________________
|
|
Nach oben |
|
|
|