/RAM16K TEST FUER BESTRAHLUNG MIT ALPHA-TEILCHEN /EINSCHREIBEN, VERIFIZIEREN, AUSLESEN /WENN FEHLER AUFTRETEN NEU EINSCHREIBEN *50 ERRADR, 0 RDZYL, 0 DEVCTR, 4001 *1200 WE=10 TRIG=40 DOUT=7700 DI=20 INIT, SWAB CLA DCA ERRADR DCA RDZYL DCA ZYLCTL DCA ZYLCTH CAM DST FELCTR INIT1, CAM DST ADRCTR CLA DCA NULLFG DCA ERRFLG IAC DCA WRFLAG CLEAR TRIG SET WE CLEAR WE /****** EINSCHREIBEN INS DEVICE ******** RAMIN, CAM DAD /BERECHNEN DER ADRESSE ADRCTR JMS ADRMOD CLA TAD ADRLOW AND MASK7 /BIT 7 BESTIMMT AUSGABE VON 0 ODER 1 SZA CLA JMP ONEIN JMP ZEROIN RAMINS, NOP OUTDA, 0 /AUSGEBEN DER NULL ODER EINS DI JMS ADRPUT /ANLEGEN DER ADRESSEN LOW UND HIGH JMS ADRLOP /EINLESEN BEENDET? CLA TAD NULLFG /EINLESEN BEENDET FLAG=0 SZA CLA JMP RAMIN JMP RAMOUT /******** AUSLESEN AUS DEVICE ******** RAMOUT, SET WE DCA NULLFG CAM DST ADRCTR RMOUT, CAM DAD ADRCTR JMS ADRMOD /BERECHNEN DER ADRESSEN LOW UND HIGH CLA TAD ADRLOW AND MASK7 SZA CLA JMP ONEOUT JMP ZEROUT RMOUTS, JMS ADRPUT /ANLEGEN DER ADRESSEN INPUT /AUSLESEN DER DATEN AUS DEM RAM AND DOMASK ERRSKP, 0 /SKIP WIRD VOM PROGRAMM AUSGETAUSCHT JMS INERR JMS ADRLOP CLA TAD NULLFG /AUSLESEN BEENDET FLAG=0 SZA CLA JMP RMOUT DCA WRFLAG ISZ ZYLCTL SKP ISZ ZYLCTH NOP CLA /NEU EINSCHREIBEN NACH FEHLER TAD ERRFLG SZA CLA JMP INIT1 JMP RAMOUT MOSTGO ADRCTR, 0;0 DOMASK, DOUT NULLFG, 0 MASK7, 100 ZYLCTL, 0 ZYLCTH, 0 ERRFLG, 0 PAGE ZEROIN, CLA /INPUT 0 TAD CLEARP DCA OUTDA JMP RAMINS ZEROUT, CLA /OUTPUT 0 TAD SKP1 DCA ERRSKP JMP RMOUTS ONEIN, CLA /INPUT 1 TAD SETP DCA OUTDA JMP RAMINS ONEOUT, CLA /OUTPUT 1 TAD SKP0 DCA ERRSKP JMP RMOUTS ADRMOD, 0 /BERECHNEN DER ADRESSEN SHL /ADRESSE HIGH IN MQ, ADRESSE LOW IN ACC 5 DCA ADRHGH LSR 5 SWP DCA ADRLOW JMP I ADRMOD ADRPUT, 0 CLA TAD ADRLOW /OUTPUT VON LOW ADDRESS OUTPUT NPULSE TRIG TAD ADRHGH OUTPUT /OUTPUT VON HIGH ADDRESS JMP I ADRPUT ADRLOP, 0 /ALLE ADRESSEN ABGEARBEITET? CAM DAD ADRCTR DPIC DST ADRCTR DCM DAD RMSIZE DPSZ JMP READAG DCA NULLFG JMP I ADRLOP READAG, CLA IAC DCA NULLFG JMP I ADRLOP ADRHGH, 0 ADRLOW, 0 SKP0, 7440 SKP1, 7450 CLEARP, CLEAR SETP, SET RMSIZE, 0;4 /RAMSIZE 3 7777 /HIGH ADDRESS 177, LOW ADDRESS 177 WRFLAG, 0 PAGE INERR, 0 /ZAEHLEN DER FEHLER DCA DEVNUM CLA TAD WRFLAG SZA CLA JMP WRVR ISZ FELCTR CLA TAD FELCTR SNA CLA ISZ FELCTR+1 CLA IAC DCA ERRFLG TAD ADRHGH /ABSPEICHERN DER FEHLERHAFTEN ADRESSE CDF 10 DCA I ERRADR CDF 0 ISZ ERRADR NOP TAD ADRLOW CDF 10 DCA I ERRADR CDF 0 ISZ ERRADR NOP TAD ZYLCTH /ABSPEICHERN DES LESEDURCHGANGS CDF 20 DCA I RDZYL CDF 0 ISZ RDZYL NOP TAD ZYLCTL CDF 20 DCA I RDZYL CDF 0 ISZ RDZYL TAD DEVNUM CDF 10 DCA I DEVCTR CDF 0 ISZ DEVCTR TAD DEVCTR CIA TAD FLDEND SZA CLA JMP I INERR DCA ERRADR DCA RDZYL TAD STRDEV DCA DEVCTR JMP I INERR WRVR, CLA IAC DCA ERRFLG TDC 4327 4322 4326 322 LINE JMP I INERR DEVNUM, 0 FLDEND, 6000 STRDEV, 4001 PAGE FELPRT, TDC 4306 4305 4310 4314 4305 4322 240 CLA DCA ERRADR DCA RDZYL TAD STRDEV DCA DEVCTR CAM DAD FELCTR TOCT SWP TOCT LINE ERRPRT, MOSTSR CDF 10 TAD I ERRADR CDF 0 TOCT ISZ ERRADR NOP CDF 10 TAD I ERRADR CDF 0 TOCT ISZ ERRADR NOP TDC 240 CDF 20 TAD I RDZYL CDF 0 TOCT ISZ RDZYL NOP CDF 20 TAD I RDZYL CDF 0 TOCT ISZ RDZYL TDC 240 CDF 10 TAD I DEVCTR CDF 0 ISZ DEVCTR CLL RAL SNL JMP DEV2 TDC 4261 240 DEV2, CLL RAL SNL JMP DEV3 TDC 4262 240 DEV3, CLL RAL SNL JMP DEV4 TDC 4263 240 DEV4, CLL RAL SNL JMP DEV5 TDC 4264 240 DEV5, CLL RAL SNL JMP DEV6 TDC 4265 240 DEV6, CLL RAL SNL JMP ERREND TDC 4266 ERREND, LINE JMP ERRPRT MOSTGO FELCTR, 0;0