#DOS in ASM
This message turned up in search, but its forum couldn’t be identified from the original transcript, so it may not be linked into its thread.
I'm not sure this will help but the address of FileInfo must be longWord
alligned. This is probably because it is turned into a BPTR somewhere
internal to the Examine code. You can allign it yourself using 'CNOP 0,4'
or you can allocate the block with AllocMem. Just make sure that the two
msbits are '00'.
On the efficency side ( I realize that you may have just been trying to
make your code 'extra' safe to try to fix the bug and thus apoligize in
advance! ) you only need the first 'movea.l DOSLibrary,A6' the others are
redundant. Also the first 'move.l my_lock,d1' should be 'move.l d0,d1'.
Also I don't like the look of 'move.l #FileInfo,D2' even though I think it
will work. I guess I'm always getting my addresses from Ax reg. or with
d(PC) addressing. But in this case I think the way you are doing it is the
most efficent it just looks funny!