sometest_nbasic
By: a guest | Mar 20th, 2010 | Syntax:
Z80 Assembler | Size: 2.12 KB | Hits: 70 | Expires: Never
//header.bas
asm
.inesprg 1 ;//one PRG bank
.ineschr 1 ;//one CHR bank
.inesmir 0 ;//mirroring type 0
.inesmap 0 ;//memory mapper 0 (none)
.org 32768
.bank 0
endasm
start:
gosub waitvbl
1/>set 8192 %00100000
1/>set 8193 %00011110 //sprite/bg visible, no sprite/bg clipping
gosub waitvbl
gosub waitvbl
//----------------------------------------------------------------
//main.bas
// paletb 0,&h30,&h20,&h2D,&h10
1/>set 8198 $3F
1/>set 8198 $00
1/>set 8199 $30
1/>set 8199 $20
1/>set 8199 $2D
1/>set 8199 $10
// paletb 1,&h10,&h11,&h12,&h17
1/>set 8198 $3F
1/>set 8198 $04
1/>set 8199 $10
1/>set 8199 $11
1/>set 8199 $12
1/>set 8199 $17
// paletb 2,&h24,&h25,&h26,&h12
1/>set 8198 $3F
1/>set 8198 $08
1/>set 8199 $24
1/>set 8199 $25
1/>set 8199 $26
1/>set 8199 $12
// paletb 3,&h28,&h29,&h2A,&h1A
1/>set 8198 $3f
1/>set 8198 $0C
1/>set 8199 $28
1/>set 8199 $29
1/>set 8199 $2A
1/>set 8199 $1A
// (...?) cls &h41
1/>set 8198 $20
1/>set 8198 $00
1/>set x 0
z01_loop:
1/>set 8199 $41
1/>set 8199 $41
1/>set 8199 $41
1/>set 8199 $41
1/>inc x
if x <> 240 branchto z01_loop
// color 0,0,0
// color 2,0,1
// color 0,2,2
// color 2,2,3
1/>set $2006 $23
1/>set $2006 $C0
1/>set $2007 %11100100
// (...?) repeating seq-vpoke some more times
1/>set x 0
q0x_loop:
1/>set $2007 %11100100
1/>inc x
if x <> 63 branchto q0x_loop
//the main program loop
mainloop:
gosub waitvbl
goto mainloop
//----------------------------------------------------------------
// common.bas
//wait until screen refresh
waitvbl:
asm
lda $2002
bpl waitvbl ;//wait for start of retrace
waitvbl_1:
lda $2002
bmi waitvbl_1 ;//wait for end of retrace
endasm
1/>set 8197 0 //1/>set scroll 1/>and PPU base address
1/>set 8197 0
1/>set 8198 0
1/>set 8198 0
return
//----------------------------------------------------------------
// footer.bas
asm
.bank 1 ;//jump table points to NMI, Reset, and IRQ start points
.org $fffa
.dw start, start, start
.bank 2 ;//include CHR ROM
.org $0000
.incbin "25ch.chr"
.incbin "25ch.chr"
endasm
//----------------------------------------------------------------