Well I thought it necessary to break my previous thread off into a more organized one. I will be updating this post as necessary, & hopefully this game'll turn out to be worth downloading.
ROM & Source: http://mtac.profusehost.net/misc/NES/
ROM & Source: http://mtac.profusehost.net/misc/NES/
Code:
*=$C000
!cpu 6502
!to "gameprg.bin", plain
sprdma=$00 ;set here do avoid annoying ACME warning
;=============================Init===========================================
reset CLC ;clear crap
LDA #0
STA scrstat
vb1 LDA $2002
BPL vb1
vb2 LDA $2002
BPL vb2
SEI
LDX #$ff
TXS
LDA #0
STA $2000 ;kill PPU
STA $2001
LDA #$20
LDX #0
LDY #0
nt1wrt STA $2006
STX $2006
STY $2007
INX
CPY #00
BNE nt1wrt
CMP #$24
ADC #1
BNE nt1wrt
LDA #$3F
LDX #$00
STA $2006
STX $2006
pal1wrt LDY bgpal,x
STY $2007
INX
CPX #$20
BNE pal1wrt
LDX #0
sprwrt LDA spr1,x
STA sprdma
INX
CPX #4
BNE sprwrt
LDA #$00
STA $4014
LDA #%10001000 ;Enable graphics
STA $2000
STA ppu0
LDA #%00011110
STA $2001
STA ppu1
CLI
loop JMP loop
;==========================vblank=======================================
vblank
INC sprdma+3
LDA sprdma+3 ;NOTE TO SELF: Find out why Y cord write
;CMP #0 ;is causing sprite to dissapear
;BNE scrchk
;INC sprdma
scrchk LDA scrstat
CMP #1
BEQ blkchk
CMP #2
BEQ whtchk
gunchk
LDA $4016
AND #%00010000 ;check for trigger status
CMP #%00010000
BEQ shoot
dmaset LDA $00
STA $4014
noshoot
RTI
shoot LDA #%00000110 ;kill PPU
STA $2001
INC scrstat
JMP dmaset
blkchk LDA $4016
AND #%00001000 ;check for black
CMP #%00000000
BNE usuck
LDA #1 ;Don't increment so trigger can be held
STA scrstat
STA sprdma+1
LDA #%00010110
STA $2001
JMP dmaset
whtchk LDA $4016 ;check for white
AND #%00001000
CMP #%00001000
BNE usuck
INC p1scr
LDA #0 ;reset scrstat
STA scrstat
STA sprdma
LDA ppu1
STA $2001
INC p1scr
LDA p1scr
LDX #$24
LDY #$00
STX $2006
STY $2006
STA $2007
JMP dmaset
usuck LDA #$20
LDX #$00 ;write text to upper-left corner
suck1 LDY sucktxt,X
STA $2006
STX $2006
STY $2007
INX
CPY "*"
BNE suck1
LDA ppu1
STA $2001
RTI
irq RTI
;==========================Data=========================================
bgpal !byte $0F,$2A,$2B,$2C,$34,$35,$36,$37
!byte $38,$39,$3A,$3B,$3C,$3D,$3E,$3F
sprpal !byte $00,$14,$15,$16,$04,$05,$06,$07
!byte $08,$09,$0A,$0B,$0C,$0D,$0E,$0F
spr1 !byte %00001000,%00000000,%00000011,%00001000
sucktxt !text "YOU SUCK*"
;==========================Interrupts===================================
!align $FFFA, $FFFA, $00
!word vblank ;
!word reset ;
!word irq ;IRQ vector currently set to nothing
;==========================Labels=======================================
ppu0=$0200
ppu1=$0201
scrstat=$0202
p1scr=$0203
!cpu 6502
!to "gameprg.bin", plain
sprdma=$00 ;set here do avoid annoying ACME warning
;=============================Init===========================================
reset CLC ;clear crap
LDA #0
STA scrstat
vb1 LDA $2002
BPL vb1
vb2 LDA $2002
BPL vb2
SEI
LDX #$ff
TXS
LDA #0
STA $2000 ;kill PPU
STA $2001
LDA #$20
LDX #0
LDY #0
nt1wrt STA $2006
STX $2006
STY $2007
INX
CPY #00
BNE nt1wrt
CMP #$24
ADC #1
BNE nt1wrt
LDA #$3F
LDX #$00
STA $2006
STX $2006
pal1wrt LDY bgpal,x
STY $2007
INX
CPX #$20
BNE pal1wrt
LDX #0
sprwrt LDA spr1,x
STA sprdma
INX
CPX #4
BNE sprwrt
LDA #$00
STA $4014
LDA #%10001000 ;Enable graphics
STA $2000
STA ppu0
LDA #%00011110
STA $2001
STA ppu1
CLI
loop JMP loop
;==========================vblank=======================================
vblank
INC sprdma+3
LDA sprdma+3 ;NOTE TO SELF: Find out why Y cord write
;CMP #0 ;is causing sprite to dissapear
;BNE scrchk
;INC sprdma
scrchk LDA scrstat
CMP #1
BEQ blkchk
CMP #2
BEQ whtchk
gunchk
LDA $4016
AND #%00010000 ;check for trigger status
CMP #%00010000
BEQ shoot
dmaset LDA $00
STA $4014
noshoot
RTI
shoot LDA #%00000110 ;kill PPU
STA $2001
INC scrstat
JMP dmaset
blkchk LDA $4016
AND #%00001000 ;check for black
CMP #%00000000
BNE usuck
LDA #1 ;Don't increment so trigger can be held
STA scrstat
STA sprdma+1
LDA #%00010110
STA $2001
JMP dmaset
whtchk LDA $4016 ;check for white
AND #%00001000
CMP #%00001000
BNE usuck
INC p1scr
LDA #0 ;reset scrstat
STA scrstat
STA sprdma
LDA ppu1
STA $2001
INC p1scr
LDA p1scr
LDX #$24
LDY #$00
STX $2006
STY $2006
STA $2007
JMP dmaset
usuck LDA #$20
LDX #$00 ;write text to upper-left corner
suck1 LDY sucktxt,X
STA $2006
STX $2006
STY $2007
INX
CPY "*"
BNE suck1
LDA ppu1
STA $2001
RTI
irq RTI
;==========================Data=========================================
bgpal !byte $0F,$2A,$2B,$2C,$34,$35,$36,$37
!byte $38,$39,$3A,$3B,$3C,$3D,$3E,$3F
sprpal !byte $00,$14,$15,$16,$04,$05,$06,$07
!byte $08,$09,$0A,$0B,$0C,$0D,$0E,$0F
spr1 !byte %00001000,%00000000,%00000011,%00001000
sucktxt !text "YOU SUCK*"
;==========================Interrupts===================================
!align $FFFA, $FFFA, $00
!word vblank ;
!word reset ;
!word irq ;IRQ vector currently set to nothing
;==========================Labels=======================================
ppu0=$0200
ppu1=$0201
scrstat=$0202
p1scr=$0203
Code:
*=$0000
!CPU 6502
!to "gamechr.bin", plain
;
!byte %00000010 ;2222223.
!byte %00000010 ;2222223.
!byte %00000010 ;2222223.
!byte %00000010 ;2222223.
!byte %00000010 ;2222223.
!byte %00000010 ;2222223.
!byte %11111110 ;1111113.
!byte %00000000 ;........
;
!byte %11111110 ;
!byte %11111110 ;
!byte %11111110 ;
!byte %11111110 ;
!byte %11111110 ;
!byte %11111110 ;
!byte %00000010 ;
!byte %00000000 ;
;
;
!align $0200,$0200,$00
;
;STOLEN C64 ASCII SET, remember to replace w/ tight-ass custom oldskool compy font
!byte $00,$00,$00,$00,$00,$00,$00,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 32
!byte $18,$18,$18,$18,$00,$00,$18,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 33
!byte $66,$66,$66,$00,$00,$00,$00,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 34
!byte $66,$66,$FF,$66,$FF,$66,$66,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 35
!byte $18,$3E,$60,$3C,$06,$7C,$18,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 36
!byte $62,$66,$0C,$18,$30,$66,$46,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 37
!byte $3C,$66,$3C,$38,$67,$66,$3F,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 38
!byte $06,$0C,$18,$00,$00,$00,$00,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 39
!byte $0C,$18,$30,$30,$30,$18,$0C,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 40
!byte $30,$18,$0C,$0C,$0C,$18,$30,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 41
!byte $00,$66,$3C,$FF,$3C,$66,$00,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 42
!byte $00,$18,$18,$7E,$18,$18,$00,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 43
!byte $00,$00,$00,$00,$00,$18,$18,$30,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 44
!byte $00,$00,$00,$7E,$00,$00,$00,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 45
!byte $00,$00,$00,$00,$00,$18,$18,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 46
!byte $00,$03,$06,$0C,$18,$30,$60,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 47
!byte $3C,$66,$6E,$76,$66,$66,$3C,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 48
!byte $18,$18,$38,$18,$18,$18,$7E,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 49
!byte $3C,$66,$06,$0C,$30,$60,$7E,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 50
!byte $3C,$66,$06,$1C,$06,$66,$3C,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 51
!byte $06,$0E,$1E,$66,$7F,$06,$06,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 52
!byte $7E,$60,$7C,$06,$06,$66,$3C,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 53
!byte $3C,$66,$60,$7C,$66,$66,$3C,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 54
!byte $7E,$66,$0C,$18,$18,$18,$18,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 55
!byte $3C,$66,$66,$3C,$66,$66,$3C,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 56
!byte $3C,$66,$66,$3E,$06,$66,$3C,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 57
!byte $00,$00,$18,$00,$00,$18,$00,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 58
!byte $00,$00,$18,$00,$00,$18,$18,$30,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 59
!byte $0E,$18,$30,$60,$30,$18,$0E,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 60
!byte $00,$00,$7E,$00,$7E,$00,$00,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 61
!byte $70,$18,$0C,$06,$0C,$18,$70,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 62
!byte $3C,$66,$06,$0C,$18,$00,$18,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 63
!byte $3C,$66,$6E,$6E,$60,$62,$3C,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 64
!byte $18,$3C,$66,$7E,$66,$66,$66,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 65
!byte $7C,$66,$66,$7C,$66,$66,$7C,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 66
!byte $3C,$66,$60,$60,$60,$66,$3C,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 67
!byte $78,$6C,$66,$66,$66,$6C,$78,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 68
!byte $7E,$60,$60,$78,$60,$60,$7E,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 69
!byte $7E,$60,$60,$78,$60,$60,$60,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 70
!byte $3C,$66,$60,$6E,$66,$66,$3C,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 71
!byte $66,$66,$66,$7E,$66,$66,$66,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 72
!byte $3C,$18,$18,$18,$18,$18,$3C,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 73
!byte $1E,$0C,$0C,$0C,$0C,$6C,$38,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 74
!byte $66,$6C,$78,$70,$78,$6C,$66,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 75
!byte $60,$60,$60,$60,$60,$60,$7E,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 76
!byte $63,$77,$7F,$6B,$63,$63,$63,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 77
!byte $66,$76,$7E,$7E,$6E,$66,$66,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 78
!byte $3C,$66,$66,$66,$66,$66,$3C,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 79
!byte $7C,$66,$66,$7C,$60,$60,$60,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 80
!byte $3C,$66,$66,$66,$66,$3C,$0E,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 81
!byte $7C,$66,$66,$7C,$78,$6C,$66,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 82
!byte $3C,$66,$60,$3C,$06,$66,$3C,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 83
!byte $7E,$18,$18,$18,$18,$18,$18,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 84
!byte $66,$66,$66,$66,$66,$66,$3C,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 85
!byte $66,$66,$66,$66,$66,$3C,$18,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 86
!byte $63,$63,$63,$6B,$7F,$77,$63,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 87
!byte $66,$66,$3C,$18,$3C,$66,$66,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 88
!byte $66,$66,$66,$3C,$18,$18,$18,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 89
!byte $7E,$06,$0C,$18,$30,$60,$7E,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 90
!byte $3C,$30,$30,$30,$30,$30,$3C,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 91
!byte $0C,$12,$30,$7C,$30,$62,$FC,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 92
!byte $3C,$0C,$0C,$0C,$0C,$0C,$3C,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 93
!byte $00,$18,$3C,$7E,$18,$18,$18,$18,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 94
!byte $00,$10,$30,$7F,$7F,$30,$10,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 95
;
;
;
!align $1000, $1000, $00
;
;
!byte %00000000 ;........
!byte %00011000 ;...33...
!byte %00111100 ;..3331..
!byte %01110010 ;.333221.
!byte %01100010 ;.332221.
!byte %00000100 ;..2221..
!byte %00011000 ;...11...
!byte %00000000 ;........
;
!byte %00000000 ;
!byte %00011000 ;
!byte %00111000 ;
!byte %01111100 ;
!byte %01111100 ;
!byte %00111000 ;
!byte %00000000 ;
!byte %00000000 ;
;
!byte %11111111 ;33333333
!byte %11111111 ;33333333
!byte %11111111 ;33333333
!byte %11111111 ;33333333
!byte %11111111 ;33333333
!byte %11111111 ;33333333
!byte %11111111 ;33333333
!byte %11111111 ;33333333
;
!byte %11111111
!byte %11111111
!byte %11111111
!byte %11111111
!byte %11111111
!byte %11111111
!byte %11111111
;
!align $2000,$2000, $00
!eof
!CPU 6502
!to "gamechr.bin", plain
;
!byte %00000010 ;2222223.
!byte %00000010 ;2222223.
!byte %00000010 ;2222223.
!byte %00000010 ;2222223.
!byte %00000010 ;2222223.
!byte %00000010 ;2222223.
!byte %11111110 ;1111113.
!byte %00000000 ;........
;
!byte %11111110 ;
!byte %11111110 ;
!byte %11111110 ;
!byte %11111110 ;
!byte %11111110 ;
!byte %11111110 ;
!byte %00000010 ;
!byte %00000000 ;
;
;
!align $0200,$0200,$00
;
;STOLEN C64 ASCII SET, remember to replace w/ tight-ass custom oldskool compy font
!byte $00,$00,$00,$00,$00,$00,$00,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 32
!byte $18,$18,$18,$18,$00,$00,$18,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 33
!byte $66,$66,$66,$00,$00,$00,$00,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 34
!byte $66,$66,$FF,$66,$FF,$66,$66,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 35
!byte $18,$3E,$60,$3C,$06,$7C,$18,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 36
!byte $62,$66,$0C,$18,$30,$66,$46,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 37
!byte $3C,$66,$3C,$38,$67,$66,$3F,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 38
!byte $06,$0C,$18,$00,$00,$00,$00,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 39
!byte $0C,$18,$30,$30,$30,$18,$0C,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 40
!byte $30,$18,$0C,$0C,$0C,$18,$30,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 41
!byte $00,$66,$3C,$FF,$3C,$66,$00,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 42
!byte $00,$18,$18,$7E,$18,$18,$00,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 43
!byte $00,$00,$00,$00,$00,$18,$18,$30,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 44
!byte $00,$00,$00,$7E,$00,$00,$00,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 45
!byte $00,$00,$00,$00,$00,$18,$18,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 46
!byte $00,$03,$06,$0C,$18,$30,$60,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 47
!byte $3C,$66,$6E,$76,$66,$66,$3C,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 48
!byte $18,$18,$38,$18,$18,$18,$7E,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 49
!byte $3C,$66,$06,$0C,$30,$60,$7E,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 50
!byte $3C,$66,$06,$1C,$06,$66,$3C,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 51
!byte $06,$0E,$1E,$66,$7F,$06,$06,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 52
!byte $7E,$60,$7C,$06,$06,$66,$3C,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 53
!byte $3C,$66,$60,$7C,$66,$66,$3C,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 54
!byte $7E,$66,$0C,$18,$18,$18,$18,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 55
!byte $3C,$66,$66,$3C,$66,$66,$3C,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 56
!byte $3C,$66,$66,$3E,$06,$66,$3C,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 57
!byte $00,$00,$18,$00,$00,$18,$00,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 58
!byte $00,$00,$18,$00,$00,$18,$18,$30,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 59
!byte $0E,$18,$30,$60,$30,$18,$0E,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 60
!byte $00,$00,$7E,$00,$7E,$00,$00,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 61
!byte $70,$18,$0C,$06,$0C,$18,$70,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 62
!byte $3C,$66,$06,$0C,$18,$00,$18,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 63
!byte $3C,$66,$6E,$6E,$60,$62,$3C,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 64
!byte $18,$3C,$66,$7E,$66,$66,$66,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 65
!byte $7C,$66,$66,$7C,$66,$66,$7C,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 66
!byte $3C,$66,$60,$60,$60,$66,$3C,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 67
!byte $78,$6C,$66,$66,$66,$6C,$78,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 68
!byte $7E,$60,$60,$78,$60,$60,$7E,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 69
!byte $7E,$60,$60,$78,$60,$60,$60,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 70
!byte $3C,$66,$60,$6E,$66,$66,$3C,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 71
!byte $66,$66,$66,$7E,$66,$66,$66,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 72
!byte $3C,$18,$18,$18,$18,$18,$3C,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 73
!byte $1E,$0C,$0C,$0C,$0C,$6C,$38,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 74
!byte $66,$6C,$78,$70,$78,$6C,$66,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 75
!byte $60,$60,$60,$60,$60,$60,$7E,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 76
!byte $63,$77,$7F,$6B,$63,$63,$63,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 77
!byte $66,$76,$7E,$7E,$6E,$66,$66,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 78
!byte $3C,$66,$66,$66,$66,$66,$3C,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 79
!byte $7C,$66,$66,$7C,$60,$60,$60,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 80
!byte $3C,$66,$66,$66,$66,$3C,$0E,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 81
!byte $7C,$66,$66,$7C,$78,$6C,$66,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 82
!byte $3C,$66,$60,$3C,$06,$66,$3C,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 83
!byte $7E,$18,$18,$18,$18,$18,$18,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 84
!byte $66,$66,$66,$66,$66,$66,$3C,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 85
!byte $66,$66,$66,$66,$66,$3C,$18,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 86
!byte $63,$63,$63,$6B,$7F,$77,$63,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 87
!byte $66,$66,$3C,$18,$3C,$66,$66,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 88
!byte $66,$66,$66,$3C,$18,$18,$18,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 89
!byte $7E,$06,$0C,$18,$30,$60,$7E,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 90
!byte $3C,$30,$30,$30,$30,$30,$3C,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 91
!byte $0C,$12,$30,$7C,$30,$62,$FC,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 92
!byte $3C,$0C,$0C,$0C,$0C,$0C,$3C,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 93
!byte $00,$18,$3C,$7E,$18,$18,$18,$18,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 94
!byte $00,$10,$30,$7F,$7F,$30,$10,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; Character 95
;
;
;
!align $1000, $1000, $00
;
;
!byte %00000000 ;........
!byte %00011000 ;...33...
!byte %00111100 ;..3331..
!byte %01110010 ;.333221.
!byte %01100010 ;.332221.
!byte %00000100 ;..2221..
!byte %00011000 ;...11...
!byte %00000000 ;........
;
!byte %00000000 ;
!byte %00011000 ;
!byte %00111000 ;
!byte %01111100 ;
!byte %01111100 ;
!byte %00111000 ;
!byte %00000000 ;
!byte %00000000 ;
;
!byte %11111111 ;33333333
!byte %11111111 ;33333333
!byte %11111111 ;33333333
!byte %11111111 ;33333333
!byte %11111111 ;33333333
!byte %11111111 ;33333333
!byte %11111111 ;33333333
!byte %11111111 ;33333333
;
!byte %11111111
!byte %11111111
!byte %11111111
!byte %11111111
!byte %11111111
!byte %11111111
!byte %11111111
;
!align $2000,$2000, $00
!eof
Code:
*=$000000
!to "techdemo.nes", plain
;====================iNES Header Begin====================
; iNES identifier
!text "NES"
!byte $1A
; Number of PRG-ROM blocks
!byte $01
;
; Number of CHR-ROM blocks
!byte $01
;
; ROM control bytes: Horizontal mirroring, no SRAM
; or trainer, Mapper #0
!byte %00000000, %00000000
;
; Filler
!byte $00,$00,$00,$00,$00,$00,$00,$00
;====================iNES Header End======================
;
;=====================Program Start=======================
!bin "gameprg.bin"
!bin "gamechr.bin"
!eof
!to "techdemo.nes", plain
;====================iNES Header Begin====================
; iNES identifier
!text "NES"
!byte $1A
; Number of PRG-ROM blocks
!byte $01
;
; Number of CHR-ROM blocks
!byte $01
;
; ROM control bytes: Horizontal mirroring, no SRAM
; or trainer, Mapper #0
!byte %00000000, %00000000
;
; Filler
!byte $00,$00,$00,$00,$00,$00,$00,$00
;====================iNES Header End======================
;
;=====================Program Start=======================
!bin "gameprg.bin"
!bin "gamechr.bin"
!eof