Please enable JavaScript to display the menu.

Please enable JavaScript to display links.

YS FLIGHT SIMULATOR Version 20181124

Not all programs in YSFLIGHT.COM are open source.  But, you can download some of the source code from the following URL.

In Progress:




Total Solar Eclipse!

Sometime last year, I heard about the solar eclipse across the United States. If I drive about 2 hours to the north from Pittsburgh, total solar eclipse must be visible from Erie. I could drive, but flying is easier. When I was renting an airplane from a flight school, I could not reserve an airplane until it gets close. But, now I am flying from Beaver Valley Flying Club. The club allows me to reserve as far ahead as I want. I've just made a reservation almost as soon as I knew about the eclipse.

I wanted to take my wife with me, but my wife was not interested then. Instead, two friends wanted to go with me.

The plan was to leave Pittsburgh at 10am and drive to the airport. We should be at the airport by 11am. Then, we should be at Erie by noon. We had plenty of time before the eclipse.

[Read More]

By the way, below is an image of the solar eclipse taken by QV-10, the world first consumer digital camera sold by Casio.


FM TOWNS/Marty Emulator Tsugaru can run Linux!

OK. I don't mean Tsugaru can now run on Linux. It has long been running on Linux. This time, Linux+JE4 1995-12 runs on Tsugaru VM. This Linux is old. The kernel version is 1.3.30. I haven't tried to install on a hard-disk image, but Tsugaru can boot Linux from CD, start X-Window and FVWM. If you start X in the high-resolution mode, mouse integration works as well. The mouse cursor jumps if you try to resize the window, but other than that, it looks to be working ok.

I thought Linux should start with no issue because Tsugaru was already good enough to run Windows 95. But, first I encountered a strange polling loop. The CD-ROM driver was polling a timer I/O without masking IRQ. The timer-up flag is supposed to be cleared in the interrupt handler. So, unless the IRQ is masked, the polling loop is not supposed to see the timer-up flag. However, when I experimented the same condition on real FM TOWNS II MX, the polling loop worked, and the IRQ was coming in while polling. WTF!? I cannot tell what's going on inside TOWNS. But, the observation tells that there is a lag after the timer is up before the interrupt-handler is invoked. I came up with a small change to support this lag. This part passed.

Then, this version Linux was using hardware task switching, which Windows 95 nor Windows 3.1 was using. Intel 80386 CPU can switch task by a CPU instruction. However, the switching seems to be doing too much work. Programmers figured switching tasks all by software was more efficient. So, pretty much nobody used this feature. 64-bit AMD CPU even deleted this feature. Only very early version Linux was said to be using it. Many sources told so. So, I was hoping I won't have to support this feature, but this version Linux turned out to be the very early version. Just switching tasks was not a big deal, but 80386 had a concept of nested tasks, which I still does not fully understand the concept. I thought it would be virtually impossible if Linux was using this nested tasks, but all I needed was a simple task switching. Linux started working!

The below is the screenshot of Linux+JE4 1995-12.


FM TOWNS/Marty Emulator Tsugaru can run Windows 95!

Big progress in the FM TOWNS/Marty Emulator Tsugaru! Finally! Finally it supports Windows 95! No, I'm not saying Tsugaru can run on Windows 95. Windows 95 can install and run inside Tsugaru VM.

The goal of Tsugaru was to fully emulate FM TOWNS II MX. FM TOWNS II MX was the best personal computer that has ever been sold and the last computer that I pledged loyalty to. If I want to say Tsugaru fully emulate FM TOWNS II MX, it needs to run not only FM TOWNS OS, but also FM OASYS, Windows 3.1, Windows 95, and Linux. Nonetheless, there were already DOS emulators that could run Windows and Linux. The main point of emulating TOWNS was to run FM TOWNS OS. That was my primary goal. So, I was thinking even DOS6 support was not necessary. But, once I released Tsugaru, I had passionate requests for DOS6 support. So, I did. When I was able to support DOS6 and EMM386, I got a little ambitious. I thought Windows 3.1 support was within reach. It was a difficult journey, but I nailed it. Then, if I could run Windows 3.1, why not Windows 95? But, Windows 95 support was even more difficult and was not making any progress for a while.

