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 - Nic

Seiten: [1]
1
OS-Design / Realmode +C/Pascal
« am: 17. April 2005, 15:37 »
Hi,

Ist es möglich ein Os in C/Pascal o.ä. zu coden auch wenn man im RM arbeitet?
Wenn ja, was muss man denn beachten bzw. anders machen?

thx, Nic! :)
2
Lowlevel-Coding / Fehler bei 2Mal cmp!
« am: 19. April 2004, 15:02 »
Hi, Ich habe ein kleines problem:
Bei dieser Funktion ,welche eine Wartet bis eine Taste gedrückt wird, schließt sich Bochs immer!
;Wartet bis eine Taste gedrückt wurde
WaitKey:
mov ah,0
int 016h

;Problem !!!
;Beide Funktion an sich funktionieren eigentlich einwandfrei ,blos
;Irgendwie beendet sich Bochs wegen den 2 cmp's
;Wenn ich eine der Beiden cmp auskommentiere funktioniert alles wieder
cmp al,Key_ESC ;Bei Escape soll der PC rebootet werden
je  WaitKey_d

cmp al,Key_ENT ;Bei Enter soll die Zeile gewechselt werde
je  NewLine

mov ah,0x0E
mov bl,7
mov bh,0
int 0x10
jmp WaitKey

NewLine:
mov ah,0x0E
mov al,13
int 0x10
mov al,10
int 0x10
jmp WaitKey

WaitKey_d
ret
P.S: Noch ne kleine Frage:
Hier die PrintString-funktion aus der ersten LowLevel-ausgabe:
msg_Restart db "Druecken die ESC-Taste um neu zu starten",13,10,0
...
mov si,msg_Hello   ;Es wird ein String angezeigt
call WriteString   ;schreiben gibt den String auf den Bildschirm aus
...
;Gibt einen String aus
;1.Parameter- Der auszugebene String als Variable
WriteString:
lodsb
or al,al
jz short WriteString_d
mov ah,0x0E
mov bl,7
mov bh,0
int 0x10
jmp WriteString

WriteString_d:
retn
Wieso wird der String nach SI geschrieben und nicht nach AL ....0x0E erwartet doch seine parameter in AL ?!

thx, Nic!
3
Lowlevel-Coding / Macro Problem
« am: 16. April 2004, 12:06 »
@Roshl, Klar weiß ich was ein Kroxldyfig ist ...
[zitat]Kroxldyfig ist ein sehr schwer zu erklärendes Wort[/zitat]
(SouthPark) =)
4
Lowlevel-Coding / Macro Problem
« am: 15. April 2004, 14:03 »
ok, es funzt ...danke! ;)
5
Lowlevel-Coding / Macro Problem
« am: 15. April 2004, 10:40 »
das problem hab ich immer noch :)

thx, Nic! ;)
6
Lowlevel-Coding / IDE für Assembler.... Habt ihr Tips ?
« am: 14. April 2004, 15:13 »
ch bin auch grad dabei ne Kleine NASM IDE zu proggen ...das ding würd zwar nicht gerade extrem umfangreich und so aber ich mach es OpenSource so kann den denn jemand von euch weiterproggen wenn er will ;)

Screenshot: [link]http://home.arcor.de/nic.j/nae.png[/link]

cu ,Nic!
7
Lowlevel-Coding / Macro Problem
« am: 14. April 2004, 13:22 »
wohlmöglich hast du recht, aber das programm hab ich ja eigentlich nur geschreiben um den umgang mit Macros zu lernen...
8
Lowlevel-Coding / Macro Problem
« am: 14. April 2004, 12:59 »
Hi,
Ich habe mal wieder ein Assembler problem ...
Also erstmal hier der code:
;-----------------------------------------------------------------------------------------
;-                               Testprogramm by Nic                                     -
;-----------------------------------------------------------------------------------------

org 100h

mov ah,09
mov dx,msgEingabe
int 21h

InputChar
NewLine

mov ah,09
mov dx,msgDanke
int 21h

NewLine
Exit

;-----------------------------------------------------------------------------------------
;-                            Funktionen und Variablen                                   -
;-----------------------------------------------------------------------------------------

%macro InputChar 0
   mov ah,01
   int 21h
%endmacro

%macro NewLine 0
  mov ah,02
  mov dl,13
  int 21h
  mov dl,10
  int 21h
%endmacro

%macro Exit 0
  mov ah,4Ch
  int 21h
%endmacro

msgEingabe db "Bitte drücken sie eine Taste :","$"
msgDanke   db "Danke ...","$"
Wenn ich das Kompiliere bekomme ich fogende Fehlermeldung
macro.asm:18: error: symbol 'NewLine' redefined
wenn ich die Zeile lösche kann ich es ohne weitere probleme kompilieren blos wenn ich es ausführe bekomme ich eine Windows-Fehlermedung: Link:[link]http://home.arcor.de/nic.j/error.jpg[/link]

