; Mark Keates
; Freddy Offenga
; Christian Groessler
-;
-; This must be the *first* file on the linker command line
;
.export _exit
+ .export __STARTUP__ : absolute = 1 ; Mark as startup
.constructor initsp, 26
.import initlib, donelib, callmain
.import zerobss, pushax
.import _main, __filetab, getfd
- .import __LOWCODE_LOAD__, __BSS_LOAD__
+ .import __STARTUP_LOAD__, __ZPSAVE_LOAD__
.import __RESERVED_MEMORY__
.ifdef DYNAMIC_DD
.import __getdefdev
.segment "EXEHDR"
.word $FFFF
- .word __LOWCODE_LOAD__
- .word __BSS_LOAD__ - 1
+ .word __STARTUP_LOAD__
+ .word __ZPSAVE_LOAD__ - 1
; ------------------------------------------------------------------------
; Actual code
- .segment "LOWCODE"
+ .segment "STARTUP"
rts ; fix for SpartaDOS / OS/A+
; they first call the entry point from AUTOSTRT and
old_lmargin: .res 1
.segment "AUTOSTRT"
- .word $02E0
- .word $02E1
- .word __LOWCODE_LOAD__ + 1
+ .word RUNAD ; defined in atari.h
+ .word RUNAD+1
+ .word __STARTUP_LOAD__ + 1