File ALPHA.SB (8k SABR macro assembler source file)

Directory of image this file is from
This file as a plain text file

/UNTERPROGRAMM ZUM PLOTTEN VON ZEICHENKETTEN
/AUFRUF:
/CALL ALPHA (X,Y,FACT,SADDR,THETA)
/X-STARTPLATZ IN INKREMENTEN
/Y-STARTPLATZ IN INKREMENTEN
/FACT-BUCHSTABENGROESSENFAKTOR
/SADDR-STARTADRESSE DER ZEICHENKETTE
/THETA-NEIGUNGSWINKEL

	ENTRY ALPHA

	DUMMY X
	DUMMY Y
	DUMMY FACT
	DUMMY SADDR1
	DUMMY THETA
	DUMMY SADDR

X,	BLOCK 2
Y,	BLOCK 2
FACT,	BLOCK 2
SADDR1,	BLOCK 2
THETA,	BLOCK 2
SADDR,	BLOCK 2

XPNT,	X
PNTR,	0
CNTR1,	0

ALPHA,	BLOCK 2

	TAD XPNT
	DCA PNTR
	TAD (-12
	DCA CNTR1
A1,	TAD I ALPHA
	INC ALPHA#
	DCA I PNTR
	INC PNTR
	ISZ CNTR1
	JMP A1

	TAD I SADDR1
	DCA SADDR#
	TAD X
	DCA SADDR

        TAD I X
        DCA BX
        TAD I Y
        DCA BY
        CLA CLL
SUB1,   TAD I SADDR
        RTR
        RTR
	RTR
        AND (77
        JMS ADLTR
        TAD I SADDR
        ISZ SADDR#
        AND (77
        SNA
        JMP SUB3
        JMP SUB2
SUB3,   RETRN ALPHA

SUB2, JMS ADLTR JMP SUB1 JMPLT4, JMP LT4 ADLTR, 0 SZA JMP SY4 JMP I ADLTR SY4, DCA TMP TAD JMSAM DCA LC1 TAD JMPLT4 DCA LC2 TAD CCMA DCA LC3 TAD TMP LT0, JMS FNDADR DCA LTADR LC3, CMA DCA LTSWT1 LT1, CLA CMA DCA LTSWT2 TAD I LTADR AND (77 DCA MOVE2 TAD I LTADR RTR RTR RTR LT2, AND (77 TAD (-77 SNA LC2, JMP LT4 TAD (7 SZA JMP SY1 CCMA, CMA DCA LTSWT1 JMP LT3 SY1, TAD (70 DCA LTHLD TAD LTHLD AND (7 JMS ADMULT DCA IY TAD LTHLD RTR RAR AND (7 JMS ADMULT DCA IX ISZ LTSWT1 CMA IAC LC1, JMS ADIMOVE LT3, ISZ LTSWT2 JMP SY2 TAD MOVE2 JMP LT2 SY2, ISZ LTADR JMP LT1 LT4, TAD (5 JMS ADMULT DCA IX DCA IY IAC JMS ADIMOVE JMS ADNEWB LC4, JMP I ADLTR
BX, 0 BY, 0 TEMP, 0 JMSAM, JMS ADIMOVE MOVE2, 0 LTHLD, 0 LTSWT1, 0 LTSWT2, 0 LTADR, 0 FNDADR, 0 AND (77 TAD (-40 SMA TAD (-5 TAD (40 CIA DCA CNTR TAD ADTBL DCA TADDR BUMP, ISZ CNTR JMP CYCL TAD TADDR JMP I FNDADR CYCL, TAD I TADDR AND (77 TAD (-77 ISZ TADDR SNA CLA JMP BUMP JMP CYCL TADDR, 0 CNTR, 0 ADTBL, TABLE ADMULT, 0 DCA DLTA TAD I FACT CIA DCA CNT AM1, TAD DLTA ISZ CNT JMP AM1 JMP I ADMULT DLTA, 0 CNT, 0 ADIMOVE, 0 SZA JMP ADI2 DCA HAZ ADI1, JMS ADRTAT TAD IX TAD BX DCA AX TAD AX DCA HAX TAD IY TAD BY DCA AY TAD AY DCA HAY CALL 3,PLOTX ARG HAX ARG HAY ARG HAZ JMP I ADIMOVE HAX, 0 HAY, 0 HAZ, 0 IX, 0 IY, 0 AX, 0 AY, 0 ADI2, DCA HAZ JMP ADI1
ADNEWB, 0 CLA TAD AX DCA BX TAD AY DCA BY JMP I ADNEWB ADRTAT, 0 CLA TAD I THETA SNA JMP I ADRTAT TAD (-1 SZA JMP R180 R90, TAD IX DCA TMP TAD IY CIA DCA IX TAD TMP DCA IY JMP I ADRTAT R180, TAD (-1 SZA JMP R270 TAD IX CIA DCA IX TAD IY CIA DCA IY JMP I ADRTAT R270, TAD (-1 SZA CLA JMP I ADRTAT TAD IX CIA DCA TMP TAD IY DCA IX TAD TMP DCA IY JMP I ADRTAT TMP, 0
LAP CPAGE 200 TABLE, 0005 1636 4543 0343 4077 SB, 0006 3645 4433 0333 4241 3000 7777 SC, 4130 1001 0516 3645 7777 SD, 0006 3645 4130 0077 SE, 4606 0333 0300 4077 SF, 4606 0333 0300 7777 SG, 2343 4130 1001 0516 3645 7777 SH, 0600 0343 4046 7777 SI, 1636 2620 3010 7777 SJ, 3646 4130 1001 0277 SK, 4024 4602 0006 7777 SL, 0600 4077 SM, 0006 2346 4077 SN, 0006 4046 7777 SO, 0110 3041 4536 1605 0177 SP, 0006 3645 4433 0377 SQ, 2240 4536 1605 0110 3041 7777 SR, 0006 3645 4433 0333 4240 7777 SS, 0110 3041 4233 1304 0516 3645 7777 ST, 0646 2620 7777 SU, 0601 1030 4146 7777 SV, 0620 4677 SW, 0600 2340 4677 SX, 0640 2300 4677 SY, 0623 2023 4677 SZ, 0646 2333 1323 0040 7777 SSPC, 4077 SCBX, 2325 0501 4145 2523 7777 SCOC, 2325 1504 0211 3142 4435 2523 7777 SCTR, 2325 0242 2523 7777 SCPL, 2325 CPAGE 200 2303 4323 2123 7777 SCEX, 2305 4123 4501 2377 SCDM, 2325 0321 4325 2377 SAPS, 3614 7777 SRPR, 3626 1511 2030 7777 SLPR, 1626 3531 2010 7777 7777 SPLS, 2521 7003 4377 SCOM, 2111 1222 2110 7777 SDHS, 0343 7777 SPRD, 2111 1222 2177 7777 S0, 2446 4130 1001 0516 3645 7777 S1, 1526 2030 1077 S2, 0516 3645 4401 0040 7777 S3, 0110 3041 4233 1333 4445 3616 0577 S4, 3036 0343 7777 S5, 0110 3041 4233 1304 0646 7777 S6, 0213 3342 4130 1001 0516 3645 7777 S7, 0506 4645 2120 7777 S8, 1333 4241 3010 0102 1304 0516 3645 4433 7777 S9, 0110 3041 4536 1605 0413 3344 7777 SCOL, 2425 1514 2470 2122 1211 2177 SSCL, 2425 1514 2470 2122 1211 2110 7777 SLST, 4503 4177 SEQU, 0444 7002 4277 SGRT, 0543 0177 END
G



Feel free to contact me, David Gesswein djg@pdp8online.com with any questions, comments on the web site, or if you have related equipment, documentation, software etc. you are willing to part with.  I am interested in anything PDP-8 related, computers, peripherals used with them, DEC or third party, or documentation. 

PDP-8 Home Page   PDP-8 Site Map   PDP-8 Site Search