thx, Nic! ;)
9
Lowlevel-Coding / Kleines Assembler probelm
« am: 13. April 2004, 12:34 »
Auch dir danke.
Warst nur ein bisschen zu spät :)
10
Lowlevel-Coding / Kleines Assembler probelm
« am: 13. April 2004, 12:17 »
ahhhhh ,danke!!!!

hab nochmal nachgeguckt ...es wurde nicht in DL sondern AL gespeichert, jetzt funzt es ;)
11
Lowlevel-Coding / Kleines Assembler probelm
« am: 13. April 2004, 11:34 »
hmmm, hat keiner eine Antwort zu mein 1. Problem?

[zitat]
Das programm soll solange eine schleife ausführen bis der benutzer A eingibt doch leider funktioniert das nicht (bei mir)
;---------------------------------------------------------------------------------
;-                             Testprogramm by nic                                               -
;---------------------------------------------------------------------------------

org 100h

Schleife:
mov ah,09         ;String ausgeben
mov dx,msgEingabe ;
int 21h           ;

mov ah,01         ;Zeichen einlesen
int 21h           ;

cmp dl,"a"        ;War das eingegebene Zeichen A
je ZeichenWarA    ;Springe zum "ZeichenWarA" Label

mov ah,09         ;Wenn nicht dann ...
mov dx,msgNichtA  ;gib diesen String aus
int 21h           ;
jmp Schleife      ;und wiederhole die Schleife

ZeichenWarA:       ;Wenn doch dann...
mov ah,09         ;gib diesen String aus
mov dx,msgWarA    ;
int 21h           ;

mov ah,4Ch         ;Beende das Programm
int 21h            ;

;---------------------------------------------------------------------------------
;-                           Funktionen und Variablen                            -
;---------------------------------------------------------------------------------

msgEingabe db "Bitte geben sie A ein: ",13,10,"$"
msgWarA db "Sie haben A eingegeben",13,10,"$"
msgNichtA db "Sie haben nicht A eingegeben",13,10,"$"
[/zitat]
12
Lowlevel-Coding / Kleines Assembler probelm
« am: 12. April 2004, 18:58 »
ok, danke
Ich glaube jetzt hab ichs geschnallt ;)

Welche interrupts werden da verwendet ?
BIOS-interrupts ?
13
Lowlevel-Coding / Kleines Assembler probelm
« am: 12. April 2004, 18:44 »
Hi,
Ich habe vor kurzem mit dem OS/Assembler coding begonnen
und hab jetzt mal ein paar fragen:

1.) In einem Assembler tutorial habe ich folgendes programm geschrieben:
;---------------------------------------------------------------------------------
;-                             Testprogramm by nic                               -
;-Das programm soll solange eine schleife ausführen bis der benutzer A eingibt ;-doch leider funktioniert das nicht (bei mir)
;---------------------------------------------------------------------------------

org 100h

Schleife:
 mov ah,09         ;String ausgeben
 mov dx,msgEingabe ;
 int 21h           ;

 mov ah,01         ;Zeichen einlesen
 int 21h           ;

 cmp dl,"a"        ;War das eingegebene Zeichen A
 je ZeichenWarA    ;Springe zum "ZeichenWarA" Label

 mov ah,09         ;Wenn nicht dann ...
 mov dx,msgNichtA  ;gib diesen String aus
 int 21h           ;
 jmp Schleife      ;und wiederhole die Schleife

ZeichenWarA:       ;Wenn doch dann...
 mov ah,09         ;gib diesen String aus
 mov dx,msgWarA    ;
 int 21h           ;

mov ah,4Ch         ;Beende das Programm
int 21h            ;

;---------------------------------------------------------------------------------
;-                           Funktionen und Variablen                            -
;---------------------------------------------------------------------------------

msgEingabe db "Bitte geben sie A ein: ",13,10,"$"
msgWarA db "Sie haben A eingegeben",13,10,"$"
msgNichtA db "Sie haben nicht A eingegeben",13,10,"$"
2.)In der ersten Ausgabe von Lowlevel hat man ja einen kleinen Kernel programmiert...langsam verstehe ich auch den code doch folgender bleibt mir unschlüssig ...Könnte mir jemand stück-für-stück erklären was genau da passiert
Hier der Code:
;Funktion zum Ausgeben eines strings
schreiben:
lodsb
or al,al
jz short schreiben_d
mov ah,0x0E
mov bx,0x0007
int 0x10
jmp schreiben

schreiben_d:
retn
thx, Nic! ;)
Seiten: [1]

Einloggen