Zum neuen Informatik-Forum >>
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen   RegistrierenRegistrieren   ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

Multi-Boot CD

 
Dieses Forum ist gesperrt, du kannst keine Beiträge editieren, schreiben oder beantworten.   Dieses Thema ist gesperrt, du kannst keine Beiträge editieren oder beantworten.    Informatikerboard.de Foren-Übersicht -> Assembler
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
alex002
Gast





BeitragVerfasst am: 18. Mai 2006 17:39    Titel: Multi-Boot CD Antworten mit Zitat

Hallo Leute!
Mein Problem:
Ich will eine XP-INstallationscd erzeugen, bei der ich beim Starten aber auf Wunsch auch DOS oder Bart-PE booten kann.
Ich hab mir überlegt, dass ich als Menü das Startmenü von Dos verwenden könnte. Dann hab ich ein Programm geschrieben, mit dem man einen Bootsektor starten können sollte (Die Adresse des Bootsektors wird als Parameter übergeben):

Code:

.MODEL Tiny
.CODE
 org 100h

Start:
       mov bx, 80h               ;Kommandozeile befindet sich an Stelle 80h
       add bl, byte ptr ds:[80h] ;Zu Bx die Länge der Kommandozeile addieren
       inc bx                    ;Ein Zeichen nach der Zeile
       mov byte ptr ds:[bx], 0   ;Die Kommandozeile nullterminieren

       mov al, 00h         ;zugriffsmodus 00h: Datei nur lesen
       mov ah, 3Dh         ;Datei öffnen= int 21h Funktion 3Dh
       mov dx, 82h         ;ds:dx = Adresse des auszugebenden Textes
       int 21h

       mov cx, 2048         ;Anzahl der zu lesenden Bytes
       mov dx, OFFSET Text  ;ds:dx = Zieladresse
       mov ah, 3Fh          ;Datei lesen = int 21h Funktion 3Fh       
       int 21h

       xor ax, ax   ;es auf das erste Segment zeigen lassen
       mov es, ax
       xor bx, bx   
Loop1:
       mov al, ds:[bx+Buffer]         ;Zeichen vom Buffer in al einlesen...
       mov es:[bx+7C00h], al        ;...und ins erste Segment schreiben
       inc bx
       cmp bx, 2049
       JL Loop1     

       mov ax, 00h           
       push ax       
       mov ax, 7C00h
       push ax   
       retf           ;Springe zur Adresse 7C00h im ersten Segment!

Buffer db 2048 DUP(?)
       End Start


Allerdings kommt, wenn ich versuche den Sktor vom XP-Setup zu starten immer "CDBOOT: Couldnot boot from CD - CODE 4".
Weiß Jemand woran das liegt?
Nach oben
ED209



Anmeldungsdatum: 30.05.2005
Beiträge: 122

BeitragVerfasst am: 18. Mai 2006 18:28    Titel: Antworten mit Zitat

Ehrlich gesagt hab ich weder Begriffen was dein Programm koennen soll, noch was du ueberhaupt vorhast.
_________________
+++++++++++++[>++++>+<<-]>.--.>---.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
PaladinXL



Anmeldungsdatum: 13.05.2005
Beiträge: 17

BeitragVerfasst am: 18. Mai 2006 21:31    Titel: Antworten mit Zitat

Er möchte ein Bootmenü mit verschiedenen OS auf CD haben.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
ED209



Anmeldungsdatum: 30.05.2005
Beiträge: 122

BeitragVerfasst am: 18. Mai 2006 22:32    Titel: Antworten mit Zitat

Und was soll das Programm nun koennen?
_________________
+++++++++++++[>++++>+<<-]>.--.>---.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Gast






BeitragVerfasst am: 19. Mai 2006 01:57    Titel: Antworten mit Zitat

hier stinkts Klo kommt glaub ich von ED209, willst du nicht in ein anderes Klo wechseln??? Augenzwinkern
Nach oben
alex002
Gast





