cc65/cfg
Oliver Schmidt 0ee9b2e446 Changed run location of INIT segment.
So far the INIT segment was run from the later heap+stack. Now the INIT segment is run from the later BSS. The background is that so far the INIT segment was pretty small (from $80 to $180 bytes). But upcoming changes will increase the INIT segment in certain scenarios up to ~ $1000 bytes. So programs with very limited heap+stack might just not been able to move the INIT segment to its run location. But moving the INIT segment to the later BSS allows it to occupy the later BSS+heap+stack.

In order to allow that the constructors are _NOT_ allowed anymore to access the BSS. Rather they must use the DATA segment or the new INITBSS segment. The latter isn't cleared at any point so the constructors may use it to expose values to the main program. However they must make sure to always write the values as they are not pre-initialized.
2015-10-14 22:52:09 +02:00
..
apple2-asm.cfg add ZEROPAGE segment to apple2-asm.cfg and c64-asm.cfg 2014-01-22 18:15:51 +01:00
apple2-overlay.cfg Made LOWCODE and INIT optional (like the other targets). 2014-04-28 22:14:26 +02:00
apple2-system.cfg Made LOWCODE and INIT optional (like the other targets). 2014-04-28 22:14:26 +02:00
apple2.cfg Made LOWCODE and INIT optional (like the other targets). 2014-04-28 22:14:26 +02:00
apple2enh-asm.cfg Replaced builtin linker configs with ordinary .cfg files. 2013-04-09 23:09:46 +02:00
apple2enh-overlay.cfg Made LOWCODE and INIT optional (like the other targets). 2014-04-28 22:14:26 +02:00
apple2enh-system.cfg Made LOWCODE and INIT optional (like the other targets). 2014-04-28 22:14:26 +02:00
apple2enh.cfg Made LOWCODE and INIT optional (like the other targets). 2014-04-28 22:14:26 +02:00
atari-asm.cfg add EXTZP segment to atari-asm.cfg 2014-01-22 18:15:52 +01:00
atari-cart.cfg make "ZEROPAGE" segment optional 2014-01-22 13:26:05 +01:00
atari-cassette.cfg Increase the default start address a bit in case BASIC is started 2014-02-21 23:34:05 +01:00
atari-overlay.cfg Put EXE header and main chunk load header into a single file -- 2013-10-18 14:54:22 +02:00
atari.cfg Put EXE header and main chunk load header into a single file -- 2013-10-18 14:54:22 +02:00
atari5200.cfg Don't reserve space for display list in __RESERVED_MEMORY__ since the 2014-05-27 02:43:17 +02:00
atarixl-largehimem.cfg Force inclusion of 'shadow RAM preparation' load chunk in crt0.s and 2013-10-18 22:08:26 +02:00
atarixl-overlay.cfg Force inclusion of 'shadow RAM preparation' load chunk in crt0.s and 2013-10-18 22:08:26 +02:00
atarixl.cfg Force inclusion of 'shadow RAM preparation' load chunk in crt0.s and 2013-10-18 22:08:26 +02:00
atmos.cfg Added comments that say why the ZPSAVE1 and ZPSAVE2 segments must be together. 2015-01-08 17:07:28 -05:00
bbc.cfg Replaced builtin linker configs with ordinary .cfg files. 2013-04-09 23:09:46 +02:00
c16.cfg Changed run location of INIT segment. 2015-10-14 22:52:09 +02:00
c64-asm.cfg add ZEROPAGE segment to apple2-asm.cfg and c64-asm.cfg 2014-01-22 18:15:51 +01:00
c64-overlay.cfg Changed run location of INIT segment. 2015-10-14 22:52:09 +02:00
c64.cfg Changed run location of INIT segment. 2015-10-14 22:52:09 +02:00
c128-overlay.cfg Changed run location of INIT segment. 2015-10-14 22:52:09 +02:00
c128.cfg Changed run location of INIT segment. 2015-10-14 22:52:09 +02:00
cbm510.cfg Changed run location of INIT segment. 2015-10-14 22:52:09 +02:00
cbm610.cfg Changed run location of INIT segment. 2015-10-14 22:52:09 +02:00
geos-apple.cfg Made EXTZP segment optional on GEOS as it is used only by CONIO. 2013-08-20 07:43:47 +02:00
geos-cbm.cfg Made EXTZP segment optional on GEOS as it is used only by CONIO. 2013-08-20 07:43:47 +02:00
lunix.cfg Replaced builtin linker configs with ordinary .cfg files. 2013-04-09 23:09:46 +02:00
lynx-bll.cfg Use LOWCODE segment 2014-03-19 11:32:44 +02:00
lynx-coll.cfg Use LOWCODE segment 2014-03-19 11:32:44 +02:00
lynx-uploader.cfg Use LOWCODE segment 2014-03-19 11:32:44 +02:00
lynx.cfg Use LOWCODE segment 2014-03-19 11:32:44 +02:00
module.cfg Reintroduced optional INIT segment for (weird) NES TGI driver. 2014-05-01 22:12:05 +02:00
nes.cfg Replaced builtin linker configs with ordinary .cfg files. 2013-04-09 23:09:46 +02:00
none.cfg Replaced builtin linker configs with ordinary .cfg files. 2013-04-09 23:09:46 +02:00
osic1p-asm.cfg Fixed uninitialized use of low byte of address "load". 2015-03-14 00:01:12 +01:00
osic1p.cfg More room by default for zero-page data. 2015-03-23 18:42:25 +01:00
pce.cfg added interruptor support 2015-09-19 15:55:43 +02:00
pet.cfg Changed run location of INIT segment. 2015-10-14 22:52:09 +02:00
plus4.cfg Changed run location of INIT segment. 2015-10-14 22:52:09 +02:00
sim65c02.cfg Added 'sim6502' and 'sim65C02' targets. 2013-05-20 20:35:42 +02:00
sim6502.cfg Added 'sim6502' and 'sim65C02' targets. 2013-05-20 20:35:42 +02:00
supervision-16k.cfg Replaced builtin linker configs with ordinary .cfg files. 2013-04-09 23:09:46 +02:00
supervision-64k.cfg Replaced builtin linker configs with ordinary .cfg files. 2013-04-09 23:09:46 +02:00
supervision-128k.cfg Replaced builtin linker configs with ordinary .cfg files. 2013-04-09 23:09:46 +02:00
supervision.cfg Replaced builtin linker configs with ordinary .cfg files. 2013-04-09 23:09:46 +02:00
vic20-32k.cfg Changed run location of INIT segment. 2015-10-14 22:52:09 +02:00
vic20.cfg Changed run location of INIT segment. 2015-10-14 22:52:09 +02:00