-
Notifications
You must be signed in to change notification settings - Fork 21
/
modplay_defines.inc
92 lines (82 loc) · 2.36 KB
/
modplay_defines.inc
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
; MOD player (c) 2002 mls
;
; generates samples for 11000 HZ
; bpm always 125
STATE_OFF equ 0
STATE_PLAY equ 1
STATE_SAMPLE equ 2
; struct volume
vo_volume equ 0
vo_volumegoal equ vo_volume + 2
vo_volumerate equ vo_volumegoal + 2
vo_sizeof equ vo_volumerate + 2
; struct channel
ch_samp equ 0
ch_startseg equ ch_samp + 2
ch_pitch equ ch_startseg + 2
ch_finetune equ ch_pitch + 2
ch_volume equ ch_finetune + 2
ch_start equ ch_volume + 2 ; pointer, rel to ch_startseg
ch_pointer equ ch_start + 4
ch_pointer8 equ ch_pointer + 2
ch_end equ ch_pointer8 + 2
ch_send equ ch_end + 2
ch_roff equ ch_send + 2
ch_rend equ ch_roff + 2
ch_step equ ch_rend + 2
ch_step8 equ ch_step + 2
ch_slide equ ch_step8 + 2
ch_vibrate equ ch_slide + 2
ch_viboffset equ ch_vibrate + 2
ch_vibdepth equ ch_viboffset + 2
ch_pitchgoal equ ch_vibdepth + 2
ch_pitchrate equ ch_pitchgoal + 2
ch_volumerate equ ch_pitchrate + 2
ch_arpindex equ ch_volumerate + 2
ch_arp equ ch_arpindex + 2
ch_current equ ch_arp + 3 * 2
ch_retrig equ ch_current + 2
ch_latesamp equ ch_retrig + 2
ch_effect equ ch_latesamp + 2
ch_player equ ch_effect + 2 ; pointer to player data, rel to ds
ch_sizeof equ ch_player + 4
; struct player
pl_volume equ 0
pl_state equ pl_volume + vo_sizeof
pl_songlen equ pl_state + 2
pl_speed equ pl_songlen + 2
pl_effpos equ pl_speed + 2
pl_nextsongnum equ pl_effpos + 2
pl_nextnotenum equ pl_nextsongnum + 2
pl_songnum equ pl_nextnotenum + 2
pl_notenum equ pl_songnum + 2
pl_loop_notenum equ pl_notenum + 2
pl_loop_counter equ pl_loop_notenum + 2
pl_seg equ pl_loop_counter + 2
pl_song equ pl_seg + 2 ; pointer, rel to pl_seg
pl_patterns equ pl_song + 4 ; pointer, rel to pl_seg
pl_sampinfo equ pl_patterns + 4 ; pointer, rel to pl_seg
pl_sampd equ pl_sampinfo + 4 ; pointer array, rel to pl_sampdseg
pl_sampdseg equ pl_sampd + 4 * 32
pl_channs equ pl_sampdseg + 2 * 32
pl_loaded equ pl_channs + 4 * ch_sizeof
pl_sizeof equ pl_loaded + 2
EFF_ARP equ 1
EFF_SLIDE equ 2
EFF_PORTA equ 3
EFF_VIBRA equ 4
EFF_RETRIG equ 5
EFF_CUT equ 6
EFF_LATESTART equ 7
EFF_SLIDEVOL equ 8
EFF_PORTASLIDE equ 8 + 3
EFF_VIBRASLIDE equ 8 + 4
; _must_ be 320
num_samples equ 320
; struct area
ar_hassamp equ 0
ar_samps equ ar_hassamp + 1
ar_volume equ ar_samps + num_samples + 1
ar_players equ ar_volume + vo_sizeof
ar_ssamps equ ar_players + pl_sizeof * 4
ar_sizeof equ ar_ssamps + num_samples * 2