ok. Aber jetzt habe ich ein anderes Problem:
Ich möchte, dass der User den Pfad zum Kernel Angibt. Dazu habe ich folgenden code:
	path:			db "                                                                         ",0
	pathcnt			db 0x00
	prompt			db "kernel>",0
	kerror			db "Kernel could not be found.",13,10,0
;Der Loader ruft shell auf:
shell:
	mov si,prompt
	call print
	call userinput
kernel_error:
	mov si,kerror
	call print
	jmp shell
retn
userinput:
	mov [pathcnt],0
	letterwait:
	mov ah,0x00
	int 0x16
	cmp al,13					;wenn ENTER
	je return
	mov [path+[pathcnt]],al
	add [pathcnt],1
	jmp letterwait
return:
	mov [path+[pathcnt]],0
	call load_kernel
load_kernel:
	jmp kernel_error
Alles was der User eingibt wird in die Variable "path" gespeichert. Deshalb hab ich auch einen Counter (pathcnt). Nach jedem Zeichen wird diesr Counter um eins erhöht. Nun muss ich das Zeichen ja auch in die Paht-variable speichern (mov [paht+[pathcnt]],al), doch genau da meckert er, die Adresse sei zu ungenau. Ich habe auch schon Sachen wie : mov [path+ db [pathcnt]],al versucht doch ohne erfolg.
Hat jemand eine Idee oder bereits selbst eine Shell programmiert?