-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathDrawPetMateScreen.asm
37 lines (36 loc) · 1.27 KB
/
DrawPetMateScreen.asm
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
//////////////////////////////////////////////////////////////////////////////////////
// CityXen - https://linktr.ee/cityxen
//////////////////////////////////////////////////////////////////////////////////////
// Deadline's C64 Assembly Language Library: Macros: DrawPetMateScreen Macro
//////////////////////////////////////////////////////////////////////////////////////
.macro DrawPetMateScreen(screen_name) {
////////////////////////////////////////////////
// Draw the Petmate Screen... START
lda screen_name
sta BORDER_COLOR
lda screen_name+1
sta BACKGROUND_COLOR
ldx #$00 // Draw the screen from memory location
!dpms_loop:
lda screen_name+2,x // Petmate screen (+2 is to skip over background/border color)
sta 1024,x
lda screen_name+2+256,x
sta 1024+256,x
lda screen_name+2+512,x
sta 1024+512,x
lda screen_name+2+512+232,x
sta 1024+512+232,x
lda screen_name+1000+2,x // And now the colors
sta COLOR_RAM,x
lda screen_name+1000+2+256,x
sta COLOR_RAM+256,x
lda screen_name+1000+2+512,x
sta COLOR_RAM+512,x
lda screen_name+1000+2+512+232,x
sta COLOR_RAM+512+232,x
inx
cpx #$00
bne !dpms_loop-
// Draw the Petmate Screen... END
////////////////////////////////////////////////
}