Apple II Manuale Utente
0914 E569 D0 03 BNE *+5
0915 E56B EE 07 01 INC S2+1
0916 E56E 60 RTS
0916 E56E 60 RTS
0917 E56F
0918 E56F ;OPEN A FILE FOR OUTPUT TO TAPE BY BLOCKS
0918 E56F ;OPEN A FILE FOR OUTPUT TO TAPE BY BLOCKS
0919 E56F ;OUTPUT FILENAME GIVEN BY JSR WHEREO TO TAPE BUFF
0920 E56F A2 00 DUMPTA LDX #0 ;INITIALIZE TAPTR
0920 E56F A2 00 DUMPTA LDX #0 ;INITIALIZE TAPTR
0921 E571 8A TXA ;TO OUTPUT
0922 E572 8E 68 01 STX BLKO ;BLOCK COUNTER
0922 E572 8E 68 01 STX BLKO ;BLOCK COUNTER
0923 E575 8E 37 A4 STX TAPTR2 ;TAP OUTPUT BUFF PTR
0924 E578 20 8B F1 JSR TOBYTE ;TWO START OF FILE CHRS
0924 E578 20 8B F1 JSR TOBYTE ;TWO START OF FILE CHRS
0925 E57B BD 2E A4 DUMPT1 LDA NAME,X ;OUTPUT FILENAME
0926 E57E 20 8B F1 JSR TOBYTE
0926 E57E 20 8B F1 JSR TOBYTE
0927 E581 E8 INX
0928 E582 E0 05 CPX #5
0928 E582 E0 05 CPX #5
0929 E584 D0 F5 BNE DUMPT1 ;5 FILENAME CHRS ?
0930 E586 60 RTS
0930 E586 60 RTS
0931 E587
0932 E587 ;DUMP ROUTINE TO TAPE WITH KIM-1 FORMAT
0932 E587 ;DUMP ROUTINE TO TAPE WITH KIM-1 FORMAT
0933 E587 20 1D F2 DUMPKI JSR TAOSET ;SET TAPE FOR OUTPUT
0934 E58A A9 2A LDA #'*' ;TO EITHER 1 OR 2
0934 E58A A9 2A LDA #'*' ;TO EITHER 1 OR 2
0935 E58C 20 4A F2 JSR OUTTAP ;DIRECTLY TO TAPE
0936 E58F ;ID FROM LAST 2 CHRS OF FILENAME
0936 E58F ;ID FROM LAST 2 CHRS OF FILENAME
0937 E58F 20 25 E4 JSR GETID
0938 E592 20 3B E5 JSR OUTCK1
0938 E592 20 3B E5 JSR OUTCK1
0939 E595 20 4D EB JSR CLRCK
0940 E598 ;STARTING ADDR
0940 E598 ;STARTING ADDR
0941 E598 AD 1A A4 LDA S1
0942 E59B 20 38 E5 JSR OUTCK ;WITH CHCKSUM
0942 E59B 20 38 E5 JSR OUTCK ;WITH CHCKSUM
0943 E59E AD 1B A4 LDA S1+1
0944 E5A1 20 38 E5 JSR OUTCK
0944 E5A1 20 38 E5 JSR OUTCK
0945 E5A4 ;OUTPUT DATA
0946 E5A4 20 31 E5 DUK2 JSR OUTCKS ;OUTPUT CHR SPECIFIED BY S1+1,S1
0946 E5A4 20 31 E5 DUK2 JSR OUTCKS ;OUTPUT CHR SPECIFIED BY S1+1,S1
0947 E5A7 20 5D E5 JSR ADDS1 ;INCREM S1+1,S1
0948 E5AA AD 1A A4 LDA S1 ;CHCK FOR LAST BYTE
0948 E5AA AD 1A A4 LDA S1 ;CHCK FOR LAST BYTE
0949 E5AD CD 1C A4 CMP ADDR ;LSB OF END ADDR
0950 E5B0 AD 1B A4 LDA S1+1
0950 E5B0 AD 1B A4 LDA S1+1
0951 E5B3 ED 1D A4 SBC ADDR+1
0952 E5B6 90 EC BCC DUK2 ;NEXT CHR
0952 E5B6 90 EC BCC DUK2 ;NEXT CHR
0953 E5B8 ;NOW SEND END CHR "/"
0954 E5B8 A9 2F LDA #'/'
0954 E5B8 A9 2F LDA #'/'
0955 E5BA 20 4A F2 JSR OUTTAP ;DIRECTLY TO TAPE
0956 E5BD ;CHECKSUM
0956 E5BD ;CHECKSUM
0957 E5BD AD 1E A4 LDA CKSUM
0958 E5C0 20 46 EA JSR NUMA ;ASCII REPRES
0958 E5C0 20 46 EA JSR NUMA ;ASCII REPRES
0959 E5C3 AD 1F A4 LDA CKSUM+1
0960 E5C6 20 46 EA JSR NUMA
0960 E5C6 20 46 EA JSR NUMA
0961 E5C9 ;TWO EOT CHRS
0962 E5C9 A9 04 LDA #$04
0962 E5C9 A9 04 LDA #$04
0963 E5CB 20 4A F2 JSR OUTTAP
0964 E5CE 20 4A F2 JSR OUTTAP
0964 E5CE 20 4A F2 JSR OUTTAP
0965 E5D1 ;TURN TAPES ON
0966 E5D1 4C 20 E5 JMP DU13
0966 E5D1 4C 20 E5 JMP DU13
0967 E5D4
0968 E5D4 ;***** * COMMAND-ALTER PROGRAM COUNTER *****
0968 E5D4 ;***** * COMMAND-ALTER PROGRAM COUNTER *****
0969 E5D4 20 AE EA CGPC JSR ADDIN ;ADDR <=ADDRESS ENTERED FROM KB
0970 E5D7 20 DD E5 CGPC0 JSR CGPC1 ;TRANSFER ADDR TO SAVPC
0970 E5D7 20 DD E5 CGPC0 JSR CGPC1 ;TRANSFER ADDR TO SAVPC
0971 E5DA 4C 13 EA JMP CRLOW
0972 E5DD AD 1D A4 CGPC1 LDA ADDR+1 ;THIS WAY MNEMONICS CAN USE IT
0972 E5DD AD 1D A4 CGPC1 LDA ADDR+1 ;THIS WAY MNEMONICS CAN USE IT
0973 E5E0 8D 26 A4 STA SAVPC+1
0974 E5E3 AD 1C A4 LDA ADDR
0974 E5E3 AD 1C A4 LDA ADDR
0975 E5E6 8D 25 A4 STA SAVPC