Skip to content

Commit d2a0d39

Browse files
committed
Move screen clearing code over to main.s
1 parent 6fb633a commit d2a0d39

File tree

2 files changed

+51
-57
lines changed

2 files changed

+51
-57
lines changed

main.s

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,57 @@ reset:
2121
jsr vdp_reset
2222
jsr tty_reset
2323

24+
.clear_board:
25+
vdp_write_vram VDP_NAME_TABLE_BASE
26+
.top_border:
27+
lda #3
28+
sta VDP_VRAM
29+
ldx #(VDP_COLS - 2)
30+
lda #0
31+
.top_border_horiz:
32+
sta VDP_VRAM
33+
dex
34+
bne .top_border_horiz
35+
lda #2
36+
sta VDP_VRAM
37+
38+
ldy #(VDP_ROWS - 2)
39+
.mid_board:
40+
lda #1
41+
sta VDP_VRAM
42+
ldx #(VDP_COLS - 2)
43+
lda #' '
44+
.mid_board_horiz
45+
sta VDP_VRAM
46+
dex
47+
bne .mid_board_horiz
48+
lda #1
49+
sta VDP_VRAM
50+
dey
51+
bne .mid_board
52+
53+
.bottom_border:
54+
lda #5
55+
sta VDP_VRAM
56+
ldx #(VDP_COLS - 2)
57+
lda #0
58+
.bottom_border_horiz:
59+
sta VDP_VRAM
60+
dex
61+
bne .bottom_border_horiz
62+
lda #4
63+
sta VDP_VRAM
64+
65+
.snake:
66+
vdp_write_vram (VDP_NAME_TABLE_BASE + (5 * VDP_COLS) + 30)
67+
lda #'*'
68+
sta VDP_VRAM
69+
70+
vdp_write_vram (VDP_NAME_TABLE_BASE + (10 * VDP_COLS) + 20)
71+
lda #$7F
72+
sta VDP_VRAM
73+
sta VDP_VRAM
74+
2475
cli
2576

2677
loop:

vdp.s

Lines changed: 0 additions & 57 deletions
Original file line numberDiff line numberDiff line change
@@ -102,63 +102,6 @@ vdp_pattern_table_loop:
102102

103103

104104
vdp_initialize_name_table:
105-
pha
106-
phx
107-
phy
108-
vdp_write_vram VDP_NAME_TABLE_BASE
109-
.top_border:
110-
lda #3
111-
sta VDP_VRAM
112-
ldx #(VDP_COLS - 2)
113-
lda #0
114-
.top_border_horiz:
115-
sta VDP_VRAM
116-
dex
117-
bne .top_border_horiz
118-
lda #2
119-
sta VDP_VRAM
120-
121-
ldy #(VDP_ROWS - 2)
122-
.mid_board:
123-
lda #1
124-
sta VDP_VRAM
125-
ldx #(VDP_COLS - 2)
126-
lda #' '
127-
.mid_board_horiz
128-
sta VDP_VRAM
129-
dex
130-
bne .mid_board_horiz
131-
lda #1
132-
sta VDP_VRAM
133-
dey
134-
bne .mid_board
135-
136-
.bottom_border:
137-
lda #5
138-
sta VDP_VRAM
139-
ldx #(VDP_COLS - 2)
140-
lda #0
141-
.bottom_border_horiz:
142-
sta VDP_VRAM
143-
dex
144-
bne .bottom_border_horiz
145-
lda #4
146-
sta VDP_VRAM
147-
148-
.snake:
149-
vdp_write_vram (VDP_NAME_TABLE_BASE + (5 * VDP_COLS) + 30)
150-
lda #'*'
151-
sta VDP_VRAM
152-
153-
vdp_write_vram (VDP_NAME_TABLE_BASE + (10 * VDP_COLS) + 20)
154-
lda #$7F
155-
sta VDP_VRAM
156-
sta VDP_VRAM
157-
158-
.exit
159-
ply
160-
plx
161-
pla
162105
rts
163106

164107
vdp_enable_display:

0 commit comments

Comments
 (0)