Home / Section index

 The ACM flight simulator - Download page

Slide show:

This page updated: 2021-03-26 (Debian package available)

Lightweight flight simulator available here for download. Features (latest changes in boldface):

Castorino ACM DIS protocol relay server available!

A DIS protocol relay server is available at castorino.icosaedro.it port 3000. The default exercise is 1, any other exercise number can be set and shared among the participants to a simulation.

Available packages and resources

Umberto Salsi
Site map
Home / Section index
An abstract of the latest comments from the visitors of this page follows. Please, use the Comments link above to read all the messages or to add your contribute.

2022-01-12 by Umberto Salsi
Guest wrote: [...] No updates from my part, but now that ACM 6.0 is officially part of the Debian 11 (bullseye) distribution it's finally open to the contribution from anyone. The first thing that should be fixed in the Debian release is the missing documentation, especially the user's manual and the navigation charts that are available along with my package. Another area of improvement could be creating more scenery files to cover other regions of the world and new aircraft models, which basically is a matter of writing bare text files collecting data from here and there about the specific region, no programming skills required. About the evolution of the program, I believe it's still a good starting point for anyone willing to learn the basics of flight and flight navigation; its source code is short and simple enough for any programmer to learn the basics of how a flight simulator works in a reasonable amount of time, allowing to experiment with programming techniques and modulariza[...][more...]

2021-12-20 by Guest
Hi, Umberto! Any progress on ACM development?[more...]

2020-03-13 by Umberto Salsi
Re: Next release?
Guest wrote: [...] As you can see, there are some fixes and updates available in the CVS repository, mainly to support the updated WMM coefficient of the Earth magnetic field (the current "stable" packet of ACM gives an error about the stale coefficients table). So to get rid of that annoying message, you may download the source from the CVS. Apart from that, some other minor changes I'm currently working on (and not committed yet) are: - Rudder movements are synchronized with the nose gear steering like in a real plane. The idea is that facing cross wind while taking off and landing could be more realistic. Side effect: steering is now performed pressing the Z and C keys, the same keys of the rudder. I'm not sure if this change could really add some realism, I still fail on take-off with strong crosswind (runway excursion), and certainly steering on the terrain with the keyboard is quite difficult. To be reconsidered. - Again in the realm of realism, I would like to add some implement[...][more...]

2020-03-13 by Guest
Next release?
Hi, Umberto! I sew activity (few commits with various fixes) in CVS repo made on January 2020. Has you plans to release next version of ACM 6.0?[more...]

2018-07-21 by RedCat42
Hey again, I quickly tried some code and indeed, by replacing the error lines by : if( *s != '-' ) return 0; s++; it indeed works perfectly and I can now launch acm. Thank you a lot, I am surprised that even years and years after release, you are still here. Peace out ![more...]

2018-07-21 by RedCat42
Re: Departure Time Bug
Alright, we're getting to something ! Yey ! Here is my version of gcc : gcc --version gcc (Debian 7.3.0-24) 7.3.0 And I can confirm these are the only errors showing up. If you want the whole log : ----------- # Really do all (but something does not builds yet): #find . -mindepth 2 -name Makefile \ # | while read m; do make -C $(dirname $m) all || exit 1; done # # Only do what we really care the most: make -C src all make[1]: Entering directory '/root/Téléchargements/acm-6.0_20180402/src' rm -rf doxygen-html find . -mindepth 2 -name Makefile \ | while read m; do make -C $(dirname $m) all || exit 1; done make[2]: Entering directory '/root/Téléchargements/acm-6.0_20180402/src/util' make audio.o error.o gui.o hashtable.o memory.o prng.o reader.o sparsearray.o timer.o units.o varray.o wav.o zulu.o make[3]: Entering directory '/root/Téléchargements/acm-6.0_20180402/src/util' gcc -Wall -Werror -g -fmax-errors=99 -Wuninitialized -Wmissing-prototypes -Wredundant-decls -c audio.c -o audio.o gcc[...][more...]

