Beiträge anzeigen

Diese Sektion erlaubt es dir alle Beiträge dieses Mitglieds zu sehen. Beachte, dass du nur solche Beiträge sehen kannst, zu denen du auch Zugriffsrechte hast.


Nachrichten - Vampire

Seiten: 1 [2] 3
21
Offtopic / OS-Coder-Karte
« am: 09. August 2004, 08:28 »
Mannem (Mannheim)

wobei mal ne Frage joachim, warum kann ich nie auf deine hp zugreifen ?? Läuft die über eigenen server und der ist down ??
22
Offtopic / Musik? Intrumente und so?
« am: 09. August 2004, 08:26 »
Hi,

Musikmäßgi spiele ich Klavier (13 jahre) und Trompete (10 Jahre). Hey Mastermesh geht ihr net auch nach China ?? Glaub da irgendwas gehört zu haben. Hätte vor 3 Jahren mal fast im LJO BW als Aushilfe mitgespielt. Glaub da gings nach Spanien, aber konnte leider net.. Spiele beide Instrumente eher klassich wobei ich Klaviermäßig alles mäögliche spiele usw..

Band versuch ich schon länger aufzubauen, aber eher in die Richtung Metal / Gothic.
Kann auch etwas singen (ich meine das net, aber zumindest meine Freunde usw...)
23
Offtopic / Größe der ASM Befehle
« am: 06. August 2004, 12:23 »
also  bei dem Assembler-GrundlagenBUch von Joachim Rhode da war glaub ich ne Liste dabei mit der Größe der Assembler Befehlen allerdings nur als Textdatei *hmm*

Grüße
Morti
24
Offtopic / CF - Wie beschreibe ich den Bootsektor?
« am: 06. August 2004, 12:18 »
net wirklich deutsch, aber die Anleitungen die man auf Deutsch findet, sind meist genauso grauenhaft erklärt => Nachholbedarf, aber dazu ist es auch net wirklich gut genug *gg*
25
Offtopic / CF - Wie beschreibe ich den Bootsektor?
« am: 06. August 2004, 08:54 »
dann is ja gut :) die Doku zu Bochs ist grauenhaft *gg* sowohl in Englisch als auch Deutsch
26
Das Wiki / LowlevelOs
« am: 06. August 2004, 08:19 »
also ich denk Roshl hat schon recht wenn er sagt die Reise ist das wichtigste.
Man sollte sich auch wenn man nen Thema wirklich lernen will alles was man findet durchlesen. Und dann auch alles was man nicht versteht nachschauen im Internet usw.. Es gibt so viele Quellen.
Das kopieren von Code mag am Anfang total schön sein aber spätestens dan wenn man keinen Code mehr zum kopieren hat dann wird es schwer weiterzukommen, vor allem weil man dann schon viell. 100 Zeilen Code hat und vielleicht von einer richtig weiß was sie macht.

Man Code aber dennoch schon übernehmen aber man sollte ihn dann selbst abtippen und nicht alles blind kopieren !
27
Das Wiki / Fehler/Ungenauigkeit in der ersten Ausgabe ???
« am: 05. August 2004, 15:01 »
Ok, jetzt ist das passiert was ich mir gedacht habe.. Buffer Overflow, versteh nix mehr :-(
aber egal, irgendwie werd ich mich jetzt dennoch durch alles kämpfen...
allein schon die ganzen Abkürzungen..

locate GDT, IDT usw...
28
Das Wiki / Fehler/Ungenauigkeit in der ersten Ausgabe ???
« am: 05. August 2004, 12:44 »
Roshl was verwendest du persönlich dann für ne Routine ?? Würd mich mal interessieren :)

danke

Grüße
Vamp
29
Offtopic / CF - Wie beschreibe ich den Bootsektor?
« am: 05. August 2004, 12:40 »
also wenn du willst kann ich dir ne Konfig datei geben dazu @ vish welche zumindest für den Anfang ausreichen wird.

klar @ Roshl dass Bochs nen richtigen Boot net ersetzt aber zum testen reicht es aus, vro allem wenn man erst mal etwas am Bootloader arbeitet und etwas am Kernel rumspielt usw..
30
Offtopic / CF - Wie beschreibe ich den Bootsektor?
« am: 05. August 2004, 12:02 »
im Prinzip braucht du nicht mal ein Diskettenlaufwerk. Ich habe auch keins. Ich verwende halt ne VM (Bochs) und sag der halt dass mein Diskettenlaufwerk meine Image Datei auf der Festplatte ist :)
Kann man dann auch immer schön schnell testen.

Grüße
Morti
31
Das Wiki / Fehler/Ungenauigkeit in der ersten Ausgabe ???
« am: 05. August 2004, 11:32 »
ok schonmal vielen Dank für die Antworten :)

dann schein ich ja zumindest den Bootloader jetzt komplett auseinandergenommen zu haben *gg*

Mal ne Frage zum ES, wird das wirklich gesetzt weil im Prinzip ist das doch nur zuständig für Daten die keinen Platz mehr im DS haben, oder irre ich mich da ?

ach ja und wie sieht das mit diesem Code aus:

; Diskdrive reset (Interrupt 13h, 0)
push ds ; Sichere DS
mov ax, 0 ; Die gewünschte Funktion (reset)
mov dl, [bootdrv] ; Dieses Laufwerk ist gewünscht
int 13h ; Den Interrupt ausführen
pop ds ; DS wiederherstellen
jc load ; Geht nicht? -> Noch mal!

wird der benötigt oder muss das gemacht werden ? weil bei mir scheint es auch ohne diese "Funktion" zu gehen.

Danke

Grüße
Morti
32
Das Wiki / Fehler/Ungenauigkeit in der ersten Ausgabe ???
« am: 05. August 2004, 11:07 »
hm.. worauf antwortest du jetzt ???
weiß dass der Code an für sich net falsch ist und er auch ohne größere Probs läuft, wollte nur ein paar anmerkungen machen und vielleicht etwas schlauer werden :)
33
Das Wiki / Fehler/Ungenauigkeit in der ersten Ausgabe ???
« am: 05. August 2004, 10:45 »
Noch ne Frage, warum resettet ihr eigentlich beim Bootloader das Laufwerk ?? Ist das notwendig oder nicht ???
34
Das Wiki / Fehler/Ungenauigkeit in der ersten Ausgabe ???
« am: 05. August 2004, 10:29 »
So, habe nochmal ne kleine Frage zu euren Bootloader *gg*

1)

; Sektoren lesen (Interrupt 13h, 2)
mov ah, 2 ; Funktion 2 (Lesen)
mov al, 5 ; Lese 5 Sektoren
mov cx, 2 ; Cylinder=0, Sector=2
mov dx, 0 ; Head=0, Laufwerk=0
int 13h ; ES:BX = Daten vom Laufwerk
jc load1 ; Fehler? Noch mal!
mov si,loadmsg
call putstr ; Meldung ausgeben
retn

ihr setzt hier dx einfach auf 0, im Prinzip ist es ja ähnlich wie das, was ich schon oben geschrieben habe, aber meine Frage ist, wenn ihr das Laufwerk auf 0 setzt ist das zwar nicht falsch, aber auch nur wenn es sich um ein Diskettenlaufwerk handelt oder ???
wäre es nicht geschickter so:
mov dl,[bootdrv]
mov dh,0

oder ist das Absichtlich ?? (kenne mich halt (noch) net soo toll aus und will halt ne Bestätigung ob meine Ansicht true or false ist )

2)
;Springe zu diesem Kernel
mov ax, 0x1000 ; Die Adresse des Programms
mov es, ax ; Segmentregister updaten
mov ds, ax
push ax
mov ax, 0
push ax
retf

kann es sein dass die Zeilen:
mov es, ax ;und
mov ds, ax

unnötig sind und nicht gebraucht werden, da wir die Segment und Offsetadresse auf den Stack pushen ??


