Mercurial > hg > sidinfo
annotate README.txt @ 325:d056f284184b
Improvements to the README.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Sun, 12 Jan 2020 00:11:34 +0200 |
parents | 887b67891105 |
children | 0e818307e90b |
rev | line source |
---|---|
11
20bcf214b282
Add some "documentation" and a license.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
1 SIDInfo - PSID/RSID information displayer |
119 | 2 Programmed and designed by Matti 'ccr' Hämäläinen |
233 | 3 (C) Copyright 2014-2020 Tecnic Software productions (TNSP) |
11
20bcf214b282
Add some "documentation" and a license.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
4 |
20bcf214b282
Add some "documentation" and a license.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
5 See COPYING for license information. |
20bcf214b282
Add some "documentation" and a license.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
6 |
248 | 7 For contacting the author, e-mail is preferred: ccr@tnsp.org |
11
20bcf214b282
Add some "documentation" and a license.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
8 |
325
d056f284184b
Improvements to the README.
Matti Hamalainen <ccr@tnsp.org>
parents:
295
diff
changeset
|
9 ======================================================================= |
11
20bcf214b282
Add some "documentation" and a license.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
10 |
20bcf214b282
Add some "documentation" and a license.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
11 Requirements |
20bcf214b282
Add some "documentation" and a license.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
12 ============ |
20bcf214b282
Add some "documentation" and a license.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
13 The compilation and usage of these utilities requires following |
20bcf214b282
Add some "documentation" and a license.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
14 software packages or functional equivalents installed: |
20bcf214b282
Add some "documentation" and a license.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
15 |
233 | 16 - GCC or some other C99 compatible C compiler like Clang. |
11
20bcf214b282
Add some "documentation" and a license.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
17 - GNU Make |
153
e3be2ae6120e
Delete trailing whitespace.
Matti Hamalainen <ccr@tnsp.org>
parents:
152
diff
changeset
|
18 |
43 | 19 - th-libs library (included in the tar/zip packages, |
20 for building from mercurial repo, see "how to build") | |
11
20bcf214b282
Add some "documentation" and a license.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
21 |
157
8fc887cb56d0
Implement iconv support for converting from PSID de-facto latin-1/ISO-8859-*
Matti Hamalainen <ccr@tnsp.org>
parents:
153
diff
changeset
|
22 - libiconv (optional, for converting ISO-8859/Latin-1 encoded |
8fc887cb56d0
Implement iconv support for converting from PSID de-facto latin-1/ISO-8859-*
Matti Hamalainen <ccr@tnsp.org>
parents:
153
diff
changeset
|
23 text used in HVSC SID files and STIL database to whatever |
8fc887cb56d0
Implement iconv support for converting from PSID de-facto latin-1/ISO-8859-*
Matti Hamalainen <ccr@tnsp.org>
parents:
153
diff
changeset
|
24 character set your system is using, like UTF-8.) |
8fc887cb56d0
Implement iconv support for converting from PSID de-facto latin-1/ISO-8859-*
Matti Hamalainen <ccr@tnsp.org>
parents:
153
diff
changeset
|
25 |
8fc887cb56d0
Implement iconv support for converting from PSID de-facto latin-1/ISO-8859-*
Matti Hamalainen <ccr@tnsp.org>
parents:
153
diff
changeset
|
26 |
233 | 27 For Linux -> Win32/64 cross-compilation I have used the MinGW packages |
28 from Debian Testing (wheezy), installable via "apt-get mingw-w64". | |
11
20bcf214b282
Add some "documentation" and a license.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
29 |
20bcf214b282
Add some "documentation" and a license.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
30 Please don't ask me for help to get cross-compilation working. |
20bcf214b282
Add some "documentation" and a license.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
31 |
325
d056f284184b
Improvements to the README.
Matti Hamalainen <ccr@tnsp.org>
parents:
295
diff
changeset
|
32 ======================================================================= |
11
20bcf214b282
Add some "documentation" and a license.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
33 |
20bcf214b282
Add some "documentation" and a license.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
34 How to build |
20bcf214b282
Add some "documentation" and a license.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
35 ============ |
30 | 36 0) If building from Mercurial repo, you need th-libs: |
37 | |
295
887b67891105
Refer to https:// URL instead of http://
Matti Hamalainen <ccr@tnsp.org>
parents:
290
diff
changeset
|
38 $ hg clone https://tnsp.org/hg/th-libs |
11
20bcf214b282
Add some "documentation" and a license.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
39 |
30 | 40 1) Possibly edit Makefile / Makefile.w32 |
41 | |
76 | 42 2) $ make |
30 | 43 |
11
20bcf214b282
Add some "documentation" and a license.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
44 or, if cross-compiling to Win32 via MinGW |
30 | 45 |
76 | 46 $ make -f Makefile.w32 |
11
20bcf214b282
Add some "documentation" and a license.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
47 |
30 | 48 3) ??? |
11
20bcf214b282
Add some "documentation" and a license.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
49 |
30 | 50 4) If it works -> Happy fun times \:D\ |
11
20bcf214b282
Add some "documentation" and a license.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
51 |
96
b6bf182bd37f
Add line about 'make install'.
Matti Hamalainen <ccr@tnsp.org>
parents:
76
diff
changeset
|
52 5) sudo make install |
b6bf182bd37f
Add line about 'make install'.
Matti Hamalainen <ccr@tnsp.org>
parents:
76
diff
changeset
|
53 |
284
5dfe7846e902
Document the support of "HVSC_BASE" environment variable.
Matti Hamalainen <ccr@tnsp.org>
parents:
282
diff
changeset
|
54 6) Optionally set "HVSC_BASE" environment variable |
5dfe7846e902
Document the support of "HVSC_BASE" environment variable.
Matti Hamalainen <ccr@tnsp.org>
parents:
282
diff
changeset
|
55 somewhere to point to your HVSC root directory |
5dfe7846e902
Document the support of "HVSC_BASE" environment variable.
Matti Hamalainen <ccr@tnsp.org>
parents:
282
diff
changeset
|
56 aka "/somewhere/C64Music", so you don't need to |
5dfe7846e902
Document the support of "HVSC_BASE" environment variable.
Matti Hamalainen <ccr@tnsp.org>
parents:
282
diff
changeset
|
57 specify it via the -H option. This way sidinfo |
5dfe7846e902
Document the support of "HVSC_BASE" environment variable.
Matti Hamalainen <ccr@tnsp.org>
parents:
282
diff
changeset
|
58 will use the song length database and STIL |
5dfe7846e902
Document the support of "HVSC_BASE" environment variable.
Matti Hamalainen <ccr@tnsp.org>
parents:
282
diff
changeset
|
59 database from HVSC. |
5dfe7846e902
Document the support of "HVSC_BASE" environment variable.
Matti Hamalainen <ccr@tnsp.org>
parents:
282
diff
changeset
|
60 |
5dfe7846e902
Document the support of "HVSC_BASE" environment variable.
Matti Hamalainen <ccr@tnsp.org>
parents:
282
diff
changeset
|
61 (This setting is also used by some other SID- |
5dfe7846e902
Document the support of "HVSC_BASE" environment variable.
Matti Hamalainen <ccr@tnsp.org>
parents:
282
diff
changeset
|
62 related utilities such as stilview and sidplayfp.) |
5dfe7846e902
Document the support of "HVSC_BASE" environment variable.
Matti Hamalainen <ccr@tnsp.org>
parents:
282
diff
changeset
|
63 |
96
b6bf182bd37f
Add line about 'make install'.
Matti Hamalainen <ccr@tnsp.org>
parents:
76
diff
changeset
|
64 |
325
d056f284184b
Improvements to the README.
Matti Hamalainen <ccr@tnsp.org>
parents:
295
diff
changeset
|
65 ======================================================================= |
11
20bcf214b282
Add some "documentation" and a license.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
66 |
20bcf214b282
Add some "documentation" and a license.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
67 Usage |
20bcf214b282
Add some "documentation" and a license.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
68 ===== |
40 | 69 For more information about options, see 'sidinfo --help'. |
70 | |
325
d056f284184b
Improvements to the README.
Matti Hamalainen <ccr@tnsp.org>
parents:
295
diff
changeset
|
71 --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- |
d056f284184b
Improvements to the README.
Matti Hamalainen <ccr@tnsp.org>
parents:
295
diff
changeset
|
72 |
11
20bcf214b282
Add some "documentation" and a license.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
73 |
193 | 74 Display all information about one file in "entry per row" format: |
75 | |
153
e3be2ae6120e
Delete trailing whitespace.
Matti Hamalainen <ccr@tnsp.org>
parents:
152
diff
changeset
|
76 $ sidinfo /misc/C64Music/MUSICIANS/J/Jeff/Anal_ogue.sid |
17 | 77 Filename : /misc/C64Music/MUSICIANS/J/Jeff/Anal_ogue.sid |
78 Type : PSID | |
79 Version : 2.0 | |
80 Data offset : 124 | |
81 Data size : 7154 | |
82 Load address : 0 | |
83 Init address : 4017 | |
84 Play address : 4027 | |
85 Songs : 1 | |
86 Start song : 1 | |
87 Name : Anal'ogue | |
119 | 88 Author : Søren Lund (Jeff) |
17 | 89 Copyright : 1996 Jeff |
90 Hash : 6d5b7f0ff092e55abf27c37c8bc3fc64 | |
11
20bcf214b282
Add some "documentation" and a license.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
91 |
325
d056f284184b
Improvements to the README.
Matti Hamalainen <ccr@tnsp.org>
parents:
295
diff
changeset
|
92 --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- |
17 | 93 |
193 | 94 Display in "parseable" INI-style format, with hexadecimal values: |
95 | |
67 | 96 $ sidinfo /misc/C64Music/MUSICIANS/J/Jeff/Anal_ogue.sid -p -x |
17 | 97 Filename=/misc/C64Music/MUSICIANS/J/Jeff/Anal_ogue.sid |
98 Type=PSID | |
99 Version=2.0 | |
100 DataOffs=$0000007c | |
101 DataSize=$00001bf2 | |
102 LoadAddr=$0000 | |
103 InitAddr=$0fb1 | |
104 PlayAddr=$0fbb | |
105 Songs=$0001 | |
106 StartSong=$0001 | |
107 Name=Anal'ogue | |
119 | 108 Author=Søren Lund (Jeff) |
17 | 109 Copyright=1996 Jeff |
110 Hash=6d5b7f0ff092e55abf27c37c8bc3fc64 | |
40 | 111 |
325
d056f284184b
Improvements to the README.
Matti Hamalainen <ccr@tnsp.org>
parents:
295
diff
changeset
|
112 --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- |
40 | 113 |
325
d056f284184b
Improvements to the README.
Matti Hamalainen <ccr@tnsp.org>
parents:
295
diff
changeset
|
114 One-line format with "|" (pipe character) as a field separator, and |
d056f284184b
Improvements to the README.
Matti Hamalainen <ccr@tnsp.org>
parents:
295
diff
changeset
|
115 also specify which fields are to be included: |
193 | 116 |
153
e3be2ae6120e
Delete trailing whitespace.
Matti Hamalainen <ccr@tnsp.org>
parents:
152
diff
changeset
|
117 $ sidinfo -l \| -f type,ver,hash,name,author,copyright Anal_ogue.sid |
194
05e2332070a7
Fix some typos and cleanup.
Matti Hamalainen <ccr@tnsp.org>
parents:
193
diff
changeset
|
118 |
119 | 119 PSID|2.0|Anal'ogue|Søren Lund (Jeff)|1996 Jeff|6d5b7f0ff092e55abf27c37c8bc3fc64| |
40 | 120 |
325
d056f284184b
Improvements to the README.
Matti Hamalainen <ccr@tnsp.org>
parents:
295
diff
changeset
|
121 --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- |
40 | 122 |
325
d056f284184b
Improvements to the README.
Matti Hamalainen <ccr@tnsp.org>
parents:
295
diff
changeset
|
123 By using the format string functionality you can control the output |
d056f284184b
Improvements to the README.
Matti Hamalainen <ccr@tnsp.org>
parents:
295
diff
changeset
|
124 format very specifically: |
67 | 125 |
126 $ sidinfo Anal_ogue.sid -F 'NAME="@name@"\nHASH=@hash@\n' | |
194
05e2332070a7
Fix some typos and cleanup.
Matti Hamalainen <ccr@tnsp.org>
parents:
193
diff
changeset
|
127 |
64 | 128 NAME="Anal'ogue" |
129 HASH=6d5b7f0ff092e55abf27c37c8bc3fc64 | |
152
44e1c1555d87
Update documentation a bit.
Matti Hamalainen <ccr@tnsp.org>
parents:
136
diff
changeset
|
130 |
325
d056f284184b
Improvements to the README.
Matti Hamalainen <ccr@tnsp.org>
parents:
295
diff
changeset
|
131 --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- |
152
44e1c1555d87
Update documentation a bit.
Matti Hamalainen <ccr@tnsp.org>
parents:
136
diff
changeset
|
132 |
193 | 133 You could, for example create SQL INSERT statements: |
134 | |
135 $ sidinfo Anal_ogue.sid -e\' -F "INSERT INTO sometable (filename,name,author) VALUES ('@filename@', '@name@', '@author@', '@copyright@')\n" | |
136 | |
137 INSERT INTO sometable (filename,name,author) VALUES ('./Anal_ogue.sid', 'Anal\'ogue', 'Søren Lund (Jeff)', '1996 Jeff') | |
138 | |
325
d056f284184b
Improvements to the README.
Matti Hamalainen <ccr@tnsp.org>
parents:
295
diff
changeset
|
139 --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- |
193 | 140 |
152
44e1c1555d87
Update documentation a bit.
Matti Hamalainen <ccr@tnsp.org>
parents:
136
diff
changeset
|
141 Furthermore, you can use "printf"-style format specifiers for |
44e1c1555d87
Update documentation a bit.
Matti Hamalainen <ccr@tnsp.org>
parents:
136
diff
changeset
|
142 formatting each @field@, see this example: |
44e1c1555d87
Update documentation a bit.
Matti Hamalainen <ccr@tnsp.org>
parents:
136
diff
changeset
|
143 |
44e1c1555d87
Update documentation a bit.
Matti Hamalainen <ccr@tnsp.org>
parents:
136
diff
changeset
|
144 $ sidinfo Anal_ogue.sid -F 'NAME=@name:"%-64s"@\nHASH=@hash:"%64s"@\nLOAD_ADDR=@loadaddr:$%04x@\n' |
44e1c1555d87
Update documentation a bit.
Matti Hamalainen <ccr@tnsp.org>
parents:
136
diff
changeset
|
145 NAME="Anal'ogue " |
44e1c1555d87
Update documentation a bit.
Matti Hamalainen <ccr@tnsp.org>
parents:
136
diff
changeset
|
146 HASH=" 6d5b7f0ff092e55abf27c37c8bc3fc64" |
44e1c1555d87
Update documentation a bit.
Matti Hamalainen <ccr@tnsp.org>
parents:
136
diff
changeset
|
147 LOAD_ADDR=$0fb0 |
44e1c1555d87
Update documentation a bit.
Matti Hamalainen <ccr@tnsp.org>
parents:
136
diff
changeset
|
148 |
325
d056f284184b
Improvements to the README.
Matti Hamalainen <ccr@tnsp.org>
parents:
295
diff
changeset
|
149 Many of the standard C-style printf() format specifiers are supported, |
d056f284184b
Improvements to the README.
Matti Hamalainen <ccr@tnsp.org>
parents:
295
diff
changeset
|
150 but not all, and obviously only integer/string formats are supported. |
193 | 151 |
325
d056f284184b
Improvements to the README.
Matti Hamalainen <ccr@tnsp.org>
parents:
295
diff
changeset
|
152 --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- |
193 | 153 |
325
d056f284184b
Improvements to the README.
Matti Hamalainen <ccr@tnsp.org>
parents:
295
diff
changeset
|
154 Since sidinfo v0.7.6 it is also possible to automatically scan and |
d056f284184b
Improvements to the README.
Matti Hamalainen <ccr@tnsp.org>
parents:
295
diff
changeset
|
155 recurse directories via '-R' option, for example: |
193 | 156 |
325
d056f284184b
Improvements to the README.
Matti Hamalainen <ccr@tnsp.org>
parents:
295
diff
changeset
|
157 $ sidinfo -R "/misc/C64Music/*.sid" |
193 | 158 |
194
05e2332070a7
Fix some typos and cleanup.
Matti Hamalainen <ccr@tnsp.org>
parents:
193
diff
changeset
|
159 The above will start from /misc/C64Music/ and scan any accessible |
05e2332070a7
Fix some typos and cleanup.
Matti Hamalainen <ccr@tnsp.org>
parents:
193
diff
changeset
|
160 subdirectories for files that match "*.sid" pattern and handle them. |
193 | 161 |
162 Using previous example about SQL inserts: | |
163 | |
325
d056f284184b
Improvements to the README.
Matti Hamalainen <ccr@tnsp.org>
parents:
295
diff
changeset
|
164 $ sidinfo -R "/misc/C64Music/*.sid" -e\' -F "INSERT INTO sometable (filename,name,author) VALUES ('@filename@', '@name@', '@author@', '@copyright@')\n" |
194
05e2332070a7
Fix some typos and cleanup.
Matti Hamalainen <ccr@tnsp.org>
parents:
193
diff
changeset
|
165 |
325
d056f284184b
Improvements to the README.
Matti Hamalainen <ccr@tnsp.org>
parents:
295
diff
changeset
|
166 --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- |
282
5936a3dc9755
Document the STIL related issues of -F formatting with few words.
Matti Hamalainen <ccr@tnsp.org>
parents:
248
diff
changeset
|
167 |
325
d056f284184b
Improvements to the README.
Matti Hamalainen <ccr@tnsp.org>
parents:
295
diff
changeset
|
168 SIDInfo 0.9 adds support for the HVSC STIL database. Unfortunately |
d056f284184b
Improvements to the README.
Matti Hamalainen <ccr@tnsp.org>
parents:
295
diff
changeset
|
169 controlling the output of STIL information in the "-F" format string |
d056f284184b
Improvements to the README.
Matti Hamalainen <ccr@tnsp.org>
parents:
295
diff
changeset
|
170 option is quite limited, as all fields will be concatenated into |
d056f284184b
Improvements to the README.
Matti Hamalainen <ccr@tnsp.org>
parents:
295
diff
changeset
|
171 one long string field. |
282
5936a3dc9755
Document the STIL related issues of -F formatting with few words.
Matti Hamalainen <ccr@tnsp.org>
parents:
248
diff
changeset
|
172 |
290
4686ea0b6851
Minor typographic and grammatic improvements.
Matti Hamalainen <ccr@tnsp.org>
parents:
284
diff
changeset
|
173 You can change the field separator by specifying the "-l" option and |
4686ea0b6851
Minor typographic and grammatic improvements.
Matti Hamalainen <ccr@tnsp.org>
parents:
284
diff
changeset
|
174 also optionally omit the STIL field names by using the "-n" option. |
282
5936a3dc9755
Document the STIL related issues of -F formatting with few words.
Matti Hamalainen <ccr@tnsp.org>
parents:
248
diff
changeset
|
175 |