Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » Software » Eigener Bootloader

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
30.10.2006, 00:08 Uhr
J-jayz-Z
Perl Crack ala Carte
(Operator)


Hi,

ich war mir nicht sicher, in welches Forum ich das packen sollte. Aber da ich mal denke, das es ein Dateisystem und ein dd Problem ist, passt das ganz gut hier.
Ich hab mich damit beschäftigt, wie man einen eigenen Bootloader schreibt. In "bochs" kann ich es einwandfrei booten. Nur eben nicht, wenn ich direkt vom USB Stick booten will.
Ich hab den USB Stick mit FAT32 formatiert und dann mit dd

C++:
dd if=boot.bin of=G:\boot.bin bs=512 count=1

die datei so auf den Stick geschrieben. Wie gesagt, in bochs kann ich es booten. Also sollte es nicht am ASM Code liegen ...
Wobei; ich hab es als Floppy eingetragen in bochs; macht das einen Unterschied ?
--
perl -Mstrict -Mwarnings -e 'package blub; sub new { bless {} } sub bar {my $self=shift; $self->{bla}="66756e2d736f66742e6465"; return $self->{bla};} my $foo=blub->new();print "Hallo ";print pack("H*",$foo->bar()); print "\n"'

Dieser Post wurde am 30.10.2006 um 00:16 Uhr von J-jayz-Z editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
31.10.2006, 15:45 Uhr
RedEagle



Ich habe mich nie mit USB-Stick-bootloader beschäftigt, aber:
1. Kann dein BIOS das??
2. Ist das BIOS richtig eingestellt (bootreihenfolge)
3.Wenn der Bootsektor ausgeführt wird, steht in dem Register DL die Laufwerksnummer, des laufwerkes von dem gebootet wird. Du musst, wenn du das Laufwerk angeben musst, diese nummer angeben, da es nicht immer die selbe sein muss.
4. wie oben erwähnt, habe ich mich noch nicht mit USB_Sticks beschäftigt, aber ich vermute, das USB-Sticks über andere BIOS-Interrupts angesprochen werden.
--
MFG RedEagle
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
11.11.2006, 23:32 Uhr
Pablo
Supertux
(Operator)


512 bytes sind keine gute Idee, denn du überschreibst nicht nur die Bootsektoren sondern auch die Partitionstabelle. Du solltest nur 440 Bytes schreiben, siehe auch www.fun-soft.de/showtopic.php?threadid=15109
--
A! Elbereth Gilthoniel!
silivren penna míriel
o menel aglar elenath,
Gilthoniel, A! Elbereth!
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
12.11.2006, 17:50 Uhr
J-jayz-Z
Perl Crack ala Carte
(Operator)


Wenn ich es mal auf die Platte schreiben will, werde ich mich hüten die Partitionstabele zu überschreiben. Aber ich denke auf einem usb-stick ist das nicht allzu schlimm

Na ja, ich habe immer noch das Problem. Im BIOS geht das Problemlos und von einer USB-Platte kann ich booten. Also sollte das auch gehen. Nur: Wie weiß ich, welches Laufwerk welche Bezeichnung hat für DL ? Dann versuch ich das mal zu setzen, leider habe ich dazu nichts gefunden online ...
--
perl -Mstrict -Mwarnings -e 'package blub; sub new { bless {} } sub bar {my $self=shift; $self->{bla}="66756e2d736f66742e6465"; return $self->{bla};} my $foo=blub->new();print "Hallo ";print pack("H*",$foo->bar()); print "\n"'
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
14.11.2006, 17:32 Uhr
RedEagle



In DL steht das laufwerk, von dem gebootet wurde.
Für den rest gibts im BIOS glaub ich ne funktion int 0x12 oder so in der gegend.
Ich bin mir aber fast sicher, das jeder PC anders durchnummerriert ist.

---
@Pablo:
Ein Sektor ist idr nun mal 512Byte groß, und mann kann idr auch nur sektorweise auf laufwerke wie USB-Stick zugreifen .
---

Allerdings ist es wirklich nicht zu empfeheln, selbst im MBR seiner Festplatte rumzufuschen, bei Diskette und USB-Sticks sehe ich da allerdings keinh problem, auch mit 512Byte großen bootloader nicht (wobei 512 Byte mehr als ausreichend sein sollten, selbst wenn man FAT12/16 Implementiert) und dann gibts auch immernoch die moglichkeit, von Sektor 0 aus, andere Sektoren dazuzuladen, die den bootloader dann komplettieren.
--
MFG RedEagle
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ Software ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: