1Danke
ERLEDIGT
JA
JA
ANTWORTEN
5
5
ZUGRIFFE
1116
1116
EMPFEHLEN
-
11.02.12 11:56 #1
Mitglied Gold
- Registriert seit
- Feb 2011
- Beiträge
- 199
Hi,
ich hoffe der Titel ist nicht komplett verwirrend und ich bin im richtigen Forum.
Ich schreibe zurzeit an meinem eigenen kleinen OS und gehe nach diesem Tutorial vor: http://www.tutorials.de/content/171-...ebssystem.html
Ich habe schon ein bisschen gecodet und stoße immer wieder auf ein komisches Problem. Wenn ich versuche die boot.bin und die kernel.bin zu kopieren, kopiert die cmd manchmal nur die boot.bin und einen kleinen Teil der kernel.bin... Das tritt immer wieder im Zusammenhang mit dem cmp Befehl und/oder Registeraufrufen. Ein Beispiel:
[ASM]
mov ax, word [Variable1]
sub ax, word [Variable2]
[ASM]
funktioniert nicht (zumindest an manchen Stellen in meinem Code)
funktioniert.Code asm:1 2 3
mov ax, word [Variable1] mov bx, word [Variable2] sub ax, bx
Bisher konnte ich alles so umschreiben, dass es funktioniert, jetzt bin ich aber an einer Stelle, an der nicht mal mehr
im Gegensatz zu nurCode asm:1 2
cmp ax, word [Variable] je Ende
funkioniert. Andere Sache funktionieren an dieser Stelle ohne Probleme, und auch der obere Code funktioniert nur an dieser Stelle nicht. Der Assembler gibt weder Fehlermeldung noch Warnung aus, aber kopiert werden die beiden Dateien trotzdem nicht.Code asm:1
cmp ax, word [Variable]
Die Datei ist immer jonstant groß, weil ich den Rest der Datei einfach mit Nullen ausfülle.
Ich hoffe jemand hat einen Ansatz, woran mein Problem liegen könnte.
Danke im Voraus!
-
12.02.12 10:59 #2
Mitglied Gold
- Registriert seit
- Feb 2011
- Beiträge
- 199
Hi,
mir ist noch etwas aufgefallen.
Ich wollte wissen, ab welcher Stelle die kernel.bin nicht mehr kopiert wird.
Das letzte ASCII (?) Zeichen der *.img ist ein SUB. Jetzt hab ich mal nachgseschaut, was das bedeutet (bei Wikipedia http://de.wikipedia.org/wiki/Steuerzeichen). Ich zitiere:
"Steht als Ersatz für ein Zeichen, das ungültig oder fehlerhaft ist, z. B. wegen eines Paritätsfehlers bei der Übertragung.
Dateiendezeichen (EOF, End of File) für Textdateien unter CP/M mangels bytegenauer Dateilängen, war anfänglich, obwohl unnötig, auch unter DOS üblich."
Kann das damit etwas zu tun haben? Alleine, dass etwas von End of File da steht, macht mich schon stutzig. Und inwiefern hat das etwas mit dem Assemblercode zu tun.
Soll ich mal den ganzen Code posten (ist ein Makro)?
-
12.02.12 11:09 #3
Hi
nur mal so geraten: Gib beim Copy ein /B anNetiquette (vA §15) und Nutzungsregeln (vA §4.8) einhalten! Programmcode in Codetags/Codeboxen.
Sehr gute Beiträge bitte Bewerten (Stern darunter oder "Danke").
"Funktioniert nicht" ist zu ungenau! Code, Fehlermeldungen, Verhalten des Programms, ...?
-
12.02.12 14:06 #4
Mitglied Gold
- Registriert seit
- Feb 2011
- Beiträge
- 199
Wow! Du bist ein Genie, sheel! Es funktioniert. Gibt's dafür auch noch eine Erklärung?
EDIT:
Nicht dafür, dass sheel genial ist, sondern, dass man /b anfügen muss.
-
12.02.12 14:13 #5
Mitglied Gold
- Registriert seit
- Feb 2011
- Beiträge
- 199
Oh. Ich hab mich zu früh gefreut. Ich kann das Betriebssystem zwar ausführen, aber das Makro wird nur einmal ausgeführt -> Das Makro zeichnet eine Linie und es wird nur noch eine Linie gezeichnet. Danach stürzt das OS ab. Hat das damit etwas zu tun?
-
12.02.12 14:18 #6
Unter Windows gibts programmiermäßig zwei Arten, um Dateien zu öffnen.
Text/Binär.
Einer der Unterschiede: Bei Text wird das Byte -1 als Dateiende verstanden (Binär eben nicht).
Bin mir nicht sicher, welche Öffnungsart copy generell nimmt bzw. wie die ermittelt wird,
aber mit /b wird auf jeden Fall Binär genommen.
Dein Aufruf war wohl im Textmodus und hat bei -1 aufgehört.
GrußNetiquette (vA §15) und Nutzungsregeln (vA §4.8) einhalten! Programmcode in Codetags/Codeboxen.
Sehr gute Beiträge bitte Bewerten (Stern darunter oder "Danke").
"Funktioniert nicht" ist zu ungenau! Code, Fehlermeldungen, Verhalten des Programms, ...?
Ähnliche Themen
-
Copy funktioniert nicht für einen bestimmten Verzeichnisname
Von h2000 im Forum PHPAntworten: 8Letzter Beitrag: 04.11.11, 19:23 -
copy () funktioniert nicht
Von daCrashOverwrite im Forum PHPAntworten: 4Letzter Beitrag: 13.03.07, 11:46 -
Flash Popup funktioniert nicht wegen Popupblocker
Von medienszene im Forum Flash PlattformAntworten: 7Letzter Beitrag: 30.11.05, 06:28 -
Copy & paste funktioniert nicht im Maya
Von syx im Forum Autodesk Maya (ehemals Alias)Antworten: 2Letzter Beitrag: 16.09.05, 12:01 -
copy funktioniert nicht
Von bled im Forum PHPAntworten: 5Letzter Beitrag: 08.09.04, 11:04




Zitieren

Login