]> git.sur5r.net Git - cc65/commitdiff
Force an import of the special symbol __STARTUP__ in the C compiler when
authoruz <uz@b7a2c559-68d2-44c3-8de9-860c34a00d81>
Fri, 31 Jul 2009 12:05:42 +0000 (12:05 +0000)
committeruz <uz@b7a2c559-68d2-44c3-8de9-860c34a00d81>
Fri, 31 Jul 2009 12:05:42 +0000 (12:05 +0000)
main() is encountered. Define this symbol in the startup code. This will
automatically force linking of the startup code which can then reside inside
the standard library as any other object file.

git-svn-id: svn://svn.cc65.org/cc65/trunk@3988 b7a2c559-68d2-44c3-8de9-860c34a00d81

18 files changed:
libsrc/Makefile
libsrc/apple2/crt0.s
libsrc/atari/crt0.s
libsrc/atmos/crt0.s
libsrc/c128/crt0.s
libsrc/c16/crt0.s
libsrc/c64/crt0.s
libsrc/cbm510/crt0.s
libsrc/cbm610/crt0.s
libsrc/lynx/crt0.s
libsrc/nes/crt0.s
libsrc/pet/crt0.s
libsrc/plus4/crt0.s
libsrc/supervision/crt0.s
libsrc/vic20/crt0.s
packages/rpm/redhat/cc65.spec
samples/Makefile
src/cc65/codegen.c

