File KNACK.PD

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

PAGE

/SUBROUTINE ZUM SERIELLEN EINLESEN VON EINER 2*N BIT LAN-
/GEN PROBE DER AUSGANGSFOLGE EINES RUECKGEKOPPELTEN SCHIEBE
/REGISTERS, DIE ZU EINER (N*(N+1)) MATRIX AUFBEREITET UND 
/MIT DEM GAUSSCHEN ALGORITHMUS GELOEST WIRD

/TAD BIT
/JMS KNACK
/ANZ. DER MATRIXZEILEN


FIELD 1
*7400

KNACK,	0	/CLA; LINK,MQ MODIFIED; INS.U.DAT.FIELD AUF 1
	DCA BIT
	
	INBLIP
	BLOTNT
	STKNCK
	
	TAD BIT
	CDF 20
	DCA I POIA
	CDF 10
	ISZ POIA
	ISZ REDCNT
	JMP KNCKEX


FILOP,	CLA
	INBLIP

	MWPRSL
POIB,	EMATRX
POIC,	MATRIX
	OLIST+2
	FLD2

	BLOUT
	ISZ POIB
	CLA CLL IAC RTL
	RAL CLL
	TAD POIC
	DCA POIC
	ISZ FILC
	JMP FILOP

	TAD OLIST
	CIF CDF 20
	JMS GAUSS


	INBLIP
	MWUND
	XVKTOR
	MSKVKT
VFLGI,	VFLG
	MAXAD1
	FELD20
	BLOUT

	CLA
	TAD I VFLGI
	SZA CLA
	ISZ CORECT
	SKP
	ISZ CORECT+1
	JMP KNCKNT

STKNCK,	CAM DST
	CORECT
	CDF 20
	CAM DST
	SINGL
	CAM DST
	REGL
	CDF 10

KNCKNT,	TAD I KNACK
	CIF 20
	JMS CALCN
	OLIST
	TAD TEMTFA
	DCA POIA
	TAD OLIST+1
	TAD OLIST+1
	DCA REDCNT

	TAD TEMTFA
	DCA POIB
	TAD MATRA
	DCA POIC
	TAD OLIST+1
	DCA FILC

KNCKEX,	ISZ KNACK
	JMP I KNACK

CORECT,	0
	0
VFLG,	0
TEMTFB,	EINGS
POID,	0
POIE,	0
FILC2,	0

FLD2,	20
MATRA,	MATRIX
OLIST,	0
	0
	0
	0
BIT,	0
FILC,	0
POIA,	0
REDCNT,	0
TEMTFA,	EMATRX

