I am at a loss, here. I have tried numerous variations of code
to try to achieve the desired results, and none have worked.
To wit:
In the 32-bit PB compilers, you can do:
! lea edi, Q&&
or, for strings:
! lea edi, S$
! mov edi, [edi]
This loads the address for the vars into whichever general purpose
registers were selected.
How do I accomplish the same thing in PB/DOS 3.5? I already know how
to use:
! lds si, var???
But the only thing that seems to work for that is if var??? is a
prepopulated POINTER to the actual var. So, how can I "shortcut"
loading the live variables' address into segment: offset registers,
as can be done in 32-bit? Or is this impossible, because 32-bit
proggies use a flat memory model, but DOS programs use segment: offset
addressing? (i.e., the Intel opcodes will not support it)
Thank you for any replies.
------------------
[This message has been edited by Clay Clear (edited March 01, 2003).]
to try to achieve the desired results, and none have worked.
To wit:
In the 32-bit PB compilers, you can do:
! lea edi, Q&&
or, for strings:
! lea edi, S$
! mov edi, [edi]
This loads the address for the vars into whichever general purpose
registers were selected.
How do I accomplish the same thing in PB/DOS 3.5? I already know how
to use:
! lds si, var???
But the only thing that seems to work for that is if var??? is a
prepopulated POINTER to the actual var. So, how can I "shortcut"
loading the live variables' address into segment: offset registers,
as can be done in 32-bit? Or is this impossible, because 32-bit
proggies use a flat memory model, but DOS programs use segment: offset
addressing? (i.e., the Intel opcodes will not support it)
Thank you for any replies.

------------------
[This message has been edited by Clay Clear (edited March 01, 2003).]
Comment