28 June 2016, 14:41 | #1 |
son of 68k
Join Date: Nov 2007
Location: Lyon / France
Age: 51
Posts: 5,323
|
does it work everywhere or not
Hi asm guys, 040+ experts are wanted here.
That's just a few corner cases which i don't know for sure how they behave. Upto 68030 i know, but for 68040/68060 i can't check. IIRC move16 (a0)+,(a0)+ will copy the data onto itself then increment a0 twice and i'm wondering if other stuff wouldn't behave the same... Code:
move.l (a0)+,(a0)+ ; copies data on next long or onto itself ? move.l -(a0),-(a0) ; -4(a0) to -8(a0) then a0-=4 ? move.l 8(a7),-(a7) ; dec a7 done before or after a7+8 eval ? move.l (a7)+,(a7) ; "+" done before or after dest (a7) eval ? pea (a7) ; pushes value "as is" or not ? move.l a7,-(a7) ; always equivalent to the above ? (movem.l isn't !) pea 4(a7) ; pushes a7+4 or not ? |
28 June 2016, 23:32 | #2 | |
Registered User
Join Date: Jan 2008
Location: Warsaw/Poland
Age: 55
Posts: 1,975
|
Quote:
1. long data are copied, A0 is +8. 2. long data are copied, A0 is -8. 3. long data from 8(a7) are copied, A7 is -4. 4. long data from (a7)+ are copied, A7 is + 4. 5. A7 is pushed on stack. 6. same like pea (a7). 7. pushes a7+4. |
|
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
Thread Tools | |
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
How do I get F4 to work? | mrvp | support.FS-UAE | 3 | 30 August 2015 20:31 |
Can you get F1-GP Ed to work? | mrvp | support.Games | 0 | 30 August 2015 14:22 |
Can this two work together? | Frikic | support.Hardware | 5 | 05 February 2010 21:33 |
Please help me ( I just can´t get it to work ) | eZRo | support.WinFellow | 9 | 09 July 2005 16:51 |
Can't get 0.8.22 to work | IvoC | support.WinUAE | 0 | 20 November 2002 14:30 |
|
|