Initial version of sortdir for ProDOS-8 (port from GNO/ME on the GS)
This commit is contained in:
parent
e5dc33d005
commit
737c6c31ec
|
@ -0,0 +1,29 @@
|
||||||
|
######################################################################
|
||||||
|
# Makefile for Sortdir, using cc65
|
||||||
|
# Bobbi, 2020
|
||||||
|
# GPL v3+
|
||||||
|
######################################################################
|
||||||
|
|
||||||
|
# Adjust these to match your site installation
|
||||||
|
CC65DIR = ~/Personal/Development/cc65
|
||||||
|
CC65BINDIR = $(CC65DIR)/bin
|
||||||
|
CC65LIBDIR = $(CC65DIR)/lib
|
||||||
|
CC65INCDIR = $(CC65DIR)/include
|
||||||
|
CA65INCDIR = $(CC65DIR)/asminc
|
||||||
|
APPLECMDR = ~/Personal/Historic\ Computing/Micros/Apple2/AppleCommander-1.3.5.jar
|
||||||
|
|
||||||
|
all: sortdir.system\#ff0000
|
||||||
|
|
||||||
|
clean:
|
||||||
|
rm -f *.s *.o *.map sortdir
|
||||||
|
|
||||||
|
sortdir.o: sortdir.c
|
||||||
|
$(CC65BINDIR)/cc65 -I $(CC65INCDIR) -t apple2enh -D A2E -o sortdir.s sortdir.c
|
||||||
|
$(CC65BINDIR)/ca65 -I $(CA65INCDIR) -t apple2enh sortdir.s
|
||||||
|
|
||||||
|
sortdir.system\#ff0000: sortdir.o
|
||||||
|
$(CC65BINDIR)/ld65 -m sortdir.map -o sortdir.system\#ff0000 -C apple2enh-system.cfg sortdir.o $(CC65LIBDIR)/apple2enh.lib
|
||||||
|
|
||||||
|
#sortdir.bin: sortdir.o
|
||||||
|
# $(CC65BINDIR)/ld65 -m sortdir.map -o sortdir.bin -C apple2enh.cfg -D __HIMEM__=0xbf00 sortdir.o $(CC65LIBDIR)/apple2enh.lib
|
||||||
|
|
|
@ -0,0 +1,40 @@
|
||||||
|
# Configuration for ProDOS 8 system programs (without the header)
|
||||||
|
|
||||||
|
SYMBOLS {
|
||||||
|
__STACKSIZE__: type = weak, value = $0800; # 2k stack
|
||||||
|
__LCADDR__: type = weak, value = $D400; # Behind quit code
|
||||||
|
__LCSIZE__: type = weak, value = $0C00; # Rest of bank two
|
||||||
|
}
|
||||||
|
MEMORY {
|
||||||
|
ZP: file = "", define = yes, start = $0080, size = $001A;
|
||||||
|
MAIN: file = %O, start = $2000, size = $BF00 - $2000;
|
||||||
|
BSS: file = "", start = __ONCE_RUN__, size = $BF00 - __STACKSIZE__ - __ONCE_RUN__;
|
||||||
|
LC: file = "", define = yes, start = __LCADDR__, size = __LCSIZE__;
|
||||||
|
}
|
||||||
|
SEGMENTS {
|
||||||
|
ZEROPAGE: load = ZP, type = zp;
|
||||||
|
STARTUP: load = MAIN, type = ro;
|
||||||
|
LOWCODE: load = MAIN, type = ro, optional = yes;
|
||||||
|
CODE: load = MAIN, type = ro;
|
||||||
|
RODATA: load = MAIN, type = ro;
|
||||||
|
DATA: load = MAIN, type = rw;
|
||||||
|
INIT: load = MAIN, type = rw;
|
||||||
|
ONCE: load = MAIN, type = ro, define = yes;
|
||||||
|
LC: load = MAIN, run = LC, type = ro, optional = yes;
|
||||||
|
BSS: load = BSS, type = bss, define = yes;
|
||||||
|
}
|
||||||
|
FEATURES {
|
||||||
|
CONDES: type = constructor,
|
||||||
|
label = __CONSTRUCTOR_TABLE__,
|
||||||
|
count = __CONSTRUCTOR_COUNT__,
|
||||||
|
segment = ONCE;
|
||||||
|
CONDES: type = destructor,
|
||||||
|
label = __DESTRUCTOR_TABLE__,
|
||||||
|
count = __DESTRUCTOR_COUNT__,
|
||||||
|
segment = RODATA;
|
||||||
|
CONDES: type = interruptor,
|
||||||
|
label = __INTERRUPTOR_TABLE__,
|
||||||
|
count = __INTERRUPTOR_COUNT__,
|
||||||
|
segment = RODATA,
|
||||||
|
import = __CALLIRQ__;
|
||||||
|
}
|
Loading…
Reference in New Issue