• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..03-May-2022-

help/H09-Jul-2004-2,6222,021

icons/H07-May-2022-2,032273

intl/H09-Jul-2004-10,1157,230

m4/H09-Jul-2004-2,2312,047

messages/H09-Jul-2004-257209

modules/H09-Jul-2004-5,4894,195

old.Makefiles/H03-May-2022-4,0412,994

opening/H03-May-2022-486449

po/H03-May-2022-5,5014,291

tools/H03-May-2022-1,087927

ABOUT-NLSH A D26-Feb-200324.1 KiB436392

AcknowledgementsH A D03-Jul-20042.9 KiB10775

CHANGESH A D29-Nov-200343.9 KiB1,5751,006

COPYINGH A D20-Aug-200117.6 KiB340281

COPYRIGHTH A D20-Nov-2003314 117

Makefile.amH A D03-Jul-20047.3 KiB212100

Makefile.inH A D03-Jul-2004125.6 KiB2,0051,758

READMEH A D23-Jan-200421.7 KiB639445

README.profilingH A D20-Aug-20011.9 KiB5337

TODOH A D26-Jun-20043.3 KiB9661

acinclude.m4H A D20-Aug-2001628 1716

aclocal.m4H A D27-Jun-2004306.4 KiB8,6747,794

cliglobs.cH A D18-Oct-20035.9 KiB170133

cliglobs.hH A D18-Oct-20037.9 KiB210164

colour.palH A D20-Aug-20015.6 KiB263260

common.hH A D28-Jul-2003639 2918

compileH A D21-Apr-20043 KiB10854

config.guessH A D26-Feb-200340 KiB1,4011,210

config.h.inH A D27-Jun-20047.7 KiB289200

config.shH A D05-Sep-2001497 216

config.subH A D26-Feb-200328.9 KiB1,4701,329

configureH A D27-Jun-2004892.4 KiB29,23524,296

configure.acH A D27-Jun-20044.3 KiB145122

confw32.hH A D20-Nov-20032.7 KiB9611

depcompH A D20-Jan-200311.8 KiB424278

dialbox.cH A D03-Jul-20049.4 KiB371260

dialbox.hH A D20-Oct-20021.2 KiB4322

engglobs.hH A D02-May-20022.7 KiB7853

engine.cH A D03-Jul-200424 KiB991877

engine.hH A D18-Jan-2003593 1810

fileutil.cH A D03-Jul-200420.1 KiB827668

fileutil.hH A D10-Oct-20031.4 KiB4733

generic.hH A D20-Aug-20011.1 KiB3728

geometry.cH A D03-Jul-200419.7 KiB685516

geometry.hH A D22-Jun-20049.5 KiB348267

install-shH A D20-Jan-20036.2 KiB277169

lcconfig.hH A D23-Jun-2004749 3424

lchelp.cH A D18-Oct-200316 KiB649545

lchelp.hH A D20-Aug-2001936 2818

lcintl.hH A D12-May-2003800 3322

lclib.cH A D23-Jun-20044.5 KiB214174

lclib.hH A D23-Jun-2004823 2614

lcstring.hH A D20-Aug-2001519 2012

lcsvga.cH A D06-Oct-20037.1 KiB305263

lcsvga.hH A D28-Jul-2003680 2717

lctypes.hH A D18-Jan-200433.6 KiB888814

lcwin32.cH A D22-May-200316.4 KiB669554

lcwin32.hH A D21-Nov-20035.4 KiB172112

lcx11.cH A D03-Jul-200426.6 KiB1,123952

lcx11.hH A D03-Jul-20042.2 KiB9370

ldsvgui.cH A D03-May-202216.9 KiB714652

ldsvgui.hH A D16-Dec-2001477 157

ldsvguts.cH A D10-Oct-200322.9 KiB808706

ldsvguts.hH A D16-Dec-2001410 135

lin-city.hH A D29-Nov-200346.7 KiB1,5051,207

