Commit | Line | Data |
---|---|---|
536560db SL |
1 | /* Amovob.c 1.1 86/07/20 */ |
2 | ||
3 | #include "../tahoealign/align.h" | |
4 | movob_op(infop) | |
5 | process_info *infop; | |
6 | /* | |
7 | /* Move output byte | |
8 | /* | |
9 | /****************************************/ | |
10 | { | |
11 | register long Register_12; /* Has to be first reg ! */ | |
12 | register long Register_11; | |
13 | register long Register_10; | |
14 | register long code; | |
15 | ||
16 | ||
17 | Register_12 = operand(infop,0)->data; | |
18 | Register_11 = operand(infop,1)->address; | |
19 | code = writeable(infop, Register_11, 1); | |
20 | if ( code == TRUE ) { | |
21 | Register_10=psl; | |
22 | Set_psl(r10); /* restore the user psl */ | |
23 | asm (" movob r12,(r11)"); | |
24 | asm (" movpsl r12"); | |
25 | New_cc (Register_12); | |
26 | } else exception (infop, ILL_ACCESS, Register_11, code); | |
27 | } |