I did have a similar problem when I was an undergrad student. I moved from a rural city of Hirosaki to equally rural southern Fujisawa city. In the first year, I thought an air conditioner was unnecessary and did not buy one. But, I suffered many hot nights during the summer. I thought to get an A/C in the second year. But, I thought again. If I bought an A/C, then what was the point of my suffering in the first year? I did not buy an A/C and saved money. But, I had more difficult nights during the second year. I thought I had enough. I should get an A/C next year. That's what I thought. But, then I thought again. If I bought an A/C, then what was the point of my suffring in the first and the second year? I did not buy one. I ended up repeating for seven years. A very similar experience to DOS6 and Windows 3.1 support. (Ahhh, isn't it?)

(Read More)


The JAL-Coast Gurad plane collision at Tokyo Haneda is very personal because I was at the airport at the time of the accident, although I did not witness the exact moment in person. As a general-aviation pilot in the U.S., it is very ironic. FAA has been working hard to prevent this type of accident known as a runway-incursion accident. This accident was like what FAA has long been worried about ended up happening in Japan.

One of the newest developments is that the air-traffic controller at Haneda tower told to the investigators that he was not looking at the runway-entrance warning. The Haneda airport is the busiest and most-advanced airport in Japan, and had a warning system that tells if an aircraft is on the runway to the ATC. What we do not know was if he was not watching the warning at the time of the collision, or he had not been watching it at all.

Since the ATC was not watching the warning, the authority is considering to add audio warning to the system. The news article had a remarkable mention about how the system was working. This article tells that although the authority is considering to add audio warning, they are concerned that frequent warning sound may distract the ATCs. It implied that the system was giving warning frequently.

Before this article, my question was how smart the warning system was. Did it distinguish an aircraft with clearance and without clearance and give warning only when an aircraft without clearance entered the runway? Or, did the system not distinguish aircraft and give warning every time an aircraft entered the runway either for take off or landing. From the above news article, the system was not smart. Probably it was blinking every time an aircraft landed or entered the runway for take off.

The warning system is meaningful if the system gives warning only when the danger is really imminent. If the system was giving warning for normal take offs and landings, the ATC should have been used to the warning. The warning could have been too normal for them. If so, adding audio warning would do nothing useful. If I use my imagination, if I were an ATC there, I would be giving a quick glance before giving a clearance for take off or to land, but probably quickly move my eyes away from the warning panel.

If the authority wants to make a meaningful change to the warning system, the system should turn red only when the collision is imminent. Maybe turn yellow if an airplane is on the runway but the collision is not imminent. To distinguish the situation, the system needs to know if an airplane is coming close to the runway for landing. Such an information could be supplied by ADS-B, which is already mandate in the U.S. Japan should do the same. ADS-B broadcasts the GPS location of the aircraft. Not just ATC, but other aircraft can know the locations of other aircraft with small latency. If the runway-incursion warning system knows airplanes coming close to the runway for landing, it can tell if the collision is imminent.

Plus, the warning system can even send an automated radio message using a synthesized voice to tell the pilot on the approaching airplane to go around. In the air, Traffic Alert and Collision Avoidance system (TCAS) has been used, and has saved countless airplanes. The runway-incursion warning system should be able to do something similar.

Another thing I was concerned about was if there was an organization like FAAST team in Japan. But, there doesn't seem to be. This news article told that the Ministry of Land, Infrastructure, Transport and Tourism, once formed a project team to prevent runway incursion earlier. But, the team was disbanded in 2009. Also the participation was not per pilot, but per organization. If there were an organization like the FAAST team, it should have taken on the responsibility to prevent (or make less likely) runway-incursion incident/accident. Most likely Japanese counterpart of the FAAST team does not exist.

FAAST team is one branch of FAA, and the goal is to promote aviation safety. FAAST team is running a safety program called the Wings program. I'm doing it, too. If I am participating, FAA will consider if I end up making a mistake or inadvertently violating a regulation. So the idea is to distinguish if the pilot was safety conscious, but really unfortunately made a mistake, or the pilot made an error that was waiting to happen. It is a good incentive to the pilots.

