Subversion Repositories NedoOS

Rev

Rev 73 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log

Rev Author Line No. Line
73 Alone 1
        MACRO SETANIM n
2
        ld (ix+obj_anim),n
3
        ld (ix+obj_animcounter),1
4
        ld (ix+obj_animphase),0
5
        ENDM
6
 
7
        MACRO GETXDE_YHL
8
        ld e,(ix+obj_x)
9
        ld d,(ix+(obj_x+1))
10
        ld l,(ix+obj_y)
11
        ld h,(ix+(obj_y+1))
12
        ENDM
13
 
14
        MACRO PUTXDE_YHL
15
        ld (ix+obj_x),e
16
        ld (ix+(obj_x+1)),d
17
        ld (ix+obj_y),l
18
        ld (ix+(obj_y+1)),h
19
        ENDM
20
 
21
        MACRO COORDSBC_TOSCRHL
22
        ld a,b
23
        rra
24
        rra
25
        rra
26
        xor b
27
        and 0xf8
28
        xor b
29
        and 0x1f
30
        add a,scrbuf/256
31
        ld h,a
32
        ld a,c
33
        rlca
34
        rlca
35
        rlca
36
        xor b
37
        and 0xc7
38
        xor b
39
        rlca
40
        rlca
41
        ld l,a
42
        ENDM
43
 
44
        MACRO COORDSBC_TOSCRDE
45
        ld a,b
46
        rra
47
        rra
48
        rra
49
        xor b
50
        and 0xf8
51
        xor b
52
        and 0x1f
53
        add a,scrbuf/256
54
        ld d,a
55
        ld a,c
56
        rlca
57
        rlca
58
        rlca
59
        xor b
60
        and 0xc7
61
        xor b
62
        rlca
63
        rlca
64
        ld e,a
65
        ENDM
66
 
67
        MACRO CALCvalidmapaddr_hlyx_tohl
68
;hl=yx (� ��������)
69
;%YYYYYyyy XXXXXxxx
70
        ld a,h
71
        rra
72
        rra
73
        rra
74
;%???YYYYY XXXXXxxx
75
        rra
76
        rr l
77
        rra
78
        rr l
79
        rra
80
        rr l
170 demige 81
        and 0x03
73 Alone 82
        add a,validmap/256
83
        ld h,a
84
;%tttttYY YYYXXXXX
85
        ENDM
86
 
87
        MACRO CALCvalidmapaddr_bcyx_tohl
88
;bc=yx (� ��������)
89
;%YYYYYyyy XXXXXxxx
90
        ld a,b
91
        rra
92
        rra
93
        rra
94
;%???YYYYY XXXXXxxx
95
        ld l,c
96
        rra
97
        rr l
98
        rra
99
        rr l
100
        rra
101
        rr l
170 demige 102
        and 0x03
73 Alone 103
        add a,validmap/256
104
        ld h,a
105
;%tttttYY YYYXXXXX
106
        ENDM
107
 
108
        macro STRUCT
109
_=0
110
        endm
111
        macro BYTE addr
112
addr=_
113
_=_+1
114
        endm
115
        macro WORD addr
116
addr=_
117
_=_+2
118
        endm
119
 
120
        STRUCT
121
        WORD obj_x
122
        WORD obj_y
123
        WORD obj_objaddr
124
        BYTE obj_energy
125
        BYTE obj_dir
126
        BYTE obj_speed
127
        BYTE obj_anim
128
        BYTE obj_animphase
129
        BYTE obj_animcounter
130
        BYTE obj_delaycounter
131
        BYTE obj_gundelaycounter
132
objsize=_
133