High Speed Reader

The High speed Reader is a parallel interface, with handshaking.
Typical tetetype age equipment!

It is activated with the .H command (toggle switch)

8 parallel data connected to Port A.

Used in LH command to read from High Speed Reader instead of serial input.

0659   733D AD 02 6E    RDHSR  LDA MPB           ; LOOP ON DATA AVAIL
0660   7340 29 08              AND #DAVAIL
0661   7342 F0 F9              BEQ RDHSR
0662   7344             ;
0663   7344 AE 00 6E           LDX MPA           ; READ DATA
0664   7347 AD 02 6E           LDA MPB           ; SEND GOT-DATA PULSE
0665   734A 09 04              ORA #GOTDAT
0666   734C 8D 02 6E           STA MPB
0667   734F 29 FB              AND #%11111011
0668   7351 8D 02 6E           STA MPB
0669   7354 8A                 TXA
0670   7355 29 7F              AND #$7F
0671   7357 60                 RTS

0381   716F E6 E8       HSP    INC HSROP         ; TOGGLE BIT C
0382   7171 4C 86 70           JMP START

0598   72E9             ;
0599   72E9             ;  OUTPUT  RETURNS CHAR IN A
0600   72E9             ;
0601   72E9 A5 E7       RDT    LDA HSPTR         ; TEST HS PTR OPTION
0602   72EB 4A                 LSR A
0603   72EC B0 4F              BCS RDHSR

0383   7174             ;
0384   7174 20 E9 72    LH     JSR RDOC          ; READ SECOND CMD CHAR
0385   7177 20 8A 72           JSR CRLF
0386   717A A6 E8              LDX HSROP         ; ENABLE HSR OPTION IF SET
0387   717C 86 E7              STX HSPTR
0388   717E 20 E9 72    LH1    JSR RDOC        

0397   718F A2 00              LDX #0            ; CLEAR HS RDR FLAG
0398   7191 86 E7              STX HSPTR
0399   7193 F0 9F              BEQ BEQS1       

What is happening here?

RDHSR

  • PB3 is input DAT-Avail is a strobe, made high by the reader if data is available (659-661).
  • PB2 is output GOT-Data. made high to indicate the data has been read into X (664-668) and cleared (667-668)
  • The reader should end the strobe if GOT_Data is strobed.
  • 8 bits are read in X, transferred to A, the highest bit is stripped of (670-671)

HSP

    When .H is entered the HSROP flag is incremented, as toggle switch, odd is enabled (381 -382)

RDT = RDOC

    Check if odd, then branch to RDHSR read high speed reader)