Question about which tools to use, bugs, the best way to implement a function, etc should go here. Don't forget to see if your question is answered in the wiki first! When in doubt post here.
But I would prefer to use the SI register for certain routines. So basically lets say I have code which I make a call to and this code needs to access out of the boundaries of the DS register. Would it be a bad idea to do something like this?
push ds
mov ax, 0x00
mov ds, ax
mov si, 0x00
....
pop ds
....
ret
So SI is pointing to the first byte in memory? is doing it like this bad I read some where that its not advised to change the DS register as it could cause some problems
What's the context? Looking at your code, you are probably in real mode using pure assembly. If so, then changing DS is perfectly valid, as long as you are aware of its value and you don't trash the stack or use BIOS interrupts where ds:si has a given meaning.