index f5d994814ad01748806e195d98575641369015c5..85a5a64f6f4ed10d2c170494b972b367a2e370a1 100644 (file)
@@ -46,7 +46,6 @@ apple2lib:
                    $(MAKE) SYS=apple2 -C $$i || exit 1; \
            $(AR) a apple2.lib $$i/*.o;\
        done
-       mv apple2/crt0.o apple2.o
        cp apple2/apple2-auxmem.emd a2.auxmem.emd
        cp apple2/apple2-stdjoy.joy a2.stdjoy.joy
        cp apple2/apple2-stdmou.mou a2.stdmou.mou
@@ -62,7 +61,6 @@ apple2enhlib:
            $(MAKE) SYS=apple2enh -C $$i || exit 1; \
            $(AR) a apple2enh.lib $$i/*.o;\
        done
-       mv apple2enh/crt0.o apple2enh.o
        cp apple2enh/apple2-auxmem.emd a2e.auxmem.emd
        cp apple2enh/apple2-stdjoy.joy a2e.stdjoy.joy
        cp apple2enh/apple2-stdmou.mou a2e.stdmou.mou
@@ -78,7 +76,6 @@ atarilib:
                    $(MAKE) SYS=atari -C $$i || exit 1; \
            $(AR) a atari.lib $$i/*.o;\
        done
-       mv atari/crt0.o atari.o
        cp atari/atari-stdjoy.joy ataristd.joy
        cp atari/atari-multijoy.joy atarimj8.joy
 
@@ -90,7 +87,6 @@ atmoslib:
                    $(MAKE) SYS=atmos -C $$i || exit 1; \
            $(AR) a atmos.lib $$i/*.o;\
        done
-       mv atmos/crt0.o atmos.o
        cp atmos/*.tgi .
 
 #-----------------------------------------------------------------------------
@@ -101,7 +97,6 @@ c16lib:
                    $(MAKE) SYS=c16 -C $$i || exit 1; \
            $(AR) a c16.lib $$i/*.o;\
        done
-       mv c16/crt0.o c16.o
        cp c16/*.joy .
        cp c16/*.emd .
 
@@ -113,7 +108,6 @@ c64lib:
            $(MAKE) SYS=c64 -C $$i || exit 1; \
            $(AR) a c64.lib $$i/*.o;\
        done
-       mv c64/crt0.o c64.o
        cp c64/*.emd .
        cp c64/*.joy .
        cp c64/c64-1351.mou .
@@ -130,7 +124,6 @@ c128lib:
            $(MAKE) SYS=c128 -C $$i || exit 1; \
            $(AR) a c128.lib $$i/*.o;\
        done
-       mv c128/crt0.o c128.o
        cp c128/*.emd .
        cp c128/*.joy .
        cp c128/c128-1351.mou .
@@ -148,7 +141,6 @@ cbm510lib:
            $(MAKE) SYS=cbm510 -C $$i || exit 1; \
            $(AR) a cbm510.lib $$i/*.o;\
        done
-       mv cbm510/crt0.o cbm510.o
        cp cbm510/*.emd .
        cp cbm510/cbm510-stdjoy.joy cbm510-std.joy
        cp cbm510/cbm510-stdser.ser cbm510-std.ser
@@ -161,7 +153,6 @@ cbm610lib:
            $(MAKE) SYS=cbm610 -C $$i || exit 1; \
            $(AR) a cbm610.lib $$i/*.o;\
        done
-       mv cbm610/crt0.o cbm610.o
        cp cbm610/*.emd .
        cp cbm610/cbm610-stdser.ser cbm610-std.ser
 
@@ -204,7 +195,6 @@ lynxlib:
            $(MAKE) SYS=lynx -C $$i || exit 1; \
            $(AR) a lynx.lib $$i/*.o;\
        done
-       mv lynx/crt0.o lynx.o
        cp lynx/*.joy .
        cp lynx/*.tgi .
 
@@ -216,7 +206,6 @@ neslib:
            $(MAKE) SYS=nes -C $$i || exit 1; \
            $(AR) a nes.lib $$i/*.o;\
        done
-       mv nes/crt0.o nes.o
        cp nes/*.joy .
 
 #-----------------------------------------------------------------------------
@@ -227,7 +216,6 @@ petlib:
            $(MAKE) SYS=pet -C $$i || exit 1; \
            $(AR) a pet.lib $$i/*.o;\
        done
-       mv pet/crt0.o pet.o
        cp pet/*.joy .
 
 #-----------------------------------------------------------------------------
@@ -238,7 +226,6 @@ plus4lib:
            $(MAKE) SYS=plus4 -C $$i || exit 1; \
            $(AR) a plus4.lib $$i/*.o;\
        done
-       mv plus4/crt0.o plus4.o
        cp plus4/*.joy .
        cp plus4/*.ser .
 
@@ -250,7 +237,6 @@ supervisionlib:
            $(MAKE) SYS=supervision -C $$i || exit 1; \
            $(AR) a supervision.lib $$i/*.o;\
        done
-       mv supervision/crt0.o supervision.o
 
 #-----------------------------------------------------------------------------
 # Vic20
@@ -260,7 +246,6 @@ vic20lib:
            $(MAKE) SYS=vic20 -C $$i || exit 1; \
            $(AR) a vic20.lib $$i/*.o;\
        done
-       mv vic20/crt0.o vic20.o
        cp vic20/*.joy .
 
 #-----------------------------------------------------------------------------
index ec61770bc23609c4a8309879d3ccbcf09517de45..4985a87bf48ab570d9cded1f7d6c7188de82ec35 100644 (file)
@@ -1,10 +1,9 @@
 ;
 ; Startup code for cc65 (Apple2 version)
-;
-; This must be the *first* file on the linker command line
 ;
 
         .export         _exit
+        .export         __STARTUP__ : absolute = 1      ; Mark as startup
         .import         zerobss
         .import        initlib, donelib
         .import        callmain, callirq
        ; Switch in LC bank 2 for W/O
        bit     $C081
        bit     $C081
-       
+
        ; Set source start address
        lda     #<(__ZPSAVE_RUN__ + __INIT_SIZE__)
        ldy     #>(__ZPSAVE_RUN__ + __INIT_SIZE__)
        sta     $9B
        sty     $9C
-       
+
        ; Set source last address
        lda     #<(__ZPSAVE_RUN__ + __INIT_SIZE__ + __LC_LAST__ - __LC_START__)
        ldy     #>(__ZPSAVE_RUN__ + __INIT_SIZE__ + __LC_LAST__ - __LC_START__)
@@ -68,7 +67,7 @@
        ldy     #>__ZPSAVE_RUN__
        sta     $9B
        sty     $9C
-       
+
        ; Set source last address
        lda     #<(__ZPSAVE_RUN__ + __INIT_SIZE__)
        ldy     #>(__ZPSAVE_RUN__ + __INIT_SIZE__)
@@ -92,7 +91,7 @@
 _exit:  ldx     #<exit
         lda     #>exit
         jsr     reset          ; Setup RESET vector
-        
+
         ; Switch in ROM in case it wasn't already switched in by a RESET
        bit     $C082
 
@@ -159,7 +158,7 @@ init:   ldx     #zpspace-1
         ldx     #<_exit
         lda     #>_exit
         jsr     reset          ; Setup RESET vector
-                
+
         ; Setup the stack
         lda     HIMEM
         sta     sp
index 03839ac09928f15fb7b4d69a0438c4e623f460bc..68aa4425c0bce15680fdd8a5bcad21ebd6193578 100644 (file)
@@ -5,11 +5,10 @@
 ;      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
index 677dee84e68bfe9232bd85472805420f8128f1ba..4fe9d5cbc1b913e61b01734d9390556d2ff2000a 100644 (file)
@@ -2,11 +2,10 @@
 ; Startup code for cc65 (Oric version)
 ;
 ; By Debrune Jérôme <jede@oric.org> and Ullrich von Bassewitz <uz@cc65.org>
-;
-; This must be the *first* file on the linker command line
 ;
 
        .export         _exit
+        .export         __STARTUP__ : absolute = 1      ; Mark as startup
        .import         initlib, donelib
        .import         callmain, zerobss
                .import         __RAM_START__, __RAM_SIZE__, __BSS_LOAD__
index 81e1d4dcf9a2e30c27a80d037acf08de97fd668f..d0a61ab00a403cc58ced470045f6725d693cdcc6 100644 (file)
@@ -1,10 +1,9 @@
 ;
 ; Startup code for cc65 (C128 version)
-;
-; This must be the *first* file on the linker command line
 ;
 
        .export         _exit
+        .export         __STARTUP__ : absolute = 1      ; Mark as startup
        .import         callirq, initlib, donelib
        .import         zerobss
        .import         push0, callmain
index 3e48dbe4b7315e0b509280058483c9a0e89aa73f..c967671c5df178984983ff3397c500c4c25eeb17 100644 (file)
@@ -1,13 +1,12 @@
 ;
 ; Startup code for cc65 (C16 version)
 ;
-; This must be the *first* file on the linker command line
-;
 ; Note: The C16 is actually the Plus/4 with just 16KB of memory. So many
 ; things are similar here, and we even use the plus4.inc include file.
 ;
 
        .export         _exit
+        .export         __STARTUP__ : absolute = 1      ; Mark as startup
        .import         initlib, donelib, callirq
        .import         callmain, zerobss
         .import         MEMTOP, RESTOR, BSOUT, CLRCH
index 8b094148ddc2e224d42958aca9d90e1f82116f9a..18ef109048821c6860eb4b6fedbbc99c7d44f36a 100644 (file)
@@ -1,10 +1,9 @@
 ;
 ; Startup code for cc65 (C64 version)
-;
-; This must be the *first* file on the linker command line
 ;
 
        .export         _exit
+        .export         __STARTUP__ : absolute = 1      ; Mark as startup
        .import         initlib, donelib, callirq
                .import         zerobss
        .import         callmain
index 88c9a5dfea26138d2d2abac0e5113cfe4272430c..ef2cb8c6295a8256597c2016d1e5dc6c2bc03e1b 100644 (file)
@@ -1,10 +1,9 @@
 ;
 ; Startup code for cc65 (CBM 500 version)
-;
-; This must be the *first* file on the linker command line
 ;
 
        .export         _exit
+        .export         __STARTUP__ : absolute = 1      ; Mark as startup
 
        .import         _clrscr, initlib, donelib, callirq_y
        .import         push0, callmain
index 6627a92703bba6ac3bd4a63de5ac4fa8997f5de0..5b6bb8b3cb8ff32e4e3840b2a60481924db9a64c 100644 (file)
@@ -1,10 +1,9 @@
 ;
 ; Startup code for cc65 (CBM 600/700 version)
-;
-; This must be the *first* file on the linker command line
 ;
 
        .export         _exit, BRKVec
+        .export         __STARTUP__ : absolute = 1      ; Mark as startup
 
        .import         callirq_y, initlib, donelib
        .import         push0, callmain
index 70d46629e9f55fb2d575efed6aedeca13f81aeee..db107fd94d7f4f7d23984e4d9e2121b621dc63a1 100644 (file)
 ; code structure.  The C stack is located at the end of the RAM memory
 ; segment and grows downward.  Bastian Schick's executable header is put
 ; on the front of the fully linked binary (see EXEHDR segment.)
-;
-; This must be the *first* file on the linker command line
 ;
 
        .include        "lynx.inc"
        .export         _exit
+        .export         __STARTUP__ : absolute = 1      ; Mark as startup
 
        .import         initlib, donelib
        .import         zerobss
index 3a22324976a88963593be200ea98727d43ba0b62..373c3b9a3d3888f4b56c7edcd3c96c435c47bf0a 100644 (file)
@@ -3,11 +3,10 @@
 ;
 ; by Groepaz/Hitmen <groepaz@gmx.net>
 ; based on code by Ullrich von Bassewitz <uz@cc65.org>
-;
-; This must be the *first* file on the linker command line
 ;
 
         .export         _exit
+        .export         __STARTUP__ : absolute = 1      ; Mark as startup
        .import         initlib, donelib, callmain
        .import         push0, _main, zerobss, copydata
         .import         ppubuf_flush
index 1e63617c23157485816b6435fadc831e033e268a..23ff90ea353d4ca1bcfe34d602e0cff6f0588b82 100644 (file)
@@ -1,10 +1,9 @@
 ;
 ; Startup code for cc65 (PET version)
-;
-; This must be the *first* file on the linker command line
 ;
 
        .export         _exit
+        .export         __STARTUP__ : absolute = 1      ; Mark as startup
        .import         initlib, donelib, callirq
                .import         zerobss, push0
        .import         callmain
index a7dda7dd4d7676c3683b2d38f9aef0e5d881c269..9cf776a774ce6b6ce68329aaae8e4e1fe0b706c2 100644 (file)
@@ -1,11 +1,10 @@
 ;
 ; Startup code for cc65 (Plus/4 version)
-;
-; This must be the *first* file on the linker command line
 ;
 
        .export         _exit
         .export         brk_jmp
+        .export         __STARTUP__ : absolute = 1      ; Mark as startup
 
        .import         callirq_y, initlib, donelib
        .import         callmain, zerobss
index 2ad472fb2bd50209f3d4590302db635a3702a7de..6a3614476f3f25b376861f40aef4ea8e061b98c2 100644 (file)
@@ -1,10 +1,9 @@
 ;
 ; Startup code for cc65 (supervision version)
-;
-; This must be the *first* file on the linker command line
 ;
 
         .export         _exit
+        .export         __STARTUP__ : absolute = 1      ; Mark as startup
 
        .import         _main
         .import         initlib, donelib, copydata
index 2bd80e9428eadc336a821f3aa356ccb2f695c0db..a5d61386551f27a3be3c8f95a34ff96bc3c56919 100644 (file)
@@ -1,10 +1,9 @@
 ;
 ; Startup code for cc65 (Vic20 version)
-;
-; This must be the *first* file on the linker command line
 ;
 
        .export         _exit
+        .export         __STARTUP__ : absolute = 1      ; Mark as startup
        .import         initlib, donelib, callirq
                .import         zerobss, push0
        .import         callmain
index d1be1b76a9b31a4af8549301b90549508b57cde2..2e748cbbcbacb009bf1d88a4a3454344ee70a1d6 100644 (file)
@@ -110,7 +110,6 @@ programs for the Apple ][ using the cc65 crosscompiler.
 
 %files apple2
 %attr(644,root,root)           /usr/lib/cc65/lib/apple2.lib
-%attr(644,root,root)           /usr/lib/cc65/lib/apple2.o
 %attr(644,root,root)           /usr/lib/cc65/emd/a2.*.emd
 %attr(644,root,root)           /usr/lib/cc65/joy/a2.*.joy
 %attr(644,root,root)           /usr/lib/cc65/mou/a2.*.mou
@@ -135,7 +134,6 @@ programs for the Apple //e using the cc65 crosscompiler.
 
 %files apple2enh
 %attr(644,root,root)           /usr/lib/cc65/lib/apple2enh.lib
-%attr(644,root,root)           /usr/lib/cc65/lib/apple2enh.o
 %attr(644,root,root)           /usr/lib/cc65/emd/a2e.*.emd
 %attr(644,root,root)           /usr/lib/cc65/joy/a2e.*.joy
 %attr(644,root,root)           /usr/lib/cc65/mou/a2e.*.mou
@@ -160,7 +158,6 @@ programs for the 8 bit Atari machines using the cc65 crosscompiler.
 
 %files atari
 %attr(644,root,root)           /usr/lib/cc65/lib/atari.lib
-%attr(644,root,root)           /usr/lib/cc65/lib/atari.o
 %attr(644,root,root)           /usr/lib/cc65/joy/atari*.joy
 
 
@@ -181,7 +178,6 @@ programs for the Oric Atmos using the cc65 crosscompiler.
 
 %files atmos
 %attr(644,root,root)           /usr/lib/cc65/lib/atmos.lib
-%attr(644,root,root)           /usr/lib/cc65/lib/atmos.o
 %attr(644,root,root)           /usr/lib/cc65/tgi/atmos-*.tgi
 
 
@@ -202,7 +198,6 @@ programs for the Commodore C128 using the cc65 crosscompiler.
 
 %files c128
 %attr(644,root,root)           /usr/lib/cc65/lib/c128.lib
-%attr(644,root,root)           /usr/lib/cc65/lib/c128.o
 %attr(644,root,root)           /usr/lib/cc65/emd/c128-*.emd
 %attr(644,root,root)           /usr/lib/cc65/joy/c128-*.joy
 %attr(644,root,root)           /usr/lib/cc65/mou/c128-*.mou
@@ -227,7 +222,6 @@ programs for the Commodore C16/116 using the cc65 crosscompiler.
 
 %files c16
 %attr(644,root,root)           /usr/lib/cc65/lib/c16.lib
-%attr(644,root,root)           /usr/lib/cc65/lib/c16.o
 %attr(644,root,root)           /usr/lib/cc65/emd/c16-*.emd
 %attr(644,root,root)           /usr/lib/cc65/joy/c16-*.joy
 
@@ -249,7 +243,6 @@ programs for the Commodore C64 using the cc65 crosscompiler.
 
 %files c64
 %attr(644,root,root)           /usr/lib/cc65/lib/c64.lib
-%attr(644,root,root)           /usr/lib/cc65/lib/c64.o
 %attr(644,root,root)           /usr/lib/cc65/emd/dtv-*.emd
 %attr(644,root,root)           /usr/lib/cc65/emd/c64-*.emd
 %attr(644,root,root)           /usr/lib/cc65/joy/c64-*.joy
@@ -276,7 +269,6 @@ crosscompiler.
 
 %files cbm510
 %attr(644,root,root)                   /usr/lib/cc65/lib/cbm510.lib
-%attr(644,root,root)                   /usr/lib/cc65/lib/cbm510.o
 %attr(644,root,root)           /usr/lib/cc65/emd/cbm510-*.emd
 %attr(644,root,root)           /usr/lib/cc65/joy/cbm510-*.joy
 %attr(644,root,root)           /usr/lib/cc65/ser/cbm510-*.ser
@@ -300,7 +292,6 @@ the cc65 crosscompiler.
 
 %files cbm610
 %attr(644,root,root)                   /usr/lib/cc65/lib/cbm610.lib
-%attr(644,root,root)                   /usr/lib/cc65/lib/cbm610.o
 %attr(644,root,root)           /usr/lib/cc65/emd/cbm610-*.emd
 %attr(644,root,root)           /usr/lib/cc65/ser/cbm610-*.ser
 
@@ -323,7 +314,6 @@ GEOS programs for the C64/C128 using the cc65 crosscompiler.
 %files geos
 %attr(755,root,root)                   /usr/bin/grc
 %attr(644,root,root)           /usr/lib/cc65/lib/geos.lib
-%attr(644,root,root)           /usr/lib/cc65/lib/geos.o
 %attr(755,root,root) %dir      /usr/lib/cc65/include/geos
 %attr(644,root,root)                   /usr/lib/cc65/include/geos/*.h
 %attr(644,root,root)           /usr/lib/cc65/emd/geos-*.emd
@@ -348,7 +338,6 @@ programs for the Lynx Game Console using the cc65 crosscompiler.
 
 %files lynx
 %attr(644,root,root)           /usr/lib/cc65/lib/lynx.lib
-%attr(644,root,root)           /usr/lib/cc65/lib/lynx.o
 %attr(644,root,root)           /usr/lib/cc65/joy/lynx-*.joy
 %attr(644,root,root)           /usr/lib/cc65/tgi/lynx-*.tgi
 
@@ -371,7 +360,6 @@ crosscompiler.
 
 %files nes
 %attr(644,root,root)           /usr/lib/cc65/lib/nes.lib
-%attr(644,root,root)           /usr/lib/cc65/lib/nes.o
 %attr(644,root,root)           /usr/lib/cc65/joy/nes-*.joy
 
 
@@ -393,7 +381,6 @@ crosscompiler.
 
 %files pet
 %attr(644,root,root)           /usr/lib/cc65/lib/pet.lib
-%attr(644,root,root)           /usr/lib/cc65/lib/pet.o
 %attr(644,root,root)           /usr/lib/cc65/joy/pet-*.joy
 
 
@@ -415,7 +402,6 @@ crosscompiler.
 
 %files plus4
 %attr(644,root,root)                   /usr/lib/cc65/lib/plus4.lib
-%attr(644,root,root)                   /usr/lib/cc65/lib/plus4.o
 %attr(644,root,root)           /usr/lib/cc65/joy/plus4-*.joy
 %attr(644,root,root)           /usr/lib/cc65/ser/plus4-*.ser
 
@@ -437,7 +423,6 @@ programs for the Supervision Game console using the cc65 crosscompiler.
 
 %files supervision
 %attr(644,root,root)           /usr/lib/cc65/lib/supervision.lib
-%attr(644,root,root)           /usr/lib/cc65/lib/supervision.o
 
 
 
@@ -457,7 +442,6 @@ programs for the Commodore VIC20 using the cc65 crosscompiler.
 
 %files vic20
 %attr(644,root,root)           /usr/lib/cc65/lib/vic20.lib
-%attr(644,root,root)           /usr/lib/cc65/lib/vic20.o
 %attr(644,root,root)           /usr/lib/cc65/joy/vic20-*.joy
 
 
index ed9cd09c5b5e0d88d6b5cd7502f5fc81b4d52251..cd8079a2c8c6fec879249e4e357e6ae53c73b2ff 100644 (file)
@@ -12,7 +12,6 @@ SYS   = c64
 # source tree, otherwise use the "official" directories.
 ifeq "$(wildcard ../src)" ""
 # No source tree
-CRT0 = $(SYS).o
 CLIB = $(SYS).lib
 CL   = cl65
 CC   = cc65
@@ -21,7 +20,6 @@ LD   = ld65
 
 else
 # Samples is part of a complete source tree
-CRT0 = ../libsrc/$(SYS).o
 CLIB = ../libsrc/$(SYS).lib
 CL   = ../src/cl65/cl65
 CC   = ../src/cc65/cc65
@@ -68,63 +66,63 @@ EXELIST     =       ascii           \
 .PHONY:        all
 all:           $(EXELIST)
 
-ascii:                 $(CRT0) ascii.o $(CLIB)
+ascii:                 ascii.o $(CLIB)
        @$(LD) -t $(SYS) -m $(basename $@).map -o $@ $^
 
-diodemo:        $(CRT0) diodemo.o $(CLIB)
+diodemo:        diodemo.o $(CLIB)
        @$(LD) -t $(SYS) -m $(basename $@).map -o $@ $^
 
-fire:                  $(CRT0) fire.o $(CLIB)
+fire:                  fire.o $(CLIB)
        @$(LD) -t $(SYS) -m $(basename $@).map -o $@ $^
 
-gunzip65:              $(CRT0) gunzip65.o $(CLIB)
+gunzip65:              gunzip65.o $(CLIB)
        @$(LD) -t $(SYS) -m $(basename $@).map -o $@ $^
 
-hello:                 $(CRT0) hello.o $(CLIB)
+hello:                 hello.o $(CLIB)
        @$(LD) -t $(SYS) -m $(basename $@).map -o $@ $^
 
 # The Apple machines need the start address adjusted for the mandelbrot demo
 ifeq "$(SYS)" "apple2"
-mandelbrot:     $(CRT0) mandelbrot.o $(CLIB)
+mandelbrot:     mandelbrot.o $(CLIB)
        @$(LD) -t $(SYS) -m $(basename $@).map --start-addr 0x4000 -o $@ $^
 else
 ifeq "$(SYS)" "apple2enh"
-mandelbrot:     $(CRT0) mandelbrot.o $(CLIB)
+mandelbrot:     mandelbrot.o $(CLIB)
        @$(LD) -t $(SYS) -m $(basename $@).map --start-addr 0x4000 -o $@ $^
 else
-mandelbrot:     $(CRT0) mandelbrot.o $(CLIB)
+mandelbrot:     mandelbrot.o $(CLIB)
        @$(LD) -t $(SYS) -m $(basename $@).map -o $@ $^
 endif
 endif
 
 # The Apple ][ needs the start address adjusted for the mousedemo
 ifeq "$(SYS)" "apple2"
-mousedemo:             $(CRT0) mousedemo.o $(CLIB)
+mousedemo:             mousedemo.o $(CLIB)
        @$(LD) -t $(SYS) -m $(basename $@).map --start-addr 0x4000 -o $@ $^
 else
-mousedemo:             $(CRT0) mousedemo.o $(CLIB)
+mousedemo:             mousedemo.o $(CLIB)
        @$(LD) -t $(SYS) -m $(basename $@).map -o $@ $^
 endif
 
-nachtm:                $(CRT0) nachtm.o $(CLIB)
+nachtm:                nachtm.o $(CLIB)
        @$(LD) -t $(SYS) -m $(basename $@).map -Ln $(basename $@).lbl -o $@ $^
 
-plasma:                $(CRT0) plasma.o $(CLIB)
+plasma:                plasma.o $(CLIB)
        @$(LD) -t $(SYS) -m $(basename $@).map -o $@ $^
 
-sieve:                 $(CRT0) sieve.o $(CLIB)
+sieve:                 sieve.o $(CLIB)
        @$(LD) -t $(SYS) -m $(basename $@).map -o $@ $^
 
 # The Apple machines need the start address adjusted for the tgidemo
 ifeq "$(SYS)" "apple2"
-tgidemo:               $(CRT0) tgidemo.o $(CLIB)
+tgidemo:               tgidemo.o $(CLIB)
        @$(LD) -t $(SYS) -m $(basename $@).map --start-addr 0x4000 -o $@ $^
 else
 ifeq "$(SYS)" "apple2enh"
-tgidemo:               $(CRT0) tgidemo.o $(CLIB)
+tgidemo:               tgidemo.o $(CLIB)
        @$(LD) -t $(SYS) -m $(basename $@).map --start-addr 0x4000 -o $@ $^
 else
-tgidemo:               $(CRT0) tgidemo.o $(CLIB)
+tgidemo:               tgidemo.o $(CLIB)
        @$(LD) -t $(SYS) -m $(basename $@).map -o $@ $^
 endif
 endif
index dc0fd520d0b282167b8fd674cc4fe8c8c17ac482..34e942ff3867e2223df1ea61aaa9576efc766e42 100644 (file)
@@ -386,11 +386,9 @@ void g_defimport (const char* Name, int ZP)
 
 
 void g_importstartup (void)
-/* Forced import of the startup segment */
+/* Forced import of the startup module */
 {
-#if 0
-    AddTextLine ("\t.forceimport\t__STARTUP_RUN__");
-#endif
+    AddTextLine ("\t.forceimport\t__STARTUP__");
 }