Fixed issues with the last change: The return code must be pulled from stack
before the stack pointer is reset. git-svn-id: svn://svn.cc65.org/cc65/trunk@2906 b7a2c559-68d2-44c3-8de9-860c34a00d81
This commit is contained in:
@@ -85,13 +85,6 @@ L1: lda sp,x
|
||||
_exit: pha ; Save the return code
|
||||
jsr donelib ; Run module destructors
|
||||
|
||||
; Restore system stuff
|
||||
|
||||
ldx spsave
|
||||
txs ; Restore stack pointer
|
||||
lda mmusave
|
||||
sta $01 ; Restore memory configuration
|
||||
|
||||
; Copy back the zero page stuff
|
||||
|
||||
ldx #zpspace-1
|
||||
@@ -105,6 +98,13 @@ L2: lda zpsave,x
|
||||
pla
|
||||
sta ST
|
||||
|
||||
; Restore system stuff
|
||||
|
||||
ldx spsave
|
||||
txs ; Restore stack pointer
|
||||
ldx mmusave
|
||||
stx $01 ; Restore memory configuration
|
||||
|
||||
; Reset changed vectors, back to basic
|
||||
|
||||
jmp RESTOR
|
||||
|
||||
Reference in New Issue
Block a user