Say hello to D-Pad Hero 2 repository
[dpadhero2.git] / sound / track.h
blob9f0346df1b8b96c3b0ced885f2f80f7f69682983
2 ; Copyright (C) 2004, 2005 Kent Hansen.
4 ; This file is part of Neotoxin.
6 ; Neotoxin is free software; you can redistribute it and/or modify
7 ; it under the terms of the GNU General Public License as published by
8 ; the Free Software Foundation; either version 2 of the License, or
9 ; (at your option) any later version.
11 ; Neotoxin is distributed in the hope that it will be useful,
12 ; but WITHOUT ANY WARRANTY; without even the implied warranty of
13 ; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 ; GNU General Public License for more details.
16 ; You should have received a copy of the GNU General Public License
17 ; along with this program; if not, write to the Free Software
18 ; Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
21 ; Sequencer track definitions.
23 .ifndef TRACK_H
24 .define TRACK_H
26 .include <common/ptr.h>
28 .struc order_state
29 pos .byte ; Position in order table
30 loop_pos .byte ; Order loop position
31 loop_count .byte ; Order loop count
32 .ends
34 .struc pattern_state
35 ptr .ptr ; Pointer to pattern
36 pos .byte ; Pattern position (byte offset)
37 loop_count .byte ; Pattern loop count
38 row .byte ; Row in pattern
39 row_count .byte ; Number of rows in pattern
40 row_status .byte ; on/off bits
41 transpose .byte ; Note transpose
42 .ends
44 ; Structure that describes a sequencer track's state.
45 .struc track_state
46 speed .byte ; Number of ticks (frames) per row inc
47 tick .byte ; Tick in row
48 order .order_state
49 pattern .pattern_state
50 .ends
52 .endif ; !TRACK_H