Calling all code developers!
The Railway Operation Simulator is an open-source project which means that there is public access to the source code.
Railway program development up to August 2017 has used the Borland C++ Builder 4 compiler, released in 1999 and incredibly still working. Borland was taken over by Embarcadero Technologies in 2008, and they continued developing the product, the latest version being 10.2 released in March 2017. I downloaded the new compiler some time ago and updated the original source files so that they compile with the new version. It took a while because as you can imagine there have been many changes between 1999 and 2017. The main difference is that the new compiler relies on Unicode, which is a text coding system that can code any character in any language. There were quite a few changes needed in the original files to ensure compatibility, but I was very pleased that there weren’t more. Embarcadero have done a very good job of allowing for backward compatibility. I feared that the later version would be so different that the original files would need to be largely rewritten, but happily that wasn’t the case.
The first program version using this compiler was v2.0.0 Beta, Beta because although a lot of testing was done I feared there would be some remaining errors because of the new compiler but happily that hasn’t been the case. One thing to be aware of though is that the program is (and always has been) based on images that are restricted to 256 colours, so depending on the operating system in use the display might not appear correct. In this case right click on the program icon, select Properties then Compatibility, and tick the box for 256 colours.
The latest source files are available at https://github.com/AlbertBall/railway-dot-exe/
for read-only access. ‘DeveloperGuide.pdf’ in the ‘master’ folder provides a summary of program history, structure, operation and interfaces, and also explains the file structure.
Anyone wishing to contribute to further development should create a GitHub account then contact me via this website with evidence of proficiency and I’ll provide write access to the files. Version control is provided by ‘Git’, so anyone wishing to contribute needs to be familiar with this system – plenty of information is available on the web and it’s not difficult to learn the basics.