Home » Archimedes archive » Micro User » MU 1991-08.adf » Listings » Arc/I2CTracer
Arc/I2CTracer
This website contains an archive of files for the Acorn Electron, BBC Micro, Acorn Archimedes, Commodore 16 and Commodore 64 computers, which Dominic Ford has rescued from his private collection of floppy disks and cassettes.
Some of these files were originally commercial releases in the 1980s and 1990s, but they are now widely available online. I assume that copyright over them is no longer being asserted. If you own the copyright and would like files to be removed, please contact me.
Tape/disk: | Home » Archimedes archive » Micro User » MU 1991-08.adf » Listings |
Filename: | Arc/I2CTracer |
Read OK: | ✔ |
File size: | 05A9 bytes |
Load address: | 0000 |
Exec address: | 0000 |
File contents
10REM > I2CTracer (Arc only) 20MODE 12 30PRINTTAB(18,1)"I"CHR$&B2"C Interface Curve plotter By Mike Cook" 40*Alphabet GREEK 50DIM V%(255,8),I%(255,8),PBK% 3,PBR% 3,PBD% 3 60DIM IX$(5) 70X1%=192:Y1%=200 80?PBK%=&64 90SYS "IIC_Control",&90,PBK%,2 100PROC_AXIS 110REPEAT 120FOR B%=1 TO 7 130?PBD%=B% 140GCOL 0,B% 150SYS "IIC_Control",&70,PBD%,1 160FOR A%=0 TO 255 170PBK%?1=A% 180SYS "IIC_Control",&90,PBK%,2 190SYS "IIC_Control",&91,PBR%,5 200PLOT 71,V%(A%,B%),I%(A%,B%) 210V%(A%,B%)=(PBR%?1)*4+X1% 220I%(A%,B%)=(PBR%?3)*4+Y1%+4 230PLOT 69,V%(A%,B%),I%(A%,B%) 240NEXT:NEXT 250UNTIL FALSE 260END 270 280DEF PROC_AXIS 290PROC_XAXIS 300PROC_YAXIS(33) 310ENDPROC 320 330DEF PROC_XAXIS 340VDU 5 350LINE X1%-34,Y1%,1084+X1%,Y1% 360FOR V=1 TO 5 370MOVE X1%+(V*(1024/5))-(512/5),Y1% 380PLOT 1,0,-12 390MOVE X1%+(V*(1024/5)),Y1% 400PLOT 1,0,-20 410PLOT 0,-8,-12 420PRINT;V 430NEXT 440MOVE X1%+460,Y1%-78 450PRINT"VOLTAGE" 460Y1%+=4 470VDU 4 480ENDPROC 490 500DEF PROC_YAXIS(R) 510LOCAL I%,T,SC 520GCOL 0,0 530RECTANGLE FILL X1%-170,Y1%+4,166,550 540GCOL 0,7 550SC=0 560IF R>10 THEN R=R/1000:SC=1 570FOR I%=1 TO 5 580T=INT(10*I%*((2.5/R)/5))/10 590IX$(I%)=LEFT$(STR$(T),4) 600IF LEN(IX$(I%))=1 THEN IX$(I%)=IX$(I%)+".00" 610IF LEN(IX$(I%))=2 THEN IX$(I%)=IX$(I%)+".0" 620IF LEN(IX$(I%))=3 THEN IX$(I%)=IX$(I%)+"0" 630NEXT 640VDU 5 650MOVE X1%-160,Y1%+408 660VDU 23,16,8,0,0,0,0,0,0,0 670PRINT;"Current " 680VDU 23,16,0,0,0,0,0,0,0,0 690MOVE X1%-170,Y1%+150 700IF SC=0 THEN PRINT;"mA" ELSE PRINT;CHR$(&EC);CHR$(&C1) 710LINE X1%-2,Y1%-40,X1%-2,Y1%+572 720LINE X1%-4,Y1%-40,X1%-4,Y1%+572 730FOR I%=1 TO 5 740MOVE X1%-2,Y1%+(I%*(512/5)) 750PLOT 1,-8,0 760PLOT 0,-80,12 770PRINT;IX$(I%) 780NEXT 790VDU 4 800ENDPROC
� > I2CTracer (Arc only) � 12 ;�18,1)"I"�&B2"C Interface Curve plotter By Mike Cook" (*Alphabet GREEK 2.� V%(255,8),I%(255,8),PBK% 3,PBR% 3,PBD% 3 <� IX$(5) FX1%=192:Y1%=200 P ?PBK%=&64 Zș "IIC_Control",&90,PBK%,2 d �_AXIS n� x� B%=1 � 7 �?PBD%=B% � � 0,B% �ș "IIC_Control",&70,PBD%,1 �� A%=0 � 255 � PBK%?1=A% �ș "IIC_Control",&90,PBK%,2 �ș "IIC_Control",&91,PBR%,5 �� 71,V%(A%,B%),I%(A%,B%) �V%(A%,B%)=(PBR%?1)*4+X1% �I%(A%,B%)=(PBR%?3)*4+Y1%+4 �� 69,V%(A%,B%),I%(A%,B%) ��:� �� � � � �_AXIS "�_XAXIS ,�_YAXIS(33) 6� @ J � �_XAXIS T� 5 ^� X1%-34,Y1%,1084+X1%,Y1% h � V=1 � 5 r"� X1%+(V*(1024/5))-(512/5),Y1% | � 1,0,-12 �� X1%+(V*(1024/5)),Y1% � � 1,0,-20 �� 0,-8,-12 ��;V �� �� X1%+460,Y1%-78 ��"VOLTAGE" � Y1%+=4 �� 4 �� � �� �_YAXIS(R) � � I%,T,SC � 0,0 ȓ Ȑ X1%-170,Y1%+4,166,550 � 0,7 &SC=0 0� R>10 � R=R/1000:SC=1 :� I%=1 � 5 DT=�(10*I%*((2.5/R)/5))/10 NIX$(I%)=��(T),4) X*� �(IX$(I%))=1 � IX$(I%)=IX$(I%)+".00" b)� �(IX$(I%))=2 � IX$(I%)=IX$(I%)+".0" l(� �(IX$(I%))=3 � IX$(I%)=IX$(I%)+"0" v� �� 5 �� X1%-160,Y1%+408 �� 23,16,8,0,0,0,0,0,0,0 ��;"Current " �� 23,16,0,0,0,0,0,0,0,0 �� X1%-170,Y1%+150 �%� SC=0 � �;"mA" � �;�(&EC);�(&C1) � � X1%-2,Y1%-40,X1%-2,Y1%+572 � � X1%-4,Y1%-40,X1%-4,Y1%+572 �� I%=1 � 5 �� X1%-2,Y1%+(I%*(512/5)) �� 1,-8,0 �� 0,-80,12 �;IX$(I%) � � 4 � �
00000000 0d 00 0a 1c f4 20 3e 20 49 32 43 54 72 61 63 65 |..... > I2CTrace| 00000010 72 20 28 41 72 63 20 6f 6e 6c 79 29 0d 00 14 08 |r (Arc only)....| 00000020 eb 20 31 32 0d 00 1e 3b f1 8a 31 38 2c 31 29 22 |. 12...;..18,1)"| 00000030 49 22 bd 26 42 32 22 43 20 49 6e 74 65 72 66 61 |I".&B2"C Interfa| 00000040 63 65 20 43 75 72 76 65 20 70 6c 6f 74 74 65 72 |ce Curve plotter| 00000050 20 20 42 79 20 4d 69 6b 65 20 43 6f 6f 6b 22 0d | By Mike Cook".| 00000060 00 28 13 2a 41 6c 70 68 61 62 65 74 20 47 52 45 |.(.*Alphabet GRE| 00000070 45 4b 0d 00 32 2e de 20 56 25 28 32 35 35 2c 38 |EK..2.. V%(255,8| 00000080 29 2c 49 25 28 32 35 35 2c 38 29 2c 50 42 4b 25 |),I%(255,8),PBK%| 00000090 20 33 2c 50 42 52 25 20 33 2c 50 42 44 25 20 33 | 3,PBR% 3,PBD% 3| 000000a0 0d 00 3c 0c de 20 49 58 24 28 35 29 0d 00 46 13 |..<.. IX$(5)..F.| 000000b0 58 31 25 3d 31 39 32 3a 59 31 25 3d 32 30 30 0d |X1%=192:Y1%=200.| 000000c0 00 50 0d 3f 50 42 4b 25 3d 26 36 34 0d 00 5a 1f |.P.?PBK%=&64..Z.| 000000d0 c8 99 20 22 49 49 43 5f 43 6f 6e 74 72 6f 6c 22 |.. "IIC_Control"| 000000e0 2c 26 39 30 2c 50 42 4b 25 2c 32 0d 00 64 0a f2 |,&90,PBK%,2..d..| 000000f0 5f 41 58 49 53 0d 00 6e 05 f5 0d 00 78 0e e3 20 |_AXIS..n....x.. | 00000100 42 25 3d 31 20 b8 20 37 0d 00 82 0c 3f 50 42 44 |B%=1 . 7....?PBD| 00000110 25 3d 42 25 0d 00 8c 0a e6 20 30 2c 42 25 0d 00 |%=B%..... 0,B%..| 00000120 96 1f c8 99 20 22 49 49 43 5f 43 6f 6e 74 72 6f |.... "IIC_Contro| 00000130 6c 22 2c 26 37 30 2c 50 42 44 25 2c 31 0d 00 a0 |l",&70,PBD%,1...| 00000140 10 e3 20 41 25 3d 30 20 b8 20 32 35 35 0d 00 aa |.. A%=0 . 255...| 00000150 0d 50 42 4b 25 3f 31 3d 41 25 0d 00 b4 1f c8 99 |.PBK%?1=A%......| 00000160 20 22 49 49 43 5f 43 6f 6e 74 72 6f 6c 22 2c 26 | "IIC_Control",&| 00000170 39 30 2c 50 42 4b 25 2c 32 0d 00 be 1f c8 99 20 |90,PBK%,2...... | 00000180 22 49 49 43 5f 43 6f 6e 74 72 6f 6c 22 2c 26 39 |"IIC_Control",&9| 00000190 31 2c 50 42 52 25 2c 35 0d 00 c8 1c f0 20 37 31 |1,PBR%,5..... 71| 000001a0 2c 56 25 28 41 25 2c 42 25 29 2c 49 25 28 41 25 |,V%(A%,B%),I%(A%| 000001b0 2c 42 25 29 0d 00 d2 1c 56 25 28 41 25 2c 42 25 |,B%)....V%(A%,B%| 000001c0 29 3d 28 50 42 52 25 3f 31 29 2a 34 2b 58 31 25 |)=(PBR%?1)*4+X1%| 000001d0 0d 00 dc 1e 49 25 28 41 25 2c 42 25 29 3d 28 50 |....I%(A%,B%)=(P| 000001e0 42 52 25 3f 33 29 2a 34 2b 59 31 25 2b 34 0d 00 |BR%?3)*4+Y1%+4..| 000001f0 e6 1c f0 20 36 39 2c 56 25 28 41 25 2c 42 25 29 |... 69,V%(A%,B%)| 00000200 2c 49 25 28 41 25 2c 42 25 29 0d 00 f0 07 ed 3a |,I%(A%,B%).....:| 00000210 ed 0d 00 fa 07 fd 20 a3 0d 01 04 05 e0 0d 01 0e |...... .........| 00000220 04 0d 01 18 0c dd 20 f2 5f 41 58 49 53 0d 01 22 |...... ._AXIS.."| 00000230 0b f2 5f 58 41 58 49 53 0d 01 2c 0f f2 5f 59 41 |.._XAXIS..,.._YA| 00000240 58 49 53 28 33 33 29 0d 01 36 05 e1 0d 01 40 04 |XIS(33)..6....@.| 00000250 0d 01 4a 0d dd 20 f2 5f 58 41 58 49 53 0d 01 54 |..J.. ._XAXIS..T| 00000260 07 ef 20 35 0d 01 5e 1d 86 20 58 31 25 2d 33 34 |.. 5..^.. X1%-34| 00000270 2c 59 31 25 2c 31 30 38 34 2b 58 31 25 2c 59 31 |,Y1%,1084+X1%,Y1| 00000280 25 0d 01 68 0d e3 20 56 3d 31 20 b8 20 35 0d 01 |%..h.. V=1 . 5..| 00000290 72 22 ec 20 58 31 25 2b 28 56 2a 28 31 30 32 34 |r". X1%+(V*(1024| 000002a0 2f 35 29 29 2d 28 35 31 32 2f 35 29 2c 59 31 25 |/5))-(512/5),Y1%| 000002b0 0d 01 7c 0d f0 20 31 2c 30 2c 2d 31 32 0d 01 86 |..|.. 1,0,-12...| 000002c0 1a ec 20 58 31 25 2b 28 56 2a 28 31 30 32 34 2f |.. X1%+(V*(1024/| 000002d0 35 29 29 2c 59 31 25 0d 01 90 0d f0 20 31 2c 30 |5)),Y1%..... 1,0| 000002e0 2c 2d 32 30 0d 01 9a 0e f0 20 30 2c 2d 38 2c 2d |,-20..... 0,-8,-| 000002f0 31 32 0d 01 a4 07 f1 3b 56 0d 01 ae 05 ed 0d 01 |12.....;V.......| 00000300 b8 14 ec 20 58 31 25 2b 34 36 30 2c 59 31 25 2d |... X1%+460,Y1%-| 00000310 37 38 0d 01 c2 0e f1 22 56 4f 4c 54 41 47 45 22 |78....."VOLTAGE"| 00000320 0d 01 cc 0a 59 31 25 2b 3d 34 0d 01 d6 07 ef 20 |....Y1%+=4..... | 00000330 34 0d 01 e0 05 e1 0d 01 ea 04 0d 01 f4 10 dd 20 |4.............. | 00000340 f2 5f 59 41 58 49 53 28 52 29 0d 01 fe 0d ea 20 |._YAXIS(R)..... | 00000350 49 25 2c 54 2c 53 43 0d 02 08 09 e6 20 30 2c 30 |I%,T,SC..... 0,0| 00000360 0d 02 12 1f c8 93 20 c8 90 20 58 31 25 2d 31 37 |...... .. X1%-17| 00000370 30 2c 59 31 25 2b 34 2c 31 36 36 2c 35 35 30 0d |0,Y1%+4,166,550.| 00000380 02 1c 09 e6 20 30 2c 37 0d 02 26 08 53 43 3d 30 |.... 0,7..&.SC=0| 00000390 0d 02 30 1a e7 20 52 3e 31 30 20 8c 20 52 3d 52 |..0.. R>10 . R=R| 000003a0 2f 31 30 30 30 3a 53 43 3d 31 0d 02 3a 0e e3 20 |/1000:SC=1..:.. | 000003b0 49 25 3d 31 20 b8 20 35 0d 02 44 1d 54 3d a8 28 |I%=1 . 5..D.T=.(| 000003c0 31 30 2a 49 25 2a 28 28 32 2e 35 2f 52 29 2f 35 |10*I%*((2.5/R)/5| 000003d0 29 29 2f 31 30 0d 02 4e 14 49 58 24 28 49 25 29 |))/10..N.IX$(I%)| 000003e0 3d c0 c3 28 54 29 2c 34 29 0d 02 58 2a e7 20 a9 |=..(T),4)..X*. .| 000003f0 28 49 58 24 28 49 25 29 29 3d 31 20 8c 20 49 58 |(IX$(I%))=1 . IX| 00000400 24 28 49 25 29 3d 49 58 24 28 49 25 29 2b 22 2e |$(I%)=IX$(I%)+".| 00000410 30 30 22 0d 02 62 29 e7 20 a9 28 49 58 24 28 49 |00"..b). .(IX$(I| 00000420 25 29 29 3d 32 20 8c 20 49 58 24 28 49 25 29 3d |%))=2 . IX$(I%)=| 00000430 49 58 24 28 49 25 29 2b 22 2e 30 22 0d 02 6c 28 |IX$(I%)+".0"..l(| 00000440 e7 20 a9 28 49 58 24 28 49 25 29 29 3d 33 20 8c |. .(IX$(I%))=3 .| 00000450 20 49 58 24 28 49 25 29 3d 49 58 24 28 49 25 29 | IX$(I%)=IX$(I%)| 00000460 2b 22 30 22 0d 02 76 05 ed 0d 02 80 07 ef 20 35 |+"0"..v....... 5| 00000470 0d 02 8a 15 ec 20 58 31 25 2d 31 36 30 2c 59 31 |..... X1%-160,Y1| 00000480 25 2b 34 30 38 0d 02 94 1b ef 20 32 33 2c 31 36 |%+408..... 23,16| 00000490 2c 38 2c 30 2c 30 2c 30 2c 30 2c 30 2c 30 2c 30 |,8,0,0,0,0,0,0,0| 000004a0 0d 02 9e 10 f1 3b 22 43 75 72 72 65 6e 74 20 22 |.....;"Current "| 000004b0 0d 02 a8 1b ef 20 32 33 2c 31 36 2c 30 2c 30 2c |..... 23,16,0,0,| 000004c0 30 2c 30 2c 30 2c 30 2c 30 2c 30 0d 02 b2 15 ec |0,0,0,0,0,0.....| 000004d0 20 58 31 25 2d 31 37 30 2c 59 31 25 2b 31 35 30 | X1%-170,Y1%+150| 000004e0 0d 02 bc 25 e7 20 53 43 3d 30 20 8c 20 f1 3b 22 |...%. SC=0 . .;"| 000004f0 6d 41 22 20 8b 20 f1 3b bd 28 26 45 43 29 3b bd |mA" . .;.(&EC);.| 00000500 28 26 43 31 29 0d 02 c6 20 86 20 58 31 25 2d 32 |(&C1)... . X1%-2| 00000510 2c 59 31 25 2d 34 30 2c 58 31 25 2d 32 2c 59 31 |,Y1%-40,X1%-2,Y1| 00000520 25 2b 35 37 32 0d 02 d0 20 86 20 58 31 25 2d 34 |%+572... . X1%-4| 00000530 2c 59 31 25 2d 34 30 2c 58 31 25 2d 34 2c 59 31 |,Y1%-40,X1%-4,Y1| 00000540 25 2b 35 37 32 0d 02 da 0e e3 20 49 25 3d 31 20 |%+572..... I%=1 | 00000550 b8 20 35 0d 02 e4 1c ec 20 58 31 25 2d 32 2c 59 |. 5..... X1%-2,Y| 00000560 31 25 2b 28 49 25 2a 28 35 31 32 2f 35 29 29 0d |1%+(I%*(512/5)).| 00000570 02 ee 0c f0 20 31 2c 2d 38 2c 30 0d 02 f8 0e f0 |.... 1,-8,0.....| 00000580 20 30 2c 2d 38 30 2c 31 32 0d 03 02 0d f1 3b 49 | 0,-80,12.....;I| 00000590 58 24 28 49 25 29 0d 03 0c 05 ed 0d 03 16 07 ef |X$(I%)..........| 000005a0 20 34 0d 03 20 05 e1 0d ff | 4.. ....| 000005a9