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.


Themen - joachim_neu

Seiten: 1 ... 3 4 [5]
81
Lowlevel-Coding / get_number
« am: 26. March 2004, 15:15 »
hallo, hab eine neue funkion, weis aber nicht, ob sie läuft, weil bochs bei mir net geht... also zuerst testen...



;*****************************
;Funktion get_number
;Input:   ---
;Output:   BX enthällt die Zahl
;geändert wird CX
;*****************************


get_number:

push ax
push bx

mov ax,0x0000
int 0x16                ;in ah ist der scancode
dec ah

cmp ah,0x1B        ;wenn ENTER gedrückt wird beenden
jz end_get_number
mov bl,07h        ;die eingegebene Zahl wird ausgeben
mov ah,0Eh
int 10h      
mov ah,cl

mov ax,0x0000
int 0x16                ;in ah ist der scancode
dec ah

cmp ah,0x1B        ;wenn ENTER gedrückt wird beenden
jz end_get_number
mov bl,07h        ;die eingegebene Zahl wird ausgeben
mov ah,0Eh
int 10h      

mov ah,ch

end_get_number
pop bx
pop ax
jmp ZURÜCK



JOACHIM NEU
82
Das Wiki / Sammlungen
« am: 23. March 2004, 16:59 »
hallo,

ich denke man sollte eine Linksammlung, eine "Buchvorstellung", in der Bücher über OS-Dev. gezeigt werden und eine Tut und E-Book-Sammlung einrichten auf der Seite, oder im Forum "Resource Center" ein Thread der immer ganz oben bleibt, wo man dann solche Sachen eintragen muss, denn wenn man sonst im Internet was sucht, dann ist das ziemlich schwer das richtige zu finden, während wenn dann jemand was findet, dann kann er es eintragen und andere, wenn sie etwas brauchen da mal vorbeischau'n... Ich weiß nicht, was die anderen dazu sagen, aber ich fänd's gut...

mfg

JOACHIM NEU
83
Lowlevel-Coding / Ausführen und Speicher...
« am: 21. March 2004, 09:48 »
hallo,

wie schaffe ich es einen anderen Sector auszuführen? Ich bekomm das einfach net hin... Man muss doch den IP verändern, oder?
Ich hab einfach mal euren Code genommen:


;Lade unseren Kernel
call execute  

;Springt zum Kernel
mov ax, 0x2000 ; Die Adresse des Programms
mov es, ax     ; Segmentregister updaten
mov ds, ax
push ax
mov ax, 0
push ax
retf

; Lade den Kernel vom Bootlaufwerk
execute:

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

execute1:
mov ax,0x2000      ; ES:BX = 20000
mov es,ax
mov bx, 0

; Sektoren lesen (Interrupt 13h, 2)
mov ah, 2       ; Funktion 2 (Lesen)
mov al, 1       ; Lese 1 Sektor
mov cx, 2       ; Cylinder=0, Sector=2
mov dx, 0       ; Head=0, Laufwerk=0
int 13h         ; ES:BX =  Daten vom Laufwerk
jc execute1        ; Fehler? Noch mal!    


Was geht daran nicht? Wo würde dieser Sector hingespeichert? Ist der Arbeitsspeicher sowas wie ein Quadrat, also das Programm dann an Stelle 2000x2000? Die Shell liegt bei 1000x1000, stimmts?

Bitte helft mir
84
Lowlevel-Coding / string erstellen und füllen...
« am: 20. March 2004, 15:16 »
Hallo,

wie mache ich einen String, alla

string db "LALALALA",13,10,0

der sich dann auch verändern lässt, so dass man eine Kommandozeile machen kann? Bei mir geht das nicht, auch wenn ich

mov string,al

mache....

PLEASE HELP

JOACHIM NEU
85
Lowlevel-Coding / E-Book oder Tut
« am: 19. March 2004, 21:29 »
hallo,

kennt jemand ein E-Book oder ein Tutorial über das programmieren von OSs... Nicht ein, wo nur so ein OS beschrieben wird mit Bootloader und Message, wie in Ausgabe 1....
Seiten: 1 ... 3 4 [5]

Einloggen