diff --git a/asoft_present/Makefile b/asoft_present/Makefile new file mode 100644 index 00000000..dddf4586 --- /dev/null +++ b/asoft_present/Makefile @@ -0,0 +1,26 @@ +CC = gcc +CFLAGS = -O2 -Wall +LFLAGS = + + +all: test.dsk + +test.dsk: TEST + ../dos33 test.dsk SAVE A TEST + + +TEST: test.bas + ../tokenize_asoft < test.bas > TEST + +test.bas: generate_presentation + ./generate_presentation > test.bas + +generate_presentation: generate_presentation.o + $(CC) $(LFLAGS) -o generate_presentation generate_presentation.o + +generate_presentations.o: generate_presentation.c + $(CC) $(CFLAGS) -c generate_presentation.c + +clean: + rm -f *~ *.o generate_presentation + diff --git a/asoft_present/generate_presentation.c b/asoft_present/generate_presentation.c new file mode 100644 index 00000000..80c0c5c7 --- /dev/null +++ b/asoft_present/generate_presentation.c @@ -0,0 +1,59 @@ +#include +#include + +void generate_footer(char *left, char *center, int cols) { + + int center_len,center_count,i,right_count; + + printf("1000 REM ************\n"); + printf("1001 REM PRINT FOOTER\n"); + printf("1002 REM ************\n"); + /* make text black on white; move to bottom line */ + printf("1003 INVERSE : VTAB 24\n"); + + printf("1005 X$=STR$(P%%)+\"/\":X$=X$+STR$(TP%%)\n"); + printf("1007 L%%=LEN(X$)\n"); + + printf("1010 PRINT \"%s",left); + + center_len=strlen(center); + center_count=(cols-center_len)/2; + center_count-=strlen(left); + + if (center_count<0) { + fprintf(stderr,"Error! can't fit text in footer\n"); + center_count=0; + } + + for(i=0;i