EasyManua.ls Logo

Commodore Amiga A2000 - Reset and Early Startup Operation

Commodore Amiga A2000
380 pages
Print Icon
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
RESET AND EARLY STARTUP OPERATION
When the Amiga is turned on or externally reset, the memory map is in a special state. An
additional copy of the system ROM responds starting at memory location $00000000. The
system RAM that would normally be located at this address is not available. On some
Amiga models, portions of the RAM still respond. On other models, no RAM responds.
Software must assume that memory is not available. The OVL bit in one of the 8520 Chips
disables the overlay (See Appendix F for the bit location).
The Amiga System ROM contains an ID code as the first word. The value of the ID code
may change in the future. The second word of the ROM contains a JMP instruction ($4ef9).
The next two words are used as the initial program counter by the 68000 processor.
The 68000 "RESET" instruction works much like external reset or power on. All memory
and AUTOCONFIGTM cards disappear, and the ROM image appears at location $00000000.
The difference is that the CPU continues execution with the next instruction. Since RAM
may not be available, special care is needed to write reboot code that will reliably reboot
all Amiga models.
Here is a source code listing of the only supported reboot code:
; ---- The *only* supported reboot code
CNOP 0,4 ;IMPORTANT: Must be longword aligned
MagicResetCode:
lea.l 2,a0 ;Point to JMP instruction at start of ROM
RESET ;all RAM goes away now!
jmp (a0) ;Rely on prefetch to execute this instruction
The RESET instruction must be executed when the CPU is at the Supervisor privilege level.
If running under Exec, the following code must be used:
_ColdReboot:
move.l 4,a6 ;Get a pointer to ExecBase
lea.l MagicResetCode(pc),a5 ;Location of code to trap to
jsr _LVOSupervisor(a6) ;start code (must use JSR)
- System Control Hardware 219 -

Table of Contents

Other manuals for Commodore Amiga A2000

Related product manuals