2018-07-21 by Umberto Salsi <salsi@icosaedro.it>
Re: Departure Time Bug
RedCat42 wrote: [...] [...] So it seems you are using some newer version of gcc 6 or 7 (while I'm still using the "old" 5) which introduces several new warnings and, among these, the "misleading-indentation" warning as detected above. I don't know why these statements went formatted so badly, but obviously the "s++;" statement should go on a line by its own, so it is easy to fix making happy gcc -Wall. If you could confirm the version of gcc (type "gcc --version" at the terminal) and you could confirm those lines are the only one affected, I may publish a fixed release; write to my a note here or by email, so I can add the due credits! Regards, - U.S.[more...]

2018-07-20 by RedCat42
Re: Departure Time Bug
I do apologize for being so impatient. I was very interested by acm and little errors never stopped showing up until this one. I will now answer each point : 1. I am on a linux debian machine, x64, with apparently the newest version of gcc. I however do not know any more details, so you will need to precise which one if you want some. 2. I did not specified any parameter with my compiler. Just typed "make" and let it go. 3. It is reasonably current, as I only tried 2017 and 2018 dates. 4. I can not, as it chooses "now" as default, it brings this error up : ACM-6.0_20180402 internal error in zulu.c:101: timestamp underflow for year 0. Aborted 5. I can not either, as it brings this error : ./acm.exe -departure-time 2017-10 ACM-6.0_20180402: invalid departure date and time '2017-10'. Check format and range of each field, examples: 2017-10 (2017-10-01T00:00:00 assumed) 2017-10-20 (00:00:00 assumed time) 2017-10-20T12:34 (00 seconds assumed) 2017-10-20T12:34:56 Allowed year range is [1583,9[...][more...]

2018-07-20 by Umberto Salsi <salsi@icosaedro.it>
Re: Departure Time Bug
RedCat42 wrote: [...] Sorry for the inconvenience, but be patience. I can't reproduce the issue here, as all is working fine for both 'now' and '2017-10-09T09:00' under: - Slackware 14.2, x86_64, gcc 5.3.0 and - Windows 7, x86_32, MinGW 0.6.2, gcc 5.3.0 by compiling the sources with their current Makefile. 1. Which is your box? 2. Have you set some special compiler option? 3. Is your current date/time reasonably current? 4. Can you start the program from the command line? for example: src/acm/acm.exe 5. Can you start the program from the command line by also setting the departure time? for example (year and month only): src/acm/acm.exe -departure-time 2018-07 6. If also these commands fails, which is the exact displayed error? 7. If you have compiled from the sources, then you should have the test code too; try compiling and execute the test code related to the Zulu date handling: cd test/util make zulu-test.exe ./zulu-test.exe If nothing appears on the screen, at least we know the src[...][more...]

2018-07-20 by RedCat42
Departure Time Bug
Howdie, I finally managed to install acm, but I still can't launch it. Whatever the departure time it gets, it will throw me an error. When I choose "now" : Underflow for year 0 (The program apparently doesn't get the date right) When I choose a manual date : 2017-10-09T09:00 is what I type in. ACM-6.0_20180402: invalid departure date and time '2017-10-09T09:00'. This is quite frustating indeed. I can't wait to see your response. [more...]

2018-05-10 by Umberto Salsi <salsi@icosaedro.it>
Re: I can't even configure ACM for make on openSuSE 11.1
Konran U. wrote: [...] My web commenting system is back on, and after only 7 years of delay :-) I can finally reply to this question. Although it might seem the same program, the sources of ACM-6 are quite different from the original ACM-5 and I rewrote most of the code (DIS protocol, sound support, display management, maps handling, and more). But about your specific issues: 1. The "configure" script is gone; dependencies from the underlying system are accounted in the Makefile under each directory, any dependency from external libraries is keep to a minimum and then it should compile fine under any Linux distribution. 2. The pseudo-random number generator is now built-in as a custom library of ACM, so no more issues about that. Regards, - Umberto Salsi[more...]

2011-01-05 by Konran U.
I can't even configure ACM for make on openSuSE 11.1
When I try to ./configure ACM out of the stock I get this error message: "configure: error: Hmm. Your system does not support either random() or rand()." This is not correct as SuSE Linux has random(). Now I did an autoconf and ran ./configure again thus getting: "./configure: line 6047: syntax error: unexpected end of file" which seems to be a result of an uncomplete generated configure script. I'm unable to fix anything in the configure script or configure.in template. So, is there any help for that? Would be great as I really like to see a much more recent ACM than I ever knew ;-) Cheers, Konran[more...]

2010-11-22 by Guest
Re: I can't compile the game in Ubuntu Lucid Lynx.
Umberto Salsi wrote: [...] Yeah, I can run it now. I'm exploring more. Thank you very much :-) [more...]

2010-11-21 by Umberto Salsi
Re: I can't compile the game in Ubuntu Lucid Lynx.
Anonymous wrote: [...] You can safely remove the offending line #include <X11/xpm.h> from src/players.c line 25 as that library isn't used by ACM-5.0-ico anymore.[more...]

2010-11-20 by Guest
I can't compile the game in Ubuntu Lucid Lynx.
I tried to "make" it in Ubuntu 10.04 Lucid Lynx and this was what I got: username@username-laptop:~/Desktop/acm-5.0-ico-20100109$ make Making all in ./V ... make[1]: Entering directory `/home/username/Desktop/acm-5.0-ico-20100109/V' Making all in ./lib ... make[2]: Entering directory `/home/username/Desktop/acm-5.0-ico-20100109/V/lib' make[2]: Nothing to be done for `all'. make[2]: Leaving directory `/home/username/Desktop/acm-5.0-ico-20100109/V/lib' make[1]: Leaving directory `/home/username/Desktop/acm-5.0-ico-20100109/V' Making all in ./dis ... make[1]: Entering directory `/home/username/Desktop/acm-5.0-ico-20100109/dis' Making all in ./disgen ... make[2]: Entering directory `/home/username/Desktop/acm-5.0-ico-20100109/dis/disgen' make[2]: Nothing to be done for `all'. make[2]: Leaving directory `/home/username/Desktop/acm-5.0-ico-20100109/dis/disgen' Making all in ./lib ... make[2]: Entering directory `/home/username/Desktop/acm-5.0-ico-20100109/dis/lib' make[2]: Nothing to be done[...][more...]

2008-04-23 by Umberto Salsi
Re: Welcome
Anonymous wrote: [...] You can start playing around the src/mouse.c module simply overriding the mouse code. Remember to add proper library flags to the Makefile. Adding support for the joystick buttons is more challanging, but since I don't have a joystick I can't help on that point. If all that work, the next refinement step would be to add some flag to the main program (main.c) allowing the user to choose its preferred input device, and possibly adding that flag to acm.tk too. If things get more complex, create your own module "joystick-ubs.h/.c" or something alike. And then, finally, if you send me the resulting patch I will be very glad to add it to the CVS and to the next release. Happy landings. [more...]

2008-04-22 by Guest
It's a wonderful idea to have somebody taking the torch of this wonderful code. I would like to add usb joystick support, any ideas?.[more...]