I have heard the same thing in the safety seminars for Wings credits, like NEVER EVER enter the runway before hearing "Cleared for take off" or "Line up and wait". NEVER use "Take in position and hold" any more. If you hear "hold", DO NOT enter the runway. Hearing the same thing over and over again is important. Once you get a pilot license and start flying by yourself, no instructor is sitting beside you to remind those things over and over again. Then you start forgetting things that you usually do not use. It is very useful to hear the same thing repeatedly in the safety seminars.

This Tokyo Haneda accident was a textbook case of runway incursion that FAA has been trying hard to prevent. I think Japan should start its own FAAST team. Probably nobody is reading my article though :-P Forming a project team upon accident and disbanding it once people forget about won't do any good. Safety is a continuous and never-ending process. Writing up a report and put it in a bookshelf that nobody will look at will not improve safety.

Another development is Japan Airlines is considering to preserve the remains of the Airbus 350 mostly burnt in the accident. That is a very good move. I don't call the remains a junk. This Airbus 350 had accomplished the most important mission of the aircraft, protecting the lives of the crews and passengers. The wings will not carry people to the air any more, but the next early morning, from the observation deck of Terminal 2, the wings were proudly resting beside the runway. If I ever has a chance to see the remains, I would commend the accomplishment.


The published transcript of the JAL=Coast Guard collision case sounded a little bit strange. At 17:45:11, Haneda Tower told the Coast Guard plane "taxi to holding point C5". I haven't been able to confirm this "holding point" is clearly defined for the Haneda airport. I would rather expect "taxi 34R at C5" or "taxi 34R at C5, hold short of the runway". Unless this "holding point" is defined somewhere, I would feel "what's holding point?" if told. However, Delta airlines flight 276 proceeded to the runway and held short, so maybe it is normal at that airport. (Turned out "holding point XX" is going to be the new standard. Probably it will come to the U.S. soon. Just like "line up and wait" was adapted late in the U.S. But, "holding point" includes "po" sound, doesn't it confuse older way of saying "position and hold"?)

Regardless, no airplane should enter the runway for take off unless told "cleared for takeoff" or "line up and wait". Since the ATC did not tell so to the Coast Guard airplane, no ATC error is observed at least in the portion of the published transcript.

Even if the pilot is given "cleared for take off", we are trained to visually check anything on final, anyone is taking off from the other direction, if the previously-landed airplane is on the runway, no deer, coyote, fox is on the runway, over and over and over again. When I take off,

"Cleared for take off." (read back)
"Nothing on final." (nothing is landing)
"Runway is clear." (no coyote on the runway)

then enter the runway. However, in this accident, the Coast Guard airplane apparently entered the runway from a high-speed taxiway, which is not perpendicular to the runway. The purpose of such taxiway is to let the landing airplane get out of the runway before slowing down enough to turn 90 degree. In this case, the Coast Guard airplane ended up entering from such a taxiway. The pilot had to look very much to the rear-right to see traffics on final. Worse, the Bombardiar DHC-8 had a high-wing. The main wing probably was fully blocking the landing lights of the airplanes on final. Letting it take off from C-5 probably connected the final chain leading to the accident. If the airplane was given taxiway C1, C2, or C3B, which were perpendicular to the runway, the co-pilot should have a very good view of the final. It was inappropriate to let a high-wing airplane taking off from taxiway C5. Again, it was not an error unless it was banned by the rule. The rule should be added. I expect the Japanese Transportation Safety Board would make this recommendation at the end of the investigation.

Also the Coast Guard flight was the second of the day. So, crew fatigue would be for sure another focus. If the earlier flight also took off from runway 34R intersection C5, the pilot could have mixed up a clearance given in the first flight during the second flight. Such a mistake is unlikely, but can happen especially crews are very tired.


What a disastrous start of the year for Japan! First Noto Earthquake on the New Year's day. Actually I was visiting a friend near the hardest-hit area a few days before. Then, Japan Airlines flight 516, Airbus 350 collided with the Coast Guard plane Bombardier DHC-8 at Tokyo Haneda airport. I happened to be at the Haneda Airport when the accident took place.

