Commit Graph

194 Commits

Author SHA1 Message Date
tron
4696ef802a (svn r2809) Implement more generic threading functions, which allow more than one thread 2005-08-05 09:15:41 +00:00
tron
2f54ad9310 (svn r2760) Remove stale comments, long unused stuff and simplify some checks 2005-07-30 16:29:23 +00:00
ludde
24986e9144 (svn r2756) Renamed railtypes into _railtypes
Renamed railtypes.c into railtypes.h, all other tables are in .h files. (It should be in the tables dir but I couldn't figure out how to get it there without deleting it first).
Added const and extern.
2005-07-29 22:13:04 +00:00
celestar
1736566e22 (svn r2753) -Codechange: Introduced a new struct "RailtypeInfo" to store rail type specific information. Begun populating it with a bunch of sprites, more to come later. This should result in cleaner, more compact code which allows easy introduction of new railtypes. 2005-07-29 21:36:02 +00:00
tron
ed2e3c77af (svn r2712) Overhaul DirectMusic MIDI backend:
- Merge the .c and .cpp part into one file
- Properly deinitialize at the end
- Remove "experimental" status
- Miscellaneous smaller changes
-Fix: Volume control works now
2005-07-26 06:59:48 +00:00
tron
201990b5d9 (svn r2704) Remove . from include path again, too much trouble. Also add some #ifdefs and #includes for the Windows build 2005-07-25 07:16:10 +00:00
bjarni
cb3c325e5f (svn r2703) - Feature: [OSX] Added a native alert window to show whatever error() needs to print (Tobin made this, while I fixed some issued in it)
- As a bonus, we now have an objective C file (os/macosx/macos.m) to use the functions Apple made to interact with OS stuff
2005-07-24 20:47:42 +00:00
tron
c7980036e9 (svn r2700) Insert Id tag into the Makefile 2005-07-24 13:55:39 +00:00
tron
4a14350711 (svn r2691) Separate dedicated video driver and fix bemidi declarations 2005-07-23 17:22:39 +00:00
tron
10fd03e222 (svn r2688) MSVC and Watcom can't handle identical file names in different directories, oh my... 2005-07-23 15:48:00 +00:00
tron
07a6e612ec (svn r2685) -Codechange: Split the music/sound/video drivers into separate files and move them into subfolders.
This results in shorter and hopefully easier to maintain files.
Note: I had to change paths in #include statements of some unrelated files, because I added the ottd base directory to the include path (-I.)
2005-07-23 15:16:57 +00:00
tron
b9a6c16461 (svn r2616) Don't stop when compiling a language fails, just delete the defective .lng 2005-07-17 18:09:23 +00:00
truelight
a09342c1fc (svn r2606) -Codechange: renamed ai.c to ai_old.c, and ai.h to ai_new.h to make room
for a global AI-handler
2005-07-17 15:34:10 +00:00
Darkvater
95463428c8 (svn r2585) - Fix [Makefile]: some small cleanups, remove warnings, and add mersenne to makefile (Luca) 2005-07-15 21:28:26 +00:00
truelight
3c9456dd45 (svn r2542) -Add: [GPMI] Added GPMI (http://sourceforge.net/projects/libgpmi/)
support to OpenTTD in preperation of AIScripts (long term). It is OFF 
  by default. Add GPMI:=1 to Makefile.config to enable.
2005-07-10 14:57:43 +00:00
hackykid
60ddaf95f0 (svn r2516) - Feature: [pbs] Implement path-based-signalling. This allows multiple trains within the same signal block, provided their paths dont intersect. For this the block must have all exit and entry signals be pbs signals. Place these by ctrl-clicking 4 times on a normal signal.
- Feature: [pbs] Implement autoplacement of pbs blocks, when a block has an entry and an exit pbs signal, covert the entire block to pbs. Can be turned off in the patch settings.
 - Feature: [pbs] Allow showing of reserved status by making the tracks darker, when the pbs debug level is at least 1.
2005-07-04 14:58:55 +00:00
celestar
78fed52627 (svn r2491) -Fix: Solved a performance problem introduced in r2467. While busy
committing, restore the sort order in the Makefile
2005-06-26 21:59:21 +00:00
bjarni
1a96770d81 (svn r2461) -Feature [Makefile] libpng-config can now be called something else in Makefile.config
useful if you for some reason got a libpng-config, which is called something else
2005-06-19 17:05:24 +00:00
truelight
fc96e80688 (svn r2458) -Fix: Quickfix to make dedicated-server compile again. We need a more ellegant way to fix this... 2005-06-18 15:08:35 +00:00
truelight
7721a2efe4 (svn r2457) -Fix: typo in Makefile for OSX builds 2005-06-18 10:02:47 +00:00
matthijs
9cb58e0bb3 (svn r2448) General cleanup of rail related code, more to follow.
* Add: rail.[ch] for rail-related enums and wrapper functions.
* Codechange: Removed dozens of magic numbers with below enums.
* Codechange: Rewrote CheckTrackCombination().
* Add: TILE_SIZE, TILE_PIXELS and TILE_HEIGHT constants.
* Add: enums RailTileType, RailTileSubtype, SignalType to mask against the map arrays.
* Add: enums Track, TrackBits, Trackdir, TrackdirBits for railway track data. (Note that the old RAIL_BIT constants are replaced by TRACK_BIT ones).
* Add: enums Direction and DiagDirection
* Codechange: Moved a bunch of track(dir) related lookup arrays from npf.[ch] to rail.[ch].
* Codechange: move RailType enum from tile.h to rail.h.
* Add: Wrapper functions for masking signal status in the map arrays: SignalAlongTrackdir, SignalAgainstTrackdir and SignalOnTrack.
* Add: Wrapper functions to access rail tiles, using above enums
* Add: Wrapper functions to modify tracks, trackdirs, directions, etc.
* Add: Wrapper functions for all lookup arrays in rail.[ch] (Arrays are still used in parts of the code)
* Codechange: Renamed some variables and arguments to better represent what they contain (railbit -> track, bits -> trackdirbits, etc.). 
* Codechange: Don't use FindLandscapeHeight() in CmdRemoveSingleRail(), since it returns way too much info. Use GetTileSlope() instead.
* Codechange: [NPF] Removed some unused globals and code from npf.c.
2005-06-16 18:04:02 +00:00
Darkvater
b438b1248c (svn r2397) - CodeChange: rename all "ttd" files to "openttd" files. 2005-06-02 19:30:21 +00:00
matthijs
8ef3f896f5 (svn r2371) - Fix: [ 1144510 ] make install tries to install scenarios in the (non-existing) personal dir when USE_HOMEDIR is specified.
This fix solves the issue for now by installing scenarios in the system-wide data dir.
- Add: 32x32 xpm format icon, used for debian packaging.
- Some minor updates to the os/debian directory.
2005-05-28 10:32:09 +00:00
Darkvater
7daaf1f100 (svn r2334) - Fix (regression): moved togglefullscreen into the video-driver, now windows works, dedicated works and sdl works. Also reverted the change to the makefile. 2005-05-16 16:19:32 +00:00
Darkvater
3bd76dad5b (svn r2330) - Fix: link error when compiling as dedicated. Add sdl.c to always compile in makefile as it is always protected by WITH_SDL and add a stub for ToggleFullScreen() 2005-05-16 12:15:34 +00:00
tron
ff52fc8267 (svn r2328) There's no need for extra magic to detect libpng on FreeBSD 2005-05-16 08:30:32 +00:00
bjarni
2bc9764fcf (svn r2327) -fix [MacOSX] default path for midi player on mac is now correct again 2005-05-16 00:04:01 +00:00
Darkvater
4c0c553a8f (svn r2314) - Feature: [ 1187490 ] Patches for building on IRIX (jgilje) 2005-05-14 22:42:33 +00:00
truelight
5d192d7150 (svn r2226) -Fix: 2 other capital problems for the OSX part of the Makefile 2005-04-24 16:01:36 +00:00
truelight
facd3d1af1 (svn r2225) -Fix: split the endian-detection to target/host. Now cross-compiling
on i386-linux for MacOSX should also work for the language-files (strgen issues)
2005-04-24 15:41:01 +00:00
truelight
176c155193 (svn r2224) -Fix: capital-correctness for OSX-dir-names 2005-04-24 12:47:09 +00:00
bjarni
3e470708a6 (svn r2198) renamed MacOS to MacOSX where it was written wrong. Made myself MacOSX porter as well as coder 2005-04-14 20:42:30 +00:00
bjarni
5572a92c58 (svn r2197) -fix [Makefile]: SDL_CONFIG from makefile.config is now not always overwritten
-fix [OSX]: fixed issue where OSX could not compile the java MIDI app if SHOW_WARNINGS was on (introduced in r1917)
-fix [OSX]: the midi class file is now also deleted with make clear
2005-04-14 13:46:40 +00:00
TrueLight
ecc0cd37f4 (svn r2196) -Change: updated the Makefile, now it works for crossplatform compiling
(and distcc compiling via Makefile.config). Wiki is coming up soon! Big
tnx to Bjarni and Lucaspiller.
2005-04-14 12:57:21 +00:00
tron
edd301d364 (svn r2133) Fix dependency tracking for C++ files 2005-04-02 21:05:10 +00:00
pasky
04dc6441aa (svn r2088) - Fix: [ 1155158 ] Make extmidi command a config option in addition to the compile-time MIDI switch. Patch by macbaine. 2005-03-27 15:42:25 +00:00
truelight
83637d164e (svn r2046) -Codechange: moved all waypoint code to waypoint.c/waypoint.h
-Codechange: rewrote some functions while moving waypoint-stuff
-Add: added support for 64k waypoints
-Fix: made the waypoint struct a bit more logic (no bit-fucking)
2005-03-24 17:03:37 +00:00
tron
f04780e66d (svn r2000) Split the sound system into backend (mixer.[ch]) and frontend (sound.[ch]) 2005-03-12 09:38:03 +00:00
pasky
bf8965a615 (svn r1996) makefile.config -> Makefile.config, that's its name. 2005-03-11 22:48:37 +00:00
pasky
e003532701 (svn r1995) Makefile: Use the install tool instead of mkdir+cp for installing the system-wide stuff, more secure. Based on Peter Brett's patch 1152428. 2005-03-11 22:47:33 +00:00
tron
c26177d14f (svn r1983) Introduce multiple compile time debug levels 2005-03-10 15:23:13 +00:00
pasky
e6feb22411 (svn r1980) Check $DESTDIR if $DEST_DIR was not set. 2005-03-09 23:59:18 +00:00
tron
3e142a6297 (svn r1939) Revert part of r1938 which accidently crept in 2005-03-06 12:56:02 +00:00
tron
aee2b0c50a (svn r1938) Miscellaneous cleanups: const correctness, kill a goto, ... 2005-03-06 12:54:19 +00:00
pasky
ccbb6263ea (svn r1917) - Makefile: Revamped VERBOSE support, build mechanics changed.
- VERBOSE has now greater effect, many previously hidden commands
    are now shown on the terminal as they are executed. (Use $(Q)
    instead of @ where the command should be shown if VERBOSE.)
  - Compilation commands redundancy was eliminated.
  - Compilation commands calling generalized so that the VERBOSE
    support does not further entangle the code. The commands are now
    all at a single place, before the targets in a "Build commands"
    section.

Note that this changeset has a character of proposal. If you do not
like the direction it takes at all, feel free to revert it (probably
together with the previous VERBOSE patch). However, I believe it
improves the code by bringing the compilation commands to a single
place and it greatly improves the VERBOSE support, too (and makes it
much less intrusive).
2005-03-01 01:14:27 +00:00
pasky
694741f441 (svn r1915) Support for a VERBOSE flag which will make the full compiler invocations to be shown instead of ===> Brief summaries. 2005-02-28 21:54:04 +00:00
tron
d48261aa23 (svn r1828) New warning flag especially for truelight (:< 2005-02-06 18:38:42 +00:00
tron
b2ae5b197e (svn r1821) Move generic string handling functions to string.[ch] and introduce stre{cpy,cat}, see string.h for their semantics 2005-02-06 13:41:02 +00:00
truelight
e9c93f9c0c (svn r1817) -Codechange: Moved depot-functions to depot.c
-Codechange: Added wrappers around depot-access (GetDepot no exists)
-Codechange: Made depot-functions a bit more logic (no longer 
GetDepotByTile crashes your game when you request it on a non-depot tile)
-Add: made depots dynamic (yes, 64k depots are possible now)
2005-02-06 10:18:47 +00:00
tron
f0f85a7ef3 (svn r1803) Move debugging stuff into files of it's own 2005-02-05 15:58:59 +00:00
tron
50df3ec103 (svn r1796) Revert r1792, because MorphOS has defaults for CC/CXX, they're just wrong, so setting CC/CXX using ?= simply did nothing 2005-02-04 19:53:53 +00:00
tron
54a84a6e6e (svn r1795) Change CFLAGS for MorphOS (tokai) 2005-02-04 19:51:43 +00:00
tron
f8f6132006 (svn r1793) Revert one instance of $(shell) back to ``, because MorphOS does The Wrong Thing(tm) when date is used within $(shell) 2005-02-04 17:57:07 +00:00
tron
8eda8113d9 (svn r1792) Revert r1761 and set fallback values via ?= for CC and CXX as there seem to be platforms (MorphOS) out there which don't provide some proper defaults.
Use gcc and g++ as defaults, because cc and c++ aren't available either. *sigh*
2005-02-04 17:45:11 +00:00
tron
08f2a395a3 (svn r1780) Don't clear LIBS and LDFLAGS 2005-02-03 21:18:49 +00:00
truelight
6d5fdc2b68 (svn r1763) -Add: pool.c / pool.h: generalized routines for dynamic arrays (MemoryPools) 2005-02-01 18:30:11 +00:00
tron
20d1f357dd (svn r1761) Don't set CC and CXX
If somebody tried to use alternate compilers via an environment variable the assignment in the Makefile simply overwrote that.
2005-02-01 16:57:16 +00:00
tron
8dc84b3deb (svn r1758) Replace `` with $(shell), because the latter is only evaluated once instead of over and over again 2005-02-01 05:28:18 +00:00
tron
af3605705f (svn r1755) Trim trailing whitespace 2005-01-31 19:22:44 +00:00
matthijs
a2dec6c32a (svn r1751) - Feature: New PathFinder (NPF).
- Supports trains, road vehicles and ships.
	- Uses A* pathfinding (same codebase as the new ai).
	- Currently unlimited search depth, so might perform badly on large maps/networks (especially ships).
	- Will always find a route if there is one.
	- Allows custom penalties for obstacles to be set in openttd.cfg (npf_ values).
	- With NPF enabled, ships can have orders that are very far apart. Be careful, this will break (ships get lost) when the old pathfinder is used again.
- Feature: Disabling 90 degree turns for trains and ships.
	- Requires NPF to be enabled.
	- Ships and trains can no longer make weird 90 degree turns on tile borders.
- Codechange: Removed table/directions.h.
	- table/directions.h contained ugly static tables but was included more than once. The tables, along with a few new ones are in npf.[ch] now. Better suggestions for a location?
- Fix: Binary heap in queue.c did not allocate enough space, resulting in a segfault.
- Codechange: Rewritten FindFirstBit2x64, added KillFirstBit2x64.
- Codechange: Introduced constant INVALID_TILE, to replace the usage of 0 as an invalid tile. Also replaces TILE_WRAPPED.
- Codechange: Moved TileAddWrap() to map.[ch] 
- Add TileIndexDiffCByDir(), TileIndexDiffCByDir(). 
- Codechange: Moved IsTrainStationTile() to station.h
- Add: IsRoadStationTile() and GetRoadStationDir().
2005-01-31 11:23:10 +00:00
tron
25f514ab6d (svn r1745) Use -fno-inline when DEBUGing 2005-01-30 23:04:41 +00:00
tron
6955f80c6e (svn r1744) DEBUG and PROFILE can be used at the same time. 2005-01-30 23:03:31 +00:00
tron
f08d102ac2 (svn r1715) Move [GS]etMapExtraBits to tile.[ch] 2005-01-29 13:33:48 +00:00
tron
6497f08ad4 (svn r1672) Simplify dependency tracking and actually implement it for C++ files, too.
Note: Do "make clean" to get rid of the old dependency files
2005-01-25 16:10:06 +00:00
tron
85248d7850 (svn r1671) Remove WARNING_DISPLAY, because it contained no warning, but an optimization flag 2005-01-25 16:03:45 +00:00
tron
3276c46c72 (svn r1670) Garbage collect some variables, because they are only used once and hide magic, like containing -o where a filename must be the next parameter 2005-01-25 15:59:01 +00:00
tron
76e1dd515f (svn r1669) Rename all ttd_XXX to just XXX, because we already know who we are (; 2005-01-25 15:46:32 +00:00
tron
03ba24dd65 (svn r1666) Move some MorphOS compile flags to a place where they actually belong 2005-01-25 15:38:35 +00:00
tron
75045328ec (svn r1665) Remove VERBOSE flag, because it was only partially implemented
Add "info" target instead, which prints out some relevant variables used in the Makefile
2005-01-25 15:35:11 +00:00
bjarni
6e532184bb (svn r1664) Makefile: removed the forced 0.3.6 version tag 2005-01-25 00:13:48 +00:00
bjarni
001fa99741 (svn r1661) Makefile: added scenario to make install 2005-01-25 00:07:50 +00:00
bjarni
6a66bb2314 (svn r1659) Makefile: added scenario to mac and MorphOS release scripts 2005-01-24 23:52:59 +00:00
bjarni
720b906a74 (svn r1649) Makefile: added known-bugs.txt to mac and MorphOS release scripts and made a really dirty hack to force 0.3.6 on binary files compiled with this makefile 2005-01-24 21:39:16 +00:00
tron
6151c1044a (svn r1647) Remove stale comment and fix typo 2005-01-24 20:55:54 +00:00
tron
2cf65953db (svn r1620) Fix typo in r1619 2005-01-23 17:51:22 +00:00
tron
62e8c573e8 (svn r1619) Fight bit rot in the Makefile:
- Begin all echos with ===> to visually emphasise them
- Add @ to suppress printing of commands where it was missing
- Add echos to rules where none were 
- Rephrase some existing echos
- Remove VERBOSE_FILTER, because piping errors to /dev/null is ... a bad idea
2005-01-23 17:35:01 +00:00
tron
53d1c3f117 (svn r1616) Introduce ttd_strlcat() and use it to de-uglify some piece of code in misc_cmd.
While here rename the len parameter of ttd_strlcpy() to size, because it is a buffer size and not a string length.
Also add -Wwrite-strings to the Makefile, because the above mentioned piece of code was the only part which triggered this warning.
2005-01-23 15:16:47 +00:00
bjarni
c7502c6eb3 (svn r1600) Mac: applied the new icon to the mac binary file 2005-01-22 23:55:45 +00:00
tron
189ca73707 (svn r1594) Convert all undefined parameter lists to (void) and add the appropriate warning flags in the Makefile 2005-01-22 20:23:18 +00:00
tron
28df4a0e25 (svn r1570) Make the gcc version test work with old versions of test (i.e. don't use the < operator) 2005-01-19 20:22:10 +00:00
tron
9fadf6cf84 (svn r1553) Check which gcc version is present and only set availible compiler flags 2005-01-17 13:21:10 +00:00
tron
f4f705e723 (svn r1552) Make ottd compile on Zeta 2005-01-17 13:13:11 +00:00
bjarni
971d844266 (svn r1530) Makefilefix: now the binary never links to SDL if DEDICATED is set. Thanks to igor2code for making me aware of this issue even through I fixed it in a different way than his patch did. (I made dedicated never link to sdl, nomatter what makefile.config says) 2005-01-15 21:30:16 +00:00
truelight
a243285af4 (svn r1486) -Codechange: moved all 'signs' stuff to signs.c/h and prepared it for
dynamic arrays
2005-01-12 11:21:28 +00:00
celestar
46d0e2f892 (svn r1474) Added some gcc flags in the Makefile 2005-01-10 21:56:02 +00:00
tron
1fc77885c2 (svn r1470) Revert r1457, this warning option was introduced with gcc 3.4 2005-01-10 19:27:38 +00:00
tron
cd4e73193d (svn r1457) Make Darvater happy: -Wdeclaration-after-statement 2005-01-10 09:33:18 +00:00
darkvater
fbcc84bdcf (svn r1449) -Fix: signed/unsigned error on windows
-Change: Makefile added -Wsign-compare flag
2005-01-09 18:59:16 +00:00
truelight
5110ffeef4 (svn r1432) -Fix: I seem to be unable to revert a simple file :s 2005-01-08 15:31:20 +00:00
truelight
ead1aa8dfc (svn r1431) -Fix: oeps, I added my personal Makefile in the last commit :( 2005-01-08 15:28:16 +00:00
bjarni
7e0f47ff15 (svn r1274) Makefile: networking is not longer experimental 2004-12-24 00:33:41 +00:00
darkvater
d7bc1d776c (svn r1268) -Fix: some warnings in gfx.c fixed
-Fix: Makefile now correctly works for cygwin/mingw; altough defining only cygwin does not compile the game
-Fix: moved SDL information message from severity 0 to 1. Only errors/severe warnings should be level 0
2004-12-23 23:15:07 +00:00
bjarni
fb345e983e (svn r1236) MorphOS: added make release like in OSX (tokai)
MorphOS: cleaned up the code telling the difference between AmigaOS and MorphOS (tokai)
2004-12-22 21:12:36 +00:00
truelight
28d34b0f56 (svn r1182) -Fix: Makefile had a small glitch, making it impossible to compile the game (Oskar_) 2004-12-20 14:37:52 +00:00
bjarni
123acd5a73 (svn r1180) Makefile: fixed dependancies so the flag -j can be used. It makes the compilation process into more than one job which makes it able to benefit from multiple CPUs. Using -j without setting a limit of jobs (like -j2) is not a great idea (thanks to ln-- for reporting the need for this one) 2004-12-19 23:27:20 +00:00
tron
765ecfed84 (svn r1117) Move map arrays and some related macros into their own files map.c and map.h 2004-12-15 22:18:54 +00:00
tron
15265ac40a (svn r1115) Put every source file on an extra line 2004-12-15 22:05:40 +00:00
bjarni
9e3ca26ae6 (svn r1039) Makefile: now RELEASE flag can contain () too 2004-12-12 21:18:39 +00:00
bjarni
625b0ffec0 (svn r1034) Makefile: fixed issue where it would not compile if RELEASE string contained space. Did the same fix to OSXAPP, just in case it's changed to something containing space at a later date 2004-12-12 18:10:35 +00:00
truelight
0e79314353 (svn r1026) -Add: [Network] Added unique id, so in network, each client has an
unique id (generated via md5)
2004-12-12 16:04:32 +00:00