PAUSE.SRC 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673
  1. ************************************************************************
  2. * *
  3. * 044 [ART OF FIGHT] *
  4. * PAUSE PROGRAM *
  5. * *
  6. ************************************************************************
  7. XDEF PAUSE
  8. XREF ?A5
  9. SECT GAME,,C
  10. INCLUDE SYS.INC
  11. INCLUDE MACRO.INC @@@
  12. INCLUDE NEO_GEO.INC @@@
  13. INCLUDE LABEL.INC
  14. INCLUDE SMACRO.INC
  15. INCLUDE SCODE.INC
  16. INCLUDE EASY_MAC.INC @@@
  17. PAUSE:
  18. MOVE.W STOP_STEP(A5),D0
  19. ADD.W D0,D0
  20. ADD.W D0,D0
  21. JMP PAUSE_VECTOR(PC,D0.W)
  22. PAUSE_VECTOR:
  23. JMP NON_PAUSE(PC)
  24. JMP NORMAL_PAUSE(PC)
  25. JMP FREEZ_PAUSE(PC)
  26. JMP SOUND_TEST(PC)
  27. JMP RGB_TEST(PC)
  28. NON_PAUSE:
  29. JSR PAUSE_BUTTON(PC)
  30. BNE PAUSE_SET
  31. RTS
  32. PAUSE_SET:
  33. MOVE.W D4,D0
  34. LSR.W #2,D0
  35. ADDQ.W #1,D0
  36. MOVE.W D0,STOP_STEP(A5)
  37. JMP PAUSE_INIT(PC,D4.W)
  38. PAUSE_INIT:
  39. JMP INIT_NORMAL_PAUSE(PC)
  40. JMP INIT_FREEZ_PAUSE(PC)
  41. JMP INIT_SOUND_TEST(PC)
  42. JMP INIT_RGB_TEST(PC)
  43. INIT_NORMAL_PAUSE:
  44. TST.W DEBUG_DIP1(A5)
  45. BNE.S INIT_NORMAL_PAUSE_1
  46. TST.B PAUSE_DI(A5)
  47. BEQ.S INIT_NORMAL_PAUSE_1
  48. CLR.W STOP_STEP(A5)
  49. RTS
  50. INIT_NORMAL_PAUSE_1:
  51. ADDQ.B #1,MESS_BUSY(A5)
  52. ADDQ.B #1,LSPC_BUSY(A5)
  53. LEA.L LSPC_DATA,A2
  54. MOVE.W #20H,2(A2)
  55. MOVE.W #7000H+20H*17+15,-2(A2)
  56. LEA.L PAUSE_BUFFER(A5),A0
  57. MOVEQ.L #5-1,D7
  58. PAUSE_PUSH:
  59. MOVE.W (A2),D0
  60. MOVE.W D0,(A2)
  61. MOVE.W D0,(A0)+
  62. DBRA D7,PAUSE_PUSH
  63. SUBQ.B #1,LSPC_BUSY(A5)
  64. SUBQ.B #1,MESS_BUSY(A5)
  65. MOVE.W #S_PAUSE,D0
  66. JSR.S SET_SOUND
  67. MESS_ON
  68. MOVE.L #M_PAUSE,(A0)+
  69. MESS_OFF
  70. RTS
  71. NORMAL_PAUSE:
  72. JSR PAUSE_BUTTON(PC)
  73. BEQ NORMAL_PAUSE_1
  74. MOVE.W #S_PAUSE,D0
  75. JSR.S SET_SOUND
  76. MESS_ON
  77. MOVE.L #M_PAUSE_OFF,(A0)+
  78. MESS_OFF
  79. CLR.W STOP_STEP(A5)
  80. NORMAL_PAUSE_1:
  81. RTS
  82. M_PAUSE:
  83. FIX_FORMAT.B CODE,23FFH
  84. FIX_AUTO 20H
  85. FIX_ADRS 17,15
  86. FIX_DIRECT_DATA
  87. DC.B 'PAUSE',0FFH
  88. FIX_END
  89. M_PAUSE_OFF:
  90. FIX_FORMAT.W NUM,5
  91. FIX_AUTO 20H
  92. FIX_ADRS 17,15
  93. FIX_DATA_ADRS PAUSE_BUFFER
  94. FIX_END
  95. INIT_FREEZ_PAUSE:
  96. MOVE.W LSPC_MODE_STORE(A5),D0
  97. MOVE.W D0,LSPC_MODE_STOP(A5)
  98. BSET.L #3,D0 auto action stop
  99. MOVE.W D0,LSPC_MODE_STORE(A5)
  100. MOVE.W D0,LSPC_MODE
  101. RTS
  102. FREEZ_PAUSE:
  103. JSR PAUSE_BUTTON(PC)
  104. BEQ.S FREEZ_PAUSE_1
  105. MOVE.W LSPC_MODE_STOP(A5),LSPC_MODE_STORE(A5)
  106. MOVE.W LSPC_MODE_STOP(A5),LSPC_MODE
  107. CLR.W STOP_STEP(A5)
  108. FREEZ_PAUSE_1:
  109. RTS
  110. INIT_SOUND_TEST1:
  111. MESS_ON
  112. MOVE.L #M_SOUND_TEST_OFF2,(A0)+
  113. MESS_OFF
  114. INIT_SOUND_TEST:
  115. MOVE.W #0,STOP_SUB_STEP(A5)
  116. MOVE.B #23H,SOUND_TEST_CODE(A5)
  117. MESS_ON
  118. MOVE.L #M_SOUND_TEST,(A0)+
  119. MESS_OFF
  120. RTS
  121. INIT_SOUND_TEST2:
  122. MOVE.W #1,STOP_SUB_STEP(A5)
  123. MOVE.B #23H,STC20(A5)
  124. MOVE.B #33H,STC21(A5)
  125. BSR INNER_CODE_READ
  126. MESS_ON
  127. MOVE.L #M_SOUND_TEST_OFF,(A0)+
  128. MOVE.L #M_SOUND_TEST2,(A0)+
  129. MESS_OFF
  130. RTS
  131. SOUND_TEST:
  132. TST.W STOP_SUB_STEP(A5)
  133. BNE SOUND_TEST2
  134. JSR PAUSE_BUTTON(PC)
  135. BEQ.S SOUND_TEST_1
  136. MESS_ON
  137. MOVE.L #M_SOUND_TEST_OFF,(A0)+
  138. MESS_OFF
  139. CLR.W STOP_STEP(A5)
  140. RTS
  141. SOUND_TEST_1:
  142. MOVE.B INPUT_1+4(A5),D0
  143. OR.B INPUT_2+4(A5),D0
  144. AND.W #UP+DOWN+LEFT+RIGHT,D0
  145. BEQ SOUND_TEST_2
  146. MOVE.B CODE_LEVER(PC,D0.W),D0
  147. ADD.B D0,SOUND_TEST_CODE+1(A5)
  148. MESS_ON
  149. MOVE.L #M_SOUND_TEST,(A0)+
  150. MESS_OFF
  151. RTS
  152. CODE_LEVER:
  153. DC.B 000H,0F0H,010H,000H
  154. DC.B 0FFH,0EFH,00FH,000H
  155. DC.B 001H,0F1H,011H,000H
  156. DC.B 000H,000H,000H,000H
  157. SOUND_TEST_2:
  158. MOVE.W #0,D0
  159. MOVE.B INPUT_1+3(A5),D1
  160. OR.B INPUT_2+3(A5),D1
  161. BMI INIT_SOUND_TEST2
  162. ADD.B D1,D1
  163. BMI.S SOUND_TEST_3 push C
  164. MOVE.W #1800H,D0
  165. ADD.B D1,D1
  166. BMI.S SOUND_TEST_3 push B
  167. MOVE.W #1A00H,D0
  168. ADD.B D1,D1
  169. BMI.S SOUND_TEST_3 push A
  170. RTS
  171. SOUND_TEST_3:
  172. MOVE.B SOUND_TEST_CODE+1(A5),D0
  173. MOVE.W D0,SOUND_CODE_W(A5)
  174. JSR.S SET_SOUND_DIRECT
  175. RTS
  176. INNER_CODE_READ:
  177. LEA.L SOUND_CODE_TBL,A1
  178. AND.B #1,STC20+1(A5)
  179. MOVE.B STC20+1(A5),(A5)
  180. MOVE.W (A5),D0
  181. MOVE.B STC20+2(A5),D0
  182. ADD.W D0,D0
  183. MOVE.B 0(A1,D0.W),STC21+1(A5)
  184. MOVE.B 1(A1,D0.W),STC21+2(A5)
  185. RTS
  186. INNER_CODE_WRITE:
  187. LEA.L SOUND_CODE_TBL,A1
  188. ADD.L #200000H,A1
  189. AND.B #1,STC20+1(A5)
  190. MOVE.B STC20+1(A5),(A5)
  191. MOVE.W (A5),D0
  192. MOVE.B STC20+2(A5),D0
  193. ADD.W D0,D0
  194. MOVE.B STC21+1(A5),0(A1,D0.W)
  195. MOVE.B STC21+2(A5),1(A1,D0.W)
  196. RTS
  197. SOUND_TEST2:
  198. JSR PAUSE_BUTTON(PC)
  199. BEQ.S SOUND_TEST2_1
  200. MESS_ON
  201. MOVE.L #M_SOUND_TEST_OFF2,(A0)+
  202. MESS_OFF
  203. CLR.W STOP_STEP(A5)
  204. RTS
  205. SOUND_TEST2_1:
  206. MOVE.B INPUT_1+2(A5),D4
  207. OR.B INPUT_2+2(A5),D4
  208. MOVE.B INPUT_1+3(A5),D1
  209. OR.B INPUT_2+3(A5),D1
  210. BMI INIT_SOUND_TEST1
  211. BTST.L #B_A_BUTTON,D1
  212. BNE.S SOUND_TEST2_6
  213. BTST.L #B_B_BUTTON,D1
  214. BNE SOUND_TEST2_8
  215. MOVEQ.L #0,D0
  216. MOVE.B INPUT_1+4(A5),D0
  217. OR.B INPUT_2+4(A5),D0
  218. AND.W #UP+DOWN+LEFT+RIGHT,D0
  219. LEA.L CODE_LEVER(PC),A0
  220. MOVE.B 0(A0,D0.W),D0
  221. BEQ SOUND_TEST2_5
  222. MOVEQ.L #-1,D2
  223. LEA.L STC21+1(A5),A0
  224. CMP.B #23H,STC21(A5)
  225. BEQ.S SOUND_TEST2_3
  226. MOVEQ.L #1,D2
  227. LEA.L STC20+1(A5),A0
  228. SOUND_TEST2_3:
  229. BTST.L #B_C_BUTTON,D4
  230. BNE.S SOUND_TEST2_2
  231. ADDQ.W #1,A0
  232. MOVEQ.L #-1,D2
  233. SOUND_TEST2_2:
  234. MOVE.B (A0),D3
  235. ADD.B D3,D0
  236. AND.B D2,D0
  237. MOVE.B D0,(A0)
  238. CMP.B #23H,STC21(A5)
  239. BEQ.S SOUND_TEST2_4
  240. BSR INNER_CODE_READ
  241. SOUND_TEST2_4:
  242. MESS_ON
  243. MOVE.L #M_SOUND_TEST2,(A0)+
  244. MESS_OFF
  245. SOUND_TEST2_5:
  246. RTS
  247. SOUND_TEST2_6:
  248. CMP.B #23H,STC21(A5)
  249. BNE.S SOUND_TEST2_7
  250. BSR INNER_CODE_WRITE
  251. SOUND_TEST2_7:
  252. MOVE.B STC20+1(A5),(A5)
  253. MOVE.W (A5),D0
  254. MOVE.B STC20+2(A5),D0
  255. ADD.W D0,D0
  256. JSR.S SET_SOUND
  257. RTS
  258. SOUND_TEST2_8:
  259. EOR.B #10H,STC20(A5)
  260. EOR.B #10H,STC21(A5)
  261. MESS_ON
  262. MOVE.L #M_SOUND_TEST2,(A0)+
  263. MESS_OFF
  264. RTS
  265. M_SOUND_TEST:
  266. FIX_FORMAT.B CODE,33FFH
  267. FIX_AUTO 20H
  268. FIX_ADRS 11,27
  269. FIX_DIRECT_DATA
  270. DC.B 'SOUND CODE DIRECT',0FFH
  271. FIX_ADRS 10,28
  272. FIX_PRINTF
  273. DC.B 'A=1A-'
  274. PARM 2,SOUND_TEST_CODE
  275. DC.B ' B=18-'
  276. PARM 2,SOUND_TEST_CODE
  277. DC.B ' C='
  278. PARM 2,SOUND_TEST_CODE
  279. DC.B 0FFH
  280. FIX_END
  281. M_SOUND_TEST_OFF:
  282. FIX_FORMAT.B CODE,33FFH
  283. FIX_AUTO 20H
  284. FIX_ADRS 11,27
  285. FIX_DIRECT_DATA
  286. DC.B ' ',0FFH
  287. FIX_ADRS 10,28
  288. FIX_DIRECT_DATA
  289. DC.B ' ',0FFH
  290. FIX_END
  291. M_SOUND_TEST2:
  292. FIX_FORMAT.B CODE,33FFH
  293. FIX_AUTO 20H
  294. FIX_ADRS 10,27
  295. FIX_DIRECT_DATA
  296. DC.B 'SOUND CODE INDIRECT',0FFH
  297. FIX_ADRS 6,28
  298. FIX_PRINTF
  299. DC.B 'CODE='
  300. PARM 3,STC20
  301. DC.B ' OUT='
  302. PARM 4,STC21
  303. DC.B ' C=HI-BYTE',0FFH
  304. FIX_END
  305. M_SOUND_TEST_OFF2:
  306. FIX_FORMAT.B CODE,33FFH
  307. FIX_AUTO 20H
  308. FIX_ADRS 10,27
  309. FIX_DIRECT_DATA
  310. DC.B ' ',0FFH
  311. FIX_ADRS 6,28
  312. FIX_DIRECT_DATA
  313. DC.B ' ',0FFH
  314. FIX_END
  315. INIT_RGB_TEST:
  316. MOVE.W #0,STOP_SUB_STEP(A5)
  317. MOVE.B #33H,TEST_PG(A5)
  318. AND.B #0FH,TEST_COLOR+1(A5)
  319. JSR TEST_COLOR_GET(PC)
  320. JSR RGB_PRINT(PC)
  321. RTS
  322. RGB_TEST:
  323. JSR PAUSE_BUTTON(PC)
  324. BEQ.S RGB_TEST_1
  325. MESS_ON
  326. MOVE.L #M_RGB_TEST_OFF,(A0)+
  327. MESS_OFF
  328. CLR.W STOP_STEP(A5)
  329. RTS
  330. RGB_TEST_1:
  331. MOVE.B INPUT_1+3(A5),D0
  332. OR.B INPUT_2+3(A5),D0
  333. ADD.B D0,D0
  334. BMI RGB_CANCEL
  335. ADD.B D0,D0
  336. BMI RGB_BACK
  337. ADD.B D0,D0
  338. BMI RGB_NEXT
  339. MOVE.B INPUT_1+4(A5),D1
  340. OR.B INPUT_2+4(A5),D1
  341. AND.W #0FH,D1
  342. LEA.L CODE_LEVER(PC),A0
  343. MOVE.B 0(A0,D1.W),D1
  344. BNE.S RGB_TEST_2
  345. RTS
  346. RGB_TEST_2:
  347. MOVE.W STOP_SUB_STEP(A5),D0
  348. ADD.W D0,D0
  349. ADD.W D0,D0
  350. JMP RGB_VECTOR(PC,D0.W)
  351. RGB_VECTOR:
  352. JMP RGB_PALETTE(PC)
  353. JMP RGB_COLOR_SET(PC)
  354. JMP RGB_R(PC)
  355. JMP RGB_G(PC)
  356. JMP RGB_B(PC)
  357. JMP AUTO_SPEED(PC)
  358. AUTO_SPEED:
  359. BCLR.B #3,LSPC_MODE_STORE+1(A5)
  360. ADD.B D1,LSPC_MODE_STORE(A5)
  361. BNE.S AUTO_SPEED_1
  362. BSET.B #3,LSPC_MODE_STORE+1(A5)
  363. AUTO_SPEED_1:
  364. MOVE.W LSPC_MODE_STORE(A5),LSPC_MODE
  365. JSR RGB_PRINT(PC)
  366. RTS
  367. RGB_PALETTE:
  368. ADD.B D1,TEST_PALETTE+1(A5)
  369. JSR TEST_COLOR_GET(PC)
  370. JSR RGB_PRINT(PC)
  371. RTS
  372. RGB_COLOR_SET:
  373. MOVE.B TEST_COLOR+1(A5),D0
  374. ADD.B D1,D0
  375. CMP.B #10H,D0
  376. BCS.S RGB_COLOR_1
  377. MOVE.B D0,D1
  378. ASR.B #4,D1
  379. ADD.B D1,TEST_PALETTE+1(A5)
  380. AND.B #0FH,D0
  381. RGB_COLOR_1:
  382. MOVE.B D0,TEST_COLOR+1(A5)
  383. JSR TEST_COLOR_GET(PC)
  384. JSR RGB_PRINT(PC)
  385. RTS
  386. RGB_R:
  387. LEA.L TEST_R+1(A5),A0
  388. JMP RGB_RGB(PC)
  389. RGB_G:
  390. LEA.L TEST_G+1(A5),A0
  391. JMP RGB_RGB(PC)
  392. RGB_B:
  393. LEA.L TEST_B+1(A5),A0
  394. RGB_RGB:
  395. MOVE.B (A0),D0
  396. ADD.B D1,D0
  397. AND.B #1FH,D0
  398. MOVE.B D0,(A0)
  399. JSR RGB_PRINT(PC)
  400. MOVEQ.L #0,D0
  401. MOVE.B TEST_PALETTE+1(A5),D0
  402. MOVE.W D0,D1
  403. LSR.W #4,D1
  404. LEA.L PG_NUMBER(A5),A1
  405. MOVE.B 0(A1,D1.W),(A5)
  406. MOVE.W (A5),D1
  407. LSL.W #4,D0
  408. ADD.B TEST_COLOR+1(A5),D0
  409. MOVE.B D0,D1
  410. ADD.W D0,D0
  411. ADD.W D1,D1
  412. LEA.L COLOR_BUFFER_0(A5),A2
  413. LEA.L R_TYPE+64,A6
  414. MOVEQ.L #0,D2
  415. MOVEQ.L #0,D3
  416. MOVEQ.L #0,D4
  417. MOVE.B TEST_R+1(A5),D2
  418. MOVE.B TEST_G+1(A5),D3
  419. MOVE.B TEST_B+1(A5),D4
  420. ADD.W D2,D2
  421. ADD.W D3,D3
  422. ADD.W D4,D4
  423. MOVE.W -64(A6,D2.W),D2
  424. OR.W 000(A6,D3.W),D2
  425. OR.W 064(A6,D4.W),D2
  426. MOVE.W D2,0(A2,D0.W)
  427. MOVE.L PALETTE_INFO(A5),A1
  428. ADD.L #200000H,A1
  429. MOVE.W D2,0(A1,D1.W)
  430. AND.W #0FE00H,D0
  431. MOVE.W #1,0(A2,D0.W)
  432. RTS
  433. RGB_CANCEL:
  434. MOVEQ.L #0,D0
  435. MOVE.B TEST_PALETTE+1(A5),D0
  436. MOVE.W D0,D1
  437. LSR.W #4,D1
  438. LEA.L PG_NUMBER(A5),A1
  439. MOVE.B 0(A1,D1.W),(A5)
  440. MOVE.W (A5),D1
  441. LSL.W #4,D0
  442. ADD.B TEST_COLOR+1(A5),D0
  443. MOVE.B D0,D1
  444. ADD.W D0,D0
  445. ADD.W D1,D1
  446. LEA.L COLOR_BUFFER_0(A5),A2
  447. LEA.L COLOR_BUFFER(A5),A3
  448. MOVE.L PALETTE_INFO(A5),A1
  449. ADD.L #200000H,A1
  450. MOVE.W 0(A3,D0.W),0(A2,D0.W)
  451. MOVE.W 0(A2,D0.W),0(A1,D1.W)
  452. AND.W #0FE00H,D0
  453. MOVE.W #1,0(A2,D0.W)
  454. JSR TEST_COLOR_GET(PC)
  455. JSR RGB_PRINT(PC)
  456. RTS
  457. RGB_BACK:
  458. MOVEQ.L #-1,D0
  459. JMP RGB_NEXT_1(PC)
  460. RGB_NEXT:
  461. MOVEQ.L #1,D0
  462. RGB_NEXT_1:
  463. ADD.W STOP_SUB_STEP(A5),D0
  464. BPL.S RGB_NEXT_2
  465. MOVEQ.L #5,D0
  466. RGB_NEXT_2:
  467. CMP.B #6,D0
  468. BCS.S RGB_NEXT_3
  469. MOVEQ.L #0,D0
  470. RGB_NEXT_3:
  471. MOVE.W D0,STOP_SUB_STEP(A5)
  472. JSR RGB_PRINT(PC)
  473. RTS
  474. TEST_COLOR_GET:
  475. MOVEQ.L #0,D0
  476. MOVE.B TEST_PALETTE+1(A5),D0
  477. MOVE.W D0,D1
  478. LSR.W #4,D1
  479. LEA.L PG_NUMBER(A5),A1
  480. MOVE.B 0(A1,D1.W),TEST_PG+1(A5)
  481. LSL.W #4,D0
  482. ADD.B TEST_COLOR+1(A5),D0
  483. ADD.W D0,D0
  484. LEA.L COLOR_BUFFER_0(A5),A2
  485. MOVEQ.L #0FH,D5
  486. MOVE.B 0(A2,D0.W),D2
  487. AND.W D5,D2
  488. MOVE.W 0(A2,D0.W),D1
  489. MOVE.W D1,D3
  490. MOVE.B D3,D4
  491. ADD.W D1,D1
  492. ADD.W D1,D1
  493. ADDX.B D2,D2
  494. MOVE.B D2,TEST_R+1(A5)
  495. LSR.B #4,D3
  496. AND.W D5,D3
  497. ADD.W D1,D1
  498. ADDX.B D3,D3
  499. MOVE.B D3,TEST_G+1(A5)
  500. AND.W D5,D4
  501. ADD.W D1,D1
  502. ADDX.B D4,D4
  503. MOVE.B D4,TEST_B+1(A5)
  504. RTS
  505. RGB_PRINT:
  506. MOVE.W STOP_SUB_STEP(A5),D0
  507. ADD.W D0,D0
  508. MOVE.W D0,D1
  509. ADD.W D0,D0
  510. ADD.W D1,D0
  511. MOVE.B RGB_ATTR+0(PC,D0.W),TEST_PALETTE(A5)
  512. MOVE.B RGB_ATTR+1(PC,D0.W),TEST_COLOR(A5)
  513. MOVE.B RGB_ATTR+2(PC,D0.W),TEST_R(A5)
  514. MOVE.B RGB_ATTR+3(PC,D0.W),TEST_G(A5)
  515. MOVE.B RGB_ATTR+4(PC,D0.W),TEST_B(A5)
  516. MOVE.B RGB_ATTR+5(PC,D0.W),LSPC_MODE_STORE-1(A5)
  517. MESS_ON
  518. MOVE.L #M_RGB_TEST,(A0)+
  519. MESS_OFF
  520. RTS
  521. RGB_ATTR:
  522. DC.B 23H,33H,33H,33H,33H,33H
  523. DC.B 33H,23H,33H,33H,33H,33H
  524. DC.B 33H,33H,23H,33H,33H,33H
  525. DC.B 33H,33H,33H,23H,33H,33H
  526. DC.B 33H,33H,33H,33H,23H,33H
  527. DC.B 33H,33H,33H,33H,33H,23H
  528. DS.W 0
  529. M_RGB_TEST:
  530. FIX_FORMAT.B CODE,33FFH
  531. FIX_AUTO 20H
  532. FIX_ADRS 6,27
  533. FIX_PRINTF
  534. DC.B 'RGB TEST PALETTE='
  535. PARM 2,TEST_PALETTE
  536. DC.B ' COLOR='
  537. PARM 1,TEST_COLOR
  538. DC.B 0FFH
  539. FIX_ADRS 4,28
  540. FIX_PRINTF
  541. DC.B 'R='
  542. PARM 2,TEST_R
  543. DC.B ' G='
  544. PARM 2,TEST_G
  545. DC.B ' B='
  546. PARM 2,TEST_B
  547. DC.B ' PG='
  548. PARM 2,TEST_PG
  549. DC.B ' AS='
  550. PARM 2,LSPC_MODE_STORE-1
  551. DC.B 0FFH
  552. FIX_END
  553. M_RGB_TEST_OFF:
  554. FIX_FORMAT.B CODE,33FFH
  555. FIX_AUTO 20H
  556. FIX_ADRS 6,27
  557. FIX_PRINTF
  558. DC.B ' ',0FFH
  559. FIX_ADRS 4,28
  560. FIX_DIRECT_DATA
  561. DC.B ' ',0FFH
  562. FIX_END
  563. PAUSE_BUTTON:
  564. TST.W STOP_STEP(A5)
  565. BNE.S PAUSE_BUTTON_2
  566. MOVE.B INPUT_S+1(A5),D0
  567. MOVEQ.L #PAUSE_MODE,D4
  568. AND.B DEBUG_DIP2(A5),D4
  569. BEQ.S PAUSE_BUTTON_1
  570. PAUSE_BUTTON_2:
  571. MOVE.B INPUT_SS+1(A5),D0
  572. PAUSE_BUTTON_1:
  573. AND.W #P1_SELECT+P2_SELECT,D0
  574. RTS
  575. INCLUDE WORK.INC
  576.