Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- .inesprg 1 ; 1 PRG bank
- .ineschr 1 ; 1 CHR bank
- .inesmap 0 ; No mapper
- .inesmir 1 ; Vertical mirroring
- .rsset $0000 ; Zero page variables
- pointerLo0 .rs 1 ; 16 bit poiner low bits for first nametable
- pointerHi0 .rs 1 ; 16 bit poiner high bits for first nametable
- pointerLo1 .rs 1 ; 16 bit poiner low bits for second nametable
- pointerHi1 .rs 1 ; 16 bit poiner high bits for second nametable
- counterLo .rs 1 ; 16 bit counter low bits
- counterHi .rs 1 ; 16 bit counter high bits
- updateBg0 .rs 1 ; Flag for triggering nametable 0 update in NMI
- updateBg1 .rs 1 ; Flag for triggering nametable 1 update in NMI
- updateSpr .rs 1 ; Flag for triggering sprite update in NMI
- updatePal .rs 1 ; Flag for triggering palette update in NMI
- mainWait .rs 1 ; Flag for waiting for NMI to finish
- scrollX .rs 1 ; Scroll position in X axis
- scrollY .rs 1 ; Scroll position in Y axis
- input1 .rs 1 ; Joypad 1 input data
- input1Temp .rs 1 ; Temporary joypad 1 data for comparsion
- input2 .rs 1 ; Joypad 2 input data
- input2Temp .rs 1 ; Temporary joypad 2 data for comparsion
- joy2Flag .rs 1 ; Check if joypad 2 is used in debug mode
- lives .rs 1 ; Lives display
- livesCounter .rs 1 ; Lives counter
- bombs .rs 1 ; Bombs display
- bombsCounter .rs 1 ; Bombs counter
- weapon .rs 1 ; Weapon type
- scr0 .rs 1 ; Score 1s
- scr1 .rs 1 ; Score 10s
- scr2 .rs 1 ; Score 100s
- scr3 .rs 1 ; Score 1000s
- scr4 .rs 1 ; Score 10000s
- scr5 .rs 1 ; Score 100000s
- scr6 .rs 1 ; Score 1000000s
- scr7 .rs 1 ; Score 10000000s
- hiScr0 .rs 1 ; High score 1s
- hiScr1 .rs 1 ; High score 10s
- hiScr2 .rs 1 ; High score 100s
- hiScr3 .rs 1 ; High score 1000s
- hiScr4 .rs 1 ; High score 10000s
- hiScr5 .rs 1 ; High score 100000s
- hiScr6 .rs 1 ; High score 1000000s
- hiScr7 .rs 1 ; High score 10000000s
- timer0 .rs 1 ; Timer for background scolling speed
- timer1 .rs 1 ; Global timer 1
- timer2 .rs 1 ; Global timer 2
- timer3 .rs 1 ; Global timer 3
- timer4 .rs 1 ; Global timer 4
- timer5 .rs 1 ; Global timer 5
- timer6 .rs 1 ; Global timer 6
- timer7 .rs 1 ; Global timer 7
- timer8 .rs 1 ; Global timer 8
- timer9 .rs 1 ; Global timer 9
- timerA .rs 1 ; Global timer A
- timerB .rs 1 ; Global timer B
- timerC .rs 1 ; Global timer C
- timerD .rs 1 ; Global timer D
- timerE .rs 1 ; Global timer E
- timerF .rs 1 ; Global timer F
- PPUCtrl = $2000 ; PPU control port
- PPUMask = $2001 ; PPU mask
- PPUStatus = $2002 ; PPU status
- OAMAddr = $2003 ; Object attribute memory address
- OAMData = $2004 ; Object attribute memory data
- PPUScroll = $2005 ; PPU scolling registers
- PPUAddr = $2006 ; PPU address
- PPUData = $2007 ; PPU data
- PAL00 = $3F00 ; Background palette 0 colour 0
- PAL01 = $3F01 ; Background palette 0 colour 1
- PAL02 = $3F02 ; Background palette 0 colour 2
- PAL03 = $3F03 ; Background palette 0 colour 3
- PAL04 = $3F04 ; Background palette 1 colour 0
- PAL05 = $3F05 ; Background palette 1 colour 1
- PAL06 = $3F06 ; Background palette 1 colour 2
- PAL07 = $3F07 ; Background palette 1 colour 3
- PAL08 = $3F08 ; Background palette 2 colour 0
- PAL09 = $3F09 ; Background palette 2 colour 1
- PAL0A = $3F0A ; Background palette 2 colour 2
- PAL0B = $3F0B ; Background palette 2 colour 3
- PAL0C = $3F0C ; Background palette 3 colour 0
- PAL0D = $3F0D ; Background palette 3 colour 1
- PAL0E = $3F0E ; Background palette 3 colour 2
- PAL0F = $3F0F ; Background palette 3 colour 3
- PAL10 = $3F10 ; Sprite palette 0 colour 0
- PAL11 = $3F11 ; Sprite palette 0 colour 1
- PAL12 = $3F12 ; Sprite palette 0 colour 2
- PAL13 = $3F13 ; Sprite palette 0 colour 3
- PAL14 = $3F14 ; Sprite palette 1 colour 0
- PAL15 = $3F15 ; Sprite palette 1 colour 1
- PAL16 = $3F16 ; Sprite palette 1 colour 2
- PAL17 = $3F17 ; Sprite palette 1 colour 3
- PAL18 = $3F18 ; Sprite palette 2 colour 0
- PAL19 = $3F19 ; Sprite palette 2 colour 1
- PAL1A = $3F1A ; Sprite palette 2 colour 2
- PAL1B = $3F1B ; Sprite palette 2 colour 3
- PAL1C = $3F1C ; Sprite palette 3 colour 0
- PAL1D = $3F1D ; Sprite palette 3 colour 1
- PAL1E = $3F1E ; Sprite palette 3 colour 2
- PAL1F = $3F1F ; Sprite palette 3 colour 3
- SQ1Vol = $4000 ; Pulse 1 volume
- SQ1Sweep = $4001 ; Pulse 1 sweep
- SQ1Lo = $4002 ; Pulse 1 counter low bits
- SQ1Hi = $4003 ; Pulse 1 counter high bits
- SQ2Vol = $4004 ; Pulse 2 volume
- SQ2Sweep = $4005 ; Pulse 2 sweep
- SQ2Lo = $4006 ; Pulse 2 counter low bits
- SQ2Hi = $4007 ; Pulse 2 counter high bits
- TriLinear = $4008 ; Triangle
- TriLo = $400A ; Triangle counter low bits
- TriHi = $400B ; Triangle counter high bits
- NoiseVol = $400C ; Noise volume
- NoiseLo = $400E ; Noise counter low bits
- NoiseHi = $400F ; Noise counter high bits
- DMCFreq = $4010 ; DMC sample frequency
- DMCLoad = $4011 ; DMC sample load counter
- DMCStart = $4012 ; DMC sample start address
- DMCLen = $4013 ; DMC sample length
- OAMDMA = $4014 ; Object attribute memory DMA
- APUChn = $4015 ; APU channel control
- Joy1 = $4016 ; Joypad 1 port (A, B Select, Start, Up, Down, Left, Right)
- Joy2 = $4017 ; Joypad 2 port (A, B Select, Start, Up, Down, Left, Right)
- .bank 0 ; PRG bank
- .org $8000
- RESET: ; Reset routine
- SEI
- CLD
- LDX #$40
- STX Joy2 ; disable APU IRQ
- LDX #$FF
- TXS ; Stack set up
- INX
- STX PPUCtrl
- STX PPUMask
- STX DMCFreq
- vBlankWait1: ; vBlank wait 1
- BIT PPUStatus
- BPL vBlankWait1
- ClearMemory: ; Clear internal memory $0000 - $07FF
- LDA #$FF
- STA $0200, x ; Move sprites out of view
- LDA #$00
- STA $0000, x
- STA $0100, x
- STA $0300, x
- STA $0400, x
- STA $0500, x
- STA $0600, x
- STA $0700, x
- DEX
- BNE ClearMemory
- LDA #LOW(Stage1Bg)
- STA pointerLo0
- LDA #HIGH(Stage1Bg)
- STA pointerHi0
- LDA #LOW(StatusBarBg)
- STA pointerLo1
- LDA #HIGH(StatusBarBg)
- STA pointerHi1
- vBlankWait2: ; vBlank wait 2 - PPU should be in stable and usable state now
- BIT PPUStatus
- BPL vBlankWait2
- UpdatePalette1:
- LDA PPUStatus ; Reset PPU Hi/Lo latch
- LDA #$3F ; Store Hi/Lo bytes of the background nametables
- STA PPUAddr
- LDA #$00
- STA PPUAddr
- TAX
- PalLoop1:
- LDA Stage1Palette, x
- STA PPUData
- INX
- CPX #$1F
- BNE PalLoop1
- LDX #$01
- STX updateBg0
- STX updateBg1
- STX updateSpr
- JSR BgUpdate0 ; Initialize nametables
- JSR BgUpdate1
- LDA #%10010000
- STA PPUCtrl
- LDA #%00011110
- STA PPUMask
- MainLoop: ; Main loop
- LDY #$01
- STY mainWait
- MainLoopWait:
- LDY mainWait
- BNE MainLoopWait
- JMP MainLoop
- Joy1Read:
- LDA #$01
- STA Joy1
- LDA #$00
- STA Joy1
- LDX #$08
- Joy1Loop:
- PHA
- LDA Joy1
- AND #$03
- CMP #$01
- PLA
- ROR A
- DEX
- BNE Joy1Loop
- RTS
- Joy2Read:
- LDA #$01
- STA Joy2
- LDA #$00
- STA Joy2
- LDX #$08
- Joy2Loop:
- PHA
- LDA Joy2
- AND #$03
- CMP #$01
- PLA
- ROR A
- DEX
- BNE Joy2Loop
- RTS
- BgUpdate0: ; Background update code
- LDY updateBg0
- CPY #$01
- BNE SkipBg0
- LDA PPUStatus ; Reset PPU Hi/Lo latch
- LDA #$20 ; Store Hi/Lo bytes of the background nametables
- STA PPUAddr
- LDA #$00
- STA PPUAddr
- LDY #$00
- LDX #$04
- LDA #%00010000
- STA PPUCtrl
- LDA #%00000000
- STA PPUMask
- BgLoop0: ; 16 bit loop for drawing background and loading attributes
- LDA [pointerLo0], y
- STA PPUData
- INY
- BNE BgLoop0
- INC pointerHi0
- DEX
- BNE BgLoop0
- LDA #$00
- STA updateBg0 ; Clear NMI flag for background
- LDA #%10010000
- STA PPUCtrl
- LDA #%00011110
- STA PPUMask
- SkipBg0:
- RTS
- BgUpdate1: ; Background update code
- LDY updateBg1
- CPY #$01
- BNE SkipBg1
- LDA PPUStatus ; Reset PPU Hi/Lo latch
- LDA #$24 ; Store Hi/Lo bytes of the background nametables
- STA PPUAddr
- LDA #$00
- STA PPUAddr
- LDY #$00
- LDX #$04
- LDA #%00010000
- STA PPUCtrl
- LDA #%00000000
- STA PPUMask
- BgLoop1: ; 16 bit loop for drawing background and loading attributes
- LDA [pointerLo1], y
- STA PPUData
- INY
- BNE BgLoop1
- INC pointerHi1
- DEX
- BNE BgLoop1
- LDA #$00
- STA updateBg1 ; Clear NMI flag for background
- LDA #%10010000
- STA PPUCtrl
- LDA #%00011110
- STA PPUMask
- SkipBg1:
- RTS
- ScrollBg:
- LDY timer0
- CPY #$02
- BNE SkipScroll
- LDY scrollX
- STY PPUScroll
- LDX scrollY
- SEC
- DEX
- BCS SkipScrollFix
- LDX #$F0
- SkipScrollFix:
- STX scrollY
- STX PPUScroll
- LDY #$00
- STY timer0 ; Reset timer0
- SkipScroll:
- RTS
- SprUpdate: ; Sprite update code
- LDY updateSpr
- CPY #$01
- BNE SkipSpr
- LDA #%00010000
- STA PPUCtrl
- LDA #%00000000
- STA PPUMask
- LDA #$00
- STA OAMAddr
- LDA #$02
- STA OAMDMA
- LDA #$00
- STA updateSpr ; Clear NMI flag for sprites
- LDA #%10010000
- STA PPUCtrl
- LDA #%00011110
- STA PPUMask
- SkipSpr:
- RTS
- Joy1Update: ; Joypad 1 update code
- JSR Joy1Read
- Joy1Matching:
- STA input1Temp
- JSR Joy1Read
- CMP input1Temp
- BNE Joy1Matching
- STA input1
- RTS
- Joy2Update: ; Joypad 2 update code
- LDY joy2Flag
- CPY #$00
- BNE SkipJoy2
- JSR Joy2Read
- Joy2Matching:
- STA input2Temp
- JSR Joy2Read
- CMP input2Temp
- BNE Joy2Matching
- STA input2
- SkipJoy2:
- RTS
- SoundUpdate: ; Sound update code
- RTS
- IncrementTimers:
- INC timer0
- INC timer1
- INC timer2
- INC timer3
- INC timer4
- INC timer5
- INC timer6
- INC timer7
- INC timer8
- INC timer9
- INC timerA
- INC timerB
- INC timerC
- INC timerD
- INC timerE
- INC timerF
- RTS
- NMI: ; NMI code
- PHA ; Push A, X & Y to stack
- TXA
- PHA
- TYA
- PHA
- JSR BgUpdate0 ; Update nametable 0 if necessary
- JSR BgUpdate1 ; Update nametable 1 if necessary
- JSR ScrollBg ; Update background scrolling
- JSR SprUpdate ; Update sprites if necessary
- JSR Joy1Update ; Update joypad 1 if necessary
- JSR Joy2Update ; Update joypad 2 if necessary
- JSR SoundUpdate ; Update sound if necessary
- JSR IncrementTimers ; Increment timers
- LDY #$00 ; Reset mainWait to allow next main loop to happen
- STY mainWait
- PLA ; Pull A, X & Y from stack
- TAY
- PLA
- TAX
- PLA
- RTI
- StatusBarBg:
- .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
- .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
- .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
- .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
- .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
- .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
- .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
- .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
- .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
- .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
- .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
- .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
- .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
- .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
- .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
- .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
- .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
- .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
- .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
- .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
- .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
- .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
- .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
- .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
- .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
- .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
- .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
- .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
- .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
- .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
- StatusBarAttributes:
- .db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
- .db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
- .db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
- .db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
- Stage1Bg:
- .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
- .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
- .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
- .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
- .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
- .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
- .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
- .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
- .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
- .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
- .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
- .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
- .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
- .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
- .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
- .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
- .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
- .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
- .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
- .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
- .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
- .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
- .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
- .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
- .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
- .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
- .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
- .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
- .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
- .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
- Stage1Attributes:
- .db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
- .db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
- .db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
- .db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
- Stage1Palette:
- .db $0F,$20,$31,$21,$0F,$20,$32,$22,$0F,$20,$33,$23,$0F,$20,$34,$24
- .db $0F,$20,$31,$21,$0F,$20,$32,$22,$0F,$20,$33,$23,$0F,$20,$34,$24
- .bank 1 ; Vector bank
- .org $FFFA
- .dw NMI
- .dw RESET
- .dw 0
- .bank 2 ; CHR bank
- .org $0000
- .incbin "Stg1set.chr"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement