10 ;K1050V.M65 8/02/86 PIO4720 ;K1050Q.M65 7/28/8630 ;K1050L.M65 7/26/8640 ;50 PORTA = $0C0060 PACTL = $0C0170 PORTB = $0C0280 PBCTL = $0C0390 ;0100 *= $50840110 LDA #$00 ;SETUP DIR REGS0120 STA PACTL0130 STA PBCTL0140 STA PORTA ;PA INPUT0150 LDA #$FF0160 STA PORTB ;PB OUTPUT0170 BNE SKIP ;JUMP OVER BRK0180 .BYTE $00,$00,$00,$000190 SKIP LDA #$240200 STA PACTL0210 LDA #$2C0220 STA PBCTL0230 BIT PORTA ;CLR IRBA10240 BIT PORTB ;CLR IRQB10250 JMP $F0B4 ;RESUME 10500260 ;0270 *= $52BC0280 JSR GETCMDFRM0290 ;0300 *= $52E00310 JSR GETDATAFRM0320 ;0330 *= $53700340 JSR SENDONE0350 ;0360 *= $53760370 JSR SENDONE0380 ;0390 *= $537C0400 JSR SENDONE0410 ;0420 *= $53820430 JSR SENDONE0440 ;0450 *= $53860460 SENDDATAFRM LDA #$800470 STA $920480 LDX #$000490 SENDSIOFRM LDA #$000510 LP1 LDY $00,X0520 BIT PORTB ;CLR IRQB10530 STY PORTB ;WRITE DATA0540 EOR $00,X0550 LP2 BIT PBCTL ;RD PA?0560 BPL LP20570 INX ;NEXT BYTE0580 DEC $920590 BNE LP10610 TAY ;XFER CKSUM0620 SENDONE BIT PORTB ;CLR IRQB10630 STY PORTB0640 LP3 BIT PBCTL ;RD PA?0650 BPL LP30660 RTS 0670 ;0680 GETCMDFRM LDA #$040690 STA $920700 LDX #$800710 LDA #$FF0720 JSR $F5C4 ;SET TIMER0730 LDA #$000750 LP4 BIT $0280 ;TIMEOUT?0760 BVC TIMOUT0770 BIT PACTL ;WRT PB?0780 BPL LP40790 LDY PORTA ;READ DATA0800 STY $00,X0810 EOR $00,X0820 INX 0830 DEC $920840 BNE LP40860 LP5 BIT PACTL ;WRT PB?0870 BPL LP50880 LDY PORTA ;READ CKSUM0890 STY $00,X0900 STA $B10910 EOR $00,X ;TEST CKSUM0920 BEQ OKSUM0930 TIMOUT LDA #$40 ;XFER ERROR0940 OKSUM STA $910950 LDA $02960960 RTS 0970 ;0980 GETDATAFRM LDA #$800990 STA $921000 LDX #$001010 LDA #$001030 LP7 BIT PACTL ;WRT PB?1040 BPL LP71050 LDY PORTA ;READ DATA1060 STY $00,X1070 EOR $00,X1080 INX 1090 DEC $921100 BNE LP71120 LP8 BIT PACTL ;WRT PB?1130 BPL LP81140 LDY PORTA ;READ CKSUM1150 STY $00,X1160 STA $B11170 EOR $00,X ;TEST CKSUM1180 BEQ GOODSUM1190 LDA #$40 ;CKSUM ERROR1200 GOODSUM STA $911210 LDA $02961220 RTS 1230 ;1240 *= $54C01250 JMP SENDDATAFRM1260 ;1270 *= $56FE1280 JMP SENDSIOFRM1290 ;1300 *= $572A1310 JMP SENDDATAFRM1320 ;1330 *= $5EF91340 JMP SENDDATAFRM1350 ;1360 ; CPU DRIVE1370 ;1380 ; <========DATA DIRECTION1390 ;1400 ; *DWRT CA1<--------CB2 WRT PB1410 ; RD PA CA2-------->CB1 *CBZY1420 ;1430 ;1440 ;DATA DIRECTION=======>1450 ;1460 ;WRT PB CB2-------->CA1 *CWRT1470 ;*DBZY CB1<--------CA2 RD PA1480 ;1490 ;