begin implementing reset routine
This commit is contained in:
1 parent
4e35ce391d
commit
b9d63e3f36
1 file changed
+23
@@ -1 +1,24 @@
|
|||||||
|
; Resources describing the C64 reset sequence:
|
||||||
|
; https://www.c64-wiki.com/wiki/Reset_(Process)
|
||||||
|
|
||||||
|
|
||||||
reset_entry:
|
reset_entry:
|
||||||
|
; The GPL program at https://github.com/Klaus2m5/6502_65C02_functional_tests/blob/master/6502_functional_test.a65
|
||||||
|
; uses the following initial reset sequence
|
||||||
|
cld
|
||||||
|
ldx #$ff
|
||||||
|
txs
|
||||||
|
sei
|
||||||
|
|
||||||
|
|
||||||
|
; The following routine is based on reading the public KERNAL jumptable routine
|
||||||
|
; list, and making unimaginative assumptions about what should be done on reset.
|
||||||
|
; Initialising IO is obviously required.
|
||||||
|
jsr ioinit
|
||||||
|
; Setting up the screen is obviously required
|
||||||
|
jsr ramtas
|
||||||
|
; Resetting IO vectors is obviously required, if we want interrupts to run
|
||||||
|
jsr restor
|
||||||
|
|
||||||
|
; What do we do when finished? A C64 jumps into the BASIC ROM
|
||||||
|
jmp ($a000)
|
||||||
Reference in new issue
Block a user