Hi all 
 
I'am not to sure if this is a bug or not 
 
    
format binary
org 0x0000
use16
                        ;;; Set default screen mode [effect clear screen]
                        mov ah,0
                        mov al,3
                        int 0x10
                        mov ax,0x1000
                        cli
                        mov ds,ax
                        mov es,ax
                        sti
                        call DrawScreen
                        jmp $
DrawScreen:             ;;; Display loader title
                        mov ah,2
                        xor bh,bh
                        mov dh,0
                        mov dl,3
                        int 0x10
                        mov di,TitleBar
                        call DisplayString
                        ret
DisplayString:          ;;; Enter with SI ptr to string to display
                        mov al,[si]   ;;; POSSIBLE PROBLEM
                        mov ah,0x0a
                        xor bx,bx
                        mov cx,1
                        int 0x10
ExitDisplayString:      ret
TitleBar:               db 'OS 1 [Build 0001] loader',0x00
    
 
Now if I put a value directly in the al register it prints, but if not it displays
nothing.  The code I have used is pretty much the same as used for
my boot sector. The loader is loaded at [0x1000:0000] and then a jump
made to that location. I just seems a bit wierd that a value used direct works but not if I use a ptr. I have tried other bios routines but with
the same effect!
Any help would be appreciated. 