I was visiting friends and family during the winter break. My wife went to her hometown in Kyushu, southern Japan, and I was in the Tsugaru region, northern Japan. Then, we were to get together at Haneda airport on January 2 to fly back to Pittsburgh together. My wife was riding ANA flight 260, which landed runway 34L. Then she texted me that the airplane stopped moving, and the captain announced that a Japan Airlines airplane had a trouble on runway 34R.

Overrun? Veered off the runway? Flat tire? I tried to see the airplane on Flight Radar 24, but I did not see Japan Airlines airplane on runway 34R. If the airplane was still on the runway, the avionics should be still kept ON, and the plane should be visible on Flight Radar 24. But, it was not visible, which implied that the airplane lost the power. Then there was a report that something was burning on the runway. I had a real bad feeling about that.

I was heading for Terminal 2 to pick up my wife. I just climbed up to the observation deck. I saw a flame south side of the runway. But, the flame was too small to be from a large airliner. Was a small airplane failed to land? Did the JAL airplane make a hard landing and dropped an engine? Then three boys with tele-photo lens rushed to the observation deck. They were saying a coast guard airplane collided with a Japan Airlines plane on the runway. They were aiming their camera to the north side of the runway. I looked to that direction, and saw another flame where dark black smoke was billowing from. They showed me their picture taken by a tele-photo with high ISO. "JAPAN AIR" was clearly visible. The scale of the accident was massive. I expected mass casualty.

It was not my first time to see a burning airplane. I saw an accident twice in Dayton airshow. One of them was right in front of me. But, it was my first time to see a large airliner engulfed by the flame. It was so surreal.

This time I was there just to pick up my wife, so I left my camera with tele-photo at the airport hotel. Well, adding a picture from my camera might not contribute too much for the accident investigation, but I regretted I didn't carry my OM-D. Airplane fan should never leave a camera at the airport. Nonetheless, this accident was recorded by so many cameras. From the accident investigation and prevention point of view, more images are better.

After watching a while, the flame from the JAL plane was invisible. Maybe the fire crew was able to extinguish it. I left the observation deck to the arrival floor. Then I saw a TV news showing the airplane shooting the flames almost completely covering the passenger cabin. Looks like the fire was not fully extinguished. It was a shocking image. How many casualties?

How much time did they have to evacuate? I hoped at least half the passengers got out alive. Then, the news broke all 379 passengers and crews of the JAL plane evacuated with no life-threatening injury. What!? The training level of the JAL crew was unbelievably high. They should be praised. Their reaction was perfect. Or, the word PERFECT should be reserved for the JAL flight 516 crews. It was not an accident that the crews had time to prepare. Everyone onboard should have been thinking it was a normal landing, and was going to get to the gate in a short time until the last minute. The crew had to jump into action with seconds notice, still they were able to save all passengers and themselves. I cannot find a better word than PERFECT to describe the work of the JAL crew tonight. That was a good news. However, five out of six crews onboard the Coast Guard plane were not that lucky. Only the captain survived the crash.

This accident was a textbook case of runway incursion. In the U.S., due to the explosive growth of air travel after COVID, we have many near-collision incidents. FAA has been trying hard to prevent it from growing into a catastrophic failure. But, I never expected it to happen in Japan by well-trained Coast Guard crews.

At that point, we did not know if the Coast Guard plane entered the runway by mistake, Air Traffic Controller made a mistake and cleared the Coast Guard airplane for take off even though the JAL plane was on short final, or if the JAL airplane landed without clearance or landed on a wrong runway. The JAL plane could have veered off the runway and hit the Coast Guard plane on a taxiway, but as far as I saw from the observation deck, the JAL plane was burning on the runway. It implied that it did not veer off the runway because it is unlikely that an airplane veered off the runway somehow comes back to the runway again.

Also it was less likely that the JAL plane landed on a wrong runway, although such an incident happened in the past. It was also unlikely that the JAL airplane did not have a landing clearance when it was on the short final. Most likely the error seemed to be of the ATC or the Coast Guard plane.。

Then, the morning news on the next day reported that ATC did not give a take-off clearance to the Coast Guard plane. It apparently was the error by the Coast Guard pilot. The focus of the accident investigation will probably be why the crews entered the runway without a take-off clearance. The airplane accident does not happen for just one reason. The accident investigation won't be done until it reveals the chain of events leading to the accident, and come up with recommendations for preventing the next accident.

