Advertisement
Guest User

:(

a guest
Nov 30th, 2014
147
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 18.16 KB | None | 0 0
  1. .inesprg 1 ; 1 PRG bank
  2. .ineschr 1 ; 1 CHR bank
  3. .inesmap 0 ; No mapper
  4. .inesmir 1 ; Vertical mirroring
  5.  
  6. .rsset $0000 ; Zero page variables
  7. pointerLo0 .rs 1 ; 16 bit poiner low bits for first nametable
  8. pointerHi0 .rs 1 ; 16 bit poiner high bits for first nametable
  9. pointerLo1 .rs 1 ; 16 bit poiner low bits for second nametable
  10. pointerHi1 .rs 1 ; 16 bit poiner high bits for second nametable
  11. counterLo .rs 1 ; 16 bit counter low bits
  12. counterHi .rs 1 ; 16 bit counter high bits
  13. updateBg0 .rs 1 ; Flag for triggering nametable 0 update in NMI
  14. updateBg1 .rs 1 ; Flag for triggering nametable 1 update in NMI
  15. updateSpr .rs 1 ; Flag for triggering sprite update in NMI
  16. updatePal .rs 1 ; Flag for triggering palette update in NMI
  17. mainWait .rs 1 ; Flag for waiting for NMI to finish
  18. scrollX .rs 1 ; Scroll position in X axis
  19. scrollY .rs 1 ; Scroll position in Y axis
  20. input1 .rs 1 ; Joypad 1 input data
  21. input1Temp .rs 1 ; Temporary joypad 1 data for comparsion
  22. input2 .rs 1 ; Joypad 2 input data
  23. input2Temp .rs 1 ; Temporary joypad 2 data for comparsion
  24. joy2Flag .rs 1 ; Check if joypad 2 is used in debug mode
  25. lives .rs 1 ; Lives display
  26. livesCounter .rs 1 ; Lives counter
  27. bombs .rs 1 ; Bombs display
  28. bombsCounter .rs 1 ; Bombs counter
  29. weapon .rs 1 ; Weapon type
  30. scr0 .rs 1 ; Score 1s
  31. scr1 .rs 1 ; Score 10s
  32. scr2 .rs 1 ; Score 100s
  33. scr3 .rs 1 ; Score 1000s
  34. scr4 .rs 1 ; Score 10000s
  35. scr5 .rs 1 ; Score 100000s
  36. scr6 .rs 1 ; Score 1000000s
  37. scr7 .rs 1 ; Score 10000000s
  38. hiScr0 .rs 1 ; High score 1s
  39. hiScr1 .rs 1 ; High score 10s
  40. hiScr2 .rs 1 ; High score 100s
  41. hiScr3 .rs 1 ; High score 1000s
  42. hiScr4 .rs 1 ; High score 10000s
  43. hiScr5 .rs 1 ; High score 100000s
  44. hiScr6 .rs 1 ; High score 1000000s
  45. hiScr7 .rs 1 ; High score 10000000s
  46. timer0 .rs 1 ; Timer for background scolling speed
  47. timer1 .rs 1 ; Global timer 1
  48. timer2 .rs 1 ; Global timer 2
  49. timer3 .rs 1 ; Global timer 3
  50. timer4 .rs 1 ; Global timer 4
  51. timer5 .rs 1 ; Global timer 5
  52. timer6 .rs 1 ; Global timer 6
  53. timer7 .rs 1 ; Global timer 7
  54. timer8 .rs 1 ; Global timer 8
  55. timer9 .rs 1 ; Global timer 9
  56. timerA .rs 1 ; Global timer A
  57. timerB .rs 1 ; Global timer B
  58. timerC .rs 1 ; Global timer C
  59. timerD .rs 1 ; Global timer D
  60. timerE .rs 1 ; Global timer E
  61. timerF .rs 1 ; Global timer F
  62.  
  63. PPUCtrl = $2000 ; PPU control port
  64. PPUMask = $2001 ; PPU mask
  65. PPUStatus = $2002 ; PPU status
  66. OAMAddr = $2003 ; Object attribute memory address
  67. OAMData = $2004 ; Object attribute memory data
  68. PPUScroll = $2005 ; PPU scolling registers
  69. PPUAddr = $2006 ; PPU address
  70. PPUData = $2007 ; PPU data
  71.  
  72. PAL00 = $3F00 ; Background palette 0 colour 0
  73. PAL01 = $3F01 ; Background palette 0 colour 1
  74. PAL02 = $3F02 ; Background palette 0 colour 2
  75. PAL03 = $3F03 ; Background palette 0 colour 3
  76. PAL04 = $3F04 ; Background palette 1 colour 0
  77. PAL05 = $3F05 ; Background palette 1 colour 1
  78. PAL06 = $3F06 ; Background palette 1 colour 2
  79. PAL07 = $3F07 ; Background palette 1 colour 3
  80. PAL08 = $3F08 ; Background palette 2 colour 0
  81. PAL09 = $3F09 ; Background palette 2 colour 1
  82. PAL0A = $3F0A ; Background palette 2 colour 2
  83. PAL0B = $3F0B ; Background palette 2 colour 3
  84. PAL0C = $3F0C ; Background palette 3 colour 0
  85. PAL0D = $3F0D ; Background palette 3 colour 1
  86. PAL0E = $3F0E ; Background palette 3 colour 2
  87. PAL0F = $3F0F ; Background palette 3 colour 3
  88.  
  89. PAL10 = $3F10 ; Sprite palette 0 colour 0
  90. PAL11 = $3F11 ; Sprite palette 0 colour 1
  91. PAL12 = $3F12 ; Sprite palette 0 colour 2
  92. PAL13 = $3F13 ; Sprite palette 0 colour 3
  93. PAL14 = $3F14 ; Sprite palette 1 colour 0
  94. PAL15 = $3F15 ; Sprite palette 1 colour 1
  95. PAL16 = $3F16 ; Sprite palette 1 colour 2
  96. PAL17 = $3F17 ; Sprite palette 1 colour 3
  97. PAL18 = $3F18 ; Sprite palette 2 colour 0
  98. PAL19 = $3F19 ; Sprite palette 2 colour 1
  99. PAL1A = $3F1A ; Sprite palette 2 colour 2
  100. PAL1B = $3F1B ; Sprite palette 2 colour 3
  101. PAL1C = $3F1C ; Sprite palette 3 colour 0
  102. PAL1D = $3F1D ; Sprite palette 3 colour 1
  103. PAL1E = $3F1E ; Sprite palette 3 colour 2
  104. PAL1F = $3F1F ; Sprite palette 3 colour 3
  105.  
  106. SQ1Vol = $4000 ; Pulse 1 volume
  107. SQ1Sweep = $4001 ; Pulse 1 sweep
  108. SQ1Lo = $4002 ; Pulse 1 counter low bits
  109. SQ1Hi = $4003 ; Pulse 1 counter high bits
  110. SQ2Vol = $4004 ; Pulse 2 volume
  111. SQ2Sweep = $4005 ; Pulse 2 sweep
  112. SQ2Lo = $4006 ; Pulse 2 counter low bits
  113. SQ2Hi = $4007 ; Pulse 2 counter high bits
  114. TriLinear = $4008 ; Triangle
  115. TriLo = $400A ; Triangle counter low bits
  116. TriHi = $400B ; Triangle counter high bits
  117. NoiseVol = $400C ; Noise volume
  118. NoiseLo = $400E ; Noise counter low bits
  119. NoiseHi = $400F ; Noise counter high bits
  120. DMCFreq = $4010 ; DMC sample frequency
  121. DMCLoad = $4011 ; DMC sample load counter
  122. DMCStart = $4012 ; DMC sample start address
  123. DMCLen = $4013 ; DMC sample length
  124. OAMDMA = $4014 ; Object attribute memory DMA
  125. APUChn = $4015 ; APU channel control
  126. Joy1 = $4016 ; Joypad 1 port (A, B Select, Start, Up, Down, Left, Right)
  127. Joy2 = $4017 ; Joypad 2 port (A, B Select, Start, Up, Down, Left, Right)
  128.  
  129. .bank 0 ; PRG bank
  130. .org $8000
  131.  
  132. RESET: ; Reset routine
  133. SEI
  134. CLD
  135. LDX #$40
  136. STX Joy2 ; disable APU IRQ
  137. LDX #$FF
  138. TXS ; Stack set up
  139. INX
  140. STX PPUCtrl
  141. STX PPUMask
  142. STX DMCFreq
  143.  
  144. vBlankWait1: ; vBlank wait 1
  145. BIT PPUStatus
  146. BPL vBlankWait1
  147.  
  148. ClearMemory: ; Clear internal memory $0000 - $07FF
  149. LDA #$FF
  150. STA $0200, x ; Move sprites out of view
  151. LDA #$00
  152. STA $0000, x
  153. STA $0100, x
  154. STA $0300, x
  155. STA $0400, x
  156. STA $0500, x
  157. STA $0600, x
  158. STA $0700, x
  159. DEX
  160. BNE ClearMemory
  161.  
  162. LDA #LOW(Stage1Bg)
  163. STA pointerLo0
  164. LDA #HIGH(Stage1Bg)
  165. STA pointerHi0
  166. LDA #LOW(StatusBarBg)
  167. STA pointerLo1
  168. LDA #HIGH(StatusBarBg)
  169. STA pointerHi1
  170.  
  171. vBlankWait2: ; vBlank wait 2 - PPU should be in stable and usable state now
  172. BIT PPUStatus
  173. BPL vBlankWait2
  174.  
  175. UpdatePalette1:
  176. LDA PPUStatus ; Reset PPU Hi/Lo latch
  177. LDA #$3F ; Store Hi/Lo bytes of the background nametables
  178. STA PPUAddr
  179. LDA #$00
  180. STA PPUAddr
  181. TAX
  182. PalLoop1:
  183. LDA Stage1Palette, x
  184. STA PPUData
  185. INX
  186. CPX #$1F
  187. BNE PalLoop1
  188.  
  189. LDX #$01
  190. STX updateBg0
  191. STX updateBg1
  192.  
  193. LDA #%10010000
  194. STA PPUCtrl
  195. LDA #%00011110
  196. STA PPUMask
  197.  
  198. MainLoop: ; Main loop
  199.  
  200.  
  201.  
  202. LDY #$01
  203. STY mainWait
  204. MainLoopWait:
  205. CPY #$00
  206. BNE MainLoopWait
  207. JMP MainLoop
  208.  
  209. Joy1Read:
  210. LDA #$01
  211. STA Joy1
  212. LDA #$00
  213. STA Joy1
  214. LDX #$08
  215. Joy1Loop:
  216. PHA
  217. LDA Joy1
  218. AND #$03
  219. CMP #$01
  220. PLA
  221. ROR A
  222. DEX
  223. BNE Joy1Loop
  224.  
  225. Joy2Read:
  226. LDA #$01
  227. STA Joy2
  228. LDA #$00
  229. STA Joy2
  230. LDX #$08
  231. Joy2Loop:
  232. PHA
  233. LDA Joy2
  234. AND #$03
  235. CMP #$01
  236. PLA
  237. ROR A
  238. DEX
  239. BNE Joy2Loop
  240.  
  241. BgUpdate0: ; Background update code
  242. LDY updateBg0
  243. CPY #$01
  244. BNE SkipBg0
  245. LDA PPUStatus ; Reset PPU Hi/Lo latch
  246. LDA #$20 ; Store Hi/Lo bytes of the background nametables
  247. STA PPUAddr
  248. LDA #$00
  249. STA PPUAddr
  250. LDY #$00
  251. LDX #$04
  252. LDA #%00010000
  253. STA PPUCtrl
  254. BgLoop0: ; 16 bit loop for drawing background and loading attributes
  255. LDA [pointerLo0], y
  256. STA PPUData
  257. INY
  258. BNE BgLoop0
  259. INC pointerHi0
  260. DEX
  261. BNE BgLoop0
  262. LDA #$00
  263. STA updateBg0 ; Clear NMI flag for background
  264. LDA #%10010000
  265. STA PPUCtrl
  266. SkipBg0:
  267. RTS
  268.  
  269. BgUpdate1: ; Background update code
  270. LDY updateBg1
  271. CPY #$01
  272. BNE SkipBg1
  273. LDA PPUStatus ; Reset PPU Hi/Lo latch
  274. LDA #$20 ; Store Hi/Lo bytes of the background nametables
  275. STA PPUAddr
  276. LDA #$00
  277. STA PPUAddr
  278. LDY #$00
  279. LDX #$04
  280. LDA #%00010000
  281. STA PPUCtrl
  282. BgLoop1: ; 16 bit loop for drawing background and loading attributes
  283. LDA [pointerLo1], y
  284. STA PPUData
  285. INY
  286. BNE BgLoop1
  287. INC pointerHi1
  288. DEX
  289. BNE BgLoop1
  290. LDA #$00
  291. STA updateBg1 ; Clear NMI flag for background
  292. LDA #%10010000
  293. STA PPUCtrl
  294. SkipBg1:
  295. RTS
  296.  
  297. ScrollBg:
  298. LDY timer0
  299. CPY #$02
  300. BNE SkipScroll
  301. LDY #$00
  302. STY PPUScroll
  303. DEC PPUScroll
  304. STY timer0 ; Reset timer0
  305. SkipScroll:
  306. RTS
  307.  
  308. SprUpdate: ; Sprite update code
  309. LDY updateSpr
  310. CPY #$01
  311. BNE SkipSpr
  312.  
  313. SkipSpr:
  314. RTS
  315.  
  316. Joy1Update: ; Joypad 1 update code
  317. JSR Joy1Read
  318. Joy1Matching:
  319. STA input1Temp
  320. JSR Joy1Read
  321. CMP input1Temp
  322. BNE Joy1Matching
  323. STA input1
  324. RTS
  325.  
  326. Joy2Update: ; Joypad 2 update code
  327. LDY joy2Flag
  328. CPY #$00
  329. BNE SkipJoy2
  330. JSR Joy2Read
  331. Joy2Matching:
  332. STA input2Temp
  333. JSR Joy2Read
  334. CMP input2Temp
  335. BNE Joy2Matching
  336. STA input2
  337. SkipJoy2:
  338. RTS
  339.  
  340. SoundUpdate: ; Sound update code
  341.  
  342. RTS
  343.  
  344. IncrementTimers:
  345. INC timer0
  346. INC timer1
  347. INC timer2
  348. INC timer3
  349. INC timer4
  350. INC timer5
  351. INC timer6
  352. INC timer7
  353. INC timer8
  354. INC timer9
  355. INC timerA
  356. INC timerB
  357. INC timerC
  358. INC timerD
  359. INC timerE
  360. INC timerF
  361. RTS
  362.  
  363. NMI: ; NMI code
  364. PHA ; Push A, X & Y to stack
  365. TXA
  366. PHA
  367. TYA
  368. PHA
  369. JSR BgUpdate0 ; Update nametable 0 if necessary
  370. JSR BgUpdate1 ; Update nametable 1 if necessary
  371. JSR ScrollBg ; Update background scrolling
  372. JSR SprUpdate ; Update sprites if necessary
  373. JSR Joy1Update ; Update joypad 1 if necessary
  374. JSR Joy2Update ; Update joypad 2 if necessary
  375. JSR SoundUpdate ; Update sound if necessary
  376. JSR IncrementTimers ; Increment timers
  377. PLA ; Pull A, X & Y from stack
  378. TAY
  379. PLA
  380. TAX
  381. PLA
  382. RTI
  383.  
  384. StatusBarBg:
  385. .db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 00
  386. .db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 01
  387. .db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 02
  388. .db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 03
  389. .db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 04
  390. .db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 05
  391. .db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 06
  392. .db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 07
  393. .db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 08
  394. .db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 09
  395. .db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 0A
  396. .db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 0B
  397. .db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 0C
  398. .db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 0D
  399. .db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 0E
  400. .db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 0F
  401. .db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 10
  402. .db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 11
  403. .db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 12
  404. .db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 13
  405. .db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 14
  406. .db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 15
  407. .db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 16
  408. .db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 17
  409. .db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 18
  410. .db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 19
  411. .db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 1A
  412. .db $FF,$19,$15,$0A,$22,$0E,$1B,$FF,$24,$24,$24,$24,$24,$24,$24,$FF,$0B,$18,$16,$0B,$FF,$25,$25,$25,$25,$25,$25,$25,$FF,$FF,$FF,$FF ; 1B
  413. .db $FF,$1C,$0C,$1B,$FF,$00,$00,$00,$00,$00,$00,$00,$00,$FF,$FF,$FF,$11,$12,$FF,$1C,$0C,$1B,$FF,$00,$00,$00,$00,$00,$00,$00,$00,$FF ; 1C
  414. .db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 1D
  415.  
  416. StatusBarAttributes:
  417. .db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
  418. .db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
  419. .db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
  420. .db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
  421.  
  422. Stage1Bg:
  423. .db $FF,$FF,$FF,$FF,$26,$FF,$FF,$2A,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$2A,$FF,$FF,$FF,$FF,$26,$FF,$FF,$2A,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$2A ; 00
  424. .db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 01
  425. .db $FF,$FF,$27,$FF,$FF,$28,$FF,$FF,$26,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$27,$FF,$FF,$28,$FF,$FF,$26,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 02
  426. .db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$26,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$26,$FF,$FF ; 03
  427. .db $FF,$2A,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$27,$FF,$FF,$FF,$FF,$FF,$2A,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$27,$FF,$FF,$FF,$FF ; 04
  428. .db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 05
  429. .db $FF,$FF,$FF,$26,$FF,$FF,$2A,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$2A,$FF,$FF,$FF,$FF,$26,$FF,$FF,$2A,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$2A,$FF ; 06
  430. .db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 07
  431. .db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$2A,$FF,$FF,$FF,$FF,$26,$FF,$FF,$2A,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$2A,$FF,$FF,$FF,$FF,$26,$FF,$FF,$2A ; 08
  432. .db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 09
  433. .db $26,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$27,$FF,$FF,$28,$FF,$FF,$26,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$27,$FF,$FF,$28,$FF,$FF ; 0A
  434. .db $FF,$FF,$FF,$FF,$FF,$26,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$26,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 0B
  435. .db $FF,$FF,$FF,$27,$FF,$FF,$FF,$FF,$FF,$2A,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$27,$FF,$FF,$FF,$FF,$FF,$2A,$FF,$FF,$FF,$FF,$FF,$FF ; 0C
  436. .db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 0D
  437. .db $FF,$FF,$FF,$FF,$FF,$FF,$2A,$FF,$FF,$FF,$FF,$26,$FF,$FF,$2A,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$2A,$FF,$FF,$FF,$FF,$26,$FF,$FF,$2A,$FF ; 0E
  438. .db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 0F
  439. .db $FF,$FF,$FF,$FF,$26,$FF,$FF,$2A,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$2A,$FF,$FF,$FF,$FF,$26,$FF,$FF,$2A,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$2A ; 10
  440. .db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 11
  441. .db $FF,$FF,$27,$FF,$FF,$28,$FF,$FF,$26,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$27,$FF,$FF,$28,$FF,$FF,$26,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 12
  442. .db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$26,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$26,$FF,$FF ; 13
  443. .db $FF,$2A,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$27,$FF,$FF,$FF,$FF,$FF,$2A,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$27,$FF,$FF,$FF,$FF ; 14
  444. .db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 15
  445. .db $FF,$FF,$FF,$26,$FF,$FF,$2A,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$2A,$FF,$FF,$FF,$FF,$26,$FF,$FF,$2A,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$2A,$FF ; 16
  446. .db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 17
  447. .db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$2A,$FF,$FF,$FF,$FF,$26,$FF,$FF,$2A,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$2A,$FF,$FF,$FF,$FF,$26,$FF,$FF,$2A ; 18
  448. .db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 19
  449. .db $26,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$27,$FF,$FF,$28,$FF,$FF,$26,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$27,$FF,$FF,$28,$FF,$FF ; 1A
  450. .db $FF,$FF,$FF,$FF,$FF,$26,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$26,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 1B
  451. .db $FF,$FF,$FF,$27,$FF,$FF,$FF,$FF,$FF,$2A,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$27,$FF,$FF,$FF,$FF,$FF,$2A,$FF,$FF,$FF,$FF,$FF,$FF ; 1C
  452. .db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 1D
  453.  
  454. Stage1Attributes:
  455. .db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
  456. .db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
  457. .db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
  458. .db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
  459.  
  460. Stage1Palette:
  461. .db $0F,$20,$31,$21,$0F,$20,$32,$22,$0F,$20,$33,$23,$0F,$20,$34,$24
  462. .db $0F,$20,$31,$21,$0F,$20,$32,$22,$0F,$20,$33,$23,$0F,$20,$34,$24
  463.  
  464. .bank 1 ; CHR bank
  465. .org $0000
  466. .incbin "Spriteset.chr"
  467. .incbin "Tileset.chr"
  468.  
  469. .bank 2 ; Vector bank
  470. .org $FFFA
  471. .dw NMI
  472. .dw RESET
  473. .dw 0
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement