Mirror of Simutrans SVN Repository
Markus Pristovsek
Markus Pristovsek Release of 120.4.1
git-svn-id: svn://tron.homeunix.org/simutrans/simutrans/trunk@8600 8aca7d54-2c30-db11-9de9-000461428c89
Latest commit 89498c7 Sep 23, 2018
Permalink
Failed to load latest commit information.
OSX svn props Aug 9, 2018
bauer FIX: location forest could not work with factories smaller than 3x3, … Sep 23, 2018
boden FIX: only use special clipping for tunnel portals when not in undergr… Sep 4, 2018
dataobj silence some fallthrough warnings Sep 19, 2018
descriptor Comma in ribi definition of makeobj wayobj missed Sep 13, 2018
display ADD: (THLeaderH) option to hide the revenue income messaging at stops Sep 11, 2018
documentation translate komponente to component Aug 16, 2014
finder Improved placefinder function names Feb 21, 2017
gui silence some fallthrough warnings Sep 19, 2018
ifc CODE: get_cost takes weg_t* as second parameter, direction as fourth,… Feb 13, 2017
makeobj FIX makeobj Makefile Jun 3, 2018
music sound files for new mac sound support May 22, 2017
nettools Fix Makefiles May 27, 2018
network Report proper names of different paks also for too many paks Sep 13, 2018
nsis Release of 120.4.1 Sep 23, 2018
obj Three state priority signals also with electrification Sep 20, 2018
player silence some fallthrough warnings Sep 19, 2018
script ADD: (gauthier) priority signals (greedy multi block signals) Sep 11, 2018
simutrans Release of 120.4.1 Sep 23, 2018
sound Hopefully SDL2 sound works on more machines Sep 19, 2018
squirrel squirrel: change type macro to sqtype Aug 9, 2017
themes.src Release of 120.3 Jun 15, 2018
tpl Fix GCC 8 May 30, 2018
translate_code besch -> desc Feb 2, 2017
utils FIX compile with syslog Sep 15, 2018
vehicle FIX: long block signals reserved through the own position when drivin… Sep 22, 2018
.desktop Desktop file and icon for Linux (will not display automatically anyway) Apr 29, 2016
.gitignore ADD: scripted scenarios Aug 3, 2012
LICENSE.txt Add license in the root dir Jun 4, 2018
Makefile Significantly improve performance of changing underground mode/slice … Aug 26, 2018
Makeobj.vcproj rename besch to descriptor in project files Feb 2, 2017
Nettool.vcxproj Build nettool with MSVC again Feb 12, 2018
Nettool.vcxproj.filters Build nettool with MSVC again Feb 12, 2018
Simutrans-SDL2.sln SDL2 project for MSVC Jun 26, 2018
Simutrans-SDL2.vcxproj SDL2 project for MSVC Jun 26, 2018
Simutrans.manifest Added highres-aware manifest (Ters) Jan 3, 2016
Simutrans.sln Update MSVC 2012 Jan 21, 2017
Simutrans.vcxproj ADD: Prominent warning on overlaid objects Sep 3, 2018
buildOSXbundle.sh svn props Aug 9, 2018
clipboard_internal.cc fix simgraph.h location in clipboard_internal.cc Aug 7, 2013
clipboard_s2.cc SDL2 clipboard support Jun 26, 2018
clipboard_w32.cc Use modern heap memory functions for Windows build clipboard function… Oct 27, 2017
common.mk Using HOSTCC to allow for crosscompiling May 22, 2017
config.default.in Make static linking the default May 30, 2018
config.template Adding makefile support for freetype May 18, 2018
configure.ac Updated config May 18, 2018
convoihandle_t.h Remove references to the non-existent handle_as_id_tpl. Jun 21, 2007
distribute.sh use autopconf to find out if bundling with pthread is needed Feb 19, 2017
findversion.sh no shell substitutions in findrevision.sh any more Dec 21, 2014
freight_list_sorter.cc silence some fallthrough warnings Sep 19, 2018
freight_list_sorter.h CODE: use karte_ptr_t in simline, simhalt, and others Nov 24, 2013
get_lang_files.sh CHG: extended download script from R1d0 Mar 20, 2018
get_pak.sh Preparations for release Sep 17, 2018
halthandle_t.h Remove references to the non-existent handle_as_id_tpl. Jun 21, 2007
linehandle_t.h Import version 88.07 Aug 20, 2006
macros.h cleanup: Remove obsolete C compatiblity. May 27, 2014
old.ico some forgotten files added Sep 4, 2006
old_blockmanager.cc Fix and translate comments round 2 Feb 17, 2017
old_blockmanager.h Translate laden_abschliessen -> finish_rd Jan 23, 2015
pathes.h FIX: do not create 'screenshots' directory, use macro, correct its sp… Jun 24, 2018
readme.txt updated readme.txt May 30, 2018
revision.jse FIX: MSVC pre-build script generate revision.h even without SVN or if… May 6, 2018
scrolltext.h Chnaged banner text again Nov 2, 2012
simcity.cc FIX: renovate city road also on non-rotateable buildings Jul 25, 2018
simcity.h FIX prevent int overflow when calculating city center May 25, 2018
simcolor.h ADD: gui_color_text_minus, gui_color_text_plus, gui_color_text_unused… May 22, 2018
simconst.h FIX: 15 bit RGB 555 was broken for long Apr 11, 2017
simconvoi.cc silence some fallthrough warnings Sep 19, 2018
simconvoi.h ADD: (THLeader+prissi) longer configurable convois Jun 6, 2017
simdebug.cc Separated debug optmisation and text output levels Feb 19, 2017
simdebug.h FIX compiling with MSG_LEVEL>=4 was broken Aug 11, 2017
simdepot.cc ADD: (HyperSim) sorting vehicles in depot Sep 10, 2018
simdepot.h ADD: (HyperSim) sorting vehicles in depot Sep 10, 2018
simevent.cc FIX propagate new window size in dedicated event member variables, Jul 15, 2018
simevent.h FIX propagate new window size in dedicated event member variables, Jul 15, 2018
simfab.cc SDL2 sound with free sampel rate and -mute flag for loading sounds bu… Aug 21, 2018
simfab.h FIX: factory chart stats - take 2 May 27, 2018
simhalt.cc FIX crash with make-public tool Jul 7, 2018
simhalt.h Move drawing functions to 16bit colour - better theme colours Mar 15, 2017
siminteraction.cc silence some fallthrough warnings Sep 19, 2018
siminteraction.h CODE: use karte_ptr_t in interaction_t Nov 24, 2013
simintr.cc (TurfIt) less sleep for smoother update Sep 10, 2018
simintr.h remove more dead code, some has never been alive Jun 3, 2018
simio.cc Many files include their own filename in a comment. Often the name is… Jun 10, 2007
simio.h Many files include their own filename in a comment. Often the name is… Jun 10, 2007
simline.cc Overhauled goods frame Feb 23, 2018
simline.h Overhauled goods frame Feb 23, 2018
simlinemgmt.cc translate dataobj, fahrplan -> schedule Nov 27, 2016
simlinemgmt.h translate dataobj, fahrplan -> schedule Nov 27, 2016
simloadingscreen.cc FIX propagate new window size in dedicated event member variables, Jul 15, 2018
simloadingscreen.h Fix and translate comments round 2 Feb 17, 2017
simmain.cc ADD: Prominent warning on overlaid objects Sep 3, 2018
simmain.h Move remaining backends (SDL, X11) from C to C++. Jul 5, 2008
simmem.cc correct spelling: licence -> license Dec 16, 2011
simmem.h Remove unnecessary special case regarding guarded_free() for MSVC. Feb 5, 2012
simmenu.cc FIX: in case of error return error != NULL and do not silently fail Jun 13, 2018
simmenu.h (HyperSim & prissi) roating buildings patch Jun 2, 2018
simmesg.cc FIX crash in message_t::node::rdwr Mar 17, 2017
simmesg.h Move drawing functions to 16bit colour - better theme colours Mar 15, 2017
simobj.cc remove more dead code, some has never been alive Jun 3, 2018
simobj.h remove more dead code, some has never been alive Jun 3, 2018
simplan.cc Significantly improve performance of changing underground mode/slice … Aug 26, 2018
simplan.h Significantly improve performance of changing underground mode/slice … Aug 26, 2018
simres.rc Added highres-aware manifest (Ters) Jan 3, 2016
simskin.cc Translate & normalise desc_t classes Mar 3, 2017
simskin.h translate skin_besch_t, xref_besch_t Feb 2, 2017
simsound.cc SDL2 sound with free sampel rate and -mute flag for loading sounds bu… Aug 21, 2018
simsound.h translate bild -> image Nov 26, 2016
simsys.cc FIX: create screenshot directory for singleuser too Jul 18, 2018
simsys.h FIX propagate new window size in dedicated event member variables, Jul 15, 2018
simsys_d.cc Fix and translate comments round 2 Feb 17, 2017
simsys_opengl.cc FIX propagate new window size in dedicated event member variables, Jul 15, 2018
simsys_posix.cc The method log::important was recently removed and so is no longer a … Aug 26, 2018
simsys_s.cc FIX propagate new window size in dedicated event member variables, Jul 15, 2018
simsys_s2.cc FIX propagate new window size in dedicated event member variables, Jul 15, 2018
simsys_w.cc FIX propagate new window size in dedicated event member variables, Jul 15, 2018
simsys_w32_png.cc Fix and translate comments round 2 Feb 17, 2017
simsys_w32_png.h cleanup: Remove obsolete C compatiblity. May 27, 2014
simticker.cc remove debug line Jun 29, 2018
simticker.h FIX make ticker aware of font-size Jun 24, 2018
simtool-dialogs.h CODE no need to check for existing window, destroy_win will check anyway Jun 16, 2018
simtool.cc FIX: crash when replacing HQ at same location in snow with no-snow im… Sep 13, 2018
simtool.h Funktion defining of simtools.h Sep 13, 2018
simtypes.h CHG Macro expansions should not contain defined Jul 8, 2017
simunits.h CODE: proper r7246 Jun 13, 2014
simutrans.ico overweadwire built on top of slower now, new icon Sep 2, 2006
simutrans.svg Desktop file and icon for Linux (will not display automatically anyway) Apr 29, 2016
simversion.h Release of 120.4.1 Sep 23, 2018
simware.cc CODE delete dead code Jun 3, 2018
simware.h CODE delete dead code Jun 3, 2018
simworld.cc ADD: (THLeaderH) configurable height setting for extremely heigh maps… Sep 11, 2018
simworld.h ADD: (THLeaderH) configurable height setting for extremely heigh maps… Sep 11, 2018
stormoog.ico branch merged back to trunk Sep 25, 2006
todo.txt Update tot Jan 3, 2016
uncommon.mk use one uncommon.mk for both makeobj and nettool Oct 15, 2011
unicode.cc Change invalid Unicode handling to ISO-8859-1 interpretation instead … Nov 2, 2017
unicode.h Change invalid Unicode handling to ISO-8859-1 interpretation instead … Nov 2, 2017