lincity.6H A D20-Nov-20032.9 KiB10197

lincity.rcH A D21-Nov-20035.6 KiB216180

lintypes.cH A D03-Jul-200449.5 KiB1,5221,175

lintypes.hH A D20-Aug-20011.5 KiB5137

ltmain.shH A D12-Apr-2004179.5 KiB6,4265,057

main.cH A D03-May-202219.5 KiB865707

market.cH A D23-Jun-200426.4 KiB1,167983

market.hH A D23-Jun-2004328 92

missingH A D20-Jan-200310 KiB337263

mkinstalldirsH A D26-Feb-2003727 4123

module_buttons.cH A D05-Oct-200316.6 KiB596454

module_buttons.hH A D07-May-20031.7 KiB6426

modules.hH A D23-Jun-20041.4 KiB5136

mouse.cH A D03-May-202236.1 KiB1,4031,110

mouse.hH A D20-Oct-20022.5 KiB10363

mps.cH A D03-Jul-200413.6 KiB620493

mps.hH A D03-Jul-20042.3 KiB7538

pbar.cH A D03-Jul-20049.6 KiB370266

pbar.hH A D06-Oct-20032.1 KiB8658

picedit.cH A D03-Jul-200437.3 KiB1,4981,345

picedit.hH A D20-Aug-2001948 4025

pixmap.cH A D03-May-202214.6 KiB475407

pixmap.hH A D03-May-20221.6 KiB4324

power.cH A D03-Jul-20049 KiB377261

power.hH A D22-Jun-20041.8 KiB7450

readpng.cH A D03-Jul-200423.3 KiB615463

readpng.hH A D18-Jan-2004379 124

resource.hH A D05-Oct-2003438 179

screen.cH A D03-Jul-200468.3 KiB2,6352,289

screen.hH A D03-May-20222.1 KiB6747

shrglobs.cH A D05-Oct-20032.7 KiB9469

shrglobs.hH A D18-Jan-2004472 187

shrtypes.cH A D02-Sep-200113.1 KiB530498

simulate.cH A D28-Jul-200320.9 KiB844727

simulate.hH A D27-Mar-2002532 157

splash.cH A D18-Oct-20036.6 KiB298254

stats.cH A D03-Jul-20044.8 KiB226180

stats.hH A D18-Jan-20032.7 KiB10463

timer.cH A D20-Oct-20024.7 KiB229179

timer.hH A D05-May-2002507 209

transport.cH A D22-Jun-20046.5 KiB236182

transport.hH A D30-Mar-2002537 209

typeinit.hH A D20-Aug-2001327 92

winmain.cH A D21-Nov-200341.7 KiB1,393936

xpicedit.hH A D20-Aug-2001973 4324

README

