Category:68000 Assembly: Difference between revisions

m
fixed incorrect information due to a misunderstanding of how my assembler worked.
m (→‎Alignment: typo fix)
m (fixed incorrect information due to a misunderstanding of how my assembler worked.)
Line 143:
 
==The Vector Table==
Certain memory locations have special meanings to the 68000 CPU. Most of these are used for system calls or exception handling. Sixteen of them can be accessed with the <code>TRAP #?</code> command, which takes an immediate constant ? ranging from 0 to 15 as an operand. This effectively equates to a <code>JSR</code> to the address stored at <code>$00000080 + (4*?)</code>. For the most part, what each <code>TRAP</code> does depends on the system's firmware and so you'll need to read the documentation. ThisSome featuremachines isallow notthe usableuser onto everydefine system;their onown theTRAPs Segaat Genesis$00000080 for- example$000000BF, theyothers allare becomehardcoded nullin. pointersEven regardlessothers ofwill whatlikely take a "middle ground" and have the hard-coded trap read a function pointer from some other address that the user is allowed to write to, youand actuallyjump putto therethat.
 
The 68000's vector table contains more than this, but to keep things simple there will be a few things omitted.
1,489

edits