mirror of
https://github.com/cc65/cc65.git
synced 2025-02-02 15:37:58 +00:00
Export LMARGN_save to C. People might want to preserve this setting in their program.
In turn rearrange startup code in order that LMARGN can be set by a 'constructor' (Do "initlib" later.)
This commit is contained in:
parent
4a38965384
commit
200b420562
@ -10,6 +10,7 @@
|
||||
|
||||
.export __STARTUP__ : absolute = 1 ; Mark as startup
|
||||
.export _exit, start, excexit, SP_save
|
||||
.export __LMARGN_save ; original LMARGN setting
|
||||
|
||||
.import initlib, donelib
|
||||
.import callmain, zerobss
|
||||
@ -82,14 +83,10 @@ start:
|
||||
|
||||
.endif
|
||||
|
||||
; Call the module constructors.
|
||||
|
||||
jsr initlib
|
||||
|
||||
; Set the left margin to 0.
|
||||
|
||||
lda LMARGN
|
||||
sta LMARGN_save
|
||||
sta __LMARGN_save
|
||||
ldy #0
|
||||
sty LMARGN
|
||||
|
||||
@ -104,6 +101,10 @@ start:
|
||||
dey ; Set Y to $FF
|
||||
sty CH ; remove keypress which might be in the input buffer
|
||||
|
||||
; Call the module constructors.
|
||||
|
||||
jsr initlib
|
||||
|
||||
; Push the command-line arguments; and, call main().
|
||||
|
||||
jsr callmain
|
||||
@ -119,7 +120,7 @@ excexit:jsr donelib ; Run module destructors; 'excexit' is called fr
|
||||
|
||||
; Restore the left margin.
|
||||
|
||||
lda LMARGN_save
|
||||
lda __LMARGN_save
|
||||
sta LMARGN
|
||||
|
||||
; Restore the kb mode.
|
||||
@ -196,7 +197,7 @@ excexit:jsr donelib ; Run module destructors; 'excexit' is called fr
|
||||
|
||||
SP_save: .res 1
|
||||
SHFLOK_save: .res 1
|
||||
LMARGN_save: .res 1
|
||||
__LMARGN_save: .res 1
|
||||
.ifndef __ATARIXL__
|
||||
APPMHI_save: .res 2
|
||||
.endif
|
||||
|
Loading…
x
Reference in New Issue
Block a user