PageRenderTime 69ms CodeModel.GetById 19ms RepoModel.GetById 1ms app.codeStats 0ms

/etude.asm

http://github.com/shepheb/hork
Assembly | 2086 lines | 1998 code | 88 blank | 0 comment | 4 complexity | 9656b75e24f3cf71d9c84f9a50430f57 MD5 | raw file
Possible License(s): BSD-3-Clause

Large files files are truncated, but you can click here to view the full file

  1. Resident data ends at 61c, program starts at 61c, file ends at 4a0c
  2. Starting analysis pass at address 61c
  3. End of analysis pass, low address = 61c, high address = 20b6
  4. [Start of code at 61c]
  5. Main routine 61c, 0 locals
  6. 61d: e0 3f 05 6b ff CALL_VS 15ac -> Gef
  7. 622: ba QUIT
  8. Routine 624, 2 locals
  9. 625: e0 17 07 a1 32 00 01 CALL_VS 1e84 (#32,#00) -> L00
  10. 62c: e0 17 07 a1 32 01 02 CALL_VS 1e84 (#32,#01) -> L01
  11. 633: a0 01 4b JZ L00 [FALSE] 63f
  12. 636: a0 02 48 JZ L01 [FALSE] 63f
  13. 639: 8d 08 46 PRINT_PADDR S003
  14. 63c: 8c 00 1f JUMP 65c
  15. 63f: 8d 08 55 PRINT_PADDR S004
  16. 642: e6 bf 01 PRINT_NUM L00
  17. 645: b2 ... PRINT "."
  18. 648: e6 bf 02 PRINT_NUM L01
  19. 64b: b2 ... PRINT " of the Z-Spec.
  20. "
  21. 65c: e0 17 07 a1 00 01 01 CALL_VS 1e84 (#00,#01) -> L00
  22. 663: 49 01 01 00 AND L00,#01 -> -(SP)
  23. 667: a0 00 c8 JZ (SP)+ [TRUE] 670
  24. 66a: 8d 08 5d PRINT_PADDR S005
  25. 66d: 8c 00 05 JUMP 673
  26. 670: 8d 08 67 PRINT_PADDR S006
  27. 673: 49 01 04 00 AND L00,#04 -> -(SP)
  28. 677: a0 00 c8 JZ (SP)+ [TRUE] 680
  29. 67a: 8d 08 72 PRINT_PADDR S007
  30. 67d: 8c 00 05 JUMP 683
  31. 680: 8d 08 7e PRINT_PADDR S008
  32. 683: 49 01 08 00 AND L00,#08 -> -(SP)
  33. 687: a0 00 c8 JZ (SP)+ [TRUE] 690
  34. 68a: 8d 08 8b PRINT_PADDR S009
  35. 68d: 8c 00 05 JUMP 693
  36. 690: 8d 08 98 PRINT_PADDR S010
  37. 693: 49 01 10 00 AND L00,#10 -> -(SP)
  38. 697: a0 00 c8 JZ (SP)+ [TRUE] 6a0
  39. 69a: 8d 08 a6 PRINT_PADDR S011
  40. 69d: 8c 00 05 JUMP 6a3
  41. 6a0: 8d 08 b1 PRINT_PADDR S012
  42. 6a3: 49 01 20 00 AND L00,#20 -> -(SP)
  43. 6a7: a0 00 c8 JZ (SP)+ [TRUE] 6b0
  44. 6aa: 8d 08 bd PRINT_PADDR S013
  45. 6ad: 8c 00 05 JUMP 6b3
  46. 6b0: 8d 08 c7 PRINT_PADDR S014
  47. 6b3: 49 01 80 00 AND L00,#80 -> -(SP)
  48. 6b7: a0 00 c8 JZ (SP)+ [TRUE] 6c0
  49. 6ba: 8d 08 d2 PRINT_PADDR S015
  50. 6bd: 8c 00 05 JUMP 6c3
  51. 6c0: 8d 08 dc PRINT_PADDR S016
  52. 6c3: bb NEW_LINE
  53. 6c4: e0 17 07 a1 10 01 01 CALL_VS 1e84 (#10,#01) -> L00
  54. 6cb: 49 01 10 00 AND L00,#10 -> -(SP)
  55. 6cf: a0 00 c8 JZ (SP)+ [TRUE] 6d8
  56. 6d2: 8d 08 e7 PRINT_PADDR S017
  57. 6d5: 8c 00 05 JUMP 6db
  58. 6d8: 8d 08 f0 PRINT_PADDR S018
  59. 6db: b0 RTRUE
  60. Routine 6dc, 4 locals
  61. 6dd: e0 17 07 a1 00 01 01 CALL_VS 1e84 (#00,#01) -> L00
  62. 6e4: 49 01 01 00 AND L00,#01 -> -(SP)
  63. 6e8: a0 00 cb JZ (SP)+ [TRUE] 6f4
  64. 6eb: 8d 09 06 PRINT_PADDR S029
  65. 6ee: 0d 04 01 STORE L03,#01
  66. 6f1: 8c 00 08 JUMP 6fa
  67. 6f4: 8d 09 10 PRINT_PADDR S030
  68. 6f7: 0d 04 00 STORE L03,#00
  69. 6fa: a0 04 c8 JZ L03 [TRUE] 703
  70. 6fd: 8d 09 1b PRINT_PADDR S031
  71. 700: 8c 00 05 JUMP 706
  72. 703: 8d 09 22 PRINT_PADDR S032
  73. 706: 8d 09 2b PRINT_PADDR S033
  74. 709: 0f 00 08 ff LOADW #00,#08 -> Gef
  75. 70d: 28 02 ff ff OR #02,Gef -> Gef
  76. 711: e1 5b 00 08 ff STOREW #00,#08,Gef
  77. 716: bb NEW_LINE
  78. 717: b2 ... PRINT "Bk Rd Gr Yl Bl Mg Cy Wh
  79. "
  80. 72e: 0d 02 02 STORE L01,#02
  81. 731: 42 02 0a 00 47 JL L01,#0a [FALSE] 77b
  82. 736: 0d 03 02 STORE L02,#02
  83. 739: 42 03 0a 4f JL L02,#0a [FALSE] 74a
  84. 73d: 7b 02 03 SET_COLOUR L01,L02
  85. 740: b2 ... PRINT "## "
  86. 745: 95 03 INC L02
  87. 747: 8c ff f1 JUMP 739
  88. 74a: 1b 01 01 SET_COLOUR #01,#01
  89. 74d: b2 ... PRINT ": "
  90. 750: 42 02 00 c6 JL L01,#00 [TRUE] 758
  91. 754: 42 02 0a d2 JL L01,#0a [TRUE] 768
  92. 758: fa 19 5f 06 55 1d 02 09 01 00
  93. CALL_VN2 1954 (#1d,L01,#09,#01,#00)
  94. 762: e8 7f 00 PUSH #00
  95. 765: 8c 00 08 JUMP 76e
  96. 768: cf 2f 04 e8 02 00 LOADW #04e8,L01 -> -(SP)
  97. 76e: da 2f 07 dd 00 CALL_2N 1f74 ((SP)+)
  98. 773: b2 ... PRINT "
  99. "
  100. 776: 95 02 INC L01
  101. 778: 8c ff b8 JUMP 731
  102. 77b: 0f 00 08 ff LOADW #00,#08 -> Gef
  103. 77f: c9 2f ff fd ff ff AND #fffd,Gef -> Gef
  104. 785: e1 5b 00 08 ff STOREW #00,#08,Gef
  105. 78a: b0 RTRUE
  106. Routine 78c, 1 local
  107. 78d: e0 17 07 a1 00 01 01 CALL_VS 1e84 (#00,#01) -> L00
  108. 794: 49 01 04 00 AND L00,#04 -> -(SP)
  109. 798: a0 00 c8 JZ (SP)+ [TRUE] 7a1
  110. 79b: 8d 09 47 PRINT_PADDR S034
  111. 79e: 8c 00 05 JUMP 7a4
  112. 7a1: 8d 09 53 PRINT_PADDR S035
  113. 7a4: 49 01 08 00 AND L00,#08 -> -(SP)
  114. 7a8: a0 00 c8 JZ (SP)+ [TRUE] 7b1
  115. 7ab: 8d 09 60 PRINT_PADDR S036
  116. 7ae: 8c 00 05 JUMP 7b4
  117. 7b1: 8d 09 6d PRINT_PADDR S037
  118. 7b4: 49 01 10 00 AND L00,#10 -> -(SP)
  119. 7b8: a0 00 c8 JZ (SP)+ [TRUE] 7c1
  120. 7bb: 8d 09 7b PRINT_PADDR S038
  121. 7be: 8c 00 05 JUMP 7c4
  122. 7c1: 8d 09 86 PRINT_PADDR S039
  123. 7c4: bb NEW_LINE
  124. 7c5: f1 7f 02 SET_TEXT_STYLE BOLDFACE
  125. 7c8: b2 ... PRINT "Test of emphasized (bold)
  126. text."
  127. 7e1: f1 7f 00 SET_TEXT_STYLE ROMAN
  128. 7e4: b2 ... PRINT "
  129. ...normal font...
  130. "
  131. 7f7: f1 7f 04 SET_TEXT_STYLE EMPHASIS
  132. 7fa: 8d 09 92 PRINT_PADDR S040
  133. 7fd: f1 7f 00 SET_TEXT_STYLE ROMAN
  134. 800: b2 ... PRINT "
  135. ...normal font...
  136. "
  137. 813: f1 7f 01 SET_TEXT_STYLE REVERSE
  138. 816: b2 ... PRINT "Test of reverse-video text."
  139. 82b: f1 7f 00 SET_TEXT_STYLE ROMAN
  140. 82e: b2 ... PRINT "
  141. ...normal font...
  142. "
  143. 841: 0f 00 08 ff LOADW #00,#08 -> Gef
  144. 845: 28 02 ff ff OR #02,Gef -> Gef
  145. 849: e1 5b 00 08 ff STOREW #00,#08,Gef
  146. 84e: 8d 09 99 PRINT_PADDR S041
  147. 851: 0f 00 08 ff LOADW #00,#08 -> Gef
  148. 855: c9 2f ff fd ff ff AND #fffd,Gef -> Gef
  149. 85b: e1 5b 00 08 ff STOREW #00,#08,Gef
  150. 860: b2 ... PRINT "
  151. ...normal font...
  152. "
  153. 873: f1 7f 08 SET_TEXT_STYLE FIXED_FONT
  154. 876: 8d 09 a6 PRINT_PADDR S042
  155. 879: f1 7f 00 SET_TEXT_STYLE ROMAN
  156. 87c: bb NEW_LINE
  157. 87d: 8d 09 b1 PRINT_PADDR S043
  158. 880: f1 7f 02 SET_TEXT_STYLE BOLDFACE
  159. 883: f1 7f 04 SET_TEXT_STYLE EMPHASIS
  160. 886: b2 ... PRINT "Test of bold, italic text."
  161. 89b: f1 7f 00 SET_TEXT_STYLE ROMAN
  162. 89e: bb NEW_LINE
  163. 89f: f1 7f 02 SET_TEXT_STYLE BOLDFACE
  164. 8a2: f1 7f 01 SET_TEXT_STYLE REVERSE
  165. 8a5: b2 ... PRINT "Test of bold, reverse text."
  166. 8ba: f1 7f 00 SET_TEXT_STYLE ROMAN
  167. 8bd: bb NEW_LINE
  168. 8be: f1 7f 04 SET_TEXT_STYLE EMPHASIS
  169. 8c1: f1 7f 01 SET_TEXT_STYLE REVERSE
  170. 8c4: b2 ... PRINT "Test of italic, reverse text."
  171. 8db: f1 7f 00 SET_TEXT_STYLE ROMAN
  172. 8de: bb NEW_LINE
  173. 8df: f1 7f 02 SET_TEXT_STYLE BOLDFACE
  174. 8e2: f1 7f 04 SET_TEXT_STYLE EMPHASIS
  175. 8e5: f1 7f 01 SET_TEXT_STYLE REVERSE
  176. 8e8: 8d 09 d0 PRINT_PADDR S044
  177. 8eb: f1 7f 00 SET_TEXT_STYLE ROMAN
  178. 8ee: bb NEW_LINE
  179. 8ef: 8d 09 d7 PRINT_PADDR S045
  180. 8f2: 0f 00 08 ff LOADW #00,#08 -> Gef
  181. 8f6: 28 02 ff ff OR #02,Gef -> Gef
  182. 8fa: e1 5b 00 08 ff STOREW #00,#08,Gef
  183. 8ff: f1 7f 02 SET_TEXT_STYLE BOLDFACE
  184. 902: b2 ... PRINT "Test of fixed, bold text."
  185. 917: f1 7f 00 SET_TEXT_STYLE ROMAN
  186. 91a: bb NEW_LINE
  187. 91b: f1 7f 04 SET_TEXT_STYLE EMPHASIS
  188. 91e: b2 ... PRINT "Test of fixed, italic text."
  189. 933: f1 7f 00 SET_TEXT_STYLE ROMAN
  190. 936: bb NEW_LINE
  191. 937: f1 7f 01 SET_TEXT_STYLE REVERSE
  192. 93a: b2 ... PRINT "Test of fixed, reverse text."
  193. 951: f1 7f 00 SET_TEXT_STYLE ROMAN
  194. 954: bb NEW_LINE
  195. 955: f1 7f 02 SET_TEXT_STYLE BOLDFACE
  196. 958: f1 7f 04 SET_TEXT_STYLE EMPHASIS
  197. 95b: 8d 09 ef PRINT_PADDR S046
  198. 95e: f1 7f 00 SET_TEXT_STYLE ROMAN
  199. 961: bb NEW_LINE
  200. 962: f1 7f 02 SET_TEXT_STYLE BOLDFACE
  201. 965: f1 7f 01 SET_TEXT_STYLE REVERSE
  202. 968: 8d 09 f6 PRINT_PADDR S047
  203. 96b: f1 7f 00 SET_TEXT_STYLE ROMAN
  204. 96e: bb NEW_LINE
  205. 96f: f1 7f 04 SET_TEXT_STYLE EMPHASIS
  206. 972: f1 7f 01 SET_TEXT_STYLE REVERSE
  207. 975: 8d 09 fd PRINT_PADDR S048
  208. 978: f1 7f 00 SET_TEXT_STYLE ROMAN
  209. 97b: bb NEW_LINE
  210. 97c: f1 7f 02 SET_TEXT_STYLE BOLDFACE
  211. 97f: f1 7f 04 SET_TEXT_STYLE EMPHASIS
  212. 982: f1 7f 01 SET_TEXT_STYLE REVERSE
  213. 985: 8d 0a 04 PRINT_PADDR S049
  214. 988: f1 7f 00 SET_TEXT_STYLE ROMAN
  215. 98b: bb NEW_LINE
  216. 98c: 0f 00 08 ff LOADW #00,#08 -> Gef
  217. 990: c9 2f ff fd ff ff AND #fffd,Gef -> Gef
  218. 996: e1 5b 00 08 ff STOREW #00,#08,Gef
  219. 99b: b2 ... PRINT "
  220. End of styles test.
  221. "
  222. 9ae: b0 RTRUE
  223. Routine 9b0, 3 locals
  224. 9b1: da 2f 07 dd 01 CALL_2N 1f74 (L00)
  225. 9b6: b2 ... PRINT " = "
  226. 9bb: e6 bf 02 PRINT_NUM L01
  227. 9be: 61 02 03 4c JE L01,L02 [FALSE] 9cc
  228. 9c2: b2 ... PRINT " (ok)
  229. "
  230. 9c9: 8c 00 20 JUMP 9ea
  231. 9cc: b2 ... PRINT " (ERROR, should be "
  232. 9df: e6 bf 03 PRINT_NUM L02
  233. 9e2: b2 ... PRINT "!)
  234. "
  235. 9e7: 0d 10 01 STORE G00,#01
  236. 9ea: b0 RTRUE
  237. Routine 9ec, 3 locals
  238. 9ed: 8d 0a 0c PRINT_PADDR S050
  239. 9f0: 8d 0a 31 PRINT_PADDR S051
  240. 9f3: 0d 10 00 STORE G00,#00
  241. 9f6: 0d 01 0d STORE L00,#0d
  242. 9f9: 0d 02 05 STORE L01,#05
  243. 9fc: 76 01 02 03 MUL L00,L01 -> L02
  244. a00: f9 09 02 6c 0a 81 03 41 CALL_VN 9b0 (S052,L02,#41)
  245. a08: 0d 01 0d STORE L00,#0d
  246. a0b: cd 4f 02 ff fb STORE L01,#fffb
  247. a10: 76 01 02 03 MUL L00,L01 -> L02
  248. a14: f9 08 02 6c 0a 83 03 ff bf
  249. CALL_VN 9b0 (S053,L02,#ffbf)
  250. a1d: cd 4f 01 ff f3 STORE L00,#fff3
  251. a22: 0d 02 05 STORE L01,#05
  252. a25: 76 01 02 03 MUL L00,L01 -> L02
  253. a29: f9 08 02 6c 0a 86 03 ff bf
  254. CALL_VN 9b0 (S054,L02,#ffbf)
  255. a32: cd 4f 01 ff f3 STORE L00,#fff3
  256. a37: cd 4f 02 ff fb STORE L01,#fffb
  257. a3c: 76 01 02 03 MUL L00,L01 -> L02
  258. a40: f9 09 02 6c 0a 89 03 41 CALL_VN 9b0 (S055,L02,#41)
  259. a48: 0d 01 0d STORE L00,#0d
  260. a4b: 0d 02 05 STORE L01,#05
  261. a4e: 2d ff 01 STORE Gef,L00
  262. a51: 2d fe 02 STORE Gee,L01
  263. a54: a0 fe 49 JZ Gee [FALSE] a5e
  264. a57: f9 1f 06 55 14 CALL_VN 1954 (#14)
  265. a5c: 95 fe INC Gee
  266. a5e: 77 ff fe 03 DIV Gef,Gee -> L02
  267. a62: f9 09 02 6c 0a 8c 03 02 CALL_VN 9b0 (S056,L02,#02)
  268. a6a: 0d 01 0d STORE L00,#0d
  269. a6d: cd 4f 02 ff fb STORE L01,#fffb
  270. a72: 2d ff 01 STORE Gef,L00
  271. a75: 2d fe 02 STORE Gee,L01
  272. a78: a0 fe 49 JZ Gee [FALSE] a82
  273. a7b: f9 1f 06 55 14 CALL_VN 1954 (#14)
  274. a80: 95 fe INC Gee
  275. a82: 77 ff fe 03 DIV Gef,Gee -> L02
  276. a86: f9 08 02 6c 0a 8e 03 ff fe
  277. CALL_VN 9b0 (S057,L02,#fffe)
  278. a8f: cd 4f 01 ff f3 STORE L00,#fff3
  279. a94: 0d 02 05 STORE L01,#05
  280. a97: 2d ff 01 STORE Gef,L00
  281. a9a: 2d fe 02 STORE Gee,L01
  282. a9d: a0 fe 49 JZ Gee [FALSE] aa7
  283. aa0: f9 1f 06 55 14 CALL_VN 1954 (#14)
  284. aa5: 95 fe INC Gee
  285. aa7: 77 ff fe 03 DIV Gef,Gee -> L02
  286. aab: f9 08 02 6c 0a 90 03 ff fe
  287. CALL_VN 9b0 (S058,L02,#fffe)
  288. ab4: cd 4f 01 ff f3 STORE L00,#fff3
  289. ab9: cd 4f 02 ff fb STORE L01,#fffb
  290. abe: 2d ff 01 STORE Gef,L00
  291. ac1: 2d fe 02 STORE Gee,L01
  292. ac4: a0 fe 49 JZ Gee [FALSE] ace
  293. ac7: f9 1f 06 55 14 CALL_VN 1954 (#14)
  294. acc: 95 fe INC Gee
  295. ace: 77 ff fe 03 DIV Gef,Gee -> L02
  296. ad2: f9 09 02 6c 0a 92 03 02 CALL_VN 9b0 (S059,L02,#02)
  297. ada: 0d 01 0d STORE L00,#0d
  298. add: 0d 02 05 STORE L01,#05
  299. ae0: 2d ff 01 STORE Gef,L00
  300. ae3: 2d fe 02 STORE Gee,L01
  301. ae6: a0 fe 49 JZ Gee [FALSE] af0
  302. ae9: f9 1f 06 55 14 CALL_VN 1954 (#14)
  303. aee: 95 fe INC Gee
  304. af0: 78 ff fe 03 MOD Gef,Gee -> L02
  305. af4: f9 09 02 6c 0a 95 03 03 CALL_VN 9b0 (S060,L02,#03)
  306. afc: 0d 01 0d STORE L00,#0d
  307. aff: cd 4f 02 ff fb STORE L01,#fffb
  308. b04: 2d ff 01 STORE Gef,L00
  309. b07: 2d fe 02 STORE Gee,L01
  310. b0a: a0 fe 49 JZ Gee [FALSE] b14
  311. b0d: f9 1f 06 55 14 CALL_VN 1954 (#14)
  312. b12: 95 fe INC Gee
  313. b14: 78 ff fe 03 MOD Gef,Gee -> L02
  314. b18: f9 09 02 6c 0a 97 03 03 CALL_VN 9b0 (S061,L02,#03)
  315. b20: cd 4f 01 ff f3 STORE L00,#fff3
  316. b25: 0d 02 05 STORE L01,#05
  317. b28: 2d ff 01 STORE Gef,L00
  318. b2b: 2d fe 02 STORE Gee,L01
  319. b2e: a0 fe 49 JZ Gee [FALSE] b38
  320. b31: f9 1f 06 55 14 CALL_VN 1954 (#14)
  321. b36: 95 fe INC Gee
  322. b38: 78 ff fe 03 MOD Gef,Gee -> L02
  323. b3c: f9 08 02 6c 0a 9a 03 ff fd
  324. CALL_VN 9b0 (S062,L02,#fffd)
  325. b45: cd 4f 01 ff f3 STORE L00,#fff3
  326. b4a: cd 4f 02 ff fb STORE L01,#fffb
  327. b4f: 2d ff 01 STORE Gef,L00
  328. b52: 2d fe 02 STORE Gee,L01
  329. b55: a0 fe 49 JZ Gee [FALSE] b5f
  330. b58: f9 1f 06 55 14 CALL_VN 1954 (#14)
  331. b5d: 95 fe INC Gee
  332. b5f: 78 ff fe 03 MOD Gef,Gee -> L02
  333. b63: f9 08 02 6c 0a 9d 03 ff fd
  334. CALL_VN 9b0 (S063,L02,#fffd)
  335. b6c: a0 10 4e JZ G00 [FALSE] b7b
  336. b6f: b2 ... PRINT "
  337. "
  338. b72: da 0f 07 dd 08 2f CALL_2N 1f74 (S001)
  339. b78: 8c 00 0b JUMP b84
  340. b7b: b2 ... PRINT "
  341. "
  342. b7e: da 0f 07 dd 08 3b CALL_2N 1f74 (S002)
  343. b84: b0 RTRUE
  344. Routine b88, 2 locals
  345. b89: 8d 0b 7a PRINT_PADDR S133
  346. b8c: 8d 0b 98 PRINT_PADDR S134
  347. b8f: 8d 0b e2 PRINT_PADDR S135
  348. b92: 0d 02 00 STORE L01,#00
  349. b95: 90 01 80 df JZ #01 [TRUE] c76
  350. b99: 42 02 00 80 a7 JL L01,#00 [TRUE] c43
  351. b9e: 49 02 04 00 AND L01,#04 -> -(SP)
  352. ba2: a0 00 cf JZ (SP)+ [TRUE] bb2
  353. ba5: 0f 00 08 ff LOADW #00,#08 -> Gef
  354. ba9: 28 02 ff ff OR #02,Gef -> Gef
  355. bad: e1 5b 00 08 ff STOREW #00,#08,Gef
  356. bb2: 49 02 02 00 AND L01,#02 -> -(SP)
  357. bb6: a0 00 c5 JZ (SP)+ [TRUE] bbc
  358. bb9: f1 7f 04 SET_TEXT_STYLE EMPHASIS
  359. bbc: 49 02 01 00 AND L01,#01 -> -(SP)
  360. bc0: a0 00 c5 JZ (SP)+ [TRUE] bc6
  361. bc3: f1 7f 02 SET_TEXT_STYLE BOLDFACE
  362. bc6: 0d 01 01 STORE L00,#01
  363. bc9: 02 00 00 c6 JL #00,#00 [TRUE] bd1
  364. bcd: 02 00 46 d2 JL #00,#46 [TRUE] be1
  365. bd1: fa 15 5f 06 55 1d 00 45 03 01
  366. CALL_VN2 1954 (#1d,#00,#45,#03,#01)
  367. bdb: e8 7f 00 PUSH #00
  368. bde: 8c 00 08 JUMP be7
  369. be1: cf 1f 04 fc 00 00 LOADW #04fc,#00 -> -(SP)
  370. be7: 63 01 00 f8 JG L00,(SP)+ [TRUE] c21
  371. beb: 42 01 00 c6 JL L00,#00 [TRUE] bf3
  372. bef: 42 01 46 d2 JL L00,#46 [TRUE] c03
  373. bf3: fa 19 5f 06 55 1d 01 45 03 01
  374. CALL_VN2 1954 (#1d,L00,#45,#03,#01)
  375. bfd: e8 7f 00 PUSH #00
  376. c00: 8c 00 08 JUMP c09
  377. c03: cf 2f 04 fc 01 00 LOADW #04fc,L00 -> -(SP)
  378. c09: da 2f 07 dd 00 CALL_2N 1f74 ((SP)+)
  379. c0e: 58 01 04 00 MOD L00,#04 -> -(SP)
  380. c12: a0 00 46 JZ (SP)+ [FALSE] c19
  381. c15: bb NEW_LINE
  382. c16: 8c 00 05 JUMP c1c
  383. c19: b2 ... PRINT " "
  384. c1c: 95 01 INC L00
  385. c1e: 8c ff aa JUMP bc9
  386. c21: 49 02 04 00 AND L01,#04 -> -(SP)
  387. c25: a0 00 d1 JZ (SP)+ [TRUE] c37
  388. c28: 0f 00 08 ff LOADW #00,#08 -> Gef
  389. c2c: c9 2f ff fd ff ff AND #fffd,Gef -> Gef
  390. c32: e1 5b 00 08 ff STOREW #00,#08,Gef
  391. c37: 49 02 03 00 AND L01,#03 -> -(SP)
  392. c3b: a0 00 c5 JZ (SP)+ [TRUE] c41
  393. c3e: f1 7f 00 SET_TEXT_STYLE ROMAN
  394. c41: bb NEW_LINE
  395. c42: bb NEW_LINE
  396. c43: 8d 0c 3c PRINT_PADDR S136
  397. c46: 8d 0c 4e PRINT_PADDR S137
  398. c49: b2 ... PRINT "
  399. Accents> "
  400. c54: f6 7f 01 01 READ_CHAR #01 -> L00
  401. c58: bb NEW_LINE
  402. c59: 41 01 2e 43 JE L00,#2e [FALSE] c5e
  403. c5d: b0 RTRUE
  404. c5e: bb NEW_LINE
  405. c5f: 42 01 30 cd JL L00,#30 [TRUE] c6e
  406. c63: 43 01 37 c9 JG L00,#37 [TRUE] c6e
  407. c67: 55 01 30 02 SUB L00,#30 -> L01
  408. c6b: 8c 00 07 JUMP c73
  409. c6e: cd 4f 02 ff ff STORE L01,#ffff
  410. c73: 8c ff 21 JUMP b95
  411. c76: b0 RTRUE
  412. Routine c78, 3 locals
  413. c79: 0d 03 00 STORE L02,#00
  414. c7c: 41 01 08 4b JE L00,#08 [FALSE] c89
  415. c80: 8d 0c 6a PRINT_PADDR S138
  416. c83: 0d 03 02 STORE L02,#02
  417. c86: 8c 01 fa JUMP e81
  418. c89: 41 01 0d 4b JE L00,#0d [FALSE] c96
  419. c8d: 8d 0c 74 PRINT_PADDR S139
  420. c90: 0d 03 02 STORE L02,#02
  421. c93: 8c 01 ed JUMP e81
  422. c96: 41 01 1b 4b JE L00,#1b [FALSE] ca3
  423. c9a: 8d 0c 7e PRINT_PADDR S140
  424. c9d: 0d 03 02 STORE L02,#02
  425. ca0: 8c 01 e0 JUMP e81
  426. ca3: 42 01 20 69 JL L00,#20 [FALSE] cce
  427. ca7: b2 ... PRINT "control character 'ctrl-"
  428. cba: 54 01 40 00 ADD L00,#40 -> -(SP)
  429. cbe: da 2f 07 d0 00 CALL_2N 1f40 ((SP)+)
  430. cc3: b2 ... PRINT "'"
  431. cc6: cd 4f 03 ff ff STORE L02,#ffff
  432. ccb: 8c 01 b5 JUMP e81
  433. cce: 41 01 7f 5f JE L00,#7f [FALSE] cef
  434. cd2: b2 ... PRINT "control character 'delete'"
  435. ce7: cd 4f 03 ff ff STORE L02,#ffff
  436. cec: 8c 01 94 JUMP e81
  437. cef: 41 01 80 59 JE L00,#80 [FALSE] d0a
  438. cf3: b2 ... PRINT "undefined character"
  439. d02: cd 4f 03 ff ff STORE L02,#ffff
  440. d07: 8c 01 79 JUMP e81
  441. d0a: 42 01 80 5e JL L00,#80 [FALSE] d2a
  442. d0e: b2 ... PRINT "ASCII character '"
  443. d1f: da 2f 07 d0 01 CALL_2N 1f40 (L00)
  444. d24: b2 ... PRINT "'"
  445. d27: 8c 01 59 JUMP e81
  446. d2a: 42 01 9b 00 a3 JL L00,#9b [FALSE] dd0
  447. d2f: 0d 03 02 STORE L02,#02
  448. d32: 2d ff 01 STORE Gef,L00
  449. d35: 41 ff 81 4c JE Gef,#81 [FALSE] d43
  450. d39: b2 ... PRINT "cursor up"
  451. d40: 8c 00 8c JUMP dcd
  452. d43: 41 ff 82 4e JE Gef,#82 [FALSE] d53
  453. d47: b2 ... PRINT "cursor down"
  454. d50: 8c 00 7c JUMP dcd
  455. d53: 41 ff 83 4e JE Gef,#83 [FALSE] d63
  456. d57: b2 ... PRINT "cursor left"
  457. d60: 8c 00 6c JUMP dcd
  458. d63: 41 ff 84 4e JE Gef,#84 [FALSE] d73
  459. d67: b2 ... PRINT "cursor right"
  460. d70: 8c 00 5c JUMP dcd
  461. d73: c1 95 ff 85 86 87 d7 JE Gef,#85,#86,#87 [TRUE] d8f
  462. d7a: c1 95 ff 88 89 8a d0 JE Gef,#88,#89,#8a [TRUE] d8f
  463. d81: c1 95 ff 8b 8c 8d c9 JE Gef,#8b,#8c,#8d [TRUE] d8f
  464. d88: c1 95 ff 8e 8f 90 57 JE Gef,#8e,#8f,#90 [FALSE] da4
  465. d8f: b2 ... PRINT "function key "
  466. d9a: 55 01 84 00 SUB L00,#84 -> -(SP)
  467. d9e: e6 bf 00 PRINT_NUM (SP)+
  468. da1: 8c 00 2b JUMP dcd
  469. da4: c1 95 ff 91 92 93 d4 JE Gef,#91,#92,#93 [TRUE] dbd
  470. dab: c1 95 ff 94 95 96 cd JE Gef,#94,#95,#96 [TRUE] dbd
  471. db2: c1 95 ff 97 98 99 c6 JE Gef,#97,#98,#99 [TRUE] dbd
  472. db9: 41 ff 9a 52 JE Gef,#9a [FALSE] dcd
  473. dbd: b2 ... PRINT "keypad key "
  474. dc6: 55 01 91 00 SUB L00,#91 -> -(SP)
  475. dca: e6 bf 00 PRINT_NUM (SP)+
  476. dcd: 8c 00 b3 JUMP e81
  477. dd0: 42 01 e0 79 JL L00,#e0 [FALSE] e0b
  478. dd4: 55 01 9b 00 SUB L00,#9b -> -(SP)
  479. dd8: 54 00 01 00 ADD (SP)+,#01 -> -(SP)
  480. ddc: e9 7f fe PULL Gee
  481. ddf: e8 bf fe PUSH Gee
  482. de2: 42 fe 00 c6 JL Gee,#00 [TRUE] dea
  483. de6: 42 fe 46 d5 JL Gee,#46 [TRUE] dfd
  484. dea: fa 19 5f 06 55 1d fe 45 03 01
  485. CALL_VN2 1954 (#1d,Gee,#45,#03,#01)
  486. df4: a0 00 42 JZ (SP)+ [FALSE] df7
  487. df7: e8 7f 00 PUSH #00
  488. dfa: 8c 00 08 JUMP e03
  489. dfd: cf 2f 04 fc 00 00 LOADW #04fc,(SP)+ -> -(SP)
  490. e03: da 2f 07 dd 00 CALL_2N 1f74 ((SP)+)
  491. e08: 8c 00 78 JUMP e81
  492. e0b: 42 01 fc 59 JL L00,#fc [FALSE] e26
  493. e0f: b2 ... PRINT "undefined character"
  494. e1e: cd 4f 03 ff ff STORE L02,#ffff
  495. e23: 8c 00 5d JUMP e81
  496. e26: 42 01 ff 00 44 JL L00,#ff [FALSE] e6d
  497. e2b: 0d 03 02 STORE L02,#02
  498. e2e: 2d ff 01 STORE Gef,L00
  499. e31: 41 ff fc 4e JE Gef,#fc [FALSE] e41
  500. e35: b2 ... PRINT "menu click"
  501. e3e: 8c 00 2b JUMP e6a
  502. e41: 41 ff fd 54 JE Gef,#fd [FALSE] e57
  503. e45: b2 ... PRINT "mouse double-click"
  504. e54: 8c 00 15 JUMP e6a
  505. e57: 41 ff fe 51 JE Gef,#fe [FALSE] e6a
  506. e5b: b2 ... PRINT "mouse single-click"
  507. e6a: 8c 00 16 JUMP e81
  508. e6d: cd 4f 03 ff ff STORE L02,#ffff
  509. e72: b2 ... PRINT "undefined character"
  510. e81: 41 02 01 69 JE L01,#01 [FALSE] eac
  511. e85: 2d ff 03 STORE Gef,L02
  512. e88: c1 8f ff ff ff 56 JE Gef,#ffff [FALSE] ea2
  513. e8e: b2 ... PRINT " (should NOT occur)"
  514. e9f: 8c 00 09 JUMP ea9
  515. ea2: 41 ff 02 45 JE Gef,#02 [FALSE] ea9
  516. ea6: 8d 0c 88 PRINT_PADDR S141
  517. ea9: 8c 00 20 JUMP eca
  518. eac: 41 02 02 5c JE L01,#02 [FALSE] eca
  519. eb0: 2d ff 03 STORE Gef,L02
  520. eb3: c1 8f ff ff ff 53 JE Gef,#ffff [FALSE] eca
  521. eb9: b2 ... PRINT " (should NOT occur)"
  522. eca: b0 RTRUE
  523. Routine ecc, 4 locals
  524. ecd: 8d 0c 90 PRINT_PADDR S142
  525. ed0: 8d 0c bf PRINT_PADDR S143
  526. ed3: 90 01 80 71 JZ #01 [TRUE] f46
  527. ed7: b2 ... PRINT "
  528. AccentedInput> "
  529. ee8: d5 1f 00 50 03 00 SUB #0050,#03 -> -(SP)
  530. eee: f9 06 07 b2 05 c2 00 00 CALL_VN 1ec8 (#05c2,#00,(SP)+)
  531. ef6: f9 05 07 b2 05 c2 01 00 CALL_VN 1ec8 (#05c2,#01,#00)
  532. efe: cd 4f 01 05 c2 STORE L00,#05c2
  533. f03: 0d 02 00 STORE L01,#00
  534. f06: e4 bf 01 02 READ L00 -> L01
  535. f0a: bb NEW_LINE
  536. f0b: e0 07 07 a1 05 c2 01 04 CALL_VS 1e84 (#05c2,#01) -> L03
  537. f13: a0 04 43 JZ L03 [FALSE] f17
  538. f16: b0 RTRUE
  539. f17: 0d 02 00 STORE L01,#00
  540. f1a: 62 02 04 67 JL L01,L03 [FALSE] f43
  541. f1e: 34 02 02 00 ADD #02,L01 -> -(SP)
  542. f22: e0 0b 07 a1 05 c2 00 03 CALL_VS 1e84 (#05c2,(SP)+) -> L02
  543. f2a: b2 ... PRINT "code="
  544. f31: e6 bf 03 PRINT_NUM L02
  545. f34: b2 ... PRINT ": "
  546. f37: f9 27 03 1e 03 01 CALL_VN c78 (L02,#01)
  547. f3d: bb NEW_LINE
  548. f3e: 95 02 INC L01
  549. f40: 8c ff d9 JUMP f1a
  550. f43: 8c ff 8f JUMP ed3
  551. f46: b0 RTRUE
  552. Routine f48, 1 local
  553. f49: 8d 0c c8 PRINT_PADDR S144
  554. f4c: 90 01 80 44 JZ #01 [TRUE] f92
  555. f50: b2 ... PRINT "AccentedInput> "
  556. f5f: 88 06 29 01 CALL_1S 18a4 -> L00
  557. f63: 41 01 2e 54 JE L00,#2e [FALSE] f79
  558. f67: b2 ... PRINT "
  559. Test finished.
  560. "
  561. f78: b0 RTRUE
  562. f79: b2 ... PRINT "
  563. code="
  564. f82: e6 bf 01 PRINT_NUM L00
  565. f85: b2 ... PRINT ": "
  566. f88: f9 27 03 1e 01 02 CALL_VN c78 (L00,#02)
  567. f8e: bb NEW_LINE
  568. f8f: 8c ff bc JUMP f4c
  569. f92: b0 RTRUE
  570. Routine f94, 2 locals
  571. f95: e0 17 07 a1 00 01 02 CALL_VS 1e84 (#00,#01) -> L01
  572. f9c: 49 02 80 00 AND L01,#80 -> -(SP)
  573. fa0: a0 00 cb JZ (SP)+ [TRUE] fac
  574. fa3: 0d 01 01 STORE L00,#01
  575. fa6: 8d 0c e9 PRINT_PADDR S145
  576. fa9: 8c 00 08 JUMP fb2
  577. fac: 0d 01 00 STORE L00,#00
  578. faf: 8d 0c f8 PRINT_PADDR S146
  579. fb2: 8d 0d 08 PRINT_PADDR S147
  580. fb5: 90 01 80 79 JZ #01 [TRUE] 1030
  581. fb9: 8d 0d 44 PRINT_PADDR S148
  582. fbc: b2 ... PRINT "TimedKey> "
  583. fc7: 88 06 29 02 CALL_1S 18a4 -> L01
  584. fcb: 41 02 2e 43 JE L01,#2e [FALSE] fd0
  585. fcf: b0 RTRUE
  586. fd0: bb NEW_LINE
  587. fd1: 0d 12 00 STORE G02,#00
  588. fd4: cd 4f 11 ff a3 STORE G01,#ffa3
  589. fd9: f6 53 01 0a 04 0d 02 READ_CHAR #01,#0a,1034 -> L01
  590. fe0: bb NEW_LINE
  591. fe1: c1 8f 11 ff a3 60 JE G01,#ffa3 [FALSE] 1005
  592. fe7: 8d 0d 5b PRINT_PADDR S149
  593. fea: a0 01 4e JZ L00 [FALSE] ff9
  594. fed: 8d 0d 89 PRINT_PADDR S150
  595. ff0: da 0f 07 dd 08 2f CALL_2N 1f74 (S001)
  596. ff6: 8c 00 0b JUMP 1002
  597. ff9: 8d 0d 92 PRINT_PADDR S151
  598. ffc: da 0f 07 dd 08 3b CALL_2N 1f74 (S002)
  599. 1002: 8c 00 29 JUMP 102c
  600. 1005: a0 11 5d JZ G01 [FALSE] 1023
  601. 1008: 8d 0d 9b PRINT_PADDR S152
  602. 100b: a0 01 4e JZ L00 [FALSE] 101a
  603. 100e: 8d 0d a8 PRINT_PADDR S153
  604. 1011: da 0f 07 dd 08 3b CALL_2N 1f74 (S002)
  605. 1017: 8c 00 08 JUMP 1020
  606. 101a: da 0f 07 dd 08 2f CALL_2N 1f74 (S001)
  607. 1020: 8c 00 0b JUMP 102c
  608. 1023: 8d 0d b8 PRINT_PADDR S154
  609. 1026: da 0f 07 dd 08 3b CALL_2N 1f74 (S002)
  610. 102c: bb NEW_LINE
  611. 102d: 8c ff 87 JUMP fb5
  612. 1030: b0 RTRUE
  613. Routine 1034, 1 local
  614. 1035: 2d 11 01 STORE G01,L00
  615. 1038: b2 ... PRINT "* "
  616. 103d: 95 12 INC G02
  617. 103f: 41 12 0a 46 JE G02,#0a [FALSE] 1047
  618. 1043: bb NEW_LINE
  619. 1044: 0d 12 00 STORE G02,#00
  620. 1047: b1 RFALSE
  621. Routine 1048, 3 locals
  622. 1049: e0 17 07 a1 00 01 03 CALL_VS 1e84 (#00,#01) -> L02
  623. 1050: 49 03 80 00 AND L02,#80 -> -(SP)
  624. 1054: a0 00 cb JZ (SP)+ [TRUE] 1060
  625. 1057: 0d 01 01 STORE L00,#01
  626. 105a: 8d 0d c5 PRINT_PADDR S155
  627. 105d: 8c 00 08 JUMP 1066
  628. 1060: 0d 01 00 STORE L00,#00
  629. 1063: 8d 0d d4 PRINT_PADDR S156
  630. 1066: 8d 0d e4 PRINT_PADDR S157
  631. 1069: 8d 0e 17 PRINT_PADDR S158
  632. 106c: 8d 0e 40 PRINT_PADDR S159
  633. 106f: b2 ... PRINT "TimedString> "
  634. 107c: 88 06 29 03 CALL_1S 18a4 -> L02
  635. 1080: 41 03 2e 43 JE L02,#2e [FALSE] 1085
  636. 1084: b0 RTRUE
  637. 1085: bb NEW_LINE
  638. 1086: b2 ... PRINT "Beginning test...
  639. "
  640. 1099: cd 4f 11 ff a3 STORE G01,#ffa3
  641. 109e: 0d 12 00 STORE G02,#00
  642. 10a1: 90 01 80 9e JZ #01 [TRUE] 1141
  643. 10a5: b2 ... PRINT "TimedString> "
  644. 10b2: d5 1f 00 50 03 00 SUB #0050,#03 -> -(SP)
  645. 10b8: f9 06 07 b2 05 c2 00 00 CALL_VN 1ec8 (#05c2,#00,(SP)+)
  646. 10c0: f9 05 07 b2 05 c2 01 00 CALL_VN 1ec8 (#05c2,#01,#00)
  647. 10c8: cd 4f 02 05 c2 STORE L01,#05c2
  648. 10cd: 0d 03 00 STORE L02,#00
  649. 10d0: e4 94 02 00 0a 04 67 03 READ L01,#00,#0a,119c -> L02
  650. 10d8: bb NEW_LINE
  651. 10d9: e0 07 07 a1 05 c2 01 00 CALL_VS 1e84 (#05c2,#01) -> -(SP)
  652. 10e1: a0 00 48 JZ (SP)+ [FALSE] 10ea
  653. 10e4: 8d 0e 57 PRINT_PADDR S160
  654. 10e7: 8c 00 3b JUMP 1123
  655. 10ea: b2 ... PRINT "You just typed ""
  656. 10f7: 0d 03 00 STORE L02,#00
  657. 10fa: e0 07 07 a1 05 c2 01 00 CALL_VS 1e84 (#05c2,#01) -> -(SP)
  658. 1102: 62 03 00 58 JL L02,(SP)+ [FALSE] 111c
  659. 1106: 34 02 03 00 ADD #02,L02 -> -(SP)
  660. 110a: e0 0b 07 a1 05 c2 00 00 CALL_VS 1e84 (#05c2,(SP)+) -> -(SP)
  661. 1112: da 2f 07 d0 00 CALL_2N 1f40 ((SP)+)
  662. 1117: 95 03 INC L02
  663. 1119: 8c ff e0 JUMP 10fa
  664. 111c: b2 ... PRINT "".
  665. "
  666. 1123: e0 07 07 a1 05 c2 01 00 CALL_VS 1e84 (#05c2,#01) -> -(SP)
  667. 112b: 41 00 01 51 JE (SP)+,#01 [FALSE] 113e
  668. 112f: e0 07 07 a1 05 c2 02 00 CALL_VS 1e84 (#05c2,#02) -> -(SP)
  669. 1137: 41 00 2e 45 JE (SP)+,#2e [FALSE] 113e
  670. 113b: 8c 00 05 JUMP 1141
  671. 113e: 8c ff 62 JUMP 10a1
  672. 1141: b2 ... PRINT "Test terminated.
  673. "
  674. 1150: c1 8f 11 ff a3 60 JE G01,#ffa3 [FALSE] 1174
  675. 1156: 8d 0e 63 PRINT_PADDR S161
  676. 1159: a0 01 4e JZ L00 [FALSE] 1168
  677. 115c: 8d 0e 91 PRINT_PADDR S162
  678. 115f: da 0f 07 dd 08 2f CALL_2N 1f74 (S001)
  679. 1165: 8c 00 0b JUMP 1171
  680. 1168: 8d 0e 9a PRINT_PADDR S163
  681. 116b: da 0f 07 dd 08 3b CALL_2N 1f74 (S002)
  682. 1171: 8c 00 29 JUMP 119b
  683. 1174: a0 11 5d JZ G01 [FALSE] 1192
  684. 1177: 8d 0e a3 PRINT_PADDR S164
  685. 117a: a0 01 4e JZ L00 [FALSE] 1189
  686. 117d: 8d 0e b0 PRINT_PADDR S165
  687. 1180: da 0f 07 dd 08 3b CALL_2N 1f74 (S002)
  688. 1186: 8c 00 08 JUMP 118f
  689. 1189: da 0f 07 dd 08 2f CALL_2N 1f74 (S001)
  690. 118f: 8c 00 0b JUMP 119b
  691. 1192: 8d 0e c0 PRINT_PADDR S166
  692. 1195: da 0f 07 dd 08 3b CALL_2N 1f74 (S002)
  693. 119b: b0 RTRUE
  694. Routine 119c, 1 local
  695. 119d: 2d 11 01 STORE G01,L00
  696. 11a0: 95 12 INC G02
  697. 11a2: 41 12 03 48 JE G02,#03 [FALSE] 11ac
  698. 11a6: 0d 12 00 STORE G02,#00
  699. 11a9: 8d 0e cd PRINT_PADDR S167
  700. 11ac: b1 RFALSE
  701. Routine 11b0, 2 locals
  702. 11b1: 8d 0e d7 PRINT_PADDR S168
  703. 11b4: 8d 0f 08 PRINT_PADDR S169
  704. 11b7: 8d 0f 2d PRINT_PADDR S170
  705. 11ba: b2 ... PRINT "Preload> Given"
  706. 11c9: d5 1f 00 50 03 00 SUB #0050,#03 -> -(SP)
  707. 11cf: f9 06 07 b2 05 c2 00 00 CALL_VN 1ec8 (#05c2,#00,(SP)+)
  708. 11d7: f9 05 07 b2 05 c2 01 05 CALL_VN 1ec8 (#05c2,#01,#05)
  709. 11df: f9 05 07 b2 05 c2 02 47 CALL_VN 1ec8 (#05c2,#02,#47)
  710. 11e7: f9 05 07 b2 05 c2 03 69 CALL_VN 1ec8 (#05c2,#03,#69)
  711. 11ef: f9 05 07 b2 05 c2 04 76 CALL_VN 1ec8 (#05c2,#04,#76)
  712. 11f7: f9 05 07 b2 05 c2 05 65 CALL_VN 1ec8 (#05c2,#05,#65)
  713. 11ff: f9 05 07 b2 05 c2 06 6e CALL_VN 1ec8 (#05c2,#06,#6e)
  714. 1207: cd 4f 02 05 c2 STORE L01,#05c2
  715. 120c: 0d 01 00 STORE L00,#00
  716. 120f: e4 bf 02 01 READ L01 -> L00
  717. 1213: e0 07 07 a1 05 c2 01 00 CALL_VS 1e84 (#05c2,#01) -> -(SP)
  718. 121b: a0 00 5c JZ (SP)+ [FALSE] 1238
  719. 121e: b2 ... PRINT "You just typed a blank line.
  720. "
  721. 1235: 8c 00 39 JUMP 126f
  722. 1238: b2 ... PRINT "You just typed ""
  723. 1245: 0d 01 00 STORE L00,#00
  724. 1248: e0 07 07 a1 05 c2 01 00 CALL_VS 1e84 (#05c2,#01) -> -(SP)
  725. 1250: 62 01 00 58 JL L00,(SP)+ [FALSE] 126a
  726. 1254: 34 02 01 00 ADD #02,L00 -> -(SP)
  727. 1258: e0 0b 07 a1 05 c2 00 00 CALL_VS 1e84 (#05c2,(SP)+) -> -(SP)
  728. 1260: da 2f 07 d0 00 CALL_2N 1f40 ((SP)+)
  729. 1265: 95 01 INC L00
  730. 1267: 8c ff e0 JUMP 1248
  731. 126a: b2 ... PRINT "".
  732. "
  733. 126f: b0 RTRUE
  734. Routine 1270, 4 locals
  735. 1271: 8d 0f 49 PRINT_PADDR S171
  736. 1274: e0 17 07 a1 10 01 02 CALL_VS 1e84 (#10,#01) -> L01
  737. 127b: 49 02 10 00 AND L01,#10 -> -(SP)
  738. 127f: a0 00 c8 JZ (SP)+ [TRUE] 1288
  739. 1282: 0d 01 01 STORE L00,#01
  740. 1285: 8c 00 05 JUMP 128b
  741. 1288: 0d 01 00 STORE L00,#00
  742. 128b: a0 01 c8 JZ L00 [TRUE] 1294
  743. 128e: 8d 0f 58 PRINT_PADDR S172
  744. 1291: 8c 00 05 JUMP 1297
  745. 1294: 8d 0f 66 PRINT_PADDR S173
  746. 1297: 0d 03 01 STORE L02,#01
  747. 129a: 0d 04 00 STORE L03,#00
  748. 129d: b2 ... PRINT "Simulating first move...
  749. "
  750. 12b2: be 09 ff 02 SAVE_UNDO -> L01
  751. 12b6: 2d ff 02 STORE Gef,L01
  752. 12b9: c1 8f ff ff ff 50 JE Gef,#ffff [FALSE] 12cd
  753. 12bf: 8d 0f 75 PRINT_PADDR S174
  754. 12c2: 0d 03 00 STORE L02,#00
  755. 12c5: cd 4f 04 ff ff STORE L03,#ffff
  756. 12ca: 8c 00 71 JUMP 133c
  757. 12cd: 41 ff 00 58 JE Gef,#00 [FALSE] 12e7
  758. 12d1: b2 ... PRINT "Save failed.
  759. "
  760. 12de: 0d 03 00 STORE L02,#00
  761. 12e1: 0d 04 00 STORE L03,#00
  762. 12e4: 8c 00 57 JUMP 133c
  763. 12e7: 41 ff 01 54 JE Gef,#01 [FALSE] 12fd
  764. 12eb: b2 ... PRINT "Save succeeded.
  765. "
  766. 12fa: 8c 00 41 JUMP 133c
  767. 12fd: 41 ff 02 4e JE Gef,#02 [FALSE] 130d
  768. 1301: 8d 0f 82 PRINT_PADDR S175
  769. 1304: 0d 03 00 STORE L02,#00
  770. 1307: 0d 04 02 STORE L03,#02
  771. 130a: 8c 00 31 JUMP 133c
  772. 130d: b2 ... PRINT "Save gave unknown result code
  773. "
  774. 1324: e6 bf 02 PRINT_NUM L01
  775. 1327: b2 ... PRINT " -- ERROR.
  776. "
  777. 1336: 0d 03 00 STORE L02,#00
  778. 1339: 0d 04 00 STORE L03,#00
  779. 133c: a0 03 81 1d JZ L02 [TRUE] 145b
  780. 1340: b2 ... PRINT "
  781. Simulating second move...
  782. "
  783. 1357: be 09 ff 02 SAVE_UNDO -> L01
  784. 135b: 2d ff 02 STORE Gef,L01
  785. 135e: c1 8f ff ff ff 50 JE Gef,#ffff [FALSE] 1372
  786. 1364: 8d 0f 89 PRINT_PADDR S176
  787. 1367: 0d 03 00 STORE L02,#00
  788. 136a: cd 4f 04 ff ff STORE L03,#ffff
  789. 136f: 8c 00 eb JUMP 145b
  790. 1372: 41 ff 00 58 JE Gef,#00 [FALSE] 138c
  791. 1376: b2 ... PRINT "Save failed.
  792. "
  793. 1383: 0d 03 00 STORE L02,#00
  794. 1386: 0d 04 00 STORE L03,#00
  795. 1389: 8c 00 d1 JUMP 145b
  796. 138c: 41 ff 01 54 JE Gef,#01 [FALSE] 13a2
  797. 1390: b2 ... PRINT "Save succeeded.
  798. "
  799. 139f: 8c 00 bb JUMP 145b
  800. 13a2: 41 ff 02 00 87 JE Gef,#02 [FALSE] 142c
  801. 13a7: 8d 0f 96 PRINT_PADDR S177
  802. 13aa: 8d 0f 9d PRINT_PADDR S178
  803. 13ad: b2 ... PRINT "MultipleUndo> "
  804. 13bc: 88 06 29 02 CALL_1S 18a4 -> L01
  805. 13c0: bb NEW_LINE
  806. 13c1: 41 02 2e 4b JE L01,#2e [FALSE] 13ce
  807. 13c5: 0d 03 00 STORE L02,#00
  808. 13c8: 0d 04 01 STORE L03,#01
  809. 13cb: 8c 00 8f JUMP 145b
  810. 13ce: b2 ... PRINT "
  811. Second undo...
  812. "
  813. 13df: be 0a ff 02 RESTORE_UNDO -> L01
  814. 13e3: 2d ff 02 STORE Gef,L01
  815. 13e6: 41 ff 00 52 JE Gef,#00 [FALSE] 13fa
  816. 13ea: b2 ... PRINT "Undo failed.
  817. "
  818. 13f7: 8c 00 2b JUMP 1423
  819. 13fa: b2 ... PRINT "Undo gave unknown result code
  820. "
  821. 1411: e6 bf 02 PRINT_NUM L01
  822. 1414: b2 ... PRINT " -- ERROR.
  823. "
  824. 1423: 0d 04 00 STORE L03,#00
  825. 1426: 0d 03 00 STORE L02,#00
  826. 1429: 8c 00 31 JUMP 145b
  827. 142c: b2 ... PRINT "Save gave unknown result code
  828. "
  829. 1443: e6 bf 02 PRINT_NUM L01
  830. 1446: b2 ... PRINT " -- ERROR.
  831. "
  832. 1455: 0d 03 00 STORE L02,#00
  833. 1458: 0d 04 00 STORE L03,#00
  834. 145b: a0 03 80 85 JZ L02 [TRUE] 14e2
  835. 145f: 8d 0f d2 PRINT_PADDR S179
  836. 1462: b2 ... PRINT "SingleUndo> "
  837. 146f: 88 06 29 02 CALL_1S 18a4 -> L01
  838. 1473: bb NEW_LINE
  839. 1474: 41 02 2e 4d JE L01,#2e [FALSE] 1483
  840. 1478: 0d 03 00 STORE L02,#00
  841. 147b: cd 4f 04 ff fe STORE L03,#fffe
  842. 1480: 8c 00 61 JUMP 14e2
  843. 1483: b2 ... PRINT "
  844. First undo...
  845. "
  846. 1492: be 0a ff 02 RESTORE_UNDO -> L01
  847. 1496: 2d ff 02 STORE Gef,L01
  848. 1499: 41 ff 00 58 JE Gef,#00 [FALSE] 14b3
  849. 149d: b2 ... PRINT "Undo failed.
  850. "
  851. 14aa: 0d 03 00 STORE L02,#00
  852. 14ad: 0d 04 00 STORE L03,#00
  853. 14b0: 8c 00 31 JUMP 14e2
  854. 14b3: b2 ... PRINT "Undo gave unknown result code
  855. "
  856. 14ca: e6 bf 02 PRINT_NUM L01
  857. 14cd: b2 ... PRINT " -- ERROR.
  858. "
  859. 14dc: 0d 03 00 STORE L02,#00
  860. 14df: 0d 04 00 STORE L03,#00
  861. 14e2: bb NEW_LINE
  862. 14e3: 2d ff 04 STORE Gef,L03
  863. 14e6: c1 8f ff ff fe 54 JE Gef,#fffe [FALSE] 14fe
  864. 14ec: b2 ... PRINT "Test cancelled.
  865. "
  866. 14fb: 8c 00 7d JUMP 1579
  867. 14fe: c1 8f ff ff ff 5d JE Gef,#ffff [FALSE] 151f
  868. 1504: a0 01 ce JZ L00 [TRUE] 1513
  869. 1507: 8d 0f de PRINT_PADDR S180
  870. 150a: da 0f 07 dd 08 3b CALL_2N 1f74 (S002)
  871. 1510: 8c 00 0b JUMP 151c
  872. 1513: 8d 0f f8 PRINT_PADDR S181
  873. 1516: da 0f 07 dd 08 2f CALL_2N 1f74 (S001)
  874. 151c: 8c 00 5c JUMP 1579
  875. 151f: 41 ff 00 5d JE Gef,#00 [FALSE] 153e
  876. 1523: a0 01 ce JZ L00 [TRUE] 1532
  877. 1526: 8d 10 0c PRINT_PADDR S182
  878. 1529: da 0f 07 dd 08 3b CALL_2N 1f74 (S002)
  879. 152f: 8c 00 0b JUMP 153b
  880. 1532: 8d 10 18 PRINT_PADDR S183
  881. 1535: da 0f 07 dd 08 3b CALL_2N 1f74 (S002)
  882. 153b: 8c 00 3d JUMP 1579
  883. 153e: 41 ff 01 5d JE Gef,#01 [FALSE] 155d
  884. 1542: a0 01 ce JZ L00 [TRUE] 1551
  885. 1545: 8d 10 34 PRINT_PADDR S184
  886. 1548: da 0f 07 dd 08 2f CALL_2N 1f74 (S001)
  887. 154e: 8c 00 0b JUMP 155a
  888. 1551: 8d 10 3f PRINT_PADDR S185
  889. 1554: da 0f 07 dd 08 3b CALL_2N 1f74 (S002)
  890. 155a: 8c 00 1e JUMP 1579
  891. 155d: 41 ff 02 5a JE Gef,#02 [FALSE] 1579
  892. 1561: a0 01 ce JZ L00 [TRUE] 1570
  893. 1564: 8d 10 4d PRINT_PADDR S186
  894. 1567: da 0f 07 dd 08 2f CALL_2N 1f74 (S001)
  895. 156d: 8c 00 0b JUMP 1579
  896. 1570: 8d 10 5f PRINT_PADDR S187
  897. 1573: da 0f 07 dd 08 3b CALL_2N 1f74 (S002)
  898. 1579: b0 RTRUE
  899. Routine 157c, 1 local
  900. 157d: 8d 10 74 PRINT_PADDR S188
  901. 1580: 8d 10 a4 PRINT_PADDR S189
  902. 1583: b2 ... PRINT "ClosingText> "
  903. 1590: 88 06 29 01 CALL_1S 18a4 -> L00
  904. 1594: 41 01 2e 52 JE L00,#2e [FALSE] 15a8
  905. 1598: b2 ... PRINT "
  906. Test aborted.
  907. "
  908. 15a7: b0 RTRUE
  909. 15a8: 8d 10 cc PRINT_PADDR S190
  910. 15ab: ba Q

Large files files are truncated, but you can click here to view the full file