Advertisement
Guest User

another D:

a guest
Dec 1st, 2014
250
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 18.75 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. STX updateSpr
  193.  
  194. JSR BgUpdate0 ; Initialize nametables
  195. JSR BgUpdate1
  196.  
  197. LDA #%10010000
  198. STA PPUCtrl
  199. LDA #%00011110
  200. STA PPUMask
  201.  
  202. MainLoop: ; Main loop
  203.  
  204.  
  205.  
  206. LDY #$01
  207. STY mainWait
  208. MainLoopWait:
  209. LDY mainWait
  210. BNE MainLoopWait
  211. JMP MainLoop
  212.  
  213. Joy1Read:
  214. LDA #$01
  215. STA Joy1
  216. LDA #$00
  217. STA Joy1
  218. LDX #$08
  219. Joy1Loop:
  220. PHA
  221. LDA Joy1
  222. AND #$03
  223. CMP #$01
  224. PLA
  225. ROR A
  226. DEX
  227. BNE Joy1Loop
  228. RTS
  229.  
  230. Joy2Read:
  231. LDA #$01
  232. STA Joy2
  233. LDA #$00
  234. STA Joy2
  235. LDX #$08
  236. Joy2Loop:
  237. PHA
  238. LDA Joy2
  239. AND #$03
  240. CMP #$01
  241. PLA
  242. ROR A
  243. DEX
  244. BNE Joy2Loop
  245. RTS
  246.  
  247. BgUpdate0: ; Background update code
  248. LDY updateBg0
  249. CPY #$01
  250. BNE SkipBg0
  251. LDA PPUStatus ; Reset PPU Hi/Lo latch
  252. LDA #$20 ; Store Hi/Lo bytes of the background nametables
  253. STA PPUAddr
  254. LDA #$00
  255. STA PPUAddr
  256. LDY #$00
  257. LDX #$04
  258. LDA #%00010000
  259. STA PPUCtrl
  260. LDA #%00000000
  261. STA PPUMask
  262. BgLoop0: ; 16 bit loop for drawing background and loading attributes
  263. LDA [pointerLo0], y
  264. STA PPUData
  265. INY
  266. BNE BgLoop0
  267. INC pointerHi0
  268. DEX
  269. BNE BgLoop0
  270. LDA #$00
  271. STA updateBg0 ; Clear NMI flag for background
  272. LDA #%10010000
  273. STA PPUCtrl
  274. LDA #%00011110
  275. STA PPUMask
  276. SkipBg0:
  277. RTS
  278.  
  279. BgUpdate1: ; Background update code
  280. LDY updateBg1
  281. CPY #$01
  282. BNE SkipBg1
  283. LDA PPUStatus ; Reset PPU Hi/Lo latch
  284. LDA #$24 ; Store Hi/Lo bytes of the background nametables
  285. STA PPUAddr
  286. LDA #$00
  287. STA PPUAddr
  288. LDY #$00
  289. LDX #$04
  290. LDA #%00010000
  291. STA PPUCtrl
  292. LDA #%00000000
  293. STA PPUMask
  294. BgLoop1: ; 16 bit loop for drawing background and loading attributes
  295. LDA [pointerLo1], y
  296. STA PPUData
  297. INY
  298. BNE BgLoop1
  299. INC pointerHi1
  300. DEX
  301. BNE BgLoop1
  302. LDA #$00
  303. STA updateBg1 ; Clear NMI flag for background
  304. LDA #%10010000
  305. STA PPUCtrl
  306. LDA #%00011110
  307. STA PPUMask
  308. SkipBg1:
  309. RTS
  310.  
  311. ScrollBg:
  312. LDY timer0
  313. CPY #$02
  314. BNE SkipScroll
  315. LDY scrollX
  316. STY PPUScroll
  317. LDX scrollY
  318. SEC
  319. DEX
  320. BCS SkipScrollFix
  321. LDX #$F0
  322. SkipScrollFix:
  323. STX scrollY
  324. STX PPUScroll
  325. LDY #$00
  326. STY timer0 ; Reset timer0
  327. SkipScroll:
  328. RTS
  329.  
  330. SprUpdate: ; Sprite update code
  331. LDY updateSpr
  332. CPY #$01
  333. BNE SkipSpr
  334. LDA #%00010000
  335. STA PPUCtrl
  336. LDA #%00000000
  337. STA PPUMask
  338. LDA #$00
  339. STA OAMAddr
  340. LDA #$02
  341. STA OAMDMA
  342. LDA #$00
  343. STA updateSpr ; Clear NMI flag for sprites
  344. LDA #%10010000
  345. STA PPUCtrl
  346. LDA #%00011110
  347. STA PPUMask
  348. SkipSpr:
  349. RTS
  350.  
  351. Joy1Update: ; Joypad 1 update code
  352. JSR Joy1Read
  353. Joy1Matching:
  354. STA input1Temp
  355. JSR Joy1Read
  356. CMP input1Temp
  357. BNE Joy1Matching
  358. STA input1
  359. RTS
  360.  
  361. Joy2Update: ; Joypad 2 update code
  362. LDY joy2Flag
  363. CPY #$00
  364. BNE SkipJoy2
  365. JSR Joy2Read
  366. Joy2Matching:
  367. STA input2Temp
  368. JSR Joy2Read
  369. CMP input2Temp
  370. BNE Joy2Matching
  371. STA input2
  372. SkipJoy2:
  373. RTS
  374.  
  375. SoundUpdate: ; Sound update code
  376.  
  377. RTS
  378.  
  379. IncrementTimers:
  380. INC timer0
  381. INC timer1
  382. INC timer2
  383. INC timer3
  384. INC timer4
  385. INC timer5
  386. INC timer6
  387. INC timer7
  388. INC timer8
  389. INC timer9
  390. INC timerA
  391. INC timerB
  392. INC timerC
  393. INC timerD
  394. INC timerE
  395. INC timerF
  396. RTS
  397.  
  398. NMI: ; NMI code
  399. PHA ; Push A, X & Y to stack
  400. TXA
  401. PHA
  402. TYA
  403. PHA
  404. JSR BgUpdate0 ; Update nametable 0 if necessary
  405. JSR BgUpdate1 ; Update nametable 1 if necessary
  406. JSR ScrollBg ; Update background scrolling
  407. JSR SprUpdate ; Update sprites if necessary
  408. JSR Joy1Update ; Update joypad 1 if necessary
  409. JSR Joy2Update ; Update joypad 2 if necessary
  410. JSR SoundUpdate ; Update sound if necessary
  411. JSR IncrementTimers ; Increment timers
  412. LDY #$00 ; Reset mainWait to allow next main loop to happen
  413. STY mainWait
  414. PLA ; Pull A, X & Y from stack
  415. TAY
  416. PLA
  417. TAX
  418. PLA
  419. RTI
  420.  
  421. StatusBarBg:
  422. .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
  423. .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
  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 ; 02
  425. .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
  426. .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
  427. .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
  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 ; 06
  429. .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
  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 ; 08
  431. .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
  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 ; 0A
  433. .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
  434. .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
  435. .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
  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 ; 0E
  437. .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
  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 ; 10
  439. .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
  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 ; 12
  441. .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
  442. .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
  443. .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
  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 ; 16
  445. .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
  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 ; 18
  447. .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
  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 ; 1A
  449. .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
  450. .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
  451. .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
  452.  
  453. StatusBarAttributes:
  454. .db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
  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.  
  459. Stage1Bg:
  460. .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
  461. .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
  462. .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
  463. .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
  464. .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
  465. .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
  466. .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
  467. .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
  468. .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
  469. .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
  470. .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
  471. .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
  472. .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
  473. .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
  474. .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
  475. .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
  476. .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
  477. .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
  478. .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
  479. .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
  480. .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
  481. .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
  482. .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
  483. .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
  484. .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
  485. .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
  486. .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
  487. .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
  488. .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
  489. .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
  490.  
  491. Stage1Attributes:
  492. .db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
  493. .db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
  494. .db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
  495. .db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
  496.  
  497. Stage1Palette:
  498. .db $0F,$20,$31,$21,$0F,$20,$32,$22,$0F,$20,$33,$23,$0F,$20,$34,$24
  499. .db $0F,$20,$31,$21,$0F,$20,$32,$22,$0F,$20,$33,$23,$0F,$20,$34,$24
  500.  
  501.  
  502. .bank 1 ; Vector bank
  503. .org $FFFA
  504. .dw NMI
  505. .dw RESET
  506. .dw 0
  507.  
  508. .bank 2 ; CHR bank
  509. .org $0000
  510. .incbin "Stg1set.chr"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement