Not really sure whether here or Assembly is the correct forum for this....I am sure some one will let me know if off topic!
Anyway, I have about zilch in Assembly experience....just letting you know so I don't get dogged out too bad!!
I am looking to write some code in C++ that is calling a 32bit BIOS function. The function itself is handled through a Ring 0 driver and I have used it before with the standard general purpose registers...both ins and outs.
However, this one particular function call winds up using BP to store the number of bytes I am attempting to read from an internal buffer.
I have done so much searching on the inet that my head is spinning
...All that I know is you should save EBP(BP) "push ebp", "mov ebp, esp" before and then pop it after.
I have tried a number of variations and can't seem to get it right.
According to the spec of this particular Bios call, I need BP to = "bytes to read"...in my case this would be 10h.
Can anyone give me some pointers....if not appropriate for this forum I'll dump it in Assembly.
TIA Doug
dxd_2000@yahoo.com
Anyway, I have about zilch in Assembly experience....just letting you know so I don't get dogged out too bad!!
I am looking to write some code in C++ that is calling a 32bit BIOS function. The function itself is handled through a Ring 0 driver and I have used it before with the standard general purpose registers...both ins and outs.
However, this one particular function call winds up using BP to store the number of bytes I am attempting to read from an internal buffer.
I have done so much searching on the inet that my head is spinning
![[spin2] [spin2] [spin2]](/data/assets/smilies/spin2.gif)
I have tried a number of variations and can't seem to get it right.
According to the spec of this particular Bios call, I need BP to = "bytes to read"...in my case this would be 10h.
Can anyone give me some pointers....if not appropriate for this forum I'll dump it in Assembly.
TIA Doug
dxd_2000@yahoo.com