; This must be the *second* file on the linker command line
; (.cvt header must be the *first* one)
-; Maciej 'YTM/Alliance' Witkowiak
-; 26.10.99, 10.3.2000
+; Maciej 'YTM/Elysium' Witkowiak
+; 26.10.99, 10.3.2000, 15.8.2001
; no __hinit
- .export _exit
+ .export _exit
.import initlib, donelib
.import pushax
.import _main
.reloc
; ------------------------------------------------------------------------
-; Actual code
+; Create an empty LOWCODE segment to avoid linker warnings
+
+.segment "LOWCODE"
+
+; ------------------------------------------------------------------------
+; Place the startup code in a special segment.
+
+.segment "STARTUP"
; Clear the BSS data
; Setup stack
- lda #<$7900
+ lda #<$6000
sta sp
- lda #>$7900
+ lda #>$6000
sta sp+1 ; Set argument stack ptr
; Call module constructors
jsr pushax ; argc
jsr pushax ; argv
+ cli
ldy #4 ; Argument size
jsr _main ; call the users code
jmp $c1c3 ; jump to GEOS MainLoop
_exit: jsr donelib ; Run module destructors
jmp $c22c ; EnterDeskTop
-
+