00000000: AA 00 30 43 33 CE 00 10 89 10 10 3B 20 20 20 20 |..0C3......; |
00000010: 20 2B 2B 2B 2B 2B 20 55 41 52 54 20 4F 55 54 50 | +++++ UART OUTP|
00000020: 55 54 20 2B 2B 2B 2B AB 20 10 89 30 10 55 41 52 |UT ++++. ..0.UAR|
00000030: 54 2E 4F 55 54 20 50 48 D0 40 10 20 53 45 C9 50 |T.OUT PH.@. SE.P|
00000040: 10 20 4A 53 52 20 55 41 52 54 2E 4F 55 54 B1 60 |. JSR UART.OUT.`|
00000050: 10 20 50 4C 50 20 3B 52 45 53 54 4F 52 45 20 50 |. PLP ;RESTORE P|
00000060: 53 52 20 41 4E 44 20 52 45 54 55 52 CE 70 10 20 |SR AND RETUR.p. |
00000070: 52 54 D3 80 10 89 90 10 55 41 52 54 2E 4F 55 54 |RT......UART.OUT|
00000080: 31 20 50 48 41 20 09 09 3B 53 41 56 45 20 43 48 |1 PHA ..;SAVE CH|
00000090: 41 52 AE 00 11 20 45 4F 52 20 23 24 46 46 20 3B |AR... EOR #$FF ;|
000000A0: 49 4E 56 45 52 D4 10 11 20 50 48 C1 20 11 20 4C |INVER... PH. . L|
000000B0: 44 58 20 23 31 31 20 3B 31 31 20 42 49 54 53 3A |DX #11 ;11 BITS:|
000000C0: 20 20 31 20 53 54 4F 50 2C 20 38 20 44 41 54 41 | 1 STOP, 8 DATA|
000000D0: 2C 20 32 20 53 54 4F D0 30 11 20 53 45 C3 40 11 |, 2 STO.0. SE.@.|
000000E0: 4C 50 2E 55 4F 55 54 20 4A 53 52 20 42 49 54 2E |LP.UOUT JSR BIT.|
000000F0: 4F 55 54 20 3B 42 49 54 20 54 4F 20 50 4F 52 D4 |OUT ;BIT TO POR.|
00000100: 50 11 20 4A 53 52 20 44 4C 59 46 55 4C 4C 20 3B |P. JSR DLYFULL ;|
00000110: 44 45 4C 41 59 20 46 55 4C 4C 20 42 49 54 20 54 |DELAY FULL BIT T|
00000120: 49 4D C5 60 11 20 50 4C 41 20 3B 52 45 53 54 4F |IM.`. PLA ;RESTO|
00000130: 52 45 20 52 28 41 A9 70 11 20 4C 53 52 20 41 20 |RE R(A.p. LSR A |
00000140: 3B 4E 45 58 54 20 42 49 D4 80 11 20 50 48 41 20 |;NEXT BI... PHA |
00000150: 3B 41 4E 44 20 53 41 56 C5 90 11 20 44 45 D8 00 |;AND SAV... DE..|
00000160: 12 20 42 4E 45 20 4C 50 2E 55 4F 55 54 20 3B 4C |. BNE LP.UOUT ;L|
00000170: 4F 4F D0 10 12 20 50 4C 41 20 09 09 3B 52 45 4D |OO... PLA ..;REM|
00000180: 4F 56 45 20 4A 55 4E CB 20 12 20 50 4C 41 20 3B |OVE JUN. . PLA ;|
00000190: 52 45 53 54 4F 52 45 20 43 48 41 52 AE 30 12 20 |RESTORE CHAR.0. |
000001A0: 41 4E 44 20 23 24 37 46 20 3B 43 4C 45 41 52 20 |AND #$7F ;CLEAR |
000001B0: 42 49 54 20 B7 40 12 20 43 4D 50 20 23 24 30 44 |BIT .@. CMP #$0D|
000001C0: 20 3B 43 D2 50 12 20 42 45 51 20 50 41 44 2E 44 | ;C.P. BEQ PAD.D|
000001D0: 45 CC 60 12 20 43 4D 50 20 23 24 30 41 20 3B 4C |E.`. CMP #$0A ;L|
000001E0: C6 70 12 20 42 45 51 20 50 41 44 2E 44 45 CC 80 |.p. BEQ PAD.DE..|
000001F0: 12 20 52 54 D3 90 12 89 00 13 50 41 44 2E 44 45 |. RT......PAD.DE|
00000200: 4C 58 20 50 48 C1 10 13 20 43 50 58 20 23 30 B0 |LX PH... CPX #0.|
00000210: 20 13 20 4A 4D 50 20 50 41 44 2E 44 45 4C 45 CE | . JMP PAD.DELE.|
00000220: 30 13 BB 40 13 50 41 44 2E 44 45 4C 20 50 48 41 |0..@.PAD.DEL PHA|
00000230: 20 3B 50 52 45 53 45 52 56 C5 50 13 20 4C 44 58 | ;PRESERV.P. LDX|
00000240: 20 4E 4F 2E 50 41 44 42 49 54 53 20 3B 47 45 54 | NO.PADBITS ;GET|
00000250: 20 23 20 4F 46 20 50 41 44 20 42 49 54 D3 60 13 | # OF PAD BIT.`.|
00000260: 50 41 44 2E 44 45 4C 45 4E 20 42 45 51 20 45 58 |PAD.DELEN BEQ EX|
00000270: 2E 44 45 4C 20 3B 53 4B 49 50 20 49 46 20 5A 45 |.DEL ;SKIP IF ZE|
00000280: 52 CF 70 13 4C 50 2E 50 44 45 4C 20 4A 53 52 20 |R.p.LP.PDEL JSR |
00000290: 44 4C 59 46 55 4C 4C 20 3B 44 45 4C 41 D9 80 13 |DLYFULL ;DELA...|
000002A0: 20 44 45 D8 90 13 20 42 4E 45 20 4C 50 2E 50 44 | DE... BNE LP.PD|
000002B0: 45 4C 20 3B 4C 4F 4F D0 00 14 45 58 2E 44 45 4C |EL ;LOO...EX.DEL|
000002C0: 20 50 4C 41 20 3B 52 45 53 54 4F 52 C5 10 14 20 | PLA ;RESTOR... |
000002D0: 52 54 D3 20 14 89 30 14 42 49 54 2E 4F 55 54 20 |RT. ..0.BIT.OUT |
000002E0: 4C 44 41 20 50 49 41 2E 50 4F 52 54 20 3B 50 55 |LDA PIA.PORT ;PU|
000002F0: 54 20 42 49 D4 40 14 20 41 4E 44 20 23 24 46 46 |T BI.@. AND #$FF|
00000300: 2D 4D 53 4B 2E 4F 55 D4 50 14 20 42 43 43 20 53 |-MSK.OU.P. BCC S|
00000310: 4B 50 2E 42 4F 55 D4 60 14 20 4F 52 41 20 23 4D |KP.BOU.`. ORA #M|
00000320: 53 4B 2E 4F 55 D4 70 14 53 4B 50 2E 42 4F 55 54 |SK.OU.p.SKP.BOUT|
00000330: 20 53 54 41 20 50 49 41 2E 50 4F 52 D4 80 14 20 | STA PIA.POR... |
00000340: 52 54 D3 90 14 89 00 15 89 2E |RT........ |
..0C3N.....; +++++ UART OUTPUT ++++.
..0.UART.OUT PHP@. SEIP. JSR UART.OUT.`
. PLP ;RESTORE PSR AND RETURNP. RTS.....
UART.OUT1 PHA ..;SAVE CHAR... EOR #$FF ;
INVERT.. PHA . LDX #11 ;11 BITS: 1 STOP
, 8 DATA, 2 STOP0. SEC@.LP.UOUT JSR BIT.
OUT ;BIT TO PORTP. JSR DLYFULL ;DELAY FU
LL BIT TIME`. PLA ;RESTORE R(A.P. LSR A
;NEXT BIT.. PHA ;AND SAVE.. DEX.. BNE LP
.UOUT ;LOOP.. PLA ..;REMOVE JUNK . PLA ;
RESTORE CHAR.0. AND #$7F ;CLEAR BIT .@.
CMP #$0D ;CRP. BEQ PAD.DEL`. CMP #$0A ;L
FP. BEQ PAD.DEL.. RTS.....PAD.DELX PHA..
CPX #0. . JMP PAD.DELEN0..@.PAD.DEL PHA
;PRESERVEP. LDX NO.PADBITS ;GET # OF PA
D BITS`.PAD.DELEN BEQ EX.DEL ;SKIP IF ZE
ROP.LP.PDEL JSR DLYFULL ;DELAY.. DEX.. B
NE LP.PDEL ;LOOP..EX.DEL PLA ;RESTORE..
RTS ..0.BIT.OUT LDA PIA.PORT ;PUT BIT@.
AND #$FF-MSK.OUTP. BCC SKP.BOUT`. ORA #M
SK.OUTP.SKP.BOUT STA PIA.PORT.. RTS.....
..
×
C64 Image
> CLICK IMAGE PREVIEW FOR FULL MODAL