 NAM TAPWRT-1
*SWTPC Cassette Test Tape Generator 

OUTEEE EQU $E1D1
PDATA1 EQU $E07E

 ORG $A014
START LDX #OFF
 JSR PDATA1
 LDA A #$0F
 BSR DELAY
 LDA B #$40
LOOP2 TBA
 JSR OUTEEE
 INC B 
 CMP B #$60
 BNE LOOP2
 LDA A #$14 (record off)
 JSR OUTEEE
 LDA A #$08
 BSR DELAY
 BRA START

 ORG $A048
 FDB START
TMP RMB 3

DELAY LDX #TMP
 CLR 0,X
 CLR 1,X
 CLR 2,X 
LOOP3 INC 0,X
 BPL LOOP3
 CLR 0,X
 INC 1,X
 BPL LOOP3
 CLR 1,X
 INC 2,X
 CMP A 2,X
 BNE LOOP3
 RTS
OFF FCB $13,$12,$04

 END

 NAM TAPRED-1
* SWTPC Cassette Tape Read Diagnostic 

OUTEEE EQU $E1D1
INEEE  EQU $E1AC

 ORG $A014
TMP RMB 3
DELOUT LDA B #$02
 LDX #TMP 
 CLR 0,X
 CLR 1,X
 CLR 2,X
LOOPA INC 0,X
 BPL LOOPA
 CLR 0,X
 INC 1,X
 BPL LOOPA
 CLR 1,X
 INC 2,X
 CMP B 2,X
 BNE LOOPA
 JSR OUTEEE
 RTS

 ORG $A048
 FDB START
START LDA A #$3C
 STA A $8007
 LDA A #$11 (read on)
 JSR OUTEEE
REDO LDA B #'@
LOOP1 JSR INEEE
 CBA
 BNE LOOP1

LOOP2 INC B
 CMP B #$60
 BEQ RECOFF

CYCLE JSR INEEE
 CBA
 BNE ERROR
 BRA LOOP2

RECOFF LDA B #$14
 JSR INEEE
 CBA
 BNE ERROR
 LDA A #'/
 BSR DELOUT
 LDA B #'@
 BRA CYCLE

ERROR LDA A #'X
 BSR DELOUT
 BRA REDO

 END


 NAM FIVPNT-1
* SWTPC 6800 Calibrate Tape Generator Program 

PDATA1 EQU $E07E

 ORG $A048
 FDB START
STR5 FCB $13,$12,$7F,$35,$04

START LDX #STR5
LOOP1 JSR PDATA1 
 DEX
 DEX
 BRA LOOP1

 END




               