annotate README.txt @ 1557:5e5f75b45f8d

Initial port to SDL2. Many things will not work now.
author Matti Hamalainen <ccr@tnsp.org>
date Sun, 13 May 2018 06:00:50 +0300
parents e55426a0a010
children 48dcde220a2e
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
425
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
1 -----------------------------------------------------------------------
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
2
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
3 T N S P
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
4 - --==============-- -
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
5
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
6 ###### ### ## ### ### ######
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
7 # ### ## #### ### ### ### ### ## #
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
8 # # ### ## ######## ### ### ###### # #
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
9 # ### ## ### # ## ### ### ### ## #
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
10 ###### ### ## ###### ### ######
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
11
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
12 Demo engine / development and utility framework
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
13
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
14 -----------------------------------------------------------------------
862
01f2af5f87b1 Some updates in README.txt
Matti Hamalainen <ccr@tnsp.org>
parents: 805
diff changeset
15
470
64f3281c7265 Update copyright notice.
Matti Hamalainen <ccr@tnsp.org>
parents: 458
diff changeset
16 Programmed and designed by Matti Hämäläinen (ccr/TNSP)
1277
7eedcf1d5af7 Update copyright.
Matti Hamalainen <ccr@tnsp.org>
parents: 1251
diff changeset
17 (C) Copyright 2002-2017 Tecnic Software productions (TNSP)
890
6a2a286f3d70 Remove license duplicate from README.
Matti Hamalainen <ccr@tnsp.org>
parents: 882
diff changeset
18 Please see the file "COPYING" for license.
425
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
19
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
20 Contact
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
21 =======
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
22 IRC : ccr @ IRCNet, sometimes also Freenode
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
23 e-mail : ccr@tnsp.org
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
24
862
01f2af5f87b1 Some updates in README.txt
Matti Hamalainen <ccr@tnsp.org>
parents: 805
diff changeset
25
425
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
26 -----------------------------------------------------------------------
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
27
862
01f2af5f87b1 Some updates in README.txt
Matti Hamalainen <ccr@tnsp.org>
parents: 805
diff changeset
28
425
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
29 So, what is this?
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
30 =================
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
31 Basically .. a bunch of more and/or less random stuff. dmlib in
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
32 itself is a library with various things useful in demo programming.
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
33 There is a resource management subsystem, functions for loading
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
34 PNG and JPEG images. Software blitted and scaled sprites, etc.
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
35 Bitmap font routines. A XM module replayer.
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
36
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
37 And a work-in-progress timeline-supporting demo framework, with
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
38 a Qt based GUI editor.
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
39
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
40 And graphics converter and displayer for various restricted formats,
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
41 such as C64/VIC-20 characters, bitmaps, sprites, etc.
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
42
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
43 .. So, yeah. There are many things in here. It's a junkyard of various
882
6c024a8f252e Cosmetics.
Matti Hamalainen <ccr@tnsp.org>
parents: 869
diff changeset
44 demo- or such development related pieces of code and utilities. Many
6c024a8f252e Cosmetics.
Matti Hamalainen <ccr@tnsp.org>
parents: 869
diff changeset
45 parts can be disabled during compile-time from config.mak
425
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
46
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
47 Most modules can be enabled or disabled, per project basis via
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
48 compile-time configuration in config.mak.
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
49
862
01f2af5f87b1 Some updates in README.txt
Matti Hamalainen <ccr@tnsp.org>
parents: 805
diff changeset
50
425
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
51 -----------------------------------------------------------------------
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
52
862
01f2af5f87b1 Some updates in README.txt
Matti Hamalainen <ccr@tnsp.org>
parents: 805
diff changeset
53
425
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
54 Requirements
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
55 ============
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
56 The compilation and usage of these utilities requires following
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
57 software packages or functional equivalents installed:
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
58
1354
a333081090ea Documentation adjustments.
Matti Hamalainen <ccr@tnsp.org>
parents: 1277
diff changeset
59 - GCC 4.6 or later
425
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
60 - GNU binutils
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
61 - GNU Make
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
62 - pkg-config
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
63
862
01f2af5f87b1 Some updates in README.txt
Matti Hamalainen <ccr@tnsp.org>
parents: 805
diff changeset
64 You will also want these libraries:
425
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
65
1557
5e5f75b45f8d Initial port to SDL2. Many things will not work now.
Matti Hamalainen <ccr@tnsp.org>
parents: 1356
diff changeset
66 - libSDL 2.0
882
6c024a8f252e Cosmetics.
Matti Hamalainen <ccr@tnsp.org>
parents: 869
diff changeset
67 - zlib
425
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
68 - libPNG 1.2 and development headers (more optional,
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
69 only required for PNG write and read support by some
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
70 utilities.)
1557
5e5f75b45f8d Initial port to SDL2. Many things will not work now.
Matti Hamalainen <ccr@tnsp.org>
parents: 1356
diff changeset
71 - SDL_ttf for libSDL2 (optional, required for some things)
425
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
72 - Tremor (integer-based Ogg Vorbis decoder) + libogg
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
73
862
01f2af5f87b1 Some updates in README.txt
Matti Hamalainen <ccr@tnsp.org>
parents: 805
diff changeset
74 And the demo editor framework requires (but it is not yet
01f2af5f87b1 Some updates in README.txt
Matti Hamalainen <ccr@tnsp.org>
parents: 805
diff changeset
75 usable anyway, so you may as well skip these):
425
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
76
1557
5e5f75b45f8d Initial port to SDL2. Many things will not work now.
Matti Hamalainen <ccr@tnsp.org>
parents: 1356
diff changeset
77 - Qt 5.x framework libraries (tested with 5.7)
425
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
78
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
79
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
80 For Linux -> Win32/64 cross-compilation I have used the standard
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
81 MinGW packages from Debian Testing (wheezy):
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
82
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
83 gcc-mingw-w64 mingw-w64-i686-dev mingw-w64-x86-64-dev
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
84
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
85 with the additions of self- cross-compiled libSDL, zlib, Tremor,
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
86 liboff and libPNG. Some of those require a bit of poking to get
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
87 working properly, YMMV.
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
88
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
89 Please don't ask me for help to get cross-compilation working.
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
90
862
01f2af5f87b1 Some updates in README.txt
Matti Hamalainen <ccr@tnsp.org>
parents: 805
diff changeset
91
425
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
92 -----------------------------------------------------------------------
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
93
862
01f2af5f87b1 Some updates in README.txt
Matti Hamalainen <ccr@tnsp.org>
parents: 805
diff changeset
94
425
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
95 How to build
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
96 ============
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
97 1) $ cp config.mak.in config.mak
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
98
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
99 2) Edit config.mak to enable/disable desired options.
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
100 Make sure you have the required depencies.
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
101
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
102 3) $ gmake
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
103 or, if cross-compiling to Win32 via MinGW
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
104 $ gmake -f Makefile.w32
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
105
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
106 4) If it works -> Happy fun times \:D\
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
107
862
01f2af5f87b1 Some updates in README.txt
Matti Hamalainen <ccr@tnsp.org>
parents: 805
diff changeset
108
425
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
109 -----------------------------------------------------------------------
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
110
882
6c024a8f252e Cosmetics.
Matti Hamalainen <ccr@tnsp.org>
parents: 869
diff changeset
111
425
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
112 Included utilities
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
113 ==================
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
114
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
115 xm2jss
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
116 ------
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
117 Convert XM modules to internal JMOD format. You can optionally
1354
a333081090ea Documentation adjustments.
Matti Hamalainen <ccr@tnsp.org>
parents: 1277
diff changeset
118 optimize the module and even strip out various parts, such as
a333081090ea Documentation adjustments.
Matti Hamalainen <ccr@tnsp.org>
parents: 1277
diff changeset
119 complete instruments (leaving only pattern data), sample data,
a333081090ea Documentation adjustments.
Matti Hamalainen <ccr@tnsp.org>
parents: 1277
diff changeset
120 sample instruments, etc.
425
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
121
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
122
945
47f111643745 Viewmode utility was renamed to dumpmod, so reflect that change in the
Matti Hamalainen <ccr@tnsp.org>
parents: 890
diff changeset
123 dumpmod
425
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
124 -------
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
125 Simple XM/JMOD viewer. Dumps selected parts into stdout
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
126 as text format data.
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
127
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
128
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
129 ppl
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
130 ---
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
131 A simple XM/JMOD player with SDL-based UI.
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
132
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
133 testpl
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
134 ------
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
135 Even simpler player, with no UI at all. Uses SDL for audio.
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
136
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
137 mod2wav
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
138 -------
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
139 Render XM/JMOD modules into WAV files.
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
140
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
141
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
142 packed
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
143 ------
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
144 Manipulate DMPACK files. Basically a bit like ZIP archive,
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
145 for glueing resource files into a zlib-compressed blob.
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
146 The dmlib resource subsystem can utilize these files.
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
147
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
148 fontconv
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
149 --------
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
150 Convert bitmap fonts.
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
151
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
152
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
153 objlink
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
154 -------
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
155 Simple, but versatile commandline utility for combining binary
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
156 files into one file. Understands 2-byte loading address PRG
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
157 style files, and raw data. "Loading addresses" can be specified
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
158 and overridden. The utility also checks for overlaps, etc.
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
159
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
160 data2inc
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
161 --------
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
162 Simple data file to C/ASM source converter.
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
163
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
164 gfxconv
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
165 -------
450
acea24b77bdc Update documentation a bit.
Matti Hamalainen <ccr@tnsp.org>
parents: 425
diff changeset
166 Utility for "dumping" and converting various graphics in plain
acea24b77bdc Update documentation a bit.
Matti Hamalainen <ccr@tnsp.org>
parents: 425
diff changeset
167 ASCII, or ANSI colored output, or into various image formats
458
096dae79ce2e Add ILBM to supported list.
Matti Hamalainen <ccr@tnsp.org>
parents: 450
diff changeset
168 (including PNG, PCX, PPM, IFF ILBM and ARAW files).
425
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
169
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
170 Input can be interpreted as bitmap, sprite or character data,
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
171 in multicolor or single color. Colors can be mapped as desired.
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
172 Image file output can be either single image (with chars/sprites
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
173 placed vertically if input is char/sprite data), or in separate
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
174 files.
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
175
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
176 (Note: PNG support is a compile-time option)
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
177
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
178 view64
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
179 ------
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
180 Compiled only if libSDL support is enabled. Can be used to
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
181 display C64 bitmaps.
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
182
862
01f2af5f87b1 Some updates in README.txt
Matti Hamalainen <ccr@tnsp.org>
parents: 805
diff changeset
183
425
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
184 -----------------------------------------------------------------------
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
185
862
01f2af5f87b1 Some updates in README.txt
Matti Hamalainen <ccr@tnsp.org>
parents: 805
diff changeset
186
425
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
187 Examples
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
188 ========
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
189
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
190 data2inc
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
191 --------
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
192 To convert a data file to a C structure using 'uint8_t' as type:
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
193
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
194 $ data2inc -C -n variable_name -t uint8_t input.bin output.h
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
195
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
196
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
197 objlink
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
198 -------
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
199 $ objlink -o intro.tmp -pppp intro.o gfx/dkdlogo2.drp:0x3800 \
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
200 muzak.prg gfx/chars_4.fnt:0x6800
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
201
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
202 - "-o intro.tmp" sets output file
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
203 - As you can see, short options can be combined, like "-pppp".
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
204 However, the next parameters must be the corresponding option
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
205 arguments, in correct order, if any.
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
206 - It is possible to specify a overriding loading address via
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
207 ":<addr>" syntax. See the help for more information.
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
208
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
209
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
210 gfxconv
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
211 -------
491
d9c460300f23 Update documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 470
diff changeset
212
1356
e55426a0a010 Add another gfxconv example.
Matti Hamalainen <ccr@tnsp.org>
parents: 1354
diff changeset
213 Convert ILBM IFF to PNG:
e55426a0a010 Add another gfxconv example.
Matti Hamalainen <ccr@tnsp.org>
parents: 1354
diff changeset
214
e55426a0a010 Add another gfxconv example.
Matti Hamalainen <ccr@tnsp.org>
parents: 1354
diff changeset
215 $ gfxconv -f png -o output.png input.lbm
e55426a0a010 Add another gfxconv example.
Matti Hamalainen <ccr@tnsp.org>
parents: 1354
diff changeset
216
e55426a0a010 Add another gfxconv example.
Matti Hamalainen <ccr@tnsp.org>
parents: 1354
diff changeset
217
491
d9c460300f23 Update documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 470
diff changeset
218 Image input to C64 char font conversion:
d9c460300f23 Update documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 470
diff changeset
219
d9c460300f23 Update documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 470
diff changeset
220 $ gfxconv font16x16.pcx -f chr -o font16x16.chr
d9c460300f23 Update documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 470
diff changeset
221
d9c460300f23 Update documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 470
diff changeset
222 - Input file "font16x16.pcx" is a paletted PCX image (preferably 2-colors),
d9c460300f23 Update documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 470
diff changeset
223 containing a 16x16 pixel font.
d9c460300f23 Update documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 470
diff changeset
224 - "-f chr" specifies conversion to c64 char memory format, gfxconv
d9c460300f23 Update documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 470
diff changeset
225 splits the input image to 8x8 blocks, outputting them in sequence.
d9c460300f23 Update documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 470
diff changeset
226
d9c460300f23 Update documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 470
diff changeset
227
d9c460300f23 Update documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 470
diff changeset
228 Convert input image to IFFMaster ARAW + assembler include file,
d9c460300f23 Update documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 470
diff changeset
229 while remapping some palette entries:
d9c460300f23 Update documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 470
diff changeset
230
d9c460300f23 Update documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 470
diff changeset
231 $ gfxconv -R "#000000:0" -f araw -i image -B 3 input.png -o output.raw
d9c460300f23 Update documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 470
diff changeset
232
d9c460300f23 Update documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 470
diff changeset
233 - "-R #000000:0" remaps all input image palette colors matching RGB
d9c460300f23 Update documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 470
diff changeset
234 hex triplet #000000 to palette index 0.
d9c460300f23 Update documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 470
diff changeset
235 - "-f araw" specifies output format to be IFFMaster ARAW.
d9c460300f23 Update documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 470
diff changeset
236 - "-B 3" _clamps_ output to be 3 bitplanes. Any bits above those are
d9c460300f23 Update documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 470
diff changeset
237 simply discarded.
d9c460300f23 Update documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 470
diff changeset
238
d9c460300f23 Update documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 470
diff changeset
239
d9c460300f23 Update documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 470
diff changeset
240 C64 char font to PNG imge conversion:
d9c460300f23 Update documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 470
diff changeset
241
425
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
242 $ gfxconv chars1.fnt -i char -s 2 -S 10 -c 255:1 -f png -o chars1.png
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
243
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
244 - Input file "chars1.fnt" is interpreted as character data (-i char)
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
245 - "-s 2" skips first two bytes of the input file (loading address)
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
246 - "-S 10" scales output image to be 10 times larger
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
247 - "-c 255:1" defines background color (bit value 0) to be transparent
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
248 (255, only works for PNG) and foreground to be C64 color 1 (white)
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
249 - "-f png" sets output format to PNG
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
250
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
251
491
d9c460300f23 Update documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 470
diff changeset
252 Extract sprites from a C64 memory dump, convert to PNG:
d9c460300f23 Update documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 470
diff changeset
253
425
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
254 $ gfxconv bub_dump.raw -i s -s 0x5800 -n 20 -f png -o bub \
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
255 -q -S 3 -m -c 255:2:5:1
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
256
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
257 - Input file "bub_dump.raw" is a raw memory dump of Bubble Bobble
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
258 extracted via VICE in game running mode.
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
259 - "-i s" sets input to be interpreted as sprite data
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
260 - "-s 0x5800" skips 0x5800 bytes, basically the memory address as the
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
261 input is a straight memory dump file.
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
262 - "-n 20" sets max item count to 20, so 20 sprites will be dumped.
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
263 - "-o bub" sets filename prefix to "bub"
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
264 - "-q" selects sequential output (separate files)
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
265 - "-m" selects multicolor input
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
266 - "-c 255:2:5:1" sets the multicolor color mappings
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
267 (255 is the transparency color again)
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
268
491
d9c460300f23 Update documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 470
diff changeset
269
425
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
270 $ gfxconv chars3.fnt -i c -s 2 -n 3
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
271
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
272 Dump as character data into stdout, skipping 2 bytes at start, and
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
273 limit output to 3 items (characters).
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
274
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
275 ---- : -------------- #0
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
276 0002 : ........
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
277 0003 : ..####..
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
278 0004 : .#....#.
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
279 0005 : #..##..#
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
280 0006 : #.#....#
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
281 0007 : #..##..#
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
282 0008 : .#....#.
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
283 0009 : ..####..
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
284 ---- : -------------- #1
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
285 000a : ........
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
286 000b : ...##...
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
287 000c : ..#..#..
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
288 000d : ..####..
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
289 000e : .##..#..
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
290 000f : .##..#..
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
291 0010 : .##..#..
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
292 0011 : ........
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
293 ---- : -------------- #2
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
294 0012 : ........
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
295 0013 : ..###...
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
296 0014 : ..#..#..
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
297 0015 : ..###...
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
298 0016 : .##..#..
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
299 0017 : .##..#..
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
300 0018 : .####...
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
301 0019 : ........
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
302
862
01f2af5f87b1 Some updates in README.txt
Matti Hamalainen <ccr@tnsp.org>
parents: 805
diff changeset
303
425
aa5f28c2cde1 Add README.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
304 -----------------------------------------------------------------------