r177 - trunk/src/target/OM-2007/applications/openmoko-chordmaster
mickey at gta01.hmw-consulting.de
mickey at gta01.hmw-consulting.de
Thu Nov 2 15:34:23 CET 2006
Author: mickey
Date: 2006-11-02 14:34:23 +0000 (Thu, 02 Nov 2006)
New Revision: 177
Modified:
trunk/src/target/OM-2007/applications/openmoko-chordmaster/accords.chords
trunk/src/target/OM-2007/applications/openmoko-chordmaster/chordsdb.c
Log:
chordmaster: read accord list from file
Modified: trunk/src/target/OM-2007/applications/openmoko-chordmaster/accords.chords
===================================================================
--- trunk/src/target/OM-2007/applications/openmoko-chordmaster/accords.chords 2006-11-02 13:32:02 UTC (rev 176)
+++ trunk/src/target/OM-2007/applications/openmoko-chordmaster/accords.chords 2006-11-02 14:34:23 UTC (rev 177)
@@ -1,4 +1,3 @@
-KChordsFile
CATEGORY=A
A=002220
A=577655
@@ -11,7 +10,6 @@
A/D=x00220
A/D=xx0220
A/D=xx0655
-A/D=xx09109
A/G=3x2220
A/G=x02020
A/G=x02223
@@ -20,22 +18,22 @@
A/Gb=2x2220
A/Gb=x04220
A/Gb=xx2222
-A5 or A(no3rd)=577xx5
+A5=577xx5
A9=x022x0
-A5 or A(no3rd)=577xx0
+A5=577xx0
A6=002222
A6=0x4220
A6=2x2220
A6=x04220
A6=xx2222
A6/7=002022
-A6/7sus or A6/7sus4=554030
-A6/7sus or A6/7sus4=x02032
+A6/7sus4=554030
+A6/7sus4=x02032
A7=3x2220
A7=x02020
A7=x02223
A7(#5)=103021
-A7/add11 or A7/11=x00020
+A7/add11=x00020
A7sus4=x02030
A7sus4=x02033
A7sus4=x02233
@@ -48,12 +46,11 @@
Ab=466544
Ab#5=x32110
Ab/A=xx1214
-Ab/F=x810898
+Ab/F=x81089
Ab/F=xx1111
Ab/Gb=xx1112
Ab/Gb=xx4544
-Ab5 or Ab(no3rd)=466xx4
-Ab6=x810898
+Ab5=466xx4
Ab6=xx1111
Ab7=xx1112
Ab7=xx4544
@@ -75,7 +72,7 @@
Abm/E=xx1100
Abm/Gb=xx4444
Abm7=xx4444
-Absus or Absus4=xx6644
+Absus4=xx6644
Absus2/F=x13141
Adim/Ab=xx1214
Adim/E=03x240
@@ -109,19 +106,19 @@
Am7=x02010
Am7=x02213
Am7=x05558
-Am7(b5) or Ao7=xx1213
-Am7/add11 or Am7/11=x57580
-Amaj7 or A#7=x02120
+Am7(b5)=xx1213
+Am7/add11=x57580
+Amaj7=x02120
Amin/maj9=x06557
-Asus or Asus4=002230
-Asus or Asus4=x02230
-Asus or Asus4=5577x0
-Asus or Asus4=x00230
-Asus2 or Aadd9(no3)=002200
-Asus2 or Aadd9(no3)=002400
-Asus2 or Aadd9(no3)=022200
-Asus2 or Aadd9(no3)=x02200
-Asus2 or Aadd9(no3)=xx2200
+Asus4=002230
+Asus4=x02230
+Asus4=5577x0
+Asus4=x00230
+Asus2=002200
+Asus2=002400
+Asus2=022200
+Asus2=x02200
+Asus2=xx2200
Asus2/Ab=x02100
Asus2/C=007500
Asus2/C=x32200
@@ -144,7 +141,6 @@
Asus4/Db=x00220
Asus4/Db=xx0220
Asus4/Db=xx0655
-Asus4/Db=xx09109
Asus4/F=xx7760
Asus4/G=x02030
Asus4/G=x02033
@@ -157,122 +153,122 @@
Asus4/Gb=xx2232
Asus4/Gb=x54230
Asus4/Gb=x977x0
-CATEGORY=H
-H=224442
-H=799877
-H#5=321003
-H#5=3x1003
-H/A=2x1202
-H/A=x01202
-H/A=x21202
-H/A=x24242
-H/Ab=xx4444
-H/E=x22442
-H/E=xx4440
-H5 or H(no3rd)=799xx2
-H5 or H(no3rd)=x244x2
-H6=xx4444
-H7=2x1202
-H7=x01202
-H7=x21202
-H7=x24242
-H7/add11 or H7/11=004440
-H7/add11 or H7/11=021202
-H7sus4=x04400
-H7sus4=x24252
-Haug/E=3x1000
-Haug/E=xx1000
-Hb=113331
-Hb=x13331
-Hb=xx0331
-Hb#5=xx0332
-Hbb5=xx03x0
-Hb/A=113231
-Hb/Ab=x13131
-Hb/Ab=xx3334
-Hb/Db=xx0666
-Hb/E=x13330
-Hb/G=353333
-Hb/G=xx3333
-Hb5 or Hb(no3rd)=688xx6
-Hb5 or Hb(no3rd)=x133x6
-Hb6=353333
-Hb6=xx3333
-Hb6/add9 or Hb6/9=x33333
-Hb7=x13131
-Hb7=xx3334
-Hb7sus4=x13141
-Hbadd#11=x13330
-Hbaug/E=2x4330
-Hbdim/C=x3x320
-Hbdim/D=xx0320
-Hbdim/G=x12020
-Hbdim/G=xx2323
-Hbdim/Gb=242322
-Hbdim/Gb=xx4320
-Hbdim7=x12020
-Hbdim7=xx2323
-Hbm=113321
-Hbm/Ab=x13121
-Hbm/D=xx0666
-Hbm/Gb=xx3322
-Hbm7=x13121
-Hbmaj7 or Hb#7=113231
-Hbmaj9 or Hb9(#7)=x33335
-Hbsus2 or Hbadd9(no3)=xx3311
-Hbsus2/G=x35363
-Hbsus4/Ab=x13141
-Hdim/A=x20201
-Hdim/A=xx0201
-Hdim/Ab=x20101
-Hdim/Ab=xx0101
-Hdim/Ab=xx3434
-Hdim/G=1x0003
-Hdim/G=320001
-Hdim/G=xx0001
-Hdim7=x20101
-Hdim7=xx0101
-Hdim7=xx3434
-Hm=224432
-Hm=x24432
-Hm=xx0432
-Hm/A=x04432
-Hm/A=x20202
-Hm/A=x20232
-Hm/A=x24232
-Hm/A=xx0202
-Hm/G=220003
-Hm/G=220033
-Hm/G=320002
-Hm/G=xx4433
-Hm7=x04432
-Hm7=x20202
-Hm7=x20232
-Hm7=x24232
-Hm7=xx0202
-Hm7(b5)=123231
-Hm7(b5)=x20201
-Hm7(b5)=xx0201
-Hm7/add11 or Hm7/11=002432
-Hm7/add11 or Hm7/11=020202
-Hmaj7/#11=x23342
-Hsus or Hsus4=799xx0
-Hsus or Hsus4=x244x0
-Hsus2 or Hadd9(no3)=x444x2
-Hsus2 or Hadd9(no3)=xx4422
-Hsus2/E=x444x0
-Hsus4/A=x04400
-Hsus4/A=x24252
-Hsus4/Ab=022102
-Hsus4/Ab=0x4100
-Hsus4/Ab=222100
-Hsus4/Db=x444x0
-Hsus4/Eb=x22442
-Hsus4/Eb=xx4440
-Hsus4/G=022002
-Hsus4/G=024000
-Hsus4/G=0x4000
-Hsus4/G=222000
+CATEGORY=B
+B=224442
+B=799877
+B#5=321003
+B#5=3x1003
+B/A=2x1202
+B/A=x01202
+B/A=x21202
+B/A=x24242
+B/Ab=xx4444
+B/E=x22442
+B/E=xx4440
+B5=799xx2
+B5=x244x2
+B6=xx4444
+B7=2x1202
+B7=x01202
+B7=x21202
+B7=x24242
+B7/add11=004440
+B7/add11=021202
+B7sus4=x04400
+B7sus4=x24252
+Baug/E=3x1000
+Baug/E=xx1000
+Bb=113331
+Bb=x13331
+Bb=xx0331
+Bb#5=xx0332
+Bbb5=xx03x0
+Bb/A=113231
+Bb/Ab=x13131
+Bb/Ab=xx3334
+Bb/Db=xx0666
+Bb/E=x13330
+Bb/G=353333
+Bb/G=xx3333
+Bb5=688xx6
+Bb5=x133x6
+Bb6=353333
+Bb6=xx3333
+Bb6/add9=x33333
+Bb7=x13131
+Bb7=xx3334
+Bb7sus4=x13141
+Bbadd#11=x13330
+Bbaug/E=2x4330
+Bbdim/C=x3x320
+Bbdim/D=xx0320
+Bbdim/G=x12020
+Bbdim/G=xx2323
+Bbdim/Gb=242322
+Bbdim/Gb=xx4320
+Bbdim7=x12020
+Bbdim7=xx2323
+Bbm=113321
+Bbm/Ab=x13121
+Bbm/D=xx0666
+Bbm/Gb=xx3322
+Bbm7=x13121
+Bbmaj7=113231
+Bbmaj9=x33335
+Bbsus2=xx3311
+Bbsus2/G=x35363
+Bbsus4/Ab=x13141
+Bdim/A=x20201
+Bdim/A=xx0201
+Bdim/Ab=x20101
+Bdim/Ab=xx0101
+Bdim/Ab=xx3434
+Bdim/G=1x0003
+Bdim/G=320001
+Bdim/G=xx0001
+Bdim7=x20101
+Bdim7=xx0101
+Bdim7=xx3434
+Bm=224432
+Bm=x24432
+Bm=xx0432
+Bm/A=x04432
+Bm/A=x20202
+Bm/A=x20232
+Bm/A=x24232
+Bm/A=xx0202
+Bm/G=220003
+Bm/G=220033
+Bm/G=320002
+Bm/G=xx4433
+Bm7=x04432
+Bm7=x20202
+Bm7=x20232
+Bm7=x24232
+Bm7=xx0202
+Bm7(b5)=123231
+Bm7(b5)=x20201
+Bm7(b5)=xx0201
+Bm7/add11=002432
+Bm7/add11=020202
+Bmaj7/#11=x23342
+Bsus4=799xx0
+Bsus4=x244x0
+Bsus2=x444x2
+Bsus2=xx4422
+Bsus2/E=x444x0
+Bsus4/A=x04400
+Bsus4/A=x24252
+Bsus4/Ab=022102
+Bsus4/Ab=0x4100
+Bsus4/Ab=222100
+Bsus4/Db=x444x0
+Bsus4/Eb=x22442
+Bsus4/Eb=xx4440
+Bsus4/G=022002
+Bsus4/G=024000
+Bsus4/G=0x4000
+Bsus4/G=222000
CATEGORY=C
C=032010
C=035553
@@ -296,16 +292,16 @@
C/D=x32033
C/D=xx0010
C/D=xx0553
-C/D=x101212130
+C/D=x10121
C/D=x555x0
C/F=x33010
C/F=xx3010
-C5 or C(no3rd)=x355x3
+C5=x355x3
C6=002013
C6=x02010
C6=x02213
C6=x05558
-C6/add9 or C6/9=x57580
+C6/add9=x57580
C7=x35353
C7sus4=x35363
C9(b5)=03x332
@@ -315,7 +311,6 @@
Cadd9=x32033
Cadd9=xx0010
Cadd9=xx0553
-Cadd9=x101212130
Cadd9=x32030
Cadd9=x555x0
Cdim/A=xx1212
@@ -329,16 +324,15 @@
Cm/Bb=x35343
Cm6=xx1213
Cm7=x35343
-Cmaj7 or C#7=032000
-Cmaj7 or C#7=x22010
-Cmaj7 or C#7=x35453
-Cmaj9 or C9(#7)=x30000
-Csus or Csus4=x33011
-Csus or Csus4=xx3011
-Csus2 or Cadd9(no3)=x101212133
-Csus2 or Cadd9(no3)=x555x3
-Csus2 or Cadd9(no3)=x30033
-Csus2 or Cadd9(no3)=x35533
+Cmaj7=032000
+Cmaj7=x22010
+Cmaj7=x35453
+Cmaj9=x30000
+Csus4=x33011
+Csus4=xx3011
+Csus2=x555x3
+Csus2=x30033
+Csus2=x35533
Csus2/A=x57583
Csus2/A=xx0213
Csus2/B=330003
@@ -349,7 +343,6 @@
Csus2/E=x32033
Csus2/E=xx0010
Csus2/E=xx0553
-Csus2/E=x101212130
Csus2/E=x555x0
Csus2/F=330011
Csus4/A=3x3211
@@ -375,7 +368,7 @@
D/C=x00212
D/C=x3x232
D/C=x57575
-D/Db=xx0141414
+D/Db=xx0144
D/Db=xx0222
D/E=000232
D/E=004230
@@ -386,15 +379,15 @@
D/E=x977x0
D/G=5x4035
D/G=3x0232
-D5 or D(no3rd)=5577x5
-D5 or D(no3rd)=x00235
+D5=5577x5
+D5=x00235
D6=x04432
D6=x20202
D6=x20232
D6=x24232
D6=xx0202
-D6/add9 or D6/9=002432
-D6/add9 or D6/9=020202
+D6/add9=002432
+D6/add9=020202
D7=x57572
D7=x00212
D7=x3x232
@@ -413,19 +406,19 @@
Dadd9=x54230
Dadd9=x977x0
Daug/E=2x4330
-Db or Dbmaj=446664
-Db or Dbmaj=x43121
-Db or Dbmaj=x46664
-Db or Dbmaj=xx3121
-Db or Dbmaj=xx6664
-Db#5 or Dbaug=x03221
-Db#5 or Dbaug=x0x221
-Dbb5=xx3021
+Db=446664
+Db=x43121
+Db=x46664
+Db=xx3121
+Db=xx6664
+Dbaug=x03221
+Dbaug=x0x221
+Dbaug=xx3021
Db/B=x43404
Db/Bb=x13121
Db/C=x33121
Db/C=x46564
-Db5 or Db(no3rd)=x466x4
+Db5=x466x4
Db6=x13121
Db7=x43404
Dbaug/D=xx0221
@@ -448,10 +441,10 @@
Dbm/B=x46454
Dbm7=022120
Dbm7=x46454
-Dbm7(b5) or Dbo7=022020
-Dbmaj7 or Db#7=x33121
-Dbmaj7 or Db#7=x46564
-Dbsus2 or Dbadd9(no3)=xx6644
+Dbm7(b5)=022020
+Dbmaj7=x33121
+Dbmaj7=x46564
+Dbsus2=xx6644
Dbsus4/Bb=xx4324
Ddim/B=x20101
Ddim/B=xx0101
@@ -478,20 +471,19 @@
Dm7=x57565
Dm7=xx0211
Dm7=xx0565
-Dm7(b5) or Do7=xx0111
-Dm7/add11 or Dm7/11=3x0211
-Dmaj7 or D#7=xx0141414
-Dmaj7 or D#7=xx0222
+Dm7(b5)=xx0111
+Dm7/add11=3x0211
+Dmaj7=xx0222
Dmin/maj7=xx0221
-Dsus or Dsus4=5x0035
-Dsus or Dsus4=300033
-Dsus or Dsus4=x00033
-Dsus or Dsus4=xx0233
-Dsus2 or Dadd9(no3)=5577x0
-Dsus2 or Dadd9(no3)=x00230
-Dsus2 or Dadd9(no3)=002230
-Dsus2 or Dadd9(no3)=x02230
-Dsus2 or Dadd9(no3)=xx0230
+Dsus4=5x0035
+Dsus4=300033
+Dsus4=x00033
+Dsus4=xx0233
+Dsus2=5577x0
+Dsus2=x00230
+Dsus2=002230
+Dsus2=x02230
+Dsus2=xx0230
Dsus2/Ab=4x0230
Dsus2/B=020200
Dsus2/B=x20230
@@ -501,7 +493,7 @@
Dsus2/Db=x00220
Dsus2/Db=xx0220
Dsus2/Db=xx0655
-Dsus2/Db=xx09109
+Dsus2/Db=xx0910
Dsus2/F=xx7760
Dsus2/G=x02030
Dsus2/G=x02033
@@ -525,7 +517,7 @@
Dsus4/Gb=5x4035
Dsus4/Gb=3x0232
CATEGORY=E
-E or Emaj=022100
+E=022100
E=x76450
E#5=x32110
E/A=x02100
@@ -542,16 +534,16 @@
E/Gb=0x4100
E/Gb=222100
E11/b9=003434
-E5 or E(no3rd)=02xxx0
+E5=02xxx0
E5=002100
-E5 or E(no3rd)=x799x0
+E5=x799x0
E6=022120
E6=x46454
E7=020100
E7=022130
E7=x20130
E7=xx0100
-E7/add11 or E7/11=x00100
+E7/add11=x00100
E7/b9(b5)=013131
E7sus4=020200
E9=020102
@@ -559,18 +551,18 @@
Eadd9=022102
Eadd9=0x4100
Eadd9=222100
-Eb or Ebmaj=x11343
-Eb or Ebmaj=xx1343
-Eb or Ebmaj=xx5343
-Eb#5 or Ebaug=321003
-Eb#5 or Ebaug=3x1003
+Eb=x11343
+Eb=xx1343
+Eb=xx5343
+Ebaug=321003
+Ebaug=3x1003
Eb/C=x35343
Eb/D=x68786
Eb/Db=x11323
Eb/Db=x68686
Eb/Db=xx1323
Eb/E=xx5340
-Eb5 or Eb(no3rd)=x688x6
+Eb5=x688x6
Eb6=x35343
Eb7=x11323
Eb7=x68686
@@ -586,7 +578,7 @@
Ebm=xx4342
Ebm/Db=xx1322
Ebm7=xx1322
-Ebmaj7 or Eb#7=x68786
+Ebmaj7=x68786
Ebsus2/Ab=x13141
Ebsus4/F=x13141
Edim/C=x35353
@@ -609,11 +601,11 @@
Em/D=020030
Em/D=022030
Em/D=022033
-Em/D=xx0121212
+Em/D=xx0121
Em/D=xx0987
Em/D=xx2433
Em/D=0x0000
-Em/D=x101212120
+Em/D=x10121
Em/Db=022020
Em/Eb=3x1000
Em/Eb=xx1000
@@ -627,33 +619,33 @@
Em7=022030
Em7=022033
Em7=xx0000
-Em7=xx0121212
+Em7=xx0121
Em7=xx0987
Em7=xx2433
Em7=0x0000
-Em7=x101212120
+Em7=x10121
Em7(b5)=3x0330
-Em7/add11 or Em7/11=000000
-Em7/add11 or Em7/11=000003
-Em7/add11 or Em7/11=3x0200
+Em7/add11=000000
+Em7/add11=000003
+Em7/add11=3x0200
Em9=020002
Em9=020032
Em9=220000
-Emaj7 or E#7=021100
-Emaj7 or E#7=0x6440
-Emaj7 or E#7=xx1100
-Emaj9 or E9(#7)=021102
-Emaj9 or E9(#7)=4x4440
+Emaj7=021100
+Emaj7=0x6440
+Emaj7=xx1100
+Emaj9=021102
+Emaj9=4x4440
Emin/maj7=3x1000
Emin/maj7=xx1000
Emin/maj9=064000
-Esus or Esus4=002200
-Esus or Esus4=002400
-Esus or Esus4=022200
-Esus or Esus4=x02200
-Esus or Esus4=xx2200
-Esus2 or Eadd9(no3)=799xx0
-Esus2 or Eadd9(no3)=x244x0
+Esus4=002200
+Esus4=002400
+Esus4=022200
+Esus4=x02200
+Esus4=xx2200
+Esus2=799xx0
+Esus2=x244x0
Esus2/A=x04400
Esus2/A=x24252
Esus2/Ab=022102
@@ -699,12 +691,11 @@
F/Eb=xx3545
F/G=3x3211
F/G=xx3213
-F5 or F(no3rd)=133xx1
-F5 or F(no3rd)=x810xx1
+F5=133xx1
F6=x57565
F6=xx0211
F6=xx0565
-F6/add9 or F6/9=3x0211
+F6/add9=3x0211
F7=xx1211
F7=xx3545
Fadd9=3x3211
@@ -723,22 +714,21 @@
Fm/D=xx0111
Fm/Db=x33121
Fm/Db=x46564
-Fm/Eb=x810898
+Fm/Eb=x81089
Fm/Eb=xx1111
Fm6=xx0111
-Fm7=x810898
Fm7=xx1111
-Fmaj7 or F#7=003210
-Fmaj7 or F#7=133210
-Fmaj7 or F#7=1x2210
-Fmaj7 or F#7=xx2211
-Fmaj7 or F#7=xx3210
+Fmaj7=003210
+Fmaj7=133210
+Fmaj7=1x2210
+Fmaj7=xx2211
+Fmaj7=xx3210
Fmaj7/#11=023210
Fmaj7/#11=133200
-Fmaj9 or F9(#7)=003013
-Fsus or Fsus4=xx3311
-Fsus2 or Fadd9(no3)=x33011
-Fsus2 or Fadd9(no3)=xx3011
+Fmaj9=003013
+Fsus4=xx3311
+Fsus2=x33011
+Fsus2=xx3011
Fsus2/A=3x3211
Fsus2/A=xx3213
Fsus2/B=x33003
@@ -752,7 +742,7 @@
CATEGORY=G
G=320003
G/B=320033
-G or Gmaj=355433
+G=355433
G=3x0003
G=x55433
G#5=321003
@@ -766,11 +756,11 @@
G/E=020030
G/E=022030
G/E=022033
-G/E=xx0121212
+G/E=xx0121
G/E=xx0987
G/E=xx2433
G/E=0x0000
-G/E=x101212120
+G/E=x10121
G/F=1x0003
G/F=320001
G/F=xx0001
@@ -778,24 +768,24 @@
G/Gb=220033
G/Gb=320002
G/Gb=xx4433
-G5 or G(no3rd)=355xx3
-G5 or G(no3rd)=3x0033
+G5=355xx3
+G5=3x0033
G6=020000
G6=320000
G6=022030
G6=022033
-G6=xx0121212
+G6=xx0121
G6=xx0987
G6=xx2433
G6=0x0000
-G6=x101212120
-G6/add9 or G6/9=000000
-G6/add9 or G6/9=000003
-G6/add9 or G6/9=3x0200
+G6=x10121
+G6/add9=000000
+G6/add9=000003
+G6/add9=3x0200
G7=1x0003
G7=320001
G7=xx0001
-G7/add11 or G7/11=x30001
+G7/add11=x30001
G7sus4=330011
G9=x00001
G9=x23233
@@ -803,9 +793,9 @@
Gadd9=320203
Gaug/E=3x1000
Gaug/E=xx1000
-Gb or Gbmaj=244322
-Gb or Gbmaj=x44322
-Gb or Gbmaj=xx4322
+Gb=244322
+Gb=x44322
+Gb=xx4322
Gb#5=xx0332
Gb/Ab=xx4324
Gb/E=242322
@@ -813,12 +803,12 @@
Gb/Eb=xx1322
Gb/F=xx3322
Gb6=xx1322
-Gb7 or Gbdom7=242322
-Gb7 or Gbdom7=xx4320
+Gb7=242322
+Gb7=xx4320
Gb7(#5)=2x4330
Gb7/#9=x04320
Gb7sus4=x444x0
-Gbadd9 or Gb2=xx4324
+Gbadd9=xx4324
Gbaug/E=2x4330
Gbdim/D=x57572
Gbdim/D=x00212
@@ -831,7 +821,7 @@
Gbm=244222
Gbm=x44222
Gbm=xx4222
-Gbm/D=xx0141414
+Gbm/D=xx0141
Gbm/D=xx0222
Gbm/E=002222
Gbm/E=0x4220
@@ -843,11 +833,11 @@
Gbm7=2x2220
Gbm7=x04220
Gbm7=xx2222
-Gbm7(b5) or Gbo7=x02212
-Gbm7(b5) or Gbo7=xx2212
+Gbm7(b5)=x02212
+Gbm7(b5)=xx2212
Gbm7/b9=002022
-Gbmaj7 or Gb#7=xx3322
-Gbsus or Gbsus4=x44422
+Gbmaj7=xx3322
+Gbsus4=x44422
Gbsus2/Bb=xx4324
Gbsus4/E=x444x0
Gdim/E=x12020
@@ -867,20 +857,20 @@
Gm6=3x0330
Gm7=353333
Gm7=xx3333
-Gm7/add11 or Gm7/11=x33333
+Gm7/add11=x33333
Gm9=353335
-Gmaj7 or G#7=220003
-Gmaj7 or G#7=220033
-Gmaj7 or G#7=320002
-Gmaj7 or G#7=xx4433
-Gsus or Gsus4=x101212133
-Gsus or Gsus4=x30033
-Gsus or Gsus4=x35533
-Gsus or Gsus4=x55533
-Gsus2 or Gadd9(no3)=5x0035
-Gadd9(no3)=300033
-Gsus2 or Gadd9(no3)=x00033
-Gsus2 or Gadd9(no3)=xx0233
+Gmaj7=220003
+Gmaj7=220033
+Gmaj7=320002
+Gmaj7=xx4433
+Gsus4=x10121
+Gsus4=x30033
+Gsus4=x35533
+Gsus4=x55533
+Gsus2=5x0035
+Gadd9=300033
+Gsus2=x00033
+Gsus2=xx0233
Gsus2/B=300003
Gsus2/B=320203
Gsus2/C=x57583
@@ -901,6 +891,6 @@
Gsus4/E=x32033
Gsus4/E=xx0010
Gsus4/E=xx0553
-Gsus4/E=x101212130
+Gsus4/E=x10121
Gsus4/E=x555x0
Gsus4/F=330011
Modified: trunk/src/target/OM-2007/applications/openmoko-chordmaster/chordsdb.c
===================================================================
--- trunk/src/target/OM-2007/applications/openmoko-chordmaster/chordsdb.c 2006-11-02 13:32:02 UTC (rev 176)
+++ trunk/src/target/OM-2007/applications/openmoko-chordmaster/chordsdb.c 2006-11-02 14:34:23 UTC (rev 177)
@@ -18,6 +18,8 @@
#include "chordsdb.h"
+#include <stdio.h>
+
G_DEFINE_TYPE (ChordsDB, chordsdb, G_TYPE_OBJECT);
#define CHORDSDB_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_CHORDSDB, ChordsDBPrivate))
@@ -66,19 +68,29 @@
object_class->dispose = chordsdb_dispose;
object_class->finalize = chordsdb_finalize;
- //FIXME read from chords file
- klass->categories = g_slist_append( klass->categories, "C" );
- klass->categories = g_slist_append( klass->categories, "D" );
- klass->categories = g_slist_append( klass->categories, "E" );
- klass->categories = g_slist_append( klass->categories, "F" );
- klass->categories = g_slist_append( klass->categories, "G" );
- klass->categories = g_slist_append( klass->categories, "A" );
- klass->categories = g_slist_append( klass->categories, "B" );
-
- //FIXME read from chords file
- klass->chords = g_slist_append( klass->chords, chord_new( "A", "002220" ) );
- klass->chords = g_slist_append( klass->chords, chord_new( "A", "577655" ) );
- klass->chords = g_slist_append( klass->chords, chord_new( "A", "x02220" ) );
+ FILE* file = g_fopen( RESOURCE_PATH "accords.chords", "r" );
+ g_assert( file ); //FIXME error handling, if chord file is not present
+ gchar line[256];
+ gchar category[2] = { 0, 0 };
+ while( fgets(&line, sizeof(line), file) ) {
+ g_debug( "read line '%s'", &line );
+ if ( strncmp( "CATEGORY=", &line, 8 ) == 0 )
+ {
+ g_debug( "adding category %c", line[9] );
+ category[0] = line[9];
+ klass->categories = g_slist_append( klass->categories, strdup(&category) );
+ }
+ else
+ {
+ gchar* key = strtok( &line, "=\n" );
+ g_assert( key );
+ gchar* val = strtok( NULL, "=\n" );
+ g_assert( val );
+ g_debug( "adding chord '%s' = '%s'", key, val );
+ klass->chords = g_slist_append( klass->chords, chord_new( strdup(key), strdup(val) ) );
+ }
+ }
+ fclose( file );
}
static void
More information about the commitlog
mailing list