Motorola MC68020 User Manual page 271

Table of Contents

Advertisement

BASE
+$04
+$08
+$0C
+$10
The opt field specifies how arguments are to be passed to the called module; the
MC68020/EC020 recognizes only the options of 000 and 100; all others cause a format
exception. The 000 option indicates that the called module expects to find arguments from
the calling module on the stack just below the module stack frame. In cases where there is
a change of stack pointer during the call, the MC68020/EC020 will copy the arguments
from the old stack to the new stack. The 100 option indicates that the called module will
access the arguments from the calling module through an indirect pointer in the stack of
the calling module. Hence, the arguments are not copied, but the MC68020/EC020 puts
the value of the stack pointer from the calling module in the module stack frame.
The type field specifies the type of the descriptor; the MC68020/EC020 only recognizes
descriptors of type $00 and $01; all others cause a format exception. The $00 type
descriptor defines a module for which there is no change in access rights, and the called
module builds its stack frame on top of the stack used by the calling module. The $01 type
descriptor defines a module for which there may be a change in access rights; such a
called module may have a separate stack area from that of the calling module.
The access level field is used only with the type $01 descriptor and is passed to external
hardware to change the access control.
The module entry word pointer specifies the entry address of the called module. The first
word at the entry address (see Figure 9-11) specifies the register to be saved in the
module stack frame and then loaded with the module descriptor data area pointer; the first
instruction of the module starts with the next word. The module descriptor data area
pointer field contains the address of the called module data area.
If the access change requires a change of stack pointer, the old value is saved in the
module stack frame, and the new value is taken from the module descriptor stack pointer
field. Any further information in the module descriptor is user defined.
15
14
D/A
REGISTER
9-16
31
29
28
24
23
OPT
TYPE
ACCESS LEVEL
MODULE ENTRY WORD POINTER
MODULE DATA AREA POINTER
ADDITIONAL USER-DEFINED INFORMATION
Figure 9-10. Module Descriptor Format
12
11
10
9
0
0
0
OPERATION WORD OF FIRST INSTRUCTION
Figure 9-11. Module Entry Word
M68020 USER'S MANUAL
16
15
(RESERVED, MUST BE ZERO)
8
7
6
5
4
0
0
0
0
0
0
3
2
1
0
0
0
0
0
MOTOROLA

Hide quick links:

Advertisement

Table of Contents
loading

This manual is also suitable for:

Mc68ec020

Table of Contents