1
2                     **  Welcome to lincity  **
3
4
5This is the README for lincity 1.13 (development version)
6
7
8WHAT IS LINCITY
9===============
10
11Lincity is a city/country simulation game for Linux (SVGALIB and X),
12Solaris, FreeBSD, HPUX, AIX, SCO, IRIX, Compaq Tru64, BeOS, OS/2, VMS,
13OS X, AtheOS, and Win32 (Win95, Win98, ME, NT, 2000, XP).
14
15You are required to build and maintain a city. You must feed, house,
16provide jobs and goods for your residents. You can build a sustainable
17economy with the help of renewable energy and recycling, or you can go for
18broke and build rockets to escape from a pollution ridden and resource
19starved planet, it's up to you. Due to the finite resources available in any
20one place, this is not a game that you can leave for long periods of time.
21
22Lincity recently moved to sourceforge.net.  This brings new CVS
23access, mailing lists, and web pages.  If you are subscribed to
24lincity-users@floot.demon.co.uk, please also subscribe to the new
25list, shown below, and make all of your posts there.  Please also note
26the new home page, which is not yet complete.  Anyone with an eye for
27design and a desire to help is welcome to make suggestions or design a
28page to replace this one.
29
30The lincity home page is now located at:
31
32    http://lincity.sourceforge.net
33
34The official users mailing list (mailman) can be subscribed to by visiting:
35
36    http://lists.sourceforge.net/lists/listinfo/lincity-users
37
38CVS commit notification can be had at:
39
40    http://lists.sourceforge.net/lists/listinfo/lincity-commits
41
42Additionally, our sourceforge page is:
43
44    http://sourceforge.net/projects/lincity/
45
46
47REQUIREMENTS
48============
49
50   *  SVGALIB 1.3.0 (or greater).
51
52      OR	 X11.
53
54      OR	 A Win32 OS.
55
56   *  The libpng and libz libraries.
57
58      I have tested with libpng versions 1.0.12 and 1.2.5.  These
59      libraries are included in the windows version.
60
61   *  A graphics card supported by your above choice.
62
63   *  You probably need at least a 486DX2-66. (Even better for the X version
64      I suspect.)
65
66   *  You probably need at least 8 MB memory (16 MB for X or win32).
67
68   *  Other things?  Send us an email.
69
70
71INSTALLATION (UNIX)
72===================
73
74To install lincity, (as root) untar the file lincity-1.12.0.gz
75
76     tar -xzvf lincity-1.12.0.tar.gz
77
78You now want to compile the source
79
80      cd lincity-1.12.0
81      ./configure
82      make
83
84Lincity will run out of the source directory.  But if you want to install
85you can do this:
86
87      make install
88
89The old method choosing the install directory by setting LC_BINDIR and
90LC_LIBDIR in the makefile no longer applies.  To install to a different
91directory, you must use the --prefix flag when you configure the package.
92For example:
93
94      ./configure --prefix=/usr/mylocal
95
96If you are installing a version downloaded from the cvs server, the
97timestamps may be incorrect, which will cause the "make" to fail.  In this
98case, you need to run a script to fix the timestamps:
99
100      ./fix-timestamps.sh
101      ./configure
102      make
103      make install
104
105
106INSTALLATION (WIN32)
107====================
108
109Simply unpack the archive, and double click on the LINCITY.EXE icon.
110You can get your free copy of UNZIP from the INFO-ZIP web page at
111
112    http://www.info-zip.org
113
114
115UNINSTALLING (UNIX)
116====================
117
118If you still have the configured source directory, you can do this:
119
120      make uninstall
121
122Otherwise, do this (assuming you installed to /usr/local)
123
124      rm /usr/local/bin/lincity
125      rm /usr/local/bin/xlincity
126      rm /usr/local/man/man6/lincity.6
127      rm -rf /usr/local/share/lincity
128
129In addition, if you ran lincity, you should delete these:
130
131      rm -rf $HOME/.lincity
132      rm $HOME/.lincityrc
133
134If you have an older version, before 1.12pre54, you should delete this:
135
136      rm -rf $HOME/.Lin-city
137
138
139UNINSTALLING (WIN32)
140====================
141
142Like all good DOS programs, lincity runs within a single directory.
143No files are copied to your "windows directory."  The windows registry
144is not used.
145
146Simply delete the lincity directory to uninstall.
147
148
149RUNNING LINCITY (UNIX)
150======================
151
152Usually you will invoke the game with 'lincity' or 'xlincity'.
153Typing 'lincity' will run the SVGA version, while typing 'xlincity' will
154run the X Windows version.  The SVGA version will not run under X.
155
156             lincity  [opts]
157             xlincity [opts]
158
159The following options apply to both.
160
161        -w   Do some *crude* gamma correction to boost the red and blue.
162             This makes some 'washed out' displays a bit more colourful.
163             You have control of the individual values, see below.
164
165        -R <num>
166        -G <num>
167        -B <num>
168             These options allow you to boost the individual colours.
169             <num> is a number between 0.0 and 1.0
170             The default values for -w are  1.0   0.0   0.4  (ATTOW)
171
172This option only applies to lincity.
173
174	-m <num>
175	    Set the VGA mode.  See below for choices of mode.
176
177This option only applies to xlincity.
178
179	-r   Add an extra border around the game.
180        -d   Double the size of the window to 1280x960
181
182	-b   *obsolete* omit border around game.  Now on by default.
183
184
185RUNNING LINCITY (WIN32)
186======================
187
188Double click the LINCITY.EXE icon.  The WIN32 version does not accept
189command line arguments.
190
191
192UPGRADING FROM VERSION 1.11
193===========================
194
195Lincity 1.12 is forward compatible with lincity 1.11, in the sense
196that 1.12 can read files generated in 1.11.  However, please note
197that you may need to copy over the save files.  Save files can
198be found in the following directories.  UNIX users note the change!
199
200          Lincity 1.11                  Lincity 1.12
201          ----------------              ----------------
202UNIX      $HOME/.Lin-city               $HOME/.lincity
203WINDOWS   %LINCITY_HOME%\SAVED_GAMES    %LINCITY_HOME%\SAVED_GAMES
204
205
206THE LINCITY HOME DIRECTORY
207==========================
208
209If you get a message such as "Error. Can't find LINCITY_HOME", this
210means that lincity can't find its home directory.  To find its
211home directory, lincity searches for the file "colour.pal" in
212the following three directories (in order):
213
214	The directory pointed to by the $LINCITY_HOME environment variable
215	The current working directory
216	The default directory
217
218
219LINCITY CONFIGURATION FILE
220==========================
221
222Lincity now has a configuration file for saving defaults.  You can
223find it in the following location:
224
225UNIX:       $HOME/.lincityrc
226WINDOWS:    %LINCITY_HOME%\lincity.ini
227
228To reset to the "factory default" configuration, simply delete the
229file.  Lincity will regenerate the file if it is missing.
230
231
232LINCITY ARTWORK
233===============
234
235Starting with version 1.13, you can (more easily) customize the lincity
236buildings and animations.  To modify the artwork simply edit the
237icon image file, located at opening/icons.png, with your favorite
238image editor.
239
240The icons.png file has a 256-color indexed format.  The palette contained
241within icons.png, however, is ignored by lincity.  Instead, lincity
242uses the file "Colour.pal" to determine the palette.
243
244
245NOTES FOR SVGALIB VERSION
246=========================
247
248It is now possible to run at higher resolution.  You can use the command
249line to set the mode:
250
251      lincity                 ## default mode
252      lincity -m 10           ## mode 10, 640x480
253      lincity -m 11           ## mode 11, 800x600
254      lincity -m 12           ## mode 12, 1024x768
255      lincity -m 13           ## mode 13, 1280x1024
256
257If not specified, lincity uses the default mode.  The default mode
258can be set according to the SVGALIB_DEFAULT_MODE environment variable.
259See "man svgalib" for details on the svgalib default graphics mode.
260If no default graphics mode has been specified, lincity will use
261mode 10 (640x480, 256 colors).
262
263As of version 1.12, lincity now uses the mouse settings in your
264svga configuration file (i.e. /etc/vga/vga.config).  Please use
265this method to specify which make/model of mouse you are using,
266and other mouse parameters.
267
268
269NOTES FOR X VERSION
270===================
271
272When playing in 256 colour (8bbp) display modes, when you go over the edge
273of your window, the window manager changes the colour palette back to the
274'normal' one, then back to the game's one when the mouse reenters the
275window. This is what is supposed to happen, but can be a bit annoying when
276trying to click on areas close to the edge and overshooting. For this
277reason, I have added an extra border around the game to give players a bit
278of 'breathing space'.
279
280You can disable this feature by starting the game with a '-b' switch. ie.
281
282                 xlincity -b
283
284There is now a button that enables you to confine the mouse pointer within
285the X window. ( xlincity -b, then confining the pointer and changing the
286screen resolution to 640x480 gives you a 'full screen' game. :) )
287
288
289NOTES FOR WIN32 VERSION
290=======================
291
292Lincity for Win32 automatically chooses whether or not to add a border
293and/or perform pix doubling, depending on your resolution.  Furthermore,
294it will automatically maximize the window or even go into full screen
295mode.  Here is what you should see for some of the more popular
296resolutions:
297
298       Resolution      Window Style     Border         Pix Doubling
299       ------------    ------------    ------------    ------------
300       640 x 480       Full screen     None            No
301       800 x 600       Window          Yes             No
302       1024 x 768      Window          Yes             No
303       1152 x 864      Window          Yes             No
304       1280 x 1024     Window          None            Yes
305
306If you are running 1280x1024, you may need to autohide the taskbar
307in order to see pix doubling.
308
309Lincity no longer uses a real windows font to draw text.  Although this
310gives a considerable speed improvement (about 20%), it sometimes
311doesn't work correctly, for a reason that I haven't yet identified.
312
313Save files are gzip compatible with the UNIX version of lincity.  That is,
314you will need to gzip/gunzip the save files when you transfer them to/from
315your UNIX box.
316
317The source code is distributed together with the binary distribution,
318in the file source.tgz.
319
320
321NOTES FOR CYGWIN
322================
323
324Cygwin is fully supported.  However, at the time of writing,
325performance is very slow when X Windows is started in multiwindow
326mode (which is the default setting).  To fix this, you can
327edit startxwin.bat to choose a different setting.
328
329http://sources.redhat.com/ml/cygwin-xfree/2003-09/msg00485.html
330
331
332INTERNATIONALIZATION UNDER LINUX
333================================
334
335Lincity supports a modest amount of internationalization.  Only languages
336that can be represented using a iso8859-1 font are currently supported.
337I have created a lincity-compatible iso8859-2 font also, but have not used
338it yet because of no demand (send me an email if you would like to try).
339
340If you wish to make a translation for your language, you will need to
341download and install gettext 0.11.2 or higher.
342
343The first task is to get the sample Italian translation to display
344correctly.  Download a fresh lincity (1.12pre53 or higher) from
345sourceforge.  Do a configure, make, and make install.
346
347Next, download the Italian package.  Install as described in README.it.
348Run as follows:
349
350   export LANG=it_IT          ## (on bash and similar)
351   setenv LANG it_IT          ## (on csh and similar)
352   xlincity -D
353
354Hopefully you will see something like this:
355
356   Setting entire locale to it_IT
357   Setting messages locale to it_IT
358   Query locale is it_IT
359   GUESS 1 -- intl_suffix is it_IT
360   Trying Message Path /home/gsharp/lincity/share/lincity/messages/it_IT/
361   Trying Help Path /home/gsharp/lincity/share/lincity/help/it_IT/
362   GUESS 2 -- intl_suffix is it
363   Trying Message Path /home/gsharp/lincity/share/lincity/messages/it/
364   Set Message Path /home/gsharp/lincity/share/lincity/messages/it/
365   Trying Help Path /home/gsharp/lincity/share/lincity/help/it/
366   Set Help Path /home/gsharp/lincity/share/lincity/help/it/
367   Bound textdomain directory is /home/gsharp/lincity/share/locale
368   Textdomain is lincity
369   DefaultVisual id=35 bp-rgb=8 map-entries=256
370
371
372If you see this, then everything worked perfectly.  You should see perfect
373Italian.  In particular, note the following:
374
375  (1)  The opening screen (help page) is in Italian
376  (2)  The month January will be written "Gen" instead of "Jan"
377  (3)  Click on something that hasn't been invented yet, like a
378       power station or windmill.  The message for "Not enough tech"
379       will be in Italian.
380
381It is possible that you see English for (1) and (3).  If so, you
382are probably running from the directory you built from.  Please cd
383out of that directory, and try again.
384
385If you are less lucky, maybe only (1) and (3) worked correctly and
386but not (2).  If so, you probably saw something like this:
387
388   Setting entire locale to (null)
389   Setting messages locale to (null)
390   Query locale is C
391   GUESS 1 -- intl_suffix is it_IT
392   Trying Message Path /usr/local/lincity/messages/it_IT/
393   Trying Help Path /usr/local/lincity/help/it_IT/
394   GUESS 2 -- intl_suffix is it
395   Trying Message Path /usr/local/lincity/messages/it/
396   Set Message Path /usr/local/lincity/messages/it/
397   Trying Help Path /usr/local/lincity/help/it/
398   Settling for help Path /usr/local/lincity/help/
399   Bound textdomain directory is /lincity/share/locale
400   Textdomain is lincity
401   DefaultVisual id=35 bp-rgb=8 map-entries=256
402
403If this happens, it means that your system is missing some files which
404are require to "set the locale" of your system to "it_IT".  Probably
405you are running Linux -- I don't think other Unix's have this peculiar
406requirement.
407
408To check if this is the problem (on Linux), look for the directory
409/usr/lib/locale/it_IT.  If this directory doesn't exist, you have this
410problem.  To fix it, do the following:
411
412   1)  Make a backup of the directory /usr/share/i18n/charmaps
413   2)  Make a backup of the directory /usr/share/i18n/locale
414   3)  cd /usr/share/i18n/charmaps
415   4)  gunzip UTF-8.gz
416   5)  gunzip ISO-8859-1.gz
417   6)  cd /usr/share/i18n/locale
418   7)  localedef -f ../charmaps/UTF-8 -i it_IT it_IT.UTF-8
419   8)  localedef -f ../charmaps/ISO-8859-1 -i it_IT it_IT
420
421Now check for the directory /usr/lib/locale/it_IT.  It will be there.
422
423OK, now you are ready to make translations for a new language.
424There are three parts to making a translation:
425   making help files
426   making message files
427   making a .po file.
428
429The messages and help files are just a matter of editing the ASCII
430files, and installing them.  If your language is "it", you should
431create two directories such as /usr/local/share/lincity/messages/it
432and /usr/local/share/lincity/help/it.  Copy the English language
433help and message files to these directories, and translate them.
434
435The .po file is a matter of translating these and getting them to compile
436correctly.  First, edit the file po/LINGUAS, and add your language
437(e.g. "it") to the list.  Next, create the .po file.  For the language
438"it", the command looks like this like this:
439
440   cd po
441   msginit -l it
442
443You should now see the file "it.po".  Edit this file.  Specifically,
444you should edit what comes after "msgstr".  Don't erase any of the
445other stuff such as "msgid" or "#: cliglobs.c:54" or that stuff.
446If you are using emacs, there is a "po-mode" to facilitate
447(or obstruct) this task.
448
449When you are done editing this file, you need to compile this file.
450Simply type "make" in the po directory to compile.  This will
451create the file "it.gmo".  Finally, you will need to install this file.
452To install, you will copy this file to the following location:
453
454  cp it.gmo /usr/local/share/locale/it/LC_MESSAGES/lincity.mo
455
456Now, you are ready to go.  Set the LANG environment variable and
457lincity should run using your translations.
458
459Email to gregsharp@geocities.com for comments about this process.
460
461
462INTERNATIONALIZATION UNDER WINDOWS
463==================================
464
465The situation under windows is similar.  Download lincity
466binary package, version 1.12pre53 or newer, and also download
467the Italian translation pack.
468
469Install the Italian translation pack directly into the lincity
470directory.  Then run the batch file:
471
472  c:\lincity> lincity-it
473
474Now, you should see:
475
476  (1)  The opening screen (help page) is in Italian
477  (2)  The month January will be written "Gen" instead of "Jan"
478  (3)  Click on something that hasn't been invented yet, like a
479       power station or windmill.  The message for "Not enough tech"
480       will be in Italian.
481
482If the above procedure doesn't work "out of the box", email
483to gregsharp@geocities.com.
484
485OK, now you are ready to make translations for a new language.
486There are three parts to making a translation:
487   making help files
488   making message files
489   making a .po file.
490
491The messages and help files are just a matter of editing the ASCII
492files, and installing them.  If your language is "it", you should
493create two directories such as /usr/local/share/lincity/messages/it
494and /usr/local/share/lincity/help/it.  Copy the English language
495help and message files to these directories, and translate them.
496
497The .po file is a matter of translating these and getting them to compile
498correctly.  First, make copy the file lincity.pot to your language
499(e.g. "it.po" for Italian).  If you do not have a lincity.pot file,
500email gregsharp@geocities.com to get the latest one (or get it
501directly from the CVS server on sourceforge).
502
503You should now see the file "it.po".  Edit this file.  Specifically,
504you should edit what comes after "msgstr".  Don't erase any of the
505other stuff such as "msgid" or "#: cliglobs.c:54" or that stuff.
506If you are using emacs, there is a "po-mode" to facilitate
507(or obstruct) this task.
508
509When you are done editing this file, you need to compile this file.
510Use the executable "msgfmt.exe" which is distributed with lincity
511for this purpose:
512
513  c:\lincity> msgfmt it.po -o it.gmo
514
515This should create the file it.gmo.  You need to copy it to a
516prespecified location, like this:
517
518  c:\lincity> copy it.gmo locale\it\LC_MESSAGES\lincity.mo
519
520Create the appropriate subdirectories as necessary.
521
522Now, you are ready to go.  Set the LANG environment variable
523and lincity should run using your translations.
524
525
526INSTALLING PICEDIT
527==================
528
529Picedit is deprecated.  It may or may not compile.  It will be removed
530after the transition to png graphics is complete.
531
532picedit is a simple drawing program that was used to draw all the icons
533found within the game. You are free to play with this, and even send me
534new icons that you have designed - although I cannot guarantee that any
535icons sent to me will be included in later versions. If you intend to design
536some that you feel should be included, please e-mail me first, this may save
537a lot of wasted effort.  The following commands
538
539    ./configure
540    make picedit   (or make xpicedit)
541    make install
542
543will compile and install picedit (or xpicedit).  Most likely, you will
544prefer to install picedit and lincity at the same time to avoid copying
545all of the help and message files multiple times, like this:
546
547    ./configure
548    make lincity
549    make picedit
550    make install
551
552By the way, xpicedit does not work on hi-color or full-color displays.
553
554
555COMPILATION UNDER WIN32
556=======================
557
558I use both MS VC++ 4.0 and MS VC++ 6.0 on Win95 and Win98.  I no longer
559include the MSVC workspace files or makefiles, since these do not
560seem to be particularly useful.  If you would like them, I'd be glad
561to send them to you.
562
563You may need to generate your own Makefile.  The file Makefile.am
564contains the information about which files you need to compile.
565As of version 1.12, you no longer need to link with your vendor
566supplied versions VERSION.LIB or WSOCK32.LIB.
567
568Lincity 1.11 was patched to compile with the Borland compiler
569too.  If this is not still working in 1.12, please send me a patch
570and I'll be happy to add it to the archive.
571
572
573RUNNING LINCITY (CLIENT/SERVER)
574===============================
575
576Client/server version is disabled for this version.  In fact, the code
577was completely removed as of version 1.12pre50, so the last version to
578contain the (non-functioning) network code was 1.12pre49.
579
580If you are interested in working on a client/server version, please send
581your email to the current maintainer or to the lincity mailing list.
582We are still interested in doing this!
583
584
585BUGS
586====
587
588Many.  See the file TODO.
589
590If you wish to report a bug, you can send to directly to the current
591maintainer or to the lincity mailing list.
592
593
594HISTORY
595=======
596
597Ian Peters started writing lincity in June 1995 as an exercise in
598mouse control in SVGALIB. It quickly became a usable, then even fun,
599game to play. Over the next 18+ months it evolved into a challenging
600and stable game which, in a number of people's opinion, is worth uploading
601to the net.
602
603In late 1997, lincity developers made grand plans for lincity version 2,
604an intergalactic space simulation with all the trimmings.  But from
6051998-1999, lincity underwent a period of hibernation, with only minor
606patches being applied.
607
608Development was restarted in late 1999 by Greg Sharp to provide
609some moderate improvements, including networking support, GUI
610improvements and additional gameplay developments.  Networking
611support was subsequently dropped in 2001.
612
613In mid-2001, Greg was joined by Corey Keasling, who helped to bring
614the game to sourceforge.net.  In late 2001, Corey became
615co-maintainer.  Version 1.12 was released in December 2003.
616
617
618COPYRIGHT
619=========
620Lincity is copyrighted software.
621Copyright (c) I J Peters 1995-1997.
622Copyright (c) Greg Sharp 1997-2003.
623Copyright (c) Corey Keasling 2000-2003.
624
625You may freely copy, distribute and modify lincity under the terms of the
626
627                       GNU GENERAL PUBLIC LICENSE
628
629Please read the file COPYING for the GPL.
630
631THANK YOU
632=========
633This game could not have been possible without the patches, scripts,
634bug reports, suggestions, and other contributions from hundreds of
635developers and users around the world.  Please read the file
636'Acknowledgements' for details.
637
638And a special thanks to *you* for playing and enjoying lincity!
639