PAGE /LOESEN EINES GLEICHUNGSSYSTEMS UEBER GF(2) /DURCH ELIMINATION MIT GAUSSCHEM ALGORITHMUS FIELD 2 *3400 GAUSS, 0 /ANZ. DER GLEICHUNGEN IN AC, N<96 DEZ. JMS GAUSNT /INITIALISIERUNG TAD MN IAC /TRANSFORMATION AUF DREIECKSFORM DCA KCNT TAD MATRXA DCA KP TAD EMTRXA DCA KMSK /FROM K:=1 STEP 1 UNTIL N-1 DO LOC1 ////////////////////////////////////////// LOC1, TAD MATRXA CLL CIA TAD KP CLL RAR RTR /K-1 IN AC TAD MN DCA ICNT TAD KP DCA IP /FROM I:=K STEP 1 UNTIL N DO LOC2 ///////////////////////////////////////// LOC2, TAD KMSK DCA P2 TAD IP DCA P1A TAD MW DCA WCNT LOP2A, TAD I P1A AND I P2 SZA CLA JMP LOC3 ISZ P1A ISZ P2 ISZ WCNT JMP LOP2A CLL CLA IAC RTL CLL RAL TAD IP DCA IP ISZ ICNT JMP LOC2 /LOC2 SCHLEIFE FERTIG JMP SINGUL /KEINE EINS IN EINER SPALTE (ODER ZEILE) LOC3, TAD IP DCA LP /EINS IN L-TER ZEILE TAD KP /TAUSCH DER JEWEILS 1. UND L-TEN ZEILE DCA P1A TAD LP DCA P2 TAD MW DCA WCNT LOP3A, TAD I P1A MQL TAD I P2 DCA I P1A ACL DCA I P2 ISZ P1A ISZ P2 ISZ WCNT JMP LOP3A REGUL, CLL CLA IAC RTL CLL RAL TAD KP /MATRIX IST REGULAER DCA IP TAD MATRXA CIA TAD IP CLL RAR RTR TAD MN DCA ICNT /FOR I:=K+1 STEP 1 UNTIL N DO LOC4 /////////////////////////////////////////// LOC4, TAD IP DCA P1A TAD KMSK DCA P2 TAD MW DCA WCNT LOP4A, TAD I P1A AND I P2 /GLEICHUNG BEREITS IM RICHTIGEN FORMAT? SZA CLA /JA JMP LOC4A /NEIN ISZ P1A ISZ P2 ISZ WCNT JMP LOP4A JMP LOC4B LOC4A, TAD IP /FALSCHES FORMAT DCA P2 TAD KP DCA P1A TAD MW DCA WCNT LOP4B, TAD I P1A AND I P2 CIA CLL RAL TAD I P1A TAD I P2 DCA I P2 ISZ P1A ISZ P2 ISZ WCNT JMP LOP4B LOC4B, CLL CLA IAC RTL CLL RAL TAD IP /RICHTIGES FORMAT DCA IP ISZ ICNT JMP LOC4 /LOC4 SCHLEIFE FERTIG CLL CLA IAC RTL CLL RAL TAD KP DCA KP CLL CLA IAC RTL CLL RAL TAD KMSK DCA KMSK ISZ KCNT JMP LOC1 /GESAMT ELIMINATION (LOC1 SCHLEIFE) FERTIG JMP NXTPGE
PAGE NXTPGE, CLA CMA CLL /AUFRECHNUNG DER UNBEKANNTEN TAD PN CLL RAL RTL TAD MATRXA DCA IP /ZEIGER AUF LETZTER MATRIX-ZEILE CLA CMA CLL TAD PN TAD XVKTRA DCA XIP /ZEIGER AUF LETZTER X-KOMPONENTE TAD MN DCA ICNT TAD PN CLL RAL RTL TAD EMTRXA /ZEIGER AUF SPALTE DER RECHTEN SEITE DCA KMSK /FOR I:=N STEP -1 UNTIL N DO LOC6 ////////////////////////////////////////// LOC6, CLA CLL CMA TAD PW TAD IP DCA P1A CLA CLL CMA TAD PW TAD KMSK DCA P2 TAD I P1A AND I P2 SZA CLA IAC DCA S /S:=A INDEX I,N+1 CLL CLA IAC RTL CLL RAL TAD IP DCA JP TAD MATRXA CIA TAD JP CLL RAR RTR /J-1 IN AC TAD MN SMA /1. UNBEKANNTE? JMP LOC8 /JA DCA JCNT /NEIN TAD MATRXA CIA TAD JP NOP CLL RAR RTR /J-1 IN AC MQL ACL TAD XVKTRA DCA XJP ACL CLL RAL RTL TAD EMTRXA DCA JMSK /FOR J:=I+1 STEP 1 UNTIL N DO LOC7 /////////////////////////////////////////// LOC7, TAD IP DCA P1A /BERECHNUNG EINER UNBEKANNTEN TAD JMSK DCA P2 TAD MW DCA WCNT LOP7, TAD I P1A AND I P2 SZA CLA /A INDEX I,J JMP .+6 ISZ P1A ISZ P2 ISZ WCNT JMP LOP7 SKP CLA IAC AND I XJP TAD S AND N1 DCA S /S:=S+A INDEX I,J MAL X INDEX J CLL CLA IAC RTL CLL RAL TAD JMSK DCA JMSK ISZ XJP ISZ JCNT JMP LOC7 /LOC7 SCHLEIFE FERTIG LOC8, TAD S DCA I XIP JMS AUSGAB CLL CLA IAC RTL CLL CIA RAL TAD IP DCA IP CLA CMA TAD XIP DCA XIP ISZ ICNT JMP LOC6 /ENDE AUFRECHNUNG (LOC 6 SCHLEIFE FERTIG) JMP SINGEX PAGE SINGUL, ISZ SINGL SKP ISZ SINGL+1 JMP SINGEX LINE /MATRIX IST SINGULAER TDC 4000+"B 4000+"E 4000+"I 240 SWAB TAD MATRXA CIA TAD KP CLL RAR RTR IAC JMS TOWLZ TDC 4240 4000+"S 4000+"I 4000+"N 4000+"G 4000+"U 4000+"L 4000+"A 4000+"E 4000+"R 240 LINE SINGEX, JMS DELCOR EMATRX P1400 TAD GAUSS DCA GAUSRT CIF CDF 10 JMP I GAUSRT GAUSRT, 0 AUSGAB, 0 JMP AUSLOC CLA TDC 4240 240 SWAB TAD XVKTRA CIA TAD XIP IAC JMS TOWLZ TDC A240, 240 CLL CLA CML RTR BSW TAD A240 TAD S TCHAR AUSLOC, ISZ TCHCNT SKP JMS NXTLIN ISZ TYPC JMP I AUSGAB NOP /LINE CLA TAD TYPN CIA DCA TYPC JMP I AUSGAB TYPN, 10 TYPC, -10 NXTLIN, 0 ISZ REGL SKP CLA ISZ REGL+1 NOP /LINE NOP /LINE TAD MN DCA TCHCNT JMP I NXTLIN TCHCNT, 0 /JMS EMTRXE /ERZEUGUNG EINER (140,140) EINHEITSMATRIX /ADR. DER MATRIX EMTRXE, 0 CLL CLA IAC RTL CLL CIA RAL DCA CNT10 TAD I EMTRXE DCA EPOI ISZ EMTRXE LOPD, CLL CML RAR LOPE, MQL ACL DCA I EPOI CLL CLA IAC RTL CLL RAL TAD EPOI DCA EPOI ACL CLL RAR SZA JMP LOPE ISZ EPOI ISZ CNT10 JMP LOPD JMP I EMTRXE EPOI, 0 CNT10, 0
/JMS DELCOR /DELETES CORE /ADR. OF FIRST WORD /ADR. OF NUMBER OF WORDS DELCOR, 0 /CLA; LINK MODIFIED CLA TAD I DELCOR DCA DELPOI ISZ DELCOR TAD I DELCOR DCA DELCNT TAD I DELCNT CIA DCA DELCNT ISZ DELCOR DCA I DELPOI ISZ DELPOI ISZ DELCNT JMP .-3 JMP I DELCOR DELPOI, 0 DELCNT, 0 PAGE /TAD N /+N IN AC /JMS CALCN /CALCULATES VARIABLES IN CALL-FIELD /LISTADR. /VON +N, -N, +PREC., -PREC. CALCN, 0 /CLL CLA; MQ MODIFIED DCA CALTEM TAD I CALCN DCA CALPOI ISZ CALCN RDF TAD CCIF DCA CRETF TAD CALTEM DCA I CALPOI ISZ CALPOI TAD CALTEM CIA DCA I CALPOI ISZ CALPOI SWBA TAD CALTEM IAC MQL DVI N14, 14 SZA CLA IAC MUY N1, 1 ACL DCA I CALPOI ISZ CALPOI ACL CIA DCA I CALPOI CRETF, 0 JMP I CALCN CALPOI, 0 CALTEM, 0 CCIF, CIF 0 /TAD N /JMS GAUSNT /INITIALISIERUNG VON GAUSS GAUSNT, 0 /CLA; LINK,MQ MODIFIED JMS CALCN NLIST JMS DELCOR XVKTOR P140 JMS DELCOR EMATRX P1400 JMS EMTRXE EMATRX CLA TAD TYPN CIA DCA TYPC TAD MN DCA TCHCNT JMP I GAUSNT /SWAB /TAD OKTNUM /LOAD OKTAL NUMBER /JMS TOWLZ /TYPE OKTAL (TOCT) WITHOUT LEADING ZEROS TOWLZ, 0 /CLA; LINK, MQ MODIFIED MQL CLL CLA IAC RTL CIA DCA TOWCNT TOWLOP, CLA RAR RTR SHL 3 SZA CLL CML SNA SZL TAD N20 TAD N240 ISZ TOWCNT JMP .+5 SNL TAD N20 TCHAR JMP I TOWLZ TCHAR JMP TOWLOP TOWCNT, 0 N20, 20 N240, 240 /SPEICHERORGANISATION *100 REGL, 0;0 SINGL, 0;0 MATRXA, MATRIX EMTRXA, EMATRX XVKTRA, XVKTOR NLIST, PN, 0 MN, 0 PW, 0 MW, 0 KCNT, 0 ICNT, 0 WCNT, 0 KMSK, 0 JMSK, 0 KP, 0 IP, 0 LP, 0 JCNT, 0 JP, 0 P1A, 0 P2, 0 S, 0 XJP, 0 XIP, 0 *3240 MSKVKT, ZBLOCK 140 /LOESUNGSVEKTOR HINEINSTELLEN! ! *4410 MATRIX, ZBLOCK 1400 *6010 EMATRX, ZBLOCK 1400 *7411 XVKTOR, ZBLOCK 140 VKTRA, ZBLOCK 10 VKTRB, ZBLOCK 10 P140, 140 P1400, 1400



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