readme.txt

How to compile
--------------

Congratulations, you checked out the simutrans source. To compile it,
you have two options, either using Microsoft Visual C++ Express (which
is free in Version 7.0 or up) or GCC.

To compile you will need the following libraries:
libz (http://www.zlib.net/)
libpng (http://www.libpng.org/pub/png/) for makeobj
libbz2.lib (compile from source from http://www.bzip.org/downloads.html)
The following are also recommendend, but optional
libfreetype (http://www.freetype.org/)
libminiupnpc (http://miniupnp.free.fr/)

For the recommended SDL2-support you need
libSDL2 or libSDL (http://www.libsdl.org/)
libSDL_mixer (link from the same page)

The link for allegro lib is (but the allegro backend has not been 
tested for a long time):
http://www.talula.demon.co.uk/allegro/
or
http://alleg.sourceforge.net/index.de.html

To make life easier, you can follow the instructions to compile OpenTTD:
http://wiki.openttd.org/Category:Compiling_OpenTTD
A system set up for OpenTTD will also compile simutrans (except for
bzlib2, see below sections).

If you are on a MS Windows machine, download either MS VC Express or
MSYS2. MSVC is easy for debugging, MSYS2 is easy to set up (but it has to be done on the commandline).

The packages needed for MSYS2 are
make
mingw-w64-i686-gcc
mingw-w64-i686-SDL (Only if you want an SDL build OR for sound on SDL2)
mingw-w64-i686-SDL2 (Only if you want an SDL2 build)
mingw-w64-i686-freetype (for scaleable font support)
mingw-w64-i686-miniupnpc (for easy server option)
mingw-w64-i686-libpng (for makeobj)
mingw-w64-i686-pkg-config (for makeobj)

For all other systems, it is recommended you get latest GCC 3.46 or higher
and matching zlib, libbzip2, and libpng and SDL or SDL2 libbrary. For linux
systems you may have to use tools like apt-get, yast2, yum, ...

Typical package names are (ending may be also -devel)
libsdl2-dev or libsdl1.2-dev
zlib-dev
libpng-dev
libbz2-dev
libminiupnpc-dev
libfreetype-dev
Depending on your distribution, there may be also number needed, like 
libfreetype2-dev or libminiupnpc6-dev

To built on Haiku you must use GCC4 (type "setarch x86" in the current
nightlies). To incorporate bz2lib, download make bz2lib and add them
manually (via FLAGS = -I/dwonloadeddir -L/downloadeddir). However, simutrans
has a Haikuporter package, which may built the lastest version.

A subversion will be also a good idea. You can find some of them on:
http://subversion.tigris.org/
or you some other client.

Check out the latest source from the SVN or check out a certain revision.
I recommend always to use the latest source, since it does not make any
sense to work with buggy code.

The address is:
svn://server.simutrans.org/simutrans

A commandline would look like this:
svn checkout svn://server.simutrans.org/simutrans

If everything is set up, you can run configure inside trunk. This should 
create a config.default file with all the needed settings. Try to compile 
using make. You can manually fine edit config.default to enable other 
settings.

Typical you type into a command window:
./configure
make


IMPORTANT:
----------

If you want to contribute, read the coding guidelines in
trunk/coding_styles.txt


The following instructions are manual setup for GCC systems:
------------------------------------------------------------

Go to simutrans/trunk.

Then copy the file trunk/config.template to trunk/config.default and edit 
the file. You need to specify:
- frontend (gdi, allegro, sdl, SDL, posix)
- color depth (usually 16 or zero)
- system (you should know it)

I recommend to uncomment #DEBUG=1 and #OPTIMISE = 1 (i.e. removing the #).

For allegro or libsdl you may need to define the path of the config file
(or at least on win98 and empty path).

Finally type make. If you want a smaller program and do not care about error
messages, you can comment out #DEBUG=1 and run strip sim resp. strip sim.exe
after compile and linking.


The following instructions are for MS Visual C Express:
-------------------------------------------------------

Download Visual Express C++ (tested for 2008 upwards)
http://www.microsoft.com/express/Downloads/

For most libraries you will easily find binaries. A quick start for some of 
them is the bundle used for OpenTTD:
https://www.openttd.org/en/download-openttd-useful/6.0

The bzip2 source tarball comes with an archive where you can easily built
your own libbz2.lib file. Or use the one posted in the forum:
https://forum.simutrans.com/index.php/board,112.0.html

For debugging, you have to set the correct working directory, i.e. the
directory where the pak/ folders are located and use the -use_workdir
command line option.

Nagoya, Mai 2018