README.profiling

1	================     =================
2	README.profiling     part of Lin-city.
3	================     =================
4
5I have only profiled this program when running with SVGALib.
6(If you what to profile under X, you're on your own.)
7
8If you are using svgalib 1.2.9 or greater (as you should), then you will
9need to edit .../svgalibxxx/src/vga.c and stop svgalib catching the profile
10signal. The code should now look like this:-
11
12/* We invoke the old interrupt handler after setting text mode */
13/* We catch all signals that cause an exit by default (aka almost all) */
14static char sig2catch[] =
15{SIGHUP, SIGINT, SIGQUIT, SIGILL,
16 SIGTRAP, SIGIOT, SIGBUS, SIGFPE,
17 SIGSEGV, SIGPIPE, SIGALRM, SIGTERM,
18 SIGXCPU, SIGXFSZ, SIGVTALRM,
19 /* SIGPROF, */ SIGPWR};
20static struct sigaction old_signal_handler[sizeof(sig2catch)];
21
22	NOTE the comments around SIGPROF.
23
24Now recompile svgalib with make install but READ THE SVGALIB DOCS YOURSELF
25just in case.
26
27To enable profiling, uncomment the PROFx vars in the makefile.
28
29To disable profiling, comment the PROFx vars in the makefile.
30
31Then just run the program as usual.
32
33When you exit, put the profiling info in a file:
34
35	gprof /usr/local/bin/lincity > proffile.txt
36
37(The raw profiling info is stored in gmon.out, a binary.)
38
39Note:
40	I have pushed the gl_setpixel() etc. routines through another
41	function when profiling is enabled. It will slow things down
42	a bit (<1%), but if you want to see how many times these routines
43	are called, you'll have to put up with it. Not all the gl_routines
44	are redirected in this way, only the ones called during the main
45	body of the code. These routines are identified by the FP in front
46	of the 'old' function name, ie the above becomes FPgl_setpixel().
47	(Perhaps not the best choice of prefix for obvious reasons, but
48	it stands for Floyd's Profiling.) You can disable this part alone
49	by commenting out the 'PROFD = -DCS_PROFILE' line.
50
51
52
53