Anda di halaman 1dari 2

AppleSnd - simple "1-bit" speech recording/playback,

based on Apple II cassette port.

Written in 6502 assembly language, for the Apple II computer.

Program consists of a Record routine, and a Playback routine, as


follows:-

2000 4C 35 20 JMP $2035 (PLAYBK)


2003 A2 00 RECORD:LDX #$00 POINT TO START OF MEMORY AREA
2005 86 18 STX $18
2007 A9 21 LDA #$21
2009 85 19 STA $19
200B A0 07 LDY #$07 BIT COUNTER
200D AD 60 C0 LDA $C060 GET CASSETTE I/P IN BIT 7
2010 48 PHA
2011 45 1A EOR $1A HAS IT CHANGED?
2013 10 03 BPL $2018 NO
2015 8D 30 C0 STA $C030 TOGGLE SPEAKER
2018 68 PLA
2019 0A ASL SHIFT INTO CARRY
201A 66 1A ROR $1A FORM THE BYTE
201C A2 0C LDX #$0C DELAY
201E CA DEX LOOP
201F D0 FD BNE $201E ...
2021 88 DEY
2022 10 E9 BPL $200D NOT YET 8 BITS
2024 A5 1A LDA $1A
2026 81 18 STA ($18,X) SAVE THE WORD
2028 E6 18 INC $18 INC POINTER
202A D0 DF BNE $200B TO MEMORY BLOCK
202C E6 19 INC $19
202E A9 40 LDA #$40
2030 C5 19 CMP $19 MEMORY FULL?
2032 D0 D7 BNE $200B NOT YET FULL
2034 60 RTS FINISHED

--------------------------------------------------------
--------------------------------------------------------
2035 A2 00 PLAYBK:LDX #$00 SET UP POINTER
2037 86 18 STX $18
2039 A9 21 LDA #$21
203B 85 19 STA $19
203D A0 07 LDY #$07 BITS/WORD
203F A5 18 LDA $1B
2041 48 PHA
2042 45 1A EOR $1A
2044 29 01 AND #$01 HAS BIT CHANGED?
2046 F0 03 BEQ $204B NO
2048 8D 30 C0 STA $C030 YES - TOGGLE SPEAKER
204B 68 PLA
204C 85 1A STA $1A
204E A2 08 LDX #$08 TIMING
2050 CA DEX LOOP
2051 D0 FD BNE $2050 ...
2053 46 1B LSR $1B
2055 88 DEY
2056 10 E7 BPL $203F MORE BITS TO GO
2058 A1 18 LDA ($18,X) GET NEXT WORD
205A 85 1B STA $1B
205C E6 18 INC $18 INC
205E D0 DD BNE $203D COUNTER
2060 E6 19 INC $19 ...
2062 A9 40 LDA #$40 END OF
2064 C5 19 CMP $19 MEMORY?
2066 D0 D5 BNE $203D NO - CONTINUE
2068 F0 CB BEQ $2035 YES - PLAY ALL
OVER AGAIN

--------------------------------------------------------

End

Anda mungkin juga menyukai