One very strange thing was why the JAL crews could not see the Coast Guard plane on the runway despite the visibility was very good. Why they did not see the anti-collision lights of the Coast Guard airplane? Was the anti-collision lights ON? Probably this will be also a focus of the investigation. I used to be thinking once I am cleared to land, no airplane should be on the runway. But, when I flew with a retired ATC, he always said "Runway is clear" before landing. I thought that was a good practice. Since then, I look at the runway, and positively make sure nothing on the runway on short final, and verbally say "Runway is clear." I, just an 850-hour pilot, is doing it. Professional airline pilots should be doing so, too. Then, why did they not see an airplane on the runway?

At what angle the JAL plane hit the Coast Guard plane? Was the Coast Guard plane just entering the runway? If so, the nose of the JAL airplane should have sliced the cockpit of the Coast Guard plane. Nobody had a chance of survival. But, the captain survived. Then, was it aligned with the runway? If so, the JAL plane should have rear ended the Coast Guard plane. The fuselage of the Coast Guard plane worked as a cushion, at least saved one person. The news image was showing a collision damage on the left-engine cowling. Probably the wing of Bombardiar DHC-8, the Coast Guard plane, hit the engine cowling. So I thought, but the airport diagram tells that the taxiway C5 was not perpendicular to runway 34R, rather smoothly leading to the runway. So, it is most likely the Coast Guard plane was hit from the behind, not from the side.

Actually I noticed that Tokyo Haneda airport was calling officially or unofficially runway 16L-34R as C runway. It was bizzare and dangerous. The coast guard airplane was told to taxi to "holding position at C5". C5 is obviously the taxiway. But, if they were calling runway 34R as C runway, the pilot could have taken it as lineup and wait on runway C at C5. Also I havent confirmed, but the ATC was trying to give a priority to the Coast Guard airplane, which was carrying supplies for the earthquake victims. Although no airplane should enter the runway until given a positive clearance to do so, knowing that they were given a priority, the pilot may have mis-interpreted ATC direction as they are cleared for take off or line up and wait. But, calling 34R as C runway could have amplified the mistake. The accident investigators eventually will issue recommendations, but I suppose one of them would be stop calling A runway, B runway, C runway, or D runway. Actually this calling convention was evil and non-professional. The accident was waiting to happen. Also since already many pilots are used to this calling convention, taxiways like C1, C2, C3,... should be renamed to letters nothing to do with A,B,C, and D.

Crew fatigue would also be a focus. If it were not for the earthquake, the crews should have been off for the New Year's day break. But, maybe the crews were called by surprise because the earthquake hit on the New Year's day. Also it was one of the busiest day of Tokyo Haneda airport for accepting passengers returning to Tokyo from their home town after the break. Was it appropriate to choose to take off in the evening for delivering supplies to the earthquake victims? The Coast Guard crews were on high pressure to fly their mission. That mentality caused accidents over and over and over again in history. Actually if it were not for the earthquake, this flight never existed. The earthquake was one of the chains leading to the accident. Again, prevention is the goal of the investigation, the investigators may conclude that it was inappropriate to fly a quake-relief flight from the busiest airport at the busiest time, no matter how pressing the mission was.

My flight back to the U.S. departed 10:50AM with about 30 minutes delay. I had to take a bus to the parking area to board the airplane, instead of boarding through a bridge. The airlines were trying to resolve stranded passengers due to the airport closure last night. Some airplanes diverted to Narita, in which case the airline may not have an airplane at Haneda. Passengers may have had to take a shuttle bus to Narita. I went to the Terminal 2 Observation Deck to take a picture of the sunrise. To the left was Japan Airlines Airbus 350, proudly resting in peace after successfully saved 279 lives. This Airbus 350 successfully fulfilled the most important mission, protecting crews and passengers. To the right was a Bombardier DHC-8. This guy should have been deeply sad failing to save five crew members. After flying an airplane for long time, we start feeling that airplanes have emotion. I know airplanes don't have emotion. But, we feel that way. Similarly, after programming almost 40 years, I start feeling computers have emotion. I know they don't. But, I just feel that way.

[LINK to 2023 POSTS]

Comments are welcome.  Send E-Mail to: 

Back to