Forum > Tornado
Modding Tornado
Frankie:
After much trial and error, I've decided on this design for the Credits screen of Tornado. Here are the improvements over the previous post's design:
(1) The title is short and straight to the point;
(2) I used a mixture of UPPERCASE for the names and lowercase for the responsibility for better readability;
(3) I raised the text so that the title does not get cut off in the F2 (Satellite) View;
(4) I added a fitting tribute to DKM in the footer;
(5) I feel that this version is more aesthetic compared to the earlier prototype Credit screens.
Happy Christmas Eve, 2017
Frankie Kam
Malaysia
Frankie:
26. Boxing Day Community Names screen with the F12 key
Mod: Boxing Day Community Names mod
By Frankie
Description: I added a Community Names screen to thank all the gamers who contributed in one way, big or small, or another to the development of these Tornado mods that you now see. This was no easy task as I had to manually remove the legacy video modes code from /LIB8086/COM_DRVR.ASM. I mean the Hercules, CGA, EGA and V16 colour modes. Does anyone still play Tornado in or CGA or in EGA? I think not. So I succeeded in freeing up more variable space and this allowed me to mod the /VISUAL/VISDEBUG.ASM file so that I can add a procedure that, when called by the F12 function key, displays the names of the Tornado Community. The amount of memory used to get this is dangerously close to exceeding the 48Kb limit of the data segment.
Names of the faithful few still waiting for Tornado2. Or not. See a familiar name or two?
Many thanks to the Tornado Community who contributed in any and many ways. To get this screen, first hit H key in Pilot Panel view (Home) to get the HUD colour that you want. Then hit F2 key to go to Satellite view - or any external view like F3, F4 or F5. Then hit the F12 key to bring up the names. If you name is not here, and you feel that I have left you out by mistake, chances are I have left you out and I apologise in advance for the ommission. Email me and I will see if I can fit your name in here! It will be an extermely tight fit as conventional memory for the data segment is limited!(edited)
The F11 key still brings out the Development Team's names and credits. This screen's contents are pretty much the same as the Christmas 2017 version.
The Digital Integration Team that created a classic in flight simulation
I am attaching the latest FLIGHT.EXE with the Community names (F12 key) with this post. This executable has been tested in the DI Tornado simulation and it works. Just make sure you rename your original Europe FLIGHT.EXE file before copying this file inside the /TORNADO/FLIGHT folder.
As the year draws to a close, I would like to say that by adding this mod, I have almost reached the limit of variables space afforded to me by the 16-bit ASM and conventional memory programming. This may jeopardise any future enhancements to the game where the enhancement requires new variables to be declared. Unless of course I poke around and find more ways of freeing up obsolete variables. Thank God for the Hercules, CGA, EGA and VGA16 code. Without them I would not be able to free up memory as other code would be core code.
Anyway, I am pleased with the modding efforts from August 2017 to December 2017. In total 26 mods, in varying degrees of difficulty and usefulness, have been done. This is quite an achievement if I must say so myself as I only compiled my first assembly language code, to create a modded FLIGHT.EXE file, in August 2017.
Many thanks once again to Asid and the DOWVU community. Many of whom no doubt had a peek at my posts and probably wondered "what is all the fuss about this old graphics flight simulator?". I owe an arm and a leg to Kevin Bezant, the programmer who wrote 99% of the FLIGHT.EXE code back in the 1990s at Digital Integration. In spite of his busy schedule and real-life, he gave me many pointers about the source code. His code spoke to me through the many well-written and descriptive codibg comments. His macros and procedures were written for future extensability and I am thankful for that. I am happy to bounce ideas off him and it has been a rewarding 5 months of modding Tornado.
With regards to the 25th Anniversary of Tornado in 2018, Tornado has indeed come to life ahead of schedule! It is not quite the Tornado2 that I had dreamed off, but still I was quite surprised by the number of improvements that the old code was capable of. If anyone is disappointed that Tornado2 with DirectX or graphical enhancements is not here, well all I have to say is, "Suck it up soldier!". Tornado2 is still a distant dream. Maybe DCS can fulfill that dream. In the meantime, I found plenty to modify and enhance in the original Tornado source code.
Tornado - a classic by any standard.
I enjoyed every moment modding this venerable game, and I hope that if you used to play Tornado in a time long forgotten, perhaps my mods would have motivated you to get into the saddle once again and to fire up the game. In the process I have learnt the value of perseverance and patience in poking through the 25 year old 16-bit assembly language code.
It has been quite a journey and I am eternally grateful to the friends I have made and for the God that gives me purpose and joy through his saving grace and love. And to my family for accepting that Daddy is on the keyboard trying to 'save the (Tornado) world' once again. When I do lay down my keyboard to pursue other pursuits and life's challenges, I hope that some young computer scientist or flight simulation geek will pick up the mantle and carry on with the modding journey.
Cheers
Frankie Kam
Boxing Day, 26th December 2017
Update on 27/12/2017. I removed the previous FLIGHT.EXE attachment. The previous executable had a serious bug in which the weapon's target marker went missing (became invisible). In its place is the latest FLIGHT.EXE (see below) as of 27/12/2017 morning. I have tested it and so far seems to work fine.
Frankie:
NOSTALGIA ALERT! Do not read this post any further if extreme nostalgia causes these symptoms in you:
1. fits
2. sighing
3. tears running down your cheek
4. heartache caused by longing for the good ole' days when life was simpler and a lot more slower
THAT'S IT, MISTER. YOU HAVE BEEN WARNED!
About two weeks ago I had asked Speedwagon if he could test out the latest FLIGHT.EXE on his old PC. I was curious to know if the new modded FLIGHT.EXE would run on a 1990s computer hardware. Turns out that Speedwagon has an old IBM PS/1 computer that he stil uses now and then to fire up Tornado. This is very rare. Just in case anyone doesn't know what a PS/1 is, here's what it looks like.
The PS/1 "is a brand for a line of personal computers that marked IBM's return to the home market in 1990,
five years after the IBM PCjr. It was replaced by the IBM Aptiva in September 1994". Source: https://i.ytimg.com/vi/bttYIH1SdmY/hqdefault.jpg
Speedwagon replaced the FLIGHT.EXE on his PS/1's Tornado installation folder with the Boxing Day 2017 version of FLIGHT.EXE. He fired up Tornado and the result is nothing short of amazing.
The new Credits screen in Tornado. Why are the colors on an original IBM PS/1 (see that logo?)
monitor so vibrant, crisp and clear?
Firstly Tornado didn't crash the PS/1's memory. Secondly. the latest-modded FLIGHT.EXE runs smoothly on a 1990 PC without any notiacable lag or stutter. If there is any reduced frame-rate, it is not felt or noticed. I was also concerned that the full-screen FLIR view, which is the second HUD object created, would impact an older computer's performance. But no. The 24+ year old PS/1 ran the modded Tornado as easily as the out-of-the-box Tornado.
The PS/1 breezed through the full-screen FLIR display with secondary displays/TV-Tabs/MFD in place.
Tornado's assembly language code is running so fast that it appears to be multitasking. Astounding!
A second HUD object means that additional conventional memory is being used to model the full-screen FLIR with working HUD. In fact, two HUDs are loaded and running simultaneously in the computer's memory. The Pilot's default HUD which occupies 320x160 pixels and the full-screen HUD which occupies 320x192 pixels.
The Night Vision Infrared (phlorescent green!?) full-screen FLIR view running on the PS/1. A machine as old as Tornado itself!
Speedwagon also discovered that I had actually created a Tornado Easter Egg.
Switching to the Navigator's side view after hitting the F11 key. The tribute line appears alone.
"Wow...while watching an airport pass by using the "Glance Right" cockpit view I pressed F11 to view the team credits.
When I let go of the key all the names disappeared except for...[David Keith Marshall]" (Speedwagon). It seems that I had created a "very fortuitous Tornado easter-egg. The DKM tribute only seems to happen in the cockpit side views." (Speedwagon).
How Tornado was started up on Speedwagon's old PS/1 - using a good old fashioned 1.44Mb boot diskette! Remember these?
There was a time when 640Kb of RAM was a lot of memory. Where have those days gone?
The smooth running of the modded Tornado is testament to its well-written, and tightly compiled and linked 16-bit real mode assembly language. Not only did Digital Integration manage to cram so much gameplay and functionality into 640Kb of RAM, the code also accommodated the latest mod changes of 2017. Tornado ran these mods and additional functionality without crashing and without any noticiable performance degradation. Kudos and credit to Kevin J. Bezant, the orginal programmer of Tornado's 3D engine, and to the Tornado development team of 1993.
In conclusion, the test-drive of the modded Tornado, on a machine as old as Tornado, was a resounding success! Many thanks to Speedwagon for taking the time and effort to test drive the Boxing Day 2017 version of Tornado. Perhaps what is even more amazing is that his PS/1 is still cranking out those machine cycles, and its monitor is as brilliant as the day Speedwagon bought it, which was in 1994.
Cheers
Frankie Kam
Photograph credits: all images were taken by Speedwagon except for the first image.
Frankie:
27. Tornado cockpit shakes when the plane is damaged or in distress
Mod: Cockpit shakes as per damage inflicted on the Tornado
By Frankie
Description: COCKPIT SHAKING OF TORNADO PROPORTIONATE TO DEGREE OF DAMAGE TO THE TORNADO!
I thought that it was odd that in Tornado, you could have the plane avionics shot up and the only indications of the damage was the Central Warning Panel (CWP) lighting up like a christmas tree with red and orange flashing lights. What about the plane itself? Could the simulation not simulate a plane in distress with a shaky cockpit environment? What about if one engine were damaged and the Tornado were flying on only one engine? Would it be possible for the Pilot and WSO cockpit in Tornado to be depicted with some degree of jerkiness or shuddering or shakiness? Not to much as that would induce headaches and frustration to the gamer. Perhaps more than a subtle degree of jerkiness or shaking if, let's say, the flaps, sweep or gear were to be damaged.
Well, I have done it! Using an algorithm (see below) which is just my guess of correlating the damage to the Tornado to the resulting horizontal and vertical jerkiness of the cockpits:
In the screenshot above, I am playing the "QuickStart - IDS Hard" quickstart game.
And I am getting shot to pieces.
Thanks to the algorithm below, my Tornado is vibrating - as it rightly should (I think) since the AAA is making mincemeat out me. Tracer rounds are flying towards my Tonka and I am getting shot up petty bad.
Don't cha just love assembly language. It is a thing of frustration and beauty both at once.
Above and below is the logic algorithm to determine how shaky my Tornado' Pilot and Navigator cockpits will be if and when a component is damaged/shot. Just my guestimate how high or low the jerkiness will be.
More assembly language rules on degree of horizontal and vertical shakiness when a component is damaged
A little heads up on the code. SHAKE SHAKE_NOSE_DOWN,HSHAKE_OFF,VSHAKE_LO,65535 is a macro named SHAKE that receives 4 parameters. Without being too technical, this specific code means induce no horizontal shaking (OFF) and light vertical shaking of the cockpit. The value 65535 is supposed to be some time value but I am unsure what it does.
Animated GIF shows you the vibration effect.
Aw rats! My flaps configuration are beyond the maximum allowable speed.
I have attached the latest FLIGHT.EXE file in this post. Download and rename to FLIGHT.EXE. Give it a try. You can start by flying the simulator mission where one of your engines has been damaged. Are your flaps damaged? Swing wing stuck? MFD and TV-Tabs shot out? Your Tornado will respond accordingly! You will see the difference immediately.
Give this simulated situation in Tornado a try. You will feel the difference at once!
I hope this version of Tornado will enhance your Tornado experience by making the game more 'realistic' in terms of physics modelling. In this case the physics is related to the damage of the plane and how I think the plane will handle in such cases.
Enjoy!
Frankie Kam
Malaysia
Frankie:
28. SAM proximity warning
Mod: SAM proximity warning goes off when a SAM is locked onto your Tornado and is seconds away from turning your jet into a burning heap of scrap metal.
By Frankie
Description: I have figured out the exact position to add in the SAM proximity warning sound alert/alarm! I have tested it and I am 100% sure it works. This warning sound effect activates when an enemy missile is locked onto your Tornado and is closing in. This hack is NOW ready. BOY, is it a much-needed hack for the Tornado source code! For some unknown reason, the original source code is missing the SAM proximity warning alert sound". That sound effect that was present in Digital Integration's Tornado since Version 1.0b.
The procedure MorseDashSound is called at the right place in WEAPONS.ASM.
I declared the procedure with the code "EXTRN MorseDashSound:FAR" inside this ASM file.
I just need to get the Morse Dash sound effect to replicate as close as possible to the original proximity sound effect. Not easy to do since the SAM proximity alarm code is specific to Tornado version 1.0b. So here's the summary:
(1) I have the exact spot where the code to sound the alert should be placed in - yea!!!
(2) Me using the Morse Dash sound effect is a poor, but for now the one and only substitute for the Tornado 1.0b SAM proximity alert sound effect - boo!!
But I am not complaining as having this SAM alert sound, is a hundred times better than having NO alert sound at all. It gives the gamer a fighting chance to avoid being hit by the SAM by punching flares or chaff at the right time.
Here's what my substitute SAM proximity warning sounds like:
My "poor cousin of the SAM proximity warning sound effect" can be heard.
See the 20-21, 31-32 48-53 and the 55-58 second mark.
In contrast, BELOW is the "real deal" SAM proximity warning sound effect from the original Tornado 1.0e.
The ORIGINAL SAM proximity warning sound effect.
See the 15, 25-29, 50-54 and the 57-61 second mark.
The original warning sound is richer, deeper and has a more sense of urgency and impending doom, as compared the Morse Dot Code sound effect that I used as a substitute in the Tornado source code. Still, beggars can't be choosers. So until and unless I find the actual code that replicates the exact same sound effect of the SAM proximity warning sound effect, this is the best I can do.
Above: An every virtual pilot's nightmare. A SAM is launched. That's the gray speck rising up in the sky - against your Tornado.
Too bad Tornado doesn't model the SAM's smoke trail as in Domark's SVGA Harrier. Limited memory resources.
Attached to this post is the FLIGHT.EXE with my substitute SAM proximity sound effect. Lines 83 and 4729 of WEAPONS.ASM contain the code that the uses the "MorseDashSound" procedure. The main thing is ... this mod WORKS and GIVES you a FIGHTING CHANCE to avoid becoming SAM-fodder. For the geek flight simmers, I also attach the WEAPONS.ASM source code file.
Enjoy and survive your next Tornado mission.
Regards
Frankie Kam, 30th December 2017.
2017 is about to become toast.
For more information on Tornado, see http://www.tornado2.com and http://www.moodurian.com/tornado/home.html
Navigation
[0] Message Index
[#] Next page
[*] Previous page