#
# Maciej 'YTM/Elysium' Witkowiak
-OBJ_DIRS=common conio devel disk dlgbox file graph menuicon memory mousesprite process system
+OBJ_DIRS=common conio devel disk dlgbox file graph menuicon memory mousesprite process runtime system
all:
@for i in $(OBJ_DIRS); do $(MAKE) -C $$i; done
@$(AS) -o $@ $(AFLAGS) $<
C_OBJS = _afailed.o abort.o perror.o
-S_OBJS = copydata.o memcpy.o memset.o
+S_OBJS = copydata.o memcpy.o memset.o zerobss.o
all: $(C_OBJS) $(S_OBJS)
--- /dev/null
+;
+; Maciej 'YTM/Elysium' Witkowiak <ytm@elysium.pl>
+; 23.12.2002
+;
+; Zero the bss segment.
+;
+
+ .export zerobss
+ .import __BSS_RUN__, __BSS_SIZE__
+
+ .include "../inc/jumptab.inc"
+ .include "../inc/geossym.inc"
+
+.code
+
+zerobss:
+ lda #<__BSS_SIZE__
+ ldx #>__BSS_SIZE__
+ sta r0L
+ stx r0H
+ lda #0
+ sta r2L
+ lda #<__BSS_RUN__
+ ldx #>__BSS_RUN__
+ sta r1L
+ stx r1H
+ jmp FillRam
--- /dev/null
+#
+# Makefile for GEOS lib
+# for cc65
+#
+
+%.o: %.c
+ @$(CC) $(CFLAGS) $<
+ @$(AS) -g -o $@ $(AFLAGS) $(*).s
+
+%.o: %.s
+ @$(AS) -o $@ $(AFLAGS) $<
+
+C_OBJS =
+S_OBJS = call.o
+
+all: $(C_OBJS) $(S_OBJS)
+
+clean:
+ @rm -f *.~ $(S_OBJS) core
+ @rm -f $(C_OBJS:.o=.s)
+ @rm -f $(C_OBJS)
--- /dev/null
+;
+; Maciej 'YTM/Elysium' Witkowiak <ytm@elysium.pl>
+; 23.12.2002
+;
+; CC65 runtime: call function via pointer in ax
+;
+
+ .include "../inc/jumptab.inc"
+
+ .export callax
+
+callax = CallRoutine