Vielen Dank und sorry, dass ich mit meinen tollen kleinigkeiten nerv *gg*

Grüße
Morti
35
Das Wiki / LowlevelOs
« am: 04. August 2004, 13:14 »
komm lasst uns anfangen alles zu patentieren. hmm... ich patentier mir den Befehl mov *gg*
36
Das Wiki / Fehler/Ungenauigkeit in der ersten Ausgabe ???
« am: 04. August 2004, 10:08 »
also ich denk es ist net so schlimm wenn man die XOR Variante wählt. Habe es auch ziemlich schnell kennengelernt und falls man es nicht weiß was diese Anweisung macht, dann kann ja auch entweder bei ner Suchmaschine schauen, oder man schreibt sich die logische Verknüpfung auf, man sollte die eh sich anschauen und dann versteht man das denk ich auch. Ich denke nen Anfänger in Assembler freut sich sogar wenn er mitbekommt das er mit xor ax,ax was zurücksetzen kann und dies schneller ist als mov ax,0, zumindest habe ich mir das sofort gemerkt :) Wobei ich ja immer noch nen Anfänger bin :-/

Grüße
Morti
37
Das Wiki / Fehler/Ungenauigkeit in der ersten Ausgabe ???
« am: 03. August 2004, 15:18 »
ja hast recht :) Verwende auch lieber XOR ah,ah, versteht net gleich jeder *gg* und das ist ja acuh nen Grund Assembler zu proggen *löl*

War ja nur ne Anmerkung sollte kein Angriff sein :) Aber es könnte ja sein, dass ich in meinem Bootloader in al den wichtigsten Wert speichere den es gibt *ok sehr abstrakt diese Theorie*

Ist mir halt aufgefallen, da ich mir grad die kompletten interrupt Tabellen anschaue.
38
Das Wiki / Fehler/Ungenauigkeit in der ersten Ausgabe ???
« am: 03. August 2004, 14:40 »
Hi,

ich habe mal ne Frage zu dem Bootloader in der ersten Ausgaeb eueres Magazins. Ich versuch grad alles mehr oder weniger richtig zu verstehen und auch die ganzen Befehle nachzuschauen (BIOS INterrupts usw...) und bin jetzt auf was gestoßen was ich nirgendswo gefunden habe usw...

Der Code ist deswegen nicht falsch, das ist mir auch klar, schließlich funktioniert er ja :)

und zwar folgendes:

; Diskdrive reset (Interrupt 13h, 0)
push ds         ; Sichere DS
mov ax, 0         ; Die gewünschte Funktion (reset)
mov dl, [bootdrv]     ; Dieses Laufwerk ist gewünscht
int 13h         ; Den Interrupt ausführen
pop ds             ; DS wiederherstellen
jc load         ; Geht nicht? -> Noch mal!
load1:
mov ax,0x1000         ; ES:BX = 10000
mov es,ax
mov bx, 0


Ich habe mir verschiedene Interrupt Listen durchgeschaut und bin jetzt darauf gestoßen, dass im Prinzip das setzen von ax auf 0 nicht ganz korrekt ist. Der Funktion reicht es schon aus wenn nur ah auf 0 gesetzt wird, so steht es auch in den agnzen Referenzen in denen ich nachgeschaut habe. Mir ist klar dass das Register AH ein Teil von AX ist..

Wollte ich nur mal so erwähnen

aber dennoch find ich euer Mag echt sehr gut gemacht !!

Grüße
Vamp
39
Offtopic / Linksammlung
« am: 03. August 2004, 09:12 »
oder hier die Interuptliste auch zum runterladen:
http://www-2.cs.cmu.edu/afs/cs/user/ralf/pub/WWW/files.html
40
Offtopic / Linksammlung
« am: 03. August 2004, 09:09 »
habe auch noch was gutes gefunden, ne Seite über Interrupts (sowhol für DOS als auch für BIOS)
http://www.ctyme.com/intr/int.htm
Seiten: 1 [2] 3

Einloggen