MOVE_CHG.SRC 20 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143
  1. ;
  2. ; *** HERO ACTION CHANGE ***
  3. ;
  4. XDEF MOVE_CHANGE,CTRL_CHANGE
  5. XDEF SPECIAL_CHECK
  6. XDEF ATTACK_OFF,ATTACK_OFF_LM
  7. XDEF TO_JUMP
  8. XDEF JUMP_SET0,JUMP_SET1,JUMP_SET2,JUMP_SET3,JUMP_SET4
  9. XDEF JUMP_OFF
  10. XDEF ATTACK_A_CHG,ATTACK_B_CHG
  11. XDEF ATTACK_SET
  12. XDEF ATTACK_SETA
  13. XDEF ATTACK_SETB
  14. XDEF ATTACK_SET_HAOH
  15. XDEF ATTACK_SET_RIKI
  16. XDEF ATTACK_SET_RIKI2,RUN_SPA_SET
  17. XDEF RET100,RET100_OFF,HIT_LOCK_OFF
  18. XREF ?A5
  19. ;by HERO
  20. XREF Z_MINIMUM,DIR_CHANGE
  21. ;by ATTACK
  22. XREF ATTACK_DATA
  23. ;by HERO_SET
  24. XREF SET_TABLE
  25. ;by HERO_PM
  26. XREF SPIRIT_RANK
  27. SECT HERO,,C
  28. INCLUDE GAME_SYM.INC
  29. INCLUDE MACRO.INC
  30. INCLUDE NEO_GEO.INC
  31. INCLUDE LABEL.INC
  32. INCLUDE HFLAG.INC
  33. INCLUDE HERO_STP.INC
  34. INCLUDE ACT_GRP.INC
  35. INCLUDE CTRL_No.INC
  36. RET100:
  37. MOVEP.W MASTER_No(A6),D0
  38. CLR.B D0
  39. LEA.L -LOG(A5,D0.W),A4
  40. MOVE.W (A0)+,RET100_No(A4)
  41. RTS
  42. RET100_OFF:
  43. MOVEP.W MASTER_No(A6),D0
  44. CLR.B D0
  45. LEA.L -LOG(A5,D0.W),A4
  46. MOVE.B #0,DAMAGE_LOCK(A4)
  47. MOVE.B #0,DAMAGE_ACT_TYPE(A4)
  48. MOVE.W #6FH*2,D0 100RETU_STOP
  49. JSR.S SET_SOUND
  50. MOVE.W #52H*2,D0 ST_PUNCH
  51. JSR.S SET_SOUND
  52. RTS
  53. HIT_LOCK_OFF:
  54. MOVEP.W MASTER_No(A6),D0
  55. CLR.B D0
  56. LEA.L -LOG(A5,D0.W),A4
  57. MOVE.B #0,DAMAGE_LOCK(A4)
  58. RTS
  59. HK3_DIRECT_CHECK:
  60. TST.B CTRL_FLAG(A6)
  61. BNE.S HK3DC_1
  62. RTS
  63. HK3DC_1:
  64. MOVE.W DIRECT_CTRL(A6),D4
  65. DIRECT_SET:
  66. ADDQ.W #4,SP
  67. CTRL_CHANGE:
  68. ; in) D4 = CTRL_No
  69. AND.W #7FH,D4
  70. MOVE.W D4,REG_D4(A5)
  71. MOVE.W HERO_TYPE(A6),D1
  72. ADD.W D1,D1
  73. ADD.W D1,D1
  74. LEA.L SET_TABLE(PC),A2
  75. MOVE.L 40(A2,D1.W),A0
  76. MOVEQ.L #0,D0
  77. MOVE.B 0(A0,D4.W),D0
  78. BPL.S CTRL_CHANGE_1
  79. MOVEQ.L #0,D0
  80. RTS
  81. CTRL_CHANGE_1:
  82. MOVE.L 0(A2,D1.W),A1
  83. ADD.W D0,D0
  84. ADD.W D0,D0
  85. MOVE.W D0,REG_D0(A5)
  86. ADD.W D0,D0
  87. LEA.L 0(A1,D0.W),A1
  88. LEA.L 4(A1),A0
  89. MOVE.L (A1),A1
  90. JMP (A1)
  91. RUN_SPA_SET:
  92. CMP.B #96,HERO_SPIRIT(A6)
  93. BLO RS_NON
  94. MOVE.W HERO_LIFE(A6),D0
  95. CMP.W #32,D0
  96. BHI RS_NON
  97. ; MOVE.L ANOTHER_PLAYER(A6),A1
  98. ; CMP.W #64,HERO_LIFE(A1)
  99. ; BLO RS_NON
  100. JMP ATTACK_SET(PC)
  101. RS_NON:
  102. MOVEQ.L #0,D0
  103. RTS
  104. ATTACK_SET_RIKI:
  105. LEA.L SPIRIT_RANK(PC),A1
  106. MOVE.B HERO_SPIRIT(A6),D0
  107. CMP.B 1(A1),D0
  108. BCC ATTACK_SET
  109. ADDQ.W #4,REG_D0(A5)
  110. LEA.L 8(A0),A0
  111. CMP.B (A1),D0
  112. BCC ATTACK_SET
  113. ADDQ.W #4,REG_D0(A5)
  114. LEA.L 8(A0),A0
  115. BRA ATTACK_SET
  116. ATTACK_SET_RIKI2:
  117. LEA.L SPIRIT_RANK(PC),A1
  118. MOVE.B HERO_SPIRIT(A6),D0
  119. CMP.B 1(A1),D0
  120. BCC ATTACK_SET
  121. ADDQ.W #8,REG_D0(A5)
  122. LEA.L 16(A0),A0
  123. CMP.B (A1),D0
  124. BCC ATTACK_SET
  125. ADDQ.W #8,REG_D0(A5)
  126. LEA.L 16(A0),A0
  127. BRA ATTACK_SET
  128. ATTACK_SET_HAOH:
  129. TST.B IN_BONUS(A5)
  130. BNE ATTACK_SET
  131. BTST.B #4,PHASE+1(A5)
  132. BNE.S ASH_1
  133. BTST.B #BPS_COM_FLAG,PLAYER_STATE+PLAYER_OFFSET(A6)
  134. BEQ ASH_1
  135. TST.W HAOH_USE(A5)
  136. BEQ ASH_NON
  137. ASH_1:
  138. MOVE.W HERO_TYPE(A6),D0
  139. ADD.W D0,D0
  140. ADD.W D0,D0
  141. LEA.L ATTACK_DATA(PC),A1
  142. MOVE.L 0(A1,D0.W),A1
  143. MOVE.W REG_D0(A5),D1
  144. ADD.W D1,D1
  145. ADD.W D1,D1
  146. MOVE.B 5(A1,D1.W),D0
  147. CMP.B HERO_SPIRIT(A6),D0
  148. BLS.S ATTACK_SET
  149. ASH_NON:
  150. MOVE.W #40H,D4
  151. JMP CTRL_CHANGE(PC)
  152. ATTACK_SETB:
  153. ; MOVE.B #1,BEFOR_ATTACK(A6)
  154. BSET.B #BHS_KICK,HERO_STATE(A6)
  155. BRA.S ATTACK_SET
  156. ATTACK_SETA:
  157. ; MOVE.B #0,BEFOR_ATTACK(A6)
  158. BSET.B #BHS_PUNCH,HERO_STATE(A6)
  159. ATTACK_SET:
  160. MOVE.B #1,REV_TRIG_OFF(A6)
  161. MOVE.W REG_D4(A5),ACT_CTRL(A6)
  162. MOVE.W (A0),HERO_ACT_No(A6)
  163. CMP.W #04000H,(A0)
  164. BCS.S ATTACK_SET_1
  165. MOVE.L 4(A0),ADRS1(A4)
  166. MOVE.L 8(A0),CML_STACK(A4)
  167. ATTACK_SET_1:
  168. MOVE.B 3(A0),COUNTER_LEVEL(A6)
  169. MOVE.B #1,MASTER_REQUEST(A4)
  170. CLR.B CTRL_FLAG(A6)
  171. JSR ATTACK_LEVEL_SET(PC)
  172. JSR DAMAGE_STEP_OFF(PC)
  173. BSET.B #BHF_NO_DIR_CHG,FLAG(A6)
  174. MOVE.B #ATTACK_STEP,STEP1(A6)
  175. MOVEQ.L #1,D0
  176. RTS
  177. ATTACK_LEVEL_SET:
  178. MOVE.W HERO_TYPE(A6),D0
  179. CMP.W #9,D0
  180. BNE.S ALS_0000
  181. BTST.B #4,PHASE+1(A5)
  182. BEQ.S ALS_0000
  183. MOVEQ.L #0,D0
  184. ALS_0000:
  185. ADD.W D0,D0
  186. ADD.W D0,D0
  187. LEA.L ATTACK_DATA(PC),A0
  188. MOVE.L 0(A0,D0.W),A0
  189. MOVE.W REG_D0(A5),D1
  190. ADD.W D1,D1
  191. ADD.W D1,D1
  192. LEA.L 0(A0,D1.W),A0
  193. MOVE.B 3(A0),GARD_LEVEL(A6)
  194. BTST.B #4,PHASE+1(A5)
  195. BNE.S ALS_0101
  196. MOVE.B 4(A0),GARD_LEVEL(A6)
  197. ALS_0101:
  198. MOVE.B 5(A0),NEED_SPIRIT(A6)
  199. MOVE.B 6(A0),HIT_STOP(A6)
  200. MOVE.B 7(A0),HIT_LR(A6)
  201. MOVE.B 8(A0),DAMAGE_ACT_TYPE(A6)
  202. MOVE.B 9(A0),DAMAGE_LOCK(A6)
  203. MOVE.L 12(A0),HIT_SCORE(A6)
  204. BSR ATTACK_LEVEL_SUB
  205. MOVE.B D2,ATTACK_LEVEL(A6)
  206. BSR SPIRIT_DOWN
  207. RTS
  208. XDEF ATTACK_LEVEL_SUB
  209. ATTACK_LEVEL_SUB:
  210. MOVEQ.L #0,D2
  211. MOVE.B 1(A0),D2
  212. BTST.B #4,PHASE+1(A5)
  213. BNE.S ALS_0
  214. MOVE.B 0(A0),D2
  215. ALS_0:
  216. ; LEA.L SPIRIT_RANK(PC),A1
  217. ; MOVE.B HERO_SPIRIT(A6),D0
  218. ; CMP.B 1(A1),D0
  219. ; BCC.S ALS_01
  220. ; MOVE.B 2(A0),D2
  221. ; CMP.B (A1),D0
  222. ; BCC.S ALS_01
  223. ; MOVE.B 3(A0),D2
  224. ALS_01:
  225. BTST.B #BPS_COM_FLAG,PLAYER_STATE+PLAYER_OFFSET(A6)
  226. BNE.S ALS_1
  227. MULU ATTACK_MUL(A5),D2
  228. LSR.W #8,D2
  229. ALS_1:
  230. RTS
  231. SPIRIT_DOWN:
  232. MOVE.B HERO_SPIRIT(A6),SPIRIT_OLD(A6)
  233. MOVEQ.L #0,D0
  234. MOVE.B NEED_SPIRIT(A6),D0
  235. SUB.B D0,HERO_SPIRIT(A6)
  236. BHI.S SPIRIT_DOWN_1
  237. MOVE.B #1,HERO_SPIRIT(A6)
  238. SPIRIT_DOWN_1:
  239. RTS
  240. MOVE_CHANGE:
  241. ; hero move or action change by lever and button
  242. ; out) EQ = no change
  243. ; NE = change
  244. MOVE.B HERO_STATE(A6),D0
  245. AND.B #HS_PUNCH+HS_KICK+HS_SPECIAL+HS_AUTO,D0
  246. BNE.S MOVE_CHANGE_1
  247. BSR HK3_DIRECT_CHECK
  248. BTST.B #B_C_BUTTON,PLAY_LEVER+1(A6)
  249. BEQ.S MC_111
  250. BSR BK_CHECK
  251. MC_111:
  252. BTST.B #B_C_BUTTON,PLAY_LEVER+2(A6)
  253. BEQ MOVE_CHANGE_00
  254. TST.B REV_TRIG_OFF(A6)
  255. BNE MOVE_CHANGE_00
  256. MOVE.B #ATTACK_TIME2-1,ATTACK_TIMER(A6)
  257. BCLR.B #B_C_BUTTON,PLAY_LEVER(A6)
  258. MOVE.B #A_BUTTON,D0
  259. TST.B BEFOR_ATTACK(A6)
  260. BEQ.S MOVE_CHANGE_001
  261. MOVE.B #B_BUTTON,D0
  262. MOVE_CHANGE_001:
  263. OR.B D0,PLAY_LEVER+1(A6)
  264. MOVE_CHANGE_00:
  265. MOVE.W PLAY_LEVER(A6),D0
  266. BTST.L #B_A_BUTTON,D0
  267. BNE ATTACK_A_CHG
  268. BTST.L #B_B_BUTTON,D0
  269. BNE ATTACK_B_CHG
  270. BTST.L #B_D_BUTTON,D0
  271. BNE TO_COM
  272. BTST.L #B_UP+8,D0
  273. BNE TO_JUMP
  274. BTST.L #B_DOWN+8,D0
  275. BNE TO_SIT
  276. MOVE_CHANGE_1:
  277. MOVEQ.L #0,D0
  278. RTS
  279. TO_COM:
  280. BTST.B #BHS_JUMP,HERO_STATE(A6)
  281. BNE MOVE_CHANGE_1
  282. MOVE.L ANOTHER_PLAYER(A6),A0
  283. SUB.B #32,HERO_SPIRIT(A0)
  284. BHI.S TO_COM_1
  285. MOVE.B #1,HERO_SPIRIT(A0)
  286. TO_COM_1:
  287. MOVE.W #CTRL_COM,D4
  288. JMP CTRL_CHANGE(PC)
  289. TO_JUMP:
  290. JSR DIR_CHANGE(PC)
  291. MOVE.W #CTRL_JUMP,D4
  292. JMP CTRL_CHANGE(PC)
  293. TO_SIT:
  294. MOVE.W #CTRL_TO_SIT,D4
  295. JMP CTRL_CHANGE(PC)
  296. ATTACK_A_CHG:
  297. MOVE.B #0,BEFOR_ATTACK(A6)
  298. JSR ATTACK_JUDGE(PC)
  299. JMP CTRL_CHANGE(PC)
  300. BK_CHECK:
  301. BTST.B #BHS_JUMP,HERO_STATE(A6)
  302. BEQ BK_CHECK_NON
  303. TST.W VZ(A6)
  304. BPL.S ABC_000
  305. CMP.W #64,Z_POSITION(A6)
  306. BGT.S ABC_000
  307. RTS
  308. ABC_000:
  309. ADDQ.L #4,SP
  310. MOVE.B AREA_POSITION(A6),D0
  311. BEQ.S ATTACK_B_CHG_11
  312. MOVE.B ACT_ATTR(A4),D1
  313. EOR.B D0,D1
  314. AND.B #1,D1
  315. BNE.S ATTACK_B_CHG_11
  316. MOVE.L VZ(A6),D0
  317. BPL.S ATTACK_B_CHG_1
  318. NEG.L D0
  319. ATTACK_B_CHG_1:
  320. CMP.L #Z_MINIMUM,D0
  321. BCS TO_JKICKT
  322. ATTACK_B_CHG_11:
  323. MOVEQ.L #39H,D4
  324. JMP CTRL_CHANGE(PC)
  325. TO_JKICKT:
  326. MOVEQ.L #3AH,D4
  327. JMP CTRL_CHANGE(PC)
  328. XDEF LOCK_JUDGE
  329. BK_CHECK_NON:
  330. LOCK_JUDGE:
  331. MOVE.L ANOTHER_PLAYER(A6),A0
  332. CMP.B #5,STEP2(A0)
  333. BEQ LOCK_JUDGE_10
  334. MOVE.B #11110000B,D0 not HS_DEFENCE
  335. MOVE.B #11010000B,D1
  336. AND.B HERO_STATE(A6),D0
  337. BNE LOCK_JUDGE_10
  338. AND.B HERO_STATE(A0),D1
  339. BNE LOCK_JUDGE_10
  340. MOVE.W Z_POSITION(A6),D0
  341. CMP.W Z_POSITION(A0),D0
  342. BNE LOCK_JUDGE_10
  343. CMP.W #SHORT_AREA/2,TEMP_DISTANCE2(A5)
  344. BCC LOCK_JUDGE_10
  345. ; CMP.B #RIKI_STEP,STEP1(A0)
  346. ; BEQ NAGECK
  347. ; CMP.B #COM_STEP,STEP1(A0)
  348. ; BEQ NAGECK
  349. ; CMP.B #FURA_STEP,STEP1(A0)
  350. ; BNE LOCK_JUDGE_10
  351. NAGECK:
  352. BSR NAGE_EI_JUDGE
  353. BEQ LOCK_JUDGE_10
  354. CMP.W #0A0H,X_POSITION(A6)
  355. BCC NA_CK_1
  356. BTST.B #ACTAT_FLIP,ACT_ATTR(A4)
  357. BNE NA_CK_4
  358. BEQ NA_CK_3
  359. NA_CK_1:
  360. CMP.W #260H,X_POSITION(A6)
  361. BCS.S NA_CK_4
  362. BTST.B #ACTAT_FLIP,ACT_ATTR(A4)
  363. BEQ NA_CK_4
  364. NA_CK_3:
  365. BCHG.B #ACTAT_FLIP,ACT_ATTR(A4)
  366. MOVEP.W WORK_N0(A0),D0
  367. CLR.B D0
  368. BCHG.B #ACTAT_FLIP,ACT_ATTR(A5,D0.W)
  369. MOVE.L X_POSITION(A6),D1
  370. MOVE.L X_POSITION(A5,D0.W),X_POSITION(A6)
  371. MOVE.L D1,X_POSITION(A5,D0.W)
  372. NA_CK_4:
  373. BSET.B #BHSS_NAGERARE,STATE(A0)
  374. ADDQ.W #4,SP
  375. MOVE.W #2EH,D4
  376. JMP CTRL_CHANGE(PC)
  377. ; BSET.B #BHSS_LOCK_DEF,STATE(A0)
  378. ; BSET.B #BHSS_LOCK_OFF,STATE(A6)
  379. ; MOVE.B #LOCK_OFF_STEP,STEP1(A6)
  380. ; MOVE.B #60,LOCK_TIMER(A6)
  381. ; ADDQ.W #4,SP
  382. LOCK_JUDGE_10:
  383. RTS
  384. NAGE_EI_JUDGE:
  385. MOVE.W HERO_TYPE(A6),D0
  386. ADD.W D0,D0
  387. MOVE.W NAGE_BIT(PC,D0.W),D0
  388. MOVE.W HERO_TYPE(A0),D1
  389. BTST.L D1,D0
  390. RTS
  391. NAGE_BIT:
  392. ; FEDCBA9876543210
  393. DC.W 0000001111111111B H1
  394. DC.W 0000001111111111B H2
  395. DC.W 0000000000000000B E1
  396. DC.W 0000001111111111B E2
  397. DC.W 0000000000000000B E3
  398. DC.W 0000000000000000B E4
  399. DC.W 0000000000000000B E5
  400. DC.W 0000000000000000B E6
  401. DC.W 0000000000000000B E7
  402. DC.W 0000001111111111B E8
  403. ATTACK_B_CHG:
  404. MOVE.B #1,BEFOR_ATTACK(A6)
  405. JSR ATTACK_JUDGE(PC)
  406. ADD.W #10H,D4
  407. JMP CTRL_CHANGE(PC)
  408. ATTACK_JUDGE:
  409. SHORT_AREA EQU 16
  410. BTST.B #BHS_JUMP,HERO_STATE(A6)
  411. BNE AJ_JUMP
  412. MOVEQ.L #27H,D4
  413. BTST.B #BHS_DOWN,HERO_STATE(A6)
  414. BNE AJ_10
  415. BTST.B #B_C_BUTTON,PLAY_LEVER(A6)
  416. BNE AJ_LOW
  417. MOVEQ.L #20H,D4
  418. CMP.W #SHORT_AREA+16,TEMP_DISTANCE2(A5)
  419. BCC.S AJ_1
  420. MOVEQ.L #22H,D4
  421. AJ_1:
  422. MOVE.B ATTACK_TIMER(A6),D0
  423. BEQ AJ_2
  424. CMP.B #ATTACK_TIME2,D0
  425. BCC.S AJ_2
  426. ADDQ.W #1,D4
  427. AJ_2:
  428. AJ_10:
  429. RTS
  430. AJ_LOW:
  431. MOVEQ.L #24H,D4
  432. CMP.W #SHORT_AREA,TEMP_DISTANCE2(A5)
  433. BCC.S AJ_LOW_1
  434. MOVEQ.L #25H,D4
  435. AJ_LOW_1:
  436. RTS
  437. AJ_JUMP:
  438. TST.W VZ(A6)
  439. BPL.S AJJ_000
  440. CMP.W #64,Z_POSITION(A6)
  441. BGT.S AJJ_000
  442. ADDQ.L #4,SP
  443. MOVEQ.L #0,D0
  444. RTS
  445. AJJ_000:
  446. MOVEQ.L #28H,D4
  447. RTS
  448. AJ_NON:
  449. ADDQ.W #4,SP
  450. MOVEQ.L #0,D0
  451. RTS
  452. JUMP_SET0:
  453. MOVEP.W MASTER_No(A6),D0
  454. CLR.B D0
  455. LEA.L -LOG(A5,D0.W),A4
  456. BSR LEVER_DIRECTION
  457. BSR JUMP_SUB
  458. BSR JUMP_ATTACK_OFF
  459. RTS
  460. JUMP_SET3:
  461. MOVEP.W MASTER_No(A6),D0
  462. CLR.B D0
  463. LEA.L -LOG(A5,D0.W),A4
  464. BSR CHARA_DIRECTION
  465. BTST.B #BPS_COM_FLAG,PLAYER_STATE+PLAYER_OFFSET(A4)
  466. BEQ.S JUMP_SET3_COM
  467. BTST.B #B_UP,PLAY_LEVER(A4)
  468. BNE.S JUMP_SET3_1
  469. JUMP_SET3_COM:
  470. LEA.L 10(A0),A0
  471. BSR JUMP_SUB
  472. CLR.B ACT_COUNT(A6)
  473. RTS
  474. JUMP_SET3_1:
  475. BSR JUMP_SUB
  476. LEA.L 10(A0),A0
  477. RTS
  478. JUMP_SET1:
  479. MOVEP.W MASTER_No(A6),D0
  480. CLR.B D0
  481. LEA.L -LOG(A5,D0.W),A4
  482. BSR CHARA_DIRECTION
  483. BSR JUMP_SUB
  484. RTS
  485. JUMP_SET4:
  486. MOVEP.W MASTER_No(A6),D0
  487. CLR.B D0
  488. LEA.L -LOG(A5,D0.W),A4
  489. BSR CHARA_DIRECTION
  490. MOVEQ.L #0,D3
  491. MOVE.W #-90H,D5
  492. MOVE.W (A0)+,REG_D0(A5)
  493. MOVE.W #0,REG_D0+2(A5)
  494. BSR JUMP_SUB_0
  495. RTS
  496. JUMP_SET2:
  497. MOVEP.W MASTER_No(A6),D0
  498. CLR.B D0
  499. LEA.L -LOG(A5,D0.W),A4
  500. BSR LEVER_DIRECTION
  501. TST.B D4
  502. BNE.S JUMP_SET2_1
  503. BSR CHARA_DIRECTION
  504. JUMP_SET2_1:
  505. BSR JUMP_SUB
  506. RTS
  507. LEVER_DIRECTION:
  508. MOVE.W #CTRL_FRONT_JUMP,D0
  509. MOVEQ.L #LEFT+RIGHT,D4
  510. AND.B PLAY_LEVER(A4),D4
  511. BEQ.S LV_DIR_2
  512. BTST.L #B_LEFT,D4
  513. BNE.S LV_DIR_3
  514. BTST.B #ACTAT_FLIP,ACT_ATTR(A6)
  515. BEQ.S LV_DIR_1
  516. MOVE.W #CTRL_BACK_JUMP,D0
  517. LV_DIR_1:
  518. CMP.W #CTRL_JUMP,ACT_CTRL(A4)
  519. BNE.S LV_DIR_2
  520. MOVE.W D0,ACT_CTRL(A4)
  521. LV_DIR_2:
  522. RTS
  523. LV_DIR_3:
  524. BTST.B #ACTAT_FLIP,ACT_ATTR(A6)
  525. BNE.S LV_DIR_4
  526. MOVE.W #CTRL_BACK_JUMP,D0
  527. LV_DIR_4:
  528. CMP.W #CTRL_JUMP,ACT_CTRL(A4)
  529. BNE.S LV_DIR_5
  530. MOVE.W D0,ACT_CTRL(A4)
  531. LV_DIR_5:
  532. RTS
  533. CHARA_DIRECTION:
  534. MOVEQ.L #RIGHT,D4
  535. BTST.B #ACTAT_FLIP,ACT_ATTR(A6)
  536. BEQ.S CHARA_DIRECTION_1
  537. MOVEQ.L #LEFT,D4
  538. CHARA_DIRECTION_1:
  539. RTS
  540. JUMP_ATTACK_OFF:
  541. BCLR.B #7,HIT_OFF(A4)
  542. AND.B #"(HS_KICK+HS_PUNCH+HS_SPECIAL),HERO_STATE(A4)
  543. CLR.B ATTACK_TIMER(A4)
  544. CLR.B ATTACK_LEVEL(A4)
  545. CLR.B SPECIAL_No(A4)
  546. RTS
  547. NOP
  548. JUMP_OFF:
  549. MOVEP.W MASTER_No(A6),D0
  550. CLR.B D0
  551. LEA.L -LOG(A5,D0.W),A4
  552. BCLR.B #BHS_JUMP,HERO_STATE(A4)
  553. CLR.L VZ(A4)
  554. CLR.L VZ(A6)
  555. CLR.L Z_POSITION(A4)
  556. RTS
  557. JUMP_SUB:
  558. MOVE.L (A0)+,D3
  559. MOVE.W (A0)+,D5
  560. MOVE.L (A0)+,REG_D0(A5)
  561. JUMP_SUB_0:
  562. MOVE.W PLAYER_No+PLAYER_OFFSET(A4),D0
  563. BCLR.B D0,BACK2+MOVE_DIR(A5)
  564. BCLR.B #BHS_DOWN,HERO_STATE(A4)
  565. BSET.B #BHF_NO_BJUDGE,FLAG(A4)
  566. BSET.B #BHF_NO_DIR_CHG,FLAG(A4)
  567. BSET.B #BHS_JUMP,HERO_STATE(A4)
  568. MOVE.L D3,VZ(A4)
  569. MOVE.W D5,AZ(A4) org -90H
  570. MOVEQ.L #0,D0
  571. MOVEQ.L #0,D1
  572. AND.B #LEFT+RIGHT,D4
  573. BEQ.S JUMP_SUB_1
  574. MOVE.W REG_D0(A5),D0
  575. MOVE.W REG_D0+2(A5),D1
  576. AND.B #RIGHT,D4
  577. BNE.S JUMP_SUB_1
  578. NEG.W D0
  579. NEG.W D1
  580. JUMP_SUB_1:
  581. MOVE.W D0,JUMP_VX(A4)
  582. MOVE.W D1,JUMP_AX(A4)
  583. RTS
  584. ATTACK_OFF_LM:
  585. LEA.L (A6),A0
  586. ATTACK_OFF:
  587. ; attack efffect off
  588. ; in) A0 HERO1 or 2
  589. BCLR.B #7,HIT_OFF(A0)
  590. AND.B #"(HS_KICK+HS_PUNCH+HS_SPECIAL),HERO_STATE(A0)
  591. BCLR.B #BHF_NO_DIR_CHG,FLAG(A0)
  592. CLR.B ATTACK_TIMER(A0)
  593. CLR.B ATTACK_LEVEL(A0)
  594. CLR.B SPECIAL_No(A0)
  595. RTS
  596. DAMAGE_STEP_OFF:
  597. AND.B #7EH,HIT_OFF(A6)
  598. RTS
  599. SPECIAL_CHECK:
  600. MOVE.B HERO_STATE(A6),D0
  601. AND.B #HS_PUNCH+HS_KICK+HS_JUMP+HS_DAMAGE+HS_AUTO,D0
  602. BEQ.S SPC_1
  603. CLR.B SPECIAL_LEVER(A6)
  604. RTS
  605. SPC_1:
  606. MOVE.B PLAY_LEVER(A6),D1
  607. BTST.B #ACTAT_FLIP,ACT_ATTR(A4)
  608. BEQ.S SPC_2
  609. MOVEQ.L #LEFT,D0
  610. MOVEQ.L #RIGHT,D2
  611. AND.B D1,D0
  612. AND.B D1,D2
  613. AND.B #"(LEFT+RIGHT),D1
  614. LSL.B #1,D0
  615. LSR.B #1,D2
  616. OR.B D0,D1
  617. OR.B D2,D1
  618. SPC_2:
  619. MOVE.W HERO_TYPE(A6),D5
  620. ADD.W D5,D5
  621. ADD.W D5,D5
  622. ADD.W D5,D5
  623. LEA.L SPC_LEV_TBL(PC),A1
  624. MOVE.L 4(A1,D5.W),A0
  625. MOVEQ.L #0,D4
  626. MOVE.B SPECIAL_LEVER(A6),D4
  627. BNE SPC_6
  628. MOVE.L 0(A1,D5.W),A0
  629. SPC_3:
  630. MOVE.B (A0),D0
  631. BEQ SPC_5
  632. CMP.B D0,D1
  633. BEQ.S SPC_4
  634. ADDQ.W #4,A0
  635. BRA.S SPC_3
  636. SPC_4:
  637. MOVE.B 1(A0),SPECIAL_LEVER(A6)
  638. MOVE.B 2(A0),SPECIAL_TIMER(A6)
  639. SPC_5:
  640. RTS
  641. SPC_6:
  642. SUBQ.B #1,SPECIAL_TIMER(A6)
  643. BLE.S SPC_8
  644. ADD.W D4,D4
  645. ADD.W D4,D4
  646. ADD.W D4,D4
  647. CMP.B -8(A0,D4.W),D1
  648. BEQ.S SPC_9
  649. MOVEQ.L #0,D0
  650. MOVE.B 1(A0,D4.W),D0
  651. CMP.B 0(A0,D4.W),D1
  652. BEQ.S SPC_7
  653. MOVE.B 3(A0,D4.W),D0
  654. BEQ.S SPC_10
  655. CMP.B 2(A0,D4.W),D1
  656. BEQ.S SPC_7
  657. MOVE.B 5(A0,D4.W),D0
  658. BEQ.S SPC_10
  659. CMP.B 4(A0,D4.W),D1
  660. BEQ.S SPC_7
  661. MOVE.B 7(A0,D4.W),D0
  662. BEQ.S SPC_10
  663. CMP.B 6(A0,D4.W),D1
  664. BNE.S SPC_10
  665. SPC_7:
  666. MOVE.B D0,SPECIAL_LEVER(A6)
  667. ADD.W D0,D0
  668. ADD.W D0,D0
  669. ADD.W D0,D0
  670. MOVE.B 1(A0,D0.W),D2
  671. BNE.S SPC_9
  672. MOVE.W 2(A0,D0.W),DIRECT_CTRL(A6)
  673. MOVE.B #0FFH,CTRL_FLAG(A6)
  674. MOVE.B SPECIAL_TIMER(A6),SPECIAL_OUT(A6)
  675. SPC_8:
  676. CLR.B SPECIAL_LEVER(A6)
  677. SPC_9:
  678. RTS
  679. SPC_10:
  680. ; SUBQ.B #1,SPECIAL_TIMER(A6)
  681. RTS
  682. XDEF SPC_LEV_TBL
  683. SPC_LEV_TBL:
  684. DC.L H1_SPC_FIRST
  685. DC.L H1_SPC_NEXT
  686. DC.L H1_SPC_FIRST
  687. DC.L H1_SPC_NEXT
  688. DC.L E1_SPC_FIRST 1
  689. DC.L E1_SPC_NEXT
  690. DC.L E2_SPC_FIRST 2
  691. DC.L E2_SPC_NEXT
  692. DC.L E3_SPC_FIRST 3
  693. DC.L E3_SPC_NEXT
  694. DC.L E4_SPC_FIRST 4
  695. DC.L E4_SPC_NEXT
  696. DC.L E5_SPC_FIRST 5
  697. DC.L E5_SPC_NEXT
  698. DC.L E6_SPC_FIRST 6
  699. DC.L E6_SPC_NEXT
  700. DC.L E7_SPC_FIRST 7
  701. DC.L E7_SPC_NEXT
  702. DC.L E8_SPC_FIRST 8
  703. DC.L E8_SPC_NEXT
  704. SPTL1 EQU 40
  705. SPTL2 EQU 28
  706. SPTL3 EQU 80
  707. SPTL4 EQU 30
  708. H1_SPC_FIRST:
  709. DC.B DOWN+LEFT,6,SPTL3,0
  710. DC.B DOWN,1,SPTL1,0
  711. DC.B RIGHT,12,SPTL3,0
  712. DC.B 0,0
  713. H1_SPC_NEXT:
  714. DC.B DOWN,0,0,0,0,0,0,0 0
  715. DC.B DOWN+RIGHT,2,DOWN+LEFT,6,0,0,0,0 1
  716. DC.B RIGHT,3,0,0,0,0,0,0 2
  717. DC.B RIGHT+A_BUTTON,4,A_BUTTON,4 3
  718. DC.B C_BUTTON,29,RIGHT+B_BUTTON,8 3
  719. DC.W 0,40H,0,0 4
  720. DC.B DOWN+LEFT,0,0,0,0,0,0,0 5
  721. DC.B RIGHT,7,DOWN,10,0,0,0,0 6
  722. DC.B RIGHT+B_BUTTON,8,B_BUTTON,8 7
  723. DC.B RIGHT+UP+B_BUTTON,8,0,0 7
  724. DC.W 0,41H,0,0 8
  725. DC.B DOWN,0,0,0,0,0,0,0 9
  726. DC.B DOWN+RIGHT,2,RIGHT,7,0,0,0,0 10
  727. DC.B RIGHT,0,0,0,0,0,0,0 11
  728. DC.B LEFT,13,DOWN,20,0,0,0,0 12
  729. DC.B LEFT+DOWN,14,RIGHT,26,0,0,0,0 13
  730. DC.B DOWN,15,0,0,0,0,0,0 14
  731. DC.B DOWN+RIGHT,16,0,0,0,0,0,0 15
  732. DC.B RIGHT,17,0,0,0,0,0,0 16
  733. DC.B RIGHT+A_BUTTON,18,A_BUTTON,18 17
  734. DC.B RIGHT+UP+A_BUTTON,18,0,0 17
  735. DC.W 0,43H,0,0 18
  736. DC.B DOWN,0,0,0,0,0,0,0 19
  737. DC.B RIGHT+DOWN,21,0,0,0,0,0,0 20
  738. DC.B RIGHT+DOWN+A_BUTTON,22,0,0,0,0,0,0 21
  739. DC.W 0,26H,0,0 22
  740. DC.B DOWN,0,0,0,0,0,0,0 23
  741. DC.B LEFT,25,0,0,0,0,0,0 24
  742. DC.B RIGHT,26,0,0,0,0,0,0 25
  743. DC.B RIGHT+C_BUTTON,27,C_BUTTON,27,0,0,0,0 26
  744. DC.W 0,42H,0,0 27
  745. DC.B C_BUTTON,0,0,0,0,0,0,0 28
  746. DC.B A_BUTTON+C_BUTTON,30,0,0,0,0,0,0 29
  747. DC.W 0,44H,0,0 30
  748. E1_SPC_FIRST:
  749. DC.B DOWN,1,SPTL1,0
  750. DC.B 0,0
  751. E1_SPC_NEXT:
  752. DC.B DOWN,0,0,0,0,0,0,0 0
  753. DC.B DOWN+RIGHT,2,0,0,0,0,0,0 1
  754. DC.B RIGHT,3,0,0,0,0,0,0 2
  755. DC.B RIGHT+A_BUTTON,4,A_BUTTON,4 3
  756. DC.B RIGHT+UP+A_BUTTON,4,0,0 3
  757. DC.W 0,40H,0,0 4
  758. E2_SPC_FIRST:
  759. DC.B DOWN+LEFT,7,SPTL1,0
  760. DC.B DOWN,1,SPTL1,0
  761. DC.B 0,0
  762. E2_SPC_NEXT:
  763. DC.B DOWN,0,0,0,0,0,0,0 0
  764. DC.B DOWN+RIGHT,2,DOWN+LEFT,6,0,0,0,0 1
  765. DC.B RIGHT,3,0,0,0,0,0,0 2
  766. DC.B RIGHT+A_BUTTON,4,A_BUTTON,4 3
  767. DC.B RIGHT+B_BUTTON,5,B_BUTTON,5 3
  768. DC.W 0,40H,0,0 4
  769. DC.W 0,42H,0,0 5
  770. DC.B DOWN+LEFT,0,0,0,0,0,0,0 6
  771. DC.B RIGHT,8,DOWN,11,0,0,0,0 7
  772. DC.B RIGHT+B_BUTTON,9,B_BUTTON,9 8
  773. DC.B RIGHT+UP+B_BUTTON,9,0,0 8
  774. DC.W 0,41H,0,0 9
  775. DC.B DOWN,0,0,0,0,0,0,0 10
  776. DC.B DOWN+RIGHT,2,RIGHT,8,0,0,0,0 11
  777. E3_SPC_FIRST:
  778. DC.B DOWN+LEFT,7,SPTL1,0
  779. DC.B DOWN,1,SPTL1,0
  780. DC.B RIGHT,13,SPTL3,0
  781. DC.B 0,0
  782. E3_SPC_NEXT:
  783. DC.B DOWN,0,0,0,0,0,0,0 0
  784. DC.B DOWN+RIGHT,2,DOWN+LEFT,6,0,0,0,0 1
  785. DC.B RIGHT,3,0,0,0,0,0,0 2
  786. DC.B RIGHT+A_BUTTON,4,A_BUTTON,4 3
  787. DC.B RIGHT+B_BUTTON,5,B_BUTTON,5 3
  788. DC.W 0,40H,0,0 4
  789. DC.W 0,41H,0,0 5
  790. DC.B DOWN+LEFT,0,0,0,0,0,0,0 6
  791. DC.B RIGHT,8,DOWN,11,0,0,0,0 7
  792. DC.B RIGHT+B_BUTTON,9,B_BUTTON,9 8
  793. DC.B RIGHT+UP+B_BUTTON,9,0,0 8
  794. DC.W 0,42H,0,0 9
  795. DC.B DOWN,0,0,0,0,0,0,0 10
  796. DC.B DOWN+RIGHT,2,RIGHT,8,0,0,0,0 11
  797. DC.B RIGHT,0,0,0,0,0,0,0 12
  798. DC.B LEFT,14,0,0,0,0,0,0 13
  799. DC.B DOWN,15,RIGHT,17,0,0,0,0 14
  800. DC.B LEFT,16,0,0,0,0,0,0 15
  801. DC.B RIGHT,17,0,0,0,0,0,0 16
  802. DC.B RIGHT+C_BUTTON,18,0,0,0,0,0,0 17
  803. DC.W 0,43H,0,0 18
  804. E4_SPC_FIRST:
  805. DC.B DOWN+LEFT,6,SPTL3,0
  806. DC.B DOWN,1,SPTL1,0
  807. DC.B 0,0
  808. E4_SPC_NEXT:
  809. DC.B DOWN,0,0,0,0,0,0,0 0
  810. DC.B DOWN+RIGHT,2,DOWN+LEFT,6,0,0,0,0 1
  811. DC.B RIGHT,3,0,0,0,0,0,0 2
  812. DC.B RIGHT+B_BUTTON,4,B_BUTTON,4 3
  813. DC.B RIGHT+UP+B_BUTTON,4,0,0 3
  814. DC.W 0,41H,0,0 4
  815. DC.B DOWN+LEFT,0,0,0,0,0,0,0 5
  816. DC.B RIGHT,7,DOWN,10,LEFT,12,0,0 6
  817. DC.B RIGHT+B_BUTTON,8,B_BUTTON,8 7
  818. DC.B RIGHT+UP+B_BUTTON,8,0,0 7
  819. DC.W 0,40H,0,0 8
  820. DC.B DOWN,0,0,0,0,0,0,0 9
  821. DC.B DOWN+RIGHT,2,RIGHT,7,LEFT+DOWN,6,0,0 10
  822. DC.B LEFT,0,0,0,0,0,0,0 11
  823. DC.B LEFT+B_BUTTON,13,B_BUTTON,13 12
  824. DC.B LEFT+UP+B_BUTTON,13,LEFT+DOWN,6 12
  825. DC.W 0,42H,0,0
  826. E5_SPC_FIRST:
  827. DC.B DOWN,1,SPTL1,0
  828. DC.B 0,0
  829. E5_SPC_NEXT:
  830. DC.B DOWN,0,0,0,0,0,0,0 0
  831. DC.B DOWN+RIGHT,2,0,0,0,0,0,0 1
  832. DC.B RIGHT,3,0,0,0,0,0,0 2
  833. DC.B RIGHT+A_BUTTON,4,A_BUTTON,4 3
  834. DC.B RIGHT+B_BUTTON,5,B_BUTTON,5 3
  835. DC.W 0,40H,0,0 4
  836. DC.W 0,41H,0,0 5
  837. E6_SPC_FIRST:
  838. DC.B DOWN+LEFT,6,SPTL3,0
  839. DC.B DOWN,1,SPTL1,0
  840. DC.B 0,0
  841. E6_SPC_NEXT:
  842. DC.B DOWN,0,0,0,0,0,0,0 0
  843. DC.B DOWN+RIGHT,2,DOWN+LEFT,6,0,0,0,0 1
  844. DC.B RIGHT,3,0,0,0,0,0,0 2
  845. DC.B RIGHT+A_BUTTON,4,A_BUTTON,4 3
  846. DC.B RIGHT+UP+A_BUTTON,4,0,0 3
  847. DC.W 0,40H,0,0 4
  848. DC.B DOWN+LEFT,0,0,0,0,0,0,0 5
  849. DC.B RIGHT,7,DOWN,10,LEFT,12,0,0 6
  850. DC.B RIGHT+A_BUTTON,8,A_BUTTON,8 7
  851. DC.B RIGHT+UP+A_BUTTON,8,0,0 7
  852. DC.W 0,41H,0,0 8
  853. DC.B DOWN,0,0,0,0,0,0,0 9
  854. DC.B DOWN+RIGHT,2,RIGHT,7,LEFT+DOWN,6,0,0 10
  855. DC.B LEFT,0,0,0,0,0,0,0 11
  856. DC.B LEFT+B_BUTTON,13,B_BUTTON,13 12
  857. DC.B LEFT+UP+B_BUTTON,13,LEFT+DOWN,6 12
  858. DC.W 0,42H,0,0
  859. E7_SPC_FIRST:
  860. DC.B DOWN,1,SPTL1,0,0,0,0,0
  861. DC.B 0,0
  862. E7_SPC_NEXT:
  863. DC.B DOWN,0,0,0,0,0,0,0 0
  864. DC.B DOWN+RIGHT,2,0,0,0,0,0,0 1
  865. DC.B RIGHT,3,0,0,0,0,0,0 2
  866. DC.B RIGHT+UP,4,RIGHT+A_BUTTON,7 3
  867. DC.B A_BUTTON,7,RIGHT+UP+A_BUTTON,7 3
  868. DC.B UP,5,0,0,0,0,0,0 4
  869. DC.B UP+A_BUTTON,6,A_BUTTON,6,0,0,0,0 5
  870. DC.W 0,40H,0,0 6
  871. DC.W 0,42H,0,0 7
  872. E8_SPC_FIRST:
  873. DC.B DOWN+LEFT,6,SPTL1,0
  874. DC.B DOWN,1,SPTL1,0
  875. DC.B RIGHT,12,SPTL3,0
  876. DC.B LEFT,29,SPTL3,0
  877. DC.B 0,0
  878. E8_SPC_NEXT:
  879. DC.B DOWN,0,0,0,0,0,0,0 0
  880. DC.B DOWN+RIGHT,2,DOWN+LEFT,6,0,0,0,0 1
  881. DC.B RIGHT,3,0,0,0,0,0,0 2
  882. DC.B RIGHT+A_BUTTON,4,A_BUTTON,4 3
  883. DC.B RIGHT+UP+A_BUTTON,4,RIGHT+B_BUTTON,8 3
  884. DC.W 0,40H,0,0 4
  885. DC.B DOWN+LEFT,0,0,0,0,0,0,0 5
  886. DC.B RIGHT,7,DOWN,10,0,0,0,0 6
  887. DC.B RIGHT+B_BUTTON,8,B_BUTTON,8 7
  888. DC.B RIGHT+UP+B_BUTTON,8,0,0 7
  889. DC.W 0,41H,0,0 8
  890. DC.B DOWN,0,0,0,0,0,0,0 9
  891. DC.B DOWN+RIGHT,2,RIGHT,7,0,0,0,0 10
  892. DC.B RIGHT,0,0,0,0,0,0,0 11
  893. DC.B LEFT,13,DOWN,20,0,0,0,0 12
  894. DC.B LEFT+DOWN,14,RIGHT,26,0,0,0,0 13
  895. DC.B DOWN,15,0,0,0,0,0,0 14
  896. DC.B DOWN+RIGHT,16,0,0,0,0,0,0 15
  897. DC.B RIGHT,17,0,0,0,0,0,0 16
  898. DC.B RIGHT+A_BUTTON,18,A_BUTTON,18 17
  899. DC.B RIGHT+UP+A_BUTTON,18,0,0 17
  900. DC.W 0,43H,0,0 18
  901. DC.B DOWN,0,0,0,0,0,0,0 19
  902. DC.B RIGHT+DOWN,21,0,0,0,0,0,0 20
  903. DC.B RIGHT+DOWN+A_BUTTON,22,0,0,0,0,0,0 21
  904. DC.W 0,26H,0,0 22
  905. DC.B DOWN,0,0,0,0,0,0,0 23
  906. DC.B LEFT,25,0,0,0,0,0,0 24
  907. DC.B RIGHT,26,0,0,0,0,0,0 25
  908. DC.B RIGHT+C_BUTTON,27,C_BUTTON,27,0,0,0,0 26
  909. DC.W 0,42H,0,0 27
  910. DC.B LEFT,0,0,0,0,0,0,0 28
  911. DC.B RIGHT,30,LEFT+DOWN,6,0,0,0,0 29
  912. DC.B RIGHT+A_BUTTON,31,A_BUTTON,31,0,0,0,0 30
  913. DC.W 0,45H,0,0
  914. INCLUDE WORK.INC
  915.