BeitragVerfasst am: 19. Mai 2006 13:50    Titel: Antworten mit Zitat

Gut, nochmal:
Ich will mehrere Systeme (also DOS, Bart-PE und das XP-Setup) auf eine Bootfähige CD brennen. Allerdings benötigen sie natürlich unterschiedliche Bootsektoren. Ich will jetzt also ein Programm schreiben, das einen Bootsektor in den RAM läd und anschließend startet.

Ich will also, jetzt ganz einfach ausgedrückt, ein beliebiges OS aus einer bereits laufenden Dos-Umgebung starten.

Ich hoffe, das war jetzt etwas verständlicher!
Bin für jede Antwort dankbar!
Nach oben
ED209



Anmeldungsdatum: 30.05.2005
Beiträge: 122

BeitragVerfasst am: 19. Mai 2006 14:20    Titel: Antworten mit Zitat

Und der Sektor steht in einer Datei?

Ich wage ganz einfach zu bezweifeln, dass man nach dem laden eines Betriebsystems einfach den Bootsektor ausfuehren und erwarten kann dass das entsprechende Betriebssystem dann bootet.
Beim booten der CD werden ja schon etliche Dinge verstellt.

_________________
+++++++++++++[>++++>+<<-]>.--.>---.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Gast






BeitragVerfasst am: 19. Mai 2006 14:26    Titel: Antworten mit Zitat

ED209 hat Folgendes geschrieben:

Ich wage ganz einfach zu bezweifeln, dass man nach dem laden eines Betriebsystems einfach den Bootsektor ausfuehren und erwarten kann dass das entsprechende Betriebssystem dann bootet.
Beim booten der CD werden ja schon etliche Dinge verstellt.


Genau das ist es ja!
Aber man muss doch irgendwie den Bootprozess vom Bios nachahmen können?!
Nach oben
TMSearcher



Anmeldungsdatum: 19.05.2005
Beiträge: 270
Wohnort: Bremen

BeitragVerfasst am: 29. Mai 2006 11:23    Titel: Antworten mit Zitat

Zitat:
Ich wage ganz einfach zu bezweifeln, dass man nach dem laden eines Betriebsystems einfach den Bootsektor ausfuehren und erwarten kann dass das entsprechende Betriebssystem dann bootet.


Genau das ist dein Problem Big Laugh . Beim Booten des System, wird ein sehr kurzes Programm aus dem Masterbootsektor an eine Stelle im unteren Speicherbereich geladen (wurde früher gerne für Viren benutzt) und dort anschließend vom BIOS ausgeführt. Dieser Programmteil sorgt dafür das der Rest nachgeladen und ausgeführt wird. Du musst hier mit BIOS-Funktionen und nicht mit DOS-Funktionen Arbeiten. Ich kann dir die genauen Adressen noch mal raussuchen, wenn das Thema noch aktuell ist.

Gruß
TMS

_________________
Intelligent life is so very rare,
the rarest thing in creation
and the most precious
This is Earth Calling..
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
alex002
Gast





BeitragVerfasst am: 04. Jun 2006 13:41    Titel: Antworten mit Zitat

TMSearcher hat Folgendes geschrieben:
Du musst hier mit BIOS-Funktionen und nicht mit DOS-Funktionen Arbeiten. Ich kann dir die genauen Adressen noch mal raussuchen, wenn das Thema noch aktuell ist.


Das wäre echt nett von dir!
Aber scheinbar wird der Sektor ja eh ausgeführt - schließlich könnte er sonst auch keine Fehlermeldung ausgeben?
Nach oben
Beiträge der letzten Zeit anzeigen:   
Dieses Forum ist gesperrt, du kannst keine Beiträge editieren, schreiben oder beantworten.   Dieses Thema ist gesperrt, du kannst keine Beiträge editieren oder beantworten.    Informatikerboard.de Foren-Übersicht -> Assembler 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.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum nicht herunterladen