home *** CD-ROM | disk | FTP | other *** search
/ 8bitfiles.net/archives / archives.tar / archives / genie-commodore-file-library / C64-128Toolkit / MSD-DU07.ARC / DISALL.2C (.txt) < prev    next >
Encoding:
Commodore BASIC  |  2019-04-13  |  10.8 KB  |  381 lines

  1. 1000 GOTO 4190 RUN 1010 TO SAVE
  2. 1010 SAVE"DIS.BAK",8:OPEN1,8,15,"S0:DISALL.2C":PRINT#1,"R0:DISALL.2C=DIS.BAK":END
  3. 1020 "TYPED 12/13/83 BY RQ
  4. 1030 "DISK EXPLORER BY ROBERT W. BAKER
  5. 1040 "PAGE 298 DECEMBER 1983 COMPUTE! MAGAZINE
  6. 1050 "ADDED C64 AS SOURCE, 1541 AS OUTPUT
  7. 1060 "ADDED FILENAME AS SOURCE 8 JUNE 1984
  8. 1070 "FILE FROM SECTOR MOD 5/25/85
  9. 1080 "ADD UNDOCUMENTED OPCODES 8/20/85 R.Q.
  10. 1090 [143]*********CONV N TO DD$ HEX ADDR 4916 RETURN
  11. 1100 N[178]V:B[178]16:[141]1140:DD$[178][201]("0"[170]DD$,2):[142]
  12. 1110 B[178]16:[141] 1140:DD$[178][201]("000"[170]DD$,4):[142]
  13. 1120 [141]1110:DD$[178]"$"[170]DD$:[142]
  14. 1130 [143]***********CONV N TO DD$ BASE B
  15. 1140 DD$[178]"":N1[178]N
  16. 1150 N2[178][181](N1[173]B): N3[178]N1[171]N2[172]B
  17. 1160 DD$[178][202](H$,N3[170]1,1)[170]DD$
  18. 1170 [139] N2 [167] N1[178]N2:[137] 1150
  19. 1180 [142]
  20. 1190 [143]******************ADVANCE COUNT
  21. 1200 [141]1240
  22. 1210 A[178]A[170]1:[139] A[177]65535 [167] A[178]A[171]65536
  23. 1220 [137]1100
  24. 1230 [143]**********************READ BYTE
  25. 1240 [145] S [137] 1250,1330,1360,1330
  26. 1250 RA[178]A[171]M1[171]NO[170]2:[139] FE [167] [142]:[143] RELATIVE ADDR
  27. 1260 SN[178][181](RA[173]254):[143] SECTOR NUMBER
  28. 1270 [139] SN[178]BL [167] [153]:[153]"END OF FILE":FE[178]1:[142]
  29. 1280 [139] SN[179]0 [176] SN[177]BL [167] [153]:[153]"ADDRESS ERROR":FE[178]1:[142]
  30. 1290 BC[178]RA[171]SN[172]254[170]2:[143] BYTE COUNT
  31. 1300 [139] SN[178]SI [167] 1320:[143] SI=SECTOR IN MEMORY
  32. 1310 SI[178]SN:TR[178]TR(SN):SE[178]SC(SN):[141] 2770:[143] NEW SECTOR
  33. 1320 A1[178]AD[170]BC:[137] 1340
  34. 1330 A1[178]A[171]NO:[139] A1[179]0 [167] A1[178]A1[170]65536
  35. 1340 V[178][194](A1): AC$[178][199](V): [142]
  36. 1350 [143]**********************READ 1541
  37. 1360 RA[178]A[171]NO
  38. 1370 H[178][181](RA[173]256):L[178]RA[171](H[172]256)
  39. 1380 [152]15,"M-R"[199](L);[199](H)
  40. 1390 [161] #15,AC$: V[178][198](AC$[170][199](0)): [142]
  41. 1400 [143]**************************DO IT
  42. 1410 [139] P[178]3 [167] [160] 4:[159] 4,3:LN[178]0
  43. 1420 [139] P[178]4 [167] [160] 4:[159] 4,4
  44. 1430 [139] P[179][177]8 [167]1460
  45. 1440 [160] 4: [159] 4,8,8,O$: LN[178]0:
  46. 1450 [139] S$[178]"F" [167] [152] 4,"SOURCE IS "FM$
  47. 1460 [139] LN [167]1800
  48. 1470 [145] DM [137]1830,1490
  49. 1480 [143]********************DISASSEMBLE
  50. 1490 PF$[178]"":[139] P[178]4 [167] PF$[178]"     "
  51. 1500 [152]4,PF$"ADDR   OBJECT   LABEL   DISASSEMBLY  "NM$: [152]4," "
  52. 1510 O2$[178]"   ":O3$[178]O2$:OA$[178]""
  53. 1520 N[178]A:[141]1110:AR$[178]DD$[170]": "
  54. 1530 [141]1200:O1$[178]DD$[170]" "
  55. 1540 A$[178]M$(V):OC$[178][202](A$,2,3)[170]" "
  56. 1550 [139] [200](A$,1)[178]"0"[167] 1730
  57. 1560 [141]1200:O2$[178]DD$[170]" "
  58. 1570 [139] [200](A$,1)[178]"2"[167]1670
  59. 1580 [139] [202](A$,5,1)[179][177]"R"[167]1620
  60. 1590 [139] V[177]127[167] V[178]V[171]256
  61. 1600 Y[178]A[170]V:[139] Y[177]65535[167]Y[178]Y[171]65536
  62. 1610 N[178]Y:[141]1120:OA$[178]DD$:[137] 1730
  63. 1620 [139] [202](A$,5,1)[178]"#"[167] [141]1100:OA$[178]"#$"[170]DD$:[137]1730
  64. 1630 [139] [202](A$,6,1)[178]")"[167] OA$[178]"("
  65. 1640 [141]1100:OA$[178]OA$[170]"$"[170]DD$:[139][202](A$,5,1)[178]" "[167]1730
  66. 1650 [139] [202](A$,5,2)[178]"Y)"[167] OA$[178]OA$[170]"),Y":[137]1730
  67. 1660 OA$[178]OA$[170]","[170][202](A$,5,2):[137]1730
  68. 1670 V1[178]V:[141]1200:O3$[178]DD$[170]" "
  69. 1680 N[178]V1[170](256[172]V):[141]1120
  70. 1690 [139] [202](A$,5,1)[178]")"[167]:OA$[178]"("[170]DD$[170]")":[137]1730
  71. 1700 OA$[178]OA$[170]DD$
  72. 1710 [139] [202](A$,5,1)[178]" "[167] 1730
  73. 1720 OA$[178]OA$[170]","[170][202](A$,5,1)
  74. 1730 [152]4,PF$AR$O1$O2$O3$LB$OC$OA$[199](13);
  75. 1740 LN[178]LN[170]1
  76. 1750 [161] C$:[139] C$[179][177]"" [167] 1810
  77. 1760 [139] A[177][178]E [167] [153]: [137] 1810
  78. 1770 [139] P[178]3 [175] LN[178]20 [167] 1810
  79. 1780 [139] P[178]4 [175] LN[178]60 [167] [129] X[178]1 [164] 4:[152]4," ":[130] X:LN[178]0:[137] 1470
  80. 1790 [139] P[178]8 [167] [153]"(null)";
  81. 1800 [145] DM [137] 1910, 1510
  82. 1810 [160]4:[142]
  83. 1820 [143]***********************HEX DUMP
  84. 1830 N[178]A:[141]1110:DD$[178][201](DD$,1):B[178]16:[141]3910
  85. 1840 LL[178]7:[139] P[178]4 [176] P[178]8 [167] LL[178]15
  86. 1850 PF$[178]"":[139] P[178]4 [167] PF$[178]"   "
  87. 1860 F$[178]"":[129] X[178]O [164] LL
  88. 1870 F$[178]F$[170][202](H$,N[170]1,1)[170]"  "
  89. 1880 N[178]N[170]1:[139] N[177]15 [167] N[178]0
  90. 1890 [130] X
  91. 1900 [152]4,PF$NM$:[152]4,PF$"ADDR  "F$PF$PF$" -ASCII-"
  92. 1910 N[178]A:[141]1110:AR$[178]DD$[170]": "
  93. 1920 F$[178]" ":HD$[178]"":[129] X[178]0 [164] LL
  94. 1930 [141]1200:HD$[178]HD$[170]DD$[170]" "
  95. 1940 V[178]V [175] 127
  96. 1950 [139] V[179]32 [167] V[178]V[170]64:[137] 1970
  97. 1960 [139] V[177]95 [167] V[178]V[171]32
  98. 1970 F$[178]F$[170][199](V)
  99. 1980 [130] X:[152]4,PF$AR$HD$F$:[137] 1740
  100. 1990 [143]*********************GET KEY D$
  101. 2000 [161] D$:[153]"STOPSPC(WAIT";
  102. 2010 [129] I[178]1[164]25:[130]:[153]"CMDSPC(CMD";
  103. 2020 [129] I[178]1[164]25:[130]:[139] D$[178]""[167]2000
  104. 2030 D[178][198](D$):[139] D[178]34 [176] D[178]148 [167] 2000
  105. 2040 [153]"STOP CMD";:[142]
  106. 2050 [141] 2000:[139] D[178]13 [167] [142]
  107. 2060 [153] D$;:[142]
  108. 2070 [143]***************************MENU
  109. 2080 [153]: [153]"       CHANGE OPTIONS": [153]
  110. 2090 [153]"       QWAITUIT   MWAITENU":[153]
  111. 2100 [153]"SWAITOURCE ";
  112. 2110 [153]"(FWAITILE/CWAIT64/1WAIT541) "
  113. 2120 [153]"       "NM$
  114. 2130 [153]"OWAITUTPUT ";
  115. 2140 [153]"(VWAITIDEO/PWAITRINTER/FWAITILE)"
  116. 2150 [153]"       "O$
  117. 2160 [153]"TWAITYPE   ";
  118. 2170 [153]"(HWAITEX DUMP/DWAITISSASEMBLY)"
  119. 2180 [153]"       "T$
  120. 2190 [153]"AWAITDDR   ";
  121. 2200 [153]"(BWAITEGIN/EWAITND/NWAITORMALIZE)"
  122. 2210 [153]"       BEGIN "AB$" END "AE$
  123. 2220 [139] NO [167] [153]"       NORMALIZED"
  124. 2230 [153]
  125. 2240 [153]: [153]"RETURN TO OUTPUT/ANY KEY TO HALT"
  126. 2250 [142]
  127. 2260 [143]******************SELECT OPTION
  128. 2270 [141] 4060: [143] STATUS
  129. 2280 [141] 2080: [143] MENU
  130. 2290 [141] 2000: [143] GET KEY
  131. 2300 [139] D$[178]"Q" [167] 2390
  132. 2310 [139] D$[178]"M" [167] 2270
  133. 2320 [139] D$[178]"S" [167] 2500
  134. 2330 [139] D$[178]"O" [167] 3350
  135. 2340 [139] D$[178]"T" [167] 3470
  136. 2350 [139] D$[178]"A" [167] 3570
  137. 2360 [139] D[178]13 [167] 4060
  138. 2370 [153] [199](20);: [137] 2290
  139. 2380 [143]***************************QUIT
  140. 2390 [153]"QUIT"
  141. 2400 [151]46,[194](46)[171]1:[143] RESTORE VARTAB
  142. 2410 [160] 4: [160] 2: [160] 15: [128]
  143. 2420 [143]*******************GET FILENAME
  144. 2430 [153]"FILENAME ";: N[178]0: FM$[178]""
  145. 2440 [141] 2050: [139] D[178]13 [167] [142]
  146. 2450 [139] D[178]20 [167] 2480
  147. 2460 [139] N[178]15 [167] [153] [199](20);: [137] 2440
  148. 2470 FM$[178]FM$[170]D$: N[178]N[170]1: [137] 2440
  149. 2480 N[178]N[171]1: FM$[178][202](FM$,1,N): [137] 2440
  150. 2490 [143]*************************SOURCE
  151. 2500 [153]"SOURCE ";
  152. 2510 [141] 2000
  153. 2520 [139] D$[178]"F" [167] 2860
  154. 2530 [139] D$[178]"C" [167] 3300
  155. 2540 [139] D$[178]"1" [167] 3320
  156. 2550 [139] D[178]13 [167] [153]: [137] 2290
  157. 2560 [153] [199](20);: [137] 2510
  158. 2570 [143]*************DISPLAY DIR SECTOR
  159. 2580 [141]2750:TR[178]AA%:[141]2750:SE[178]AA%
  160. 2590 DL$[178]",   CMDCMDCMD":[129] I[178]0 [164] 7
  161. 2600 PT%[178]I[172]32[170]2:[139] TR [167] 2620
  162. 2610 [139] PT[178][177]SE [167] I[178]7:[137] 2730
  163. 2620 [152]15,"B-P 2"[170][196](PT%)
  164. 2630 [141]2750:TY[178]AA% [175] 127:[139] TY [167] 2650
  165. 2640 [137] 2730
  166. 2650 [141]2750:T[178]AA%
  167. 2660 [141]2750:S[178]AA%
  168. 2670 FI$[178]"":[129] J[178]3 [164] 18
  169. 2680 [161]#2,A$:FI$[178]FI$[170]A$:[130] J
  170. 2690 [152]15,"B-P 2"[170][196](PT%[170]28)
  171. 2700 [141]2750:BL[178]AA%:[141]2750:BL[178]BL[170]AA%[172]256
  172. 2710 [153]"                                    ON"
  173. 2720 [139] TY [167] [153] FI$;DL$;TY;DL$;T;DL$;S;DL$;BL
  174. 2730 [130] I:[142]
  175. 2740 [143]**************************GET#2
  176. 2750 [161]#2,AA$:AA%[178][198](AA$[170][199](0)):[142]
  177. 2760 [143]*****READ TR&SE TO AD 256 BYTES
  178. 2770 [141] 2780:TR[178][194](AD):SE[178][194](AD[170]1):[142]
  179. 2780 [139] TR[177]0 [175] TR[179]36 [167] 2800
  180. 2790 [153]"INVALID TRACK"[196](TR):[142]
  181. 2800 [160]2:[159]2,8,2,"#
  182. 2810 PRINT#15,"U1:";2;0;TR;SE
  183. 2820 FOR I=0 TO 255
  184. 2830 GET#2,AA$:AA%=ASC(AA$+CHR$(0))
  185. 2840 POKEAD+I,AA%:NEXT:CLOSE2:RETURN
  186. 2850 REM***************************FILE
  187. 2860 PRINT"DIRECTORY"
  188. 2870 CLOSE15:OPEN15,8,15,"I":CLOSE2:OPEN2,8,2,"#
  189. 2880 TR[178]18:SE[178]1
  190. 2890 [152]15,"U1:";2;0;TR;SE
  191. 2900 [153]"TO QUIT       WAIT Q,0  ,0  ,0  ,0"
  192. 2910 [153]"FOR TR & SE   WAIT T,0  ,TRK,SEC,0"
  193. 2920 [153]"FILENAME      WAIT  ,TYP,TRK,SEC,BLKS"
  194. 2930 [141] 2580:[143] DISPLAY DIR SEC
  195. 2940 [129] I[178]1 [164] 7
  196. 2950 [153]"                                     ":[130]
  197. 2960 [153]"ONONONONONONONSELECT FILE   WAIT N,0  ,0  ,0  ,0 CMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMD";
  198. 2970 [133] FL$,TY,T,S,BK
  199. 2980 [139] FL$[178]"N" [175] TR [167] 2890
  200. 2990 [139] FL$[178]"N" [175] TR[178]0 [167] 2880
  201. 3000 [139] FL$[178]"Q" [167] [153]"LOAD":[137] 2270
  202. 3010 [139] FL$[178]"T" [167] 3260
  203. 3020 [139] BK [175] BK[178][179]BM [167] 3090
  204. 3030 [139] BK [175] BM[178]0 [167] 3080
  205. 3040 [153]"LOAD"FL$","TY","T","S","BK"  "
  206. 3050 [153]"                                      "
  207. 3060 [153]"SELECT SOURCE FILE AFTER"
  208. 3070 [137] 4210:INIT
  209. 3080 BM[178]BK:[134] TR(BM),SC(BM)
  210. 3090 FM$[178]FL$:BL[178]BK
  211. 3100 [160]15:[159]15,8,15,"I":[160]2:[159]2,8,2,"#
  212. 3110 FOR I=0 TO BL
  213. 3120 TR(I)=T:SC(I)=S
  214. 3130 IF I=BL AND T=0 THEN 3190
  215. 3140 IF T>0 AND T<36 THEN 3170
  216. 3150 PRINT"[147]INVALID TRACK"STR$(T):I=BL:NEXT
  217. 3160 FM$="BAD FILE":S=1:CLOSE 2:GOTO 2270
  218. 3170 PRINT#15,"U1:";2;0;T;S
  219. 3180 GOSUB2750:T=AA%:GOSUB2750:S=AA%
  220. 3190 NEXT I
  221. 3200 SI=0:TR=TR(0):SE=SC(0):GOSUB2780:REM RD 1ST SECTOR
  222. 3210 M1=PEEK(AD+2)+256*PEEK(AD+3):REM LOAD ADDR
  223. 3220 M2=M1+(BL-1)*254+SC(BL)-2:REM END ADDR
  224. 3230 A=M1:E=M2:S=1:NO=0:REM INIT DISPLAY VALUES
  225. 3240 PRINT"[147]":GOTO 2270: SELECT MENU
  226. 3250 REM************READ TRK & SEC ONLY
  227. 3260 TR=T:SE=S:FM$="TRK-"+STR$(TR)+" SEC-"+STR$(S)
  228. 3270 GOSUB 2780:REM RD TRK & SEC
  229. 3280 M1=AD:A=M1:M2=AD+256:E=M2:S=4:N0=0:PRINT"[147]":GOTO 2270
  230. 3290 REM*********************C64 MEMORY
  231. 3300 PRINT"C64";: S=2: GOTO 3330
  232. 3310 REM********************1541 MEMORY
  233. 3320 PRINT"1541";: S=3
  234. 3330 D=13:GOTO 2550
  235. 3340 REM*************************OUTPUT
  236. 3350 PRINT"OUTPUT ";
  237. 3360 GOSUB 2000
  238. 3370 IF D$="V" THEN 3420
  239. 3380 IF D$="P" THEN 3430
  240. 3390 IF D$="F" THEN 3440
  241. 3400 IF D=13 THEN 2290
  242. 3410 PRINT CHR$(20);: GOTO 3360
  243. 3420 PRINT"VIDEO ": P=3: GOTO 3450
  244. 3430 PRINT"PRINTER ": P=4: LN=0: GOTO 3450
  245. 3440 PRINT"FILE ": P=8
  246. 3450 D=13: GOTO 3400
  247. 3460 REM***************************TYPE
  248. 3470 PRINT"TYPE ";
  249. 3480 GOSUB 2000
  250. 3490 IF D$="H" THEN 3530
  251. 3500 IF D$="D" THEN 3540
  252. 3510 IF D=13 THEN 2290
  253. 3520 PRINT CHR$(20);:GOTO 3480
  254. 3530 PRINT"HEX DUMP ":DM=1:GOTO 3550
  255. 3540 PRINT"DISSASEMBLY":DM=2
  256. 3550 LN=0:D=13:GOTO 2290
  257. 3560 REM************************ADDRESS
  258. 3570 PRINT"ADDRESS ";
  259. 3580 GOSUB 2000
  260. 3590 IF D$="B" THEN GOSUB 3660
  261. 3600 IF D$="E" THEN GOSUB 3700
  262. 3610 IF D$="N" THEN GOSUB 3740
  263. 3620 IF D=13 THEN PRINT: GOTO 2290
  264. 3630 IF D=32 THEN 3580
  265. 3640 PRINT CHR$(20);: GOTO 3580
  266. 3650 REM**************************BEGIN
  267. 3660 PRINT"BEGIN ";: GOSUB 3790
  268. 3670 IF D=O THEN D=13: RETURN
  269. 3680 A=N: RETURN
  270. 3690 REM****************************END
  271. 3700 PRINT"END ";:GOSUB 3790
  272. 3710 IF D=0 THEN D=13:RETURN
  273. 3720 E=N:RETURN
  274. 3730 REM**********************NORMALIZE
  275. 3740 A=A-NO:E=E-NO:NO=0
  276. 3750 PRINT"NORMALIZE TO ";:GOSUB3790
  277. 3760 IF N=0 THEN D=13:RETURN
  278. 3770 NO=N-A:A=A+NO:E=E+NO:RETURN
  279. 3780 REM****************GET HEX DD$ & N
  280. 3790 DD$=""
  281. 3800 GOSUB 2050
  282. 3810 IF D=13 OR D=32 THEN 3860
  283. 3820 IF D=20 THEN 3840
  284. 3830 DD$=DD$+D$:GOTO3800
  285. 3840 DD$=LEFT$(DD$,LEN(DD$)-1):GOTO3800
  286. 3850 REM*************GET N VALUE OF DD$
  287. 3860 B=16:GOSUB3910
  288. 3870 IF J=0 OR N>65535 THEN 3890
  289. 3880 RETURN
  290. 3890 FOR I=1 TO LEN(DD$):PRINT" [157][157]";:NEXT:GOTO 3790
  291. 3900 REM***********CONV DD$ BASE B TO N
  292. 3910 N=0:M=O
  293. 3920 M=M+1:J=0:D$=MID$(DD$,M,1)
  294. 3930 IF D$=""THEN J=1:RETURN
  295. 3940 FOR I=1 TO B
  296. 3950 IF D$=MID$(H$,I,1) THEN J=I:I=B
  297. 3960 NEXT I
  298. 3970 IF J=0 THEN RETURN
  299. 3980 N=N*B+J-1
  300. 3990 GOTO 3920
  301. 4000 REM*******************MAIN PROGRAM
  302. 4010 GOSUB 2270: REM SELECT
  303. 4020 GOSUB 1410: REM DO IT
  304. 4030 PRINT"RETURN TO CONTINUE: M FOR MENU"
  305. 4040 GOSUB 2290: GOTO 4020
  306. 4050 REM*************************STATUS
  307. 4060 IF S=2 THEN NM$="C64     ":S$="C"
  308. 4070 IF S=3 THEN NM$="1541    ":S$="D"
  309. 4080 IF S=1 THEN NM$=FM$:S$="F":FE=0
  310. 4090 IF S=4 THEN NM$=FM$:S$="TS"
  311. 4100 IF DM=1 THEN T$="HEX DUMP":DM$="H"
  312. 4110 IF DM=2 THEN T$="DISAS   ":DM$="D"
  313. 4120 IF P=3 THEN O$="VIDEO   "
  314. 4130 IF P=4 THEN O$="PRINTER "
  315. 4140 N=A:GOSUB1120:AB$=DD$
  316. 4150 N=E:GOSUB1120:AE$=DD$
  317. 4160 IF P=8 THEN O$="0:"+S$+DM$+AB$+AE$+",S,W"
  318. 4170 RETURN
  319. 4180 REM**INITIALIZE (NOT A SUBROUTINE)
  320. 4190 PRINT"[147] D I S A L L ":PRINT
  321. 4200 POKE46,PEEK(46)+1:REM 256 BYTE BUFFER
  322. 4210 CLR:LA=PEEK(45):HA=PEEK(46)-1
  323. 4220 AD=LA+HA*256
  324. 4230 CLOSE 15:OPEN 15,8,15,"UJ:"
  325. 4240 S=2:P=3:DM=1
  326. 4250 DIM M$(255): H$="0123456789ABCDEF"
  327. 4260 LB$="        "
  328. 4270 PRINT"INITIALIZING...."
  329. 4280 FOR X=0 TO 255: READ A$
  330. 4290 IF A$="*"THEN A$="0*?*"
  331. 4300 M$(X)=LEFT$(A$+"      .",6):NEXT X
  332. 4310 GOTO4010:MAIN PROG
  333. 4320 REM 00
  334. 4330 DATA   0BRK, 1ORAX), 0DTH, 1SLOX), 1SKB#,  1ORA,  1ASL,  1SLO
  335. 4340 DATA   0PHP, 1ORA#,  0ASL,  1ANN#, 2SKW ,  2ORA,  2ASL,  2SLO
  336. 4350 REM 10
  337. 4360 DATA  1BPLR, 1ORAY), 0DTH, 1SLOY), 1SKB#, 1ORAX, 1ASLX, 1SLOX
  338. 4370 DATA   0CLC, 2ORAY,  0NOP,  2SLOY, 2SKW , 2ORAX, 2ASLX, 2SLOX
  339. 4380 REM 20
  340. 4390 DATA   2JSR,1ANDX),  0DTH, 1RLNX), 1BIT ,  1AND,  1ROL,  1RLN
  341. 4400 DATA   0PLP, 1AND#,  0ROL,  1ANN#, 2BIT ,  2AND,  2ROL,  2RLN
  342. 4410 REM 30
  343. 4420 DATA  1BMIR,1ANDY),  0DTH, 1RLNY), 1SKB#, 1ANDX, 1ROLX, 1RLNX
  344. 4430 DATA   0SEC, 2ANDY,  0NOP,  2RLNY, 2SKW , 2ANDX, 2ROLX, 2RLNX
  345. 4440 REM 40
  346. 4450 DATA   0RTI,1EORX),  0DTH, 1SREX), 1SKB#,  1EOR,  1LSR,  1SRE
  347. 4460 DATA   0PHA, 1EOR#,  0LSR,  1ASR#, 2JMP ,  2EOR,  2LSR,  2SRE
  348. 4470 REM 50
  349. 4480 DATA  1BVCR,1EORY),  0DTH, 1SREY), 1SKB#, 1EORX, 1LSRX, 1SREX
  350. 4490 DATA   0CLI, 2EORY,  0NOP,  2SREY, 2SKW , 2EORX, 2LSRX, 2SREX
  351. 4500 REM 60
  352. 4510 DATA   0RTS,1ADCX),  0DTH, 1RRDX), 1SKB#,  1ADC,  1ROR, 1RRD
  353. 4520 DATA   0PLA, 1ADC#,  0ROR,  1ARR#, 2JMP),  2ADC,  2ROR, 2RRD
  354. 4530 REM 70
  355. 4540 DATA  1BVSR,1ADCY),  0DTH, 1RRDY), 1SKB#, 1ADCX, 1RORX, 1RRDX
  356. 4550 DATA   0SEI, 2ADCY,  0NOP,  2RRDY, 2SKW , 2ADCX, 2RORX, 2RRDX
  357. 4560 REM 80
  358. 4570 DATA  1SKB#,1STAX), 1SKB#, 1AXSX), 1STY ,  1STA,  1STX, 1AXS
  359. 4580 DATA   0DEY, 1SKB#,  0TXA,  1OXA#, 2STY ,  2STA,  2STX, 2AXS
  360. 4590 REM 90
  361. 4600 DATA  1BCCR,1STAY),  0DTH, 1AXSY), 1STYX, 1STAX,  1STXY, 1AXSY
  362. 4610 DATA   0TYA, 2STAY,  0TXS,  2LSSY, 2YASX, 2STAX, 2XASY, 2AXSY
  363. 4620 REM A0
  364. 4630 DATA  1LDY#,1LDAX), 1LDX#, 1LTXX), 1LDY ,  1LDA,  1LDX, 1LTX
  365. 4640 DATA   0TAY, 1LDA#,  0TAX,  1OXX#, 2LDY ,  2LDA,  2LDX, 2LTX
  366. 4650 REM B0
  367. 4660 DATA  1BCSR,1LDAY),  0DTH, 1LTXY), 1LDYX, 1LDAX, 1LDXY, 1LTXY
  368. 4670 DATA   0CLV, 2LDAY,  0TSX,  2LSAY, 2LDYX, 2LDAX, 2LDXY, 2LTXY
  369. 4680 REM C0
  370. 4690 DATA  1CPY#,1CMPX),  1SKB#,1DCMX), 1CPY ,  1CMP,  1DEC, 1DCM
  371. 4700 DATA   0INY, 1CMP#,  0DEX,  1ACM#, 2CPY ,  2CMP,  2DEC, 2DCM
  372. 4710 REM D0
  373. 4720 DATA  1BNER,1CMPY),  0DTH, 1DCMY), 1SKB#, 1CMPX, 1DECX, 1DCMY
  374. 4730 DATA   0CLD, 2CMPY,  0NOP,  2DCMY, 2SKW , 2CMPX, 2DECX, 2DCMX
  375. 4740 REM E0
  376. 4750 DATA  1CPX#,1SBCX),  1SKB#,1ISBX), 1CPX ,  1SBC,  1INC, 1ISB
  377. 4760 DATA   0INX, 1SBC#,  0NOP ,1SBC# , 2CPX , 2SBC , 2INC , 2ISB
  378. 4770 REM F0
  379. 4780 DATA  1BEQR,1SBCY),  0DTH ,1ISBY), 1SKB#, 1SBCX, 1INCX, 1ISBX
  380. 4790 DATA  0SED ,2SBCY ,  0NOP ,2ISBY , 2SKW , 2SBCX, 2INCX , 2ISBX
  381.