SUBDIRS=pc-tools/ldc pc-tools/src-filters pc-tools/boot-maker lib/iolib lib/fortran \
lib/fortran lib/fortran/vpunch-help lib/iolib programs/mandelbrot\
- programs/punchomat
+ programs/punchomat programs/tools
default:
--- /dev/null
+rest ../../../sys/super2.sys
+d 37000-37777 0
+d 31000-31777 0
+d 35000 37777
+at ptr binal.obj
+d a 37000
+go
+go
+run 36002
+at ptr cleanup2.obj
+d a 31000
+go 36000
+go
+run 36002
+at ptp super3.slst
+run 37000
+d a 31000
+go
+d a 37577
+go
+
clean:
@echo Cleaning up.
@rm -rf $(OBJ_DIR) $(LIB_DIR) *.lst *.go
- @rm -f $(SRC_DIR)/vpunch.asm $(SRC_DIR)/vpunch.2
+ @rm -f vpunch.asm $(SRC_DIR)/font.asm
@$(MAKE) -s -C vpunch-help clean
@buildlib.sh clean
vpunch-help/use: vpunch-help/use.c vpunch-help/font_8x16.c
$(MAKE) -C vpunch-help use
-src/vpunch.2: vpunch-help/use
- vpunch-help/use > src/vpunch.2
-
-src/vpunch.asm: src/vpunch.1 src/vpunch.2
- cat src/vpunch.1 src/vpunch.2 > src/vpunch.asm
+src/font.asm: vpunch-help/use
+ vpunch-help/use > src/font.asm
.PHONY: clean all org obj libs
lib=$OUTPUT_DIR/`basename $recipe $RECIPE_SUFFIX`$LIB_SUFFIX
echo "Building $lib:"
rm -f $lib
+ export IFS="
+"
for item in `cat $recipe`; do
- echo "appending $item."
- cat $item >> $lib || (echo "Error! could not find:$item")
+ if echo $item| egrep -vq '^[[:space:]\t]*([#;])|(//).*'; then
+ item=`echo $item | egrep -o '[^[:space:]].*$'`
+ echo "appending $item."
+ cat $item >> $lib || (echo "Error! could not find:$item")
+ else
+ echo Ignoriere $item
+ fi
done
cat $ENDBLOCK >> $lib
done
+++ /dev/null
-* (VPUNCH) 27.05.2005
-*
-*
-* PUNCH VISIBLE TEXT ON THE PAPER TAPE PUNCH
-*
-*
-* AUTHOR
-* PHILIPP HACHTMANN
-*
-* USAGE
-* JST VCHAR
-* DAC ARG
-*
-*
- SUBR VPUNCH,STRT
- REL
-*
-STRT DAC **
- LDA* STRT ARGUMENT HOLEN
- IRS STRT RUECKSPRUNG KORRIGIEREN
- ALS 3 ZEICHENOFFSET GENERIEREN
- ADD FP FONTADRESSE ADDIEREN
- STA POS UND IN POINTER TUN
- LDA =-8
- STA CNT LOOPCOUNTER INITIALISIEREN
- OCP 2
-LOOP LDA* POS
- ICA
- OTA 2
- JMP *-1
- ICA
- OTA 2
- JMP *-1
- IRS POS
- IRS CNT
- JMP LOOP
- JMP* STRT RETURN
-*
-*
-POS DEC 0
-CNT DEC 0
-FP DAC FONT POINTER TO THE FONT BASE (8X16)
-*
-**** HIER WIRD ANGEBAUT *****
--- /dev/null
+* (VPUNCH) 27.05.2005
+*
+*
+* PUNCH VISIBLE TEXT ON THE PAPER TAPE PUNCH
+*
+*
+* AUTHOR
+* PHILIPP HACHTMANN
+*
+* USAGE
+* JST VCHAR
+* DAC ARG
+*
+*
+ SUBR VPUNCH,VPUN
+ REL
+*
+VPUN DAC **
+ LDA* VPUN ARGUMENT HOLEN
+ IRS VPUN RUECKSPRUNG KORRIGIEREN
+ ALS 3 ZEICHENOFFSET GENERIEREN
+ ADD FP FONTADRESSE ADDIEREN
+ STA POS UND IN POINTER TUN
+ LDA =-8
+ STA CNT LOOPCOUNTER INITIALISIEREN
+ OCP 2
+LOOP LDA* POS
+ ICA
+ OTA 2
+ JMP *-1
+ ICA
+ OTA 2
+ JMP *-1
+ IRS POS
+ IRS CNT
+ JMP LOOP
+ JMP* VPUN RETURN
+*
+*
+POS DEC 0
+CNT DEC 0
+FP XAC FONT POINTER TO THE FONT BASE (8X16)
+*
+ END
+
int c;
int a;
for (c=0; c<4096; c++) fontdata_8x16[c]=tw(fontdata_8x16[c]);
-// printf("\tSUBR\tFONT\n");
+ printf("\tSUBR\tFONT\n");
for (a=0; a<256; a++){
char * fd =fontdata_8x16 + (a<<4);
if (a==0) printf("FONT\t"); else printf("\t");
--- /dev/null
+# Makefile for assembler sources
+
+SRC_DIR = src
+OBJ_DIR = build
+LIB_DIR = lib
+
+MODULES = binal cleanup cleanup2
+
+FRTN_COMMAND = frtn
+ASM_COMMAND = asm
+
+SRC_FILES = $(foreach obj, $(MODULES),$(obj).asm)
+OBJ_FILES = $(SRC_FILES:.asm=.obj)
+OBJ_FILES_FULL = $(foreach file, $(OBJ_FILES),$(OBJ_DIR)/$(file))
+
+##########################################
+
+obj : $(OBJ_FILES_FULL)
+
+$(OBJ_FILES_FULL):$(OBJ_DIR)/%.obj:$(SRC_DIR)/%.asm
+ @echo Building: $(subst $$,\$$,$@)
+ @if [ ! -d $(OBJ_DIR) ]; then mkdir $(OBJ_DIR); fi
+ @ rm -f $@
+ @ cd $(OBJ_DIR) && $(ASM_COMMAND) ../$(subst $$,\$$,$^)
+# @ cd $(OBJ_DIR) && ldc -s -l $(notdir $(subst $$,\$$,$@))
+
+clean:
+ @echo Cleaning up.
+ @rm -rf $(OBJ_DIR) $(LIB_DIR) *.lst *.go
+
+.PHONY: clean all org obj libs
+
B2AD DAC BO2S START ADDRESS OF SECOND STAGE LOADER
B3AD DAC BO3S START ADDRESS OF THIRD STAGE LOADER
*
-LDRL DEC 100 LEADER LENGTH
+LDRL DEC 300 LEADER LENGTH
SZE SZE INSTRUCTION FOR FILL IN
SNZ SNZ INSTRUCTION FOR FILL IN
*