$E909/59657: Send data Jump from $E8F7: E909: 78 SEI E90A: 20 EB D0 JSR $D0EB ; open channel for read E90D: B0 06 BCS $E915 ; channel active Jump from $E996: E90F: A6 82 LDX $82 ; channel number E911: B5 F2 LDA $F2,X ; set READ flag? E913: 30 01 BMI $E916 ; yes Jump from $E90D: E915: 60 RTS Jump from $E913: E916: 20 59 EA JSR $EA59 ; check EOI E919: 20 C0 E9 JSR $E9C0 ; read IEEE port E91C: 29 01 AND #$01 ; isolate data bit E91E: 08 PHP ; and save E91F: 20 B7 E9 JSR $E9B7 ; CLOCK OUT lo E922: 28 PLP E923: F0 12 BEQ $E937 Jump from $E92D: E925: 20 59 EA JSR $EA59 ; check EOI E928: 20 C0 E9 JSR $E9C0 ; read IEEE port E92B: 29 01 AND #$01 ; isolate data bit E92D: D0 F6 BNE $E925 E92F: A6 82 LDX $82 ; channel number E931: B5 F2 LDA $F2,X E933: 29 08 AND #$08 E935: D0 14 BNE $E94B Jump from $E923, $E93F: E937: 20 59 EA JSR $EA59 ; check EOI E93A: 20 C0 E9 JSR $E9C0 ; read IEEE port E93D: 29 01 AND #$01 ; isolate data bit E93F: D0 F6 BNE $E937 Jump from $E949: E941: 20 59 EA JSR $EA59 ; check EOI E944: 20 C0 E9 JSR $E9C0 ; read IEEE port E947: 29 01 AND #$01 ; isolate data bit E949: F0 F6 BEQ $E941 Jump from $E935, $E956: E94B: 20 AE E9 JSR $E9AE ; CLOCK OUT hi E94E: 20 59 EA JSR $EA59 ; check EOI E951: 20 C0 E9 JSR $E9C0 ; read IEEE port E954: 29 01 AND #$01 ; isolate data bit E956: D0 F3 BNE $E94B E958: A9 08 LDA #$08 ; counter to 8 bits for serial E95A: 85 98 STA $98 ; transmission Jump from $E985: E95C: 20 C0 E9 JSR $E9C0 ; read IEEE port E95F: 29 01 AND #$01 ; isolate data bit E961: D0 36 BNE $E999 E963: A6 82 LDX $82 E965: BD 3E 02 LDA $023E,X E968: 6A ROR ; lowest data bit in carry E969: 9D 3E 02 STA $023E,X E96C: B0 05 BCS $E973 ; set bit E96E: 20 A5 E9 JSR $E9A5 ; DATA OUT, output bit '0' E971: D0 03 BNE $E976 ; absolute jump Jump from $E96C: E973: 20 9C E9 JSR $E99C ; DATA OUT, output bit '1' Jump from $E971: E976: 20 B7 E9 JSR $E9B7 ; set CLOCK OUT E979: A5 23 LDA $23 E97B: D0 03 BNE $E980 E97D: 20 F3 FE JSR $FEF3 ; delay for serial bus Jump from $E97B: E980: 20 FB FE JSR $FEFB ; set DATA OUT and CLOCK OUT E983: C6 98 DEC $98 ; all bits output? E985: D0 D5 BNE $E95C ; no Jump from $E98F: E987: 20 59 EA JSR $EA59 ; check EOI E98A: 20 C0 E9 JSR $E9C0 ; read IEEE port E98D: 29 01 AND #$01 ; isolate data bit E98F: F0 F6 BEQ $E987 E991: 58 CLI E992: 20 AA D3 JSR $D3AA ; get next data byte E995: 78 SEI E996: 4C 0F E9 JMP $E90F ; and output Jump from $E961: E999: 4C 4E EA JMP $EA4E ; to delay loop Previous Page / Next Page |