Reduced Apple II binary file sizes.

The Apple II file I/O needs a $400 byte page-aligned buffer for every open file. The default implementation takes those buffers from the heap. However, if a program doesn't use the heap for anything else it is more efficient to place those buffers below the program at $800 by linking iobuf-0800.o and thus avoiding to link any heap code at all. If a program never opens more than one file at a time it can have its start address at $800 + 1 x $400 = $C00.
This commit is contained in:
Oliver Schmidt 2018-07-23 14:55:56 +02:00
parent 29c802c835
commit ee0e11b41f

View File

@ -85,7 +85,7 @@ telnet65.com: ATARI_CFG = atrtelnet.cfg
rm $*.o rm $*.o
%.bin: %.c ip65 drivers %.bin: %.c ip65 drivers
cl65 -o $*.bin -O -t apple2enh -m $*.a2.map -vm $< $(IP65LIB) ../drivers/ip65_apple2.lib cl65 -o $*.bin -O -t apple2enh -m $*.a2.map -vm $< --start-addr 0x0C00 apple2enh-iobuf-0800.o $(IP65LIB) ../drivers/ip65_apple2.lib
rm $*.o rm $*.o
%.com: %.c ip65 drivers %.com: %.c ip65 drivers