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:

When you try to run a program downloaded from this web site, you may see a warning like "This program is not digitally signed."  Code signature was invented for improving the computer security.  However, it added a new (and evil) purpose now, which is to decimate individual developers like myself.  A code signature used to be unreasonably expensive.  But, now it is not just expensive.  No matter how much money you pay, a code signature is not issued to an individual programmer.  It is obviously an infringement of freedom of publishing a software.  But, I can do nothing about it.  My main job as a programmer is secure even if one day I cannot publish a software, but what a boring world would it be?


Above article is written in Japanese, though you may try automatic translation.  It is talking about Studio Ghibli's change of policy in usage of the pictures from their anime products.  Now you are allowed to use over 400 clips from famous Ghibli animes within common-sense usage.  That's a great decision, and I cannot agree more.  The current copyright law is designed for protecting the copyright-holders, but not the work.  It is not even protecting creators, it is protecting copyright holders.  Utterly wrong!  I, as a programmer, believe that once the work is released to the public, we should consider that the work has a life.  Regardless of what the creator thinks, games, dramas, movies, animes, books will be loved by someone.  Who created the work shouldn't be allowed to suddenly take away those beloved work from those who are loving it.

I first read about the copyright regulation when I released my first free software when I was a freshman in college.  I was stunned.  The law was excessively protective, and it lacked the idea of protecting the work.  And, it is still lacking.  Unless the copyright law is overhauled, it kills the culture.  In fact it is killing the culture.

U.S. copyright law, infamously known as DMCA, is infamous, but nonetheless it is way more progressive than Japanese counterpart because DMCA explicitly allows to crack copy-protection in order to preserve retro computer games.  DMCA recognizes that the computer games are great work of art, and retro games, not just those who programmed, must be protected and preserved.  I hope Japan will do the same.


Fujitsu FM TOWNS Rescue Boot Loader Project

Major achievement in FM TOWNS preservation!  Although this method only works for newer models (Probably TOWNS II CX and newer, I confirmed with an actual II HR, and II MX on Tsugaru), all you need to start a dead FM TOWNS is a SCSI-connected CD-ROM/CD-R drive, and a CD-R media! 


Fujitsu FM TOWNS Rescue Boot Loader Project

I think it's revolutional for the FM TOWNS preservation community.

1st and 2nd Generation Macintosh

My wife's friend called us and told she was clearing her garage, and found boxes labeled as "Collectable Macintosh".  She knew one of my hobbies is restore and preserve old computers.  So, she gave them to me.  Turned out those were very 1st and 2nd generation Macintosh.  The condition is not so good.  Especially the 1st genation one was poorly stored.  The case was covered with mouse droppings.  I wiped with alcohol, but I am worried that the floppy-disk drive is contaminated.  Anyway, I'm going to check capacitors minimum, and may replace if I find bad ones before seeing if it can power up.

Mouse and keyboard were missing.  However, there was a dead body of a biological mouse completely dry in the box of the 1st generation Macintosh.  It is unknown if the previous owner mistook the meaning of mouse and tried to connect this guy.



According to the UPMC press conference, the doctors found anti-body that neutralize Coronavirus, and are hoping to start human trial early next year.  It will be a therapy plus prevention.  Unlike a vaccine, if it works as advertised, it will help already-infected patients recover, while a vaccine is only for prevention and can only be given to those who are not yet infected.  The doctors also were hopeful that this treatment can be done outside of the hospital.  The implication is that the treatment will substantially reduce probability of overwhelming hospitals.

In the spring, I was wondering why the world was panicking for a virus that kills less than 1% of the patients.  The virus then invaded Europe and the U.S., which showed much higher fatality rate, and overwhelmed New York area hospitals.  The virus was much more evil than it was initially reported.  But, probably it is finally really calming down now.  I see much less news of hospitals overrun by COVID patients than a few months ago.  The death count is staying low while the confirmed cases is growing.  The UPMC doctors were saying in the previous press conference the growth of the new hospitalization is outpaced by the rate of patients released from the hospital.  As far as in Pittsburgh, the doctors look confident that the hospitals are prepared and won't be overwhelmed for the time being.

What was missing was an effective treatment that prevents hospitalization.  The doctors developed treatments that reduce death.  The numbers show the effectiveness.  But, people still get very sick and may get hospitalized.  That is the main reason why we cannot fully re-open.  We need a treatment that prevents severe symptoms.  If the new prospective treatment is effective in reducing severe cases and hospitalization, COVID will be done.  The virus won't go away, but it won't be a serious threat.

Herd immunity alone may not end the pandemic.  We don't have a treatment that can cure the COVID infection.  The virus may be getting less potent, but not confirmed.  On the other hand, let's say 5% to 10% of the population may already have infected (knowingly or unknowingly) and recovered and have some level of immunity.  Doctors found treatments that reduce death rate, and a potentially effective treatment that prevent severe symptoms is on the way.  Although it is not confirmed, the virus may be weakening.  And, many of us are wearing a mask and distancing and washing hands.  With the petit herd immunity, somewhat-effective treatment, not-so-obvious but potential weakening of the virus, plus distancing and mask-wearing, all combined, could bring back more normal life.

Maybe we will be wearing a mask for the next year or so, but I am hopeful that somewhat normal life will return not too far away in the future.


Successfully booted a then-dominant word processor called OASYS in my FM TOWNS Emulator "Tsugaru".  (* To be precise, OASYS was the dominant Japanese Word Processor developed and sold by Fujitsu.  The one in the following screenshot is FM-OASYS, which is FM TOWNS port of OASYS.)


Flying in the Pandemic

I have joined Beaver Valley Flying Club last year.  I was hoping to fly a lot from the club.

Then Coronavirus struck.  I took the state stay-at-home order seriously and ceased flying since March.

Pennsylvania governor made a right decision and ordered every Pennsylvanians to stay home.  Pennsylvania is one of few states that see declining number of COVID-19 cases.  Pittsburgh is exception though.  We are seeing a spike from reckless people flocking without wearing masks, irresponsibly breaking the distancing rule, and those who are wearing a mask but prominently exposing nose holes.  I never realized that so many people were proud of their nose holes before this pandemic.  What made me feel helpless was one of the pharmacist in the pharmacy next door is always showing off her nose holes.  She is a pharmacist who is supposed to have a college degree.  Isn't she supposed to know the right way to wear a mask?  I am hoping that the surge stops and cases start declining again, but nobody knows what's going to happen next.

My current understanding is that COVID is not too a serious threat to healthy people as long as the hospital system is not overwhelmed.  It is probablistic, therefore everyone, no matter how young and healthy, has non-zero chance of getting serious symptoms.  Healthy person has a less chance of getting a serious symptom does not mean healthy person never gets a serious symptom.  But, a healthy person has a very good chance of survival as long as the hospital system is functioning.  But, as soon as the hospital is overwhelmed, diagnostics get delayed, treatment may come too late, or you may be killed from a non-COVID related disease or injury that is not a big deal if a doctor can treat you.

The state guideline made sense to me, and I followed the state guideline and ceased flying since March.

Now, Pennsylvania is re-opening.  (Again Pittsburgh now is the only one county that is seeing the surge in the state though).  One of the advantages of flying from a club is I can go in, check out, fly, and return without seeing a dispatcher.  I should be able to fly with minimum risk of getting COVID.  I resumed minimum flying needed for maintaining the proficiency.

(Read more)



C++ Optimizer was not as smart as I thought.

My i486DX core used in Fujitsu FM TOWNS Emulator "Tsugaru" has been slow.  Actually, I'm not doing anything sophisticated.  I was expecting it to be slow, but was slower than I was expecting.  I think I figured why.

Just to prepare for Big-Endian CPUs, I was always writing when I need to get a 32-bit integer from a byte sequence like:

unsigned char ptr[4];

unsigned int x=(ptr[0]|(ptr[1]<<8)|(ptr[2]<<16)|(ptr[3]<<24));

I was expecting that the optimizer was smart enough to translate it as:

unsigned int x=*((unsigned int *)buf);

because it was extremely obvious.  However, just in case, I exported assembly code from Visual C++ in x64 Release mode, and this is what I got.

; 18 : x = buf[0] | (buf[1] << 8) | (buf[2] << 16) | (buf[3] << 24);

movzx eax, BYTE PTR buf$[rsp+2]
movzx edx, BYTE PTR buf$[rsp+3]

; 19 :
; 20 : std::cout << x;

mov rcx, QWORD PTR __imp_?cout@std@@3V?$basic_ostream@DU?$char_traits@D@std@@@1@A
shl edx, 8
or edx, eax
movzx eax, BYTE PTR buf$[rsp+1]
shl edx, 8
or edx, eax
movzx eax, BYTE PTR buf$[rsp]
shl edx, 8
or edx, eax
call QWORD PTR __imp_??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@I@Z

If you are familiar with assembly, you can immediately see that nothing was optimized.  For those who are not familiar with assembly, in short, nothing was optimized.

No wonder my i486DX core was running so slow.  Today I already had two glasses of wine.  I'm going to manually optimize tomorrow to see how much speed I can gain.

Now I am worried if my switch case statement for each instruction was optimized using a jump table.  If a jump table was not used, it should be awfully slow.


My father has passed away.  Not from the Coronavirus.  From the natural causes.  He was 91 years old. 

I could not be with him when he started a journey to the heaven.  I am stuck in Pittsburgh.  Pittsburgh is doing extremely well in controlling the Coronavirus.  However, what is the probability of catching the disease during the travel from Pittsburgh to Chicago, Chicago to Tokyo, and then Tokyo to Hirosaki, all in a fully-packed airplane?

I say the chance of being exposed to the virus is 100%.  Whether I get infected or not depends on how many virus particles could come in to my body.  To be conservative, let's say I have 10% chance of getting infected.  I know it is overestimating.  If 10% of airplane passengers are infected, every day 10% of international passengers arriving Japan will appear as the new infection count in Japan.  The number is not growing that rapidly.  It is a conservative estimate.  But, may not be too far away considering substantial number of people catch viruses and show little to no symptom at all before recovery.

At the very beginning, the death rate was reported as less than 1%.  Now we are seeing 5% to 8% death rate among confirmed patients.  If I assume 5% of the patients die from the Corona virus, my very rough estimate of the probability that I die from a round trip to Japan is 0.5%.  So tiny, isn't it?

But, if I force it out, I have a 10% chance of carrying viruses back home, in which case I have a very high probability of transmitting to my mother.  The death rate of the elderly population is known to be much higher than younger population.  If I make another rough guess and assume 30% of the elderly patients die from the virus, overall, I have a 3% chance of killing my mother by forcing this travel.

Do you do something if the action could kill your parent for 3% of the time?  I wouldn't.  3% is too high for me to justify the travel.

My father was a cadet of Japan Imperial Naval Academy, when Japan lost the war.  He was at Edajima, outside of Hiroshima.  He saw the flash and mushroom cloud of the first nuclear bombing in the human history.  He was far enough not to be affected.  His photo from his younger age is in the Imperial Naval Academy Memorial Museum in Edajima Japan.

He had a sharp eye in foreseeing the future.  When I asked him to buy a PC, he said the computer was going to be the way of the future, and got an 8-bit computer, Fujitsu FM-7 for me.  I was 11 years old then.  He also found a programming tutor for me.  His choice of the computer was miraculous.  I just wanted to play games.  But, Fujitsu FM-series computers were always second most popular following NEC PC-series computers.  Therefore not as many games were available for FM-series computers than PC-series computers.  I had to try to write games my own.  I ended up becoming a programmer.  My very first 8-bit computer has been repaired by the repair geniuses of the Carnegie Mellon Computer Club, and still in the working condition.

My father signed up Nifty-Server, which was a counterpart of CompuServe, when virtually nobody knew about the computer network.  It was a commercial service, therefore it was somewhat user friendly and there were fun features.  I learned how useful the e-mail was.  Then I came to the Faculty of Environmental Information at Keio University, which was going ahead of other universities.  While virtually no college students knew about e-mails back in 1991, my department assigned an e-mail address to every student and pretty much forced everyone to use.  However, back then Internet e-mail could only send texts, no attachment, no pictures, nothing else.  I was already used to Nifty-Serve, was sending binary files with no diffitulty.  I honestly felt that the academia was years behind Nifty-Serve.  I was half right and half wrong.  While many professors were thinking computer games, graphics, and music were not the noble cause of using a computer and acting as if computer games didn't exist, I also met with several professors who were (in 1991) foreseeing that one day computer would handle all the media, graphics, audio, video, 2D and 3D.  Now you all know who were right.

By the way, I was thinking to go to the local Hirosaki university and get a job local.  My grade was not that good to be accepted to Keio University, the best private university of Japan.  But, it was my father who found about the new department of Keio University accepting students who had a reasonably good grade and a special skill.  I had won the second place in Japan High School Students' Programming Contest when I was a junior year, which was good enough to push me into the department.  Well, if my father hadn't found about it, I would have been staying in Hirosaki.  YS FLIGHT SIMULATOR wouldn't have been developed.

I tend to dig into deeper when I find something interesting rather than finding something new one after another.  I couldn't inherit my father's eye to foresee the future trend.

I dumped pretty much everything on my mother for his funeral.  I have attended his very simplified version of funeral online.  I could do nothing from Pittsburgh.  But, due to the pandemic, we have decided to keep the funeral very simple this time, and get together again when this pandemic is over.

Yesterday, University of Pittsburgh Medical Center stated that the Coronavirus seems to be losing its potency in the press conference (  The doctor told potential reason could be, Coronavirus may be less likely transmit during summer, patients may be catching less viruses because of social distancing and face masks, doctors know better about how to treat symptoms from the virus, and the virus may have mutated to be less harmful.  While the last possibility is controversial, doctors are now watching out for more symptoms than just pneumonia, and more people are wearing a mask. Here in Allegheny county, the increase of death count is clearly getting slower than the growth of the patient count.  Let's keep up the hope.


FM Towns Emulator "Tsugaru" Project


Pittsburgh Partially Re-Opens

And, I am deeply concerned.  As far as I understand, this disease is not too much to be worried about AS LONG AS THE HOSPITAL SYSTEMS ARE NOT OVERWHELEMED.  Doctors are learning more about this disease and get experienced to make it less fatal.  But, when the doctors' hands are full, some patients will die untreated.

We did all this lock-down and stay-home not to overwhelm hospitals.  And, now people are coming out wearing a mask, which is good, but I see too many people wearing a mask not covering the nose.

If you are living in Pittsburgh, and if you are willing to reduce risk of overwhelming UPMC, AHN, and other hospitals, please learn the right way to wear a mask and cover your mouth AND NOSE!


What a month!  The world has changed.  I still understand that this Coronavirus is as dangerous as a common cold or a flu to the most of the people, as long as the medical system is functioning.  I initially was thinking that the solution would be strictly separating high-risk population and low-risk population, and driving the economy by the low-risk population.  Similar to the initial idea of British Prime Minister Jonhson.  But, if medical experts tells it is impossible, then it should be impossible.  I'm not a medical doctor after all.  At this point, what an individual can do is to do the best not to catch the virus, if not to delay catching it as long as possible.

One thing we have learned by now is that Coronavirus is different from a common cold in the virus's survivability.  It stays infectious for pretty long time on the surface of plastic and metal.  We were believing plastic-wrapped thing is hygienic, but it now may be working as a medium to spread the virus.  We clean whatever we buy before taking into the room.  I was worried about running out alcohol, but we were able to get some bleach over the weekend.  It should last at least for another two to three months minimum.

Although we are hearing bad news a lot, several medicines are being tested.  Since its fatality rate is so low, if the medicine is effective only 30% of the time or so, it would substantially reduce the burden of the medical system and make a massive difference.  This virus won't go away soon, but I believe we have a good chance that we can keep it under control in reasonably near future.

Also still we do not know actual fatality rate, which potentially is lower than what we are hearing now.  The fatality rate we are hearing now is the rate among those who were tested positive for the virus, not the rate among all infected population.  Recently a new symptom, loss of smell and taste, has been added.  Until then nobody suspected loss of taste or smell could be from the Coronavirus.  Probably hundreds of thousands of patients already had Coronavirus and recovered without even knowing they had it.  You can see it scary, but I see it as a hope.  If thousands of people already have immunity, we might see mysterious decline in the newly infected patients.

Let's keep up the hope and do what we can do. 


I think it is a significant development.  I don't know why major US news media doesn't report it.  I looked at other news but the effectiveness has been observed both in Japanese and Chinese clinical studies.  In fact, if it shorten or reduce the severity/fatality rate, it would substantially increase the hope to get through this pandemic.

The above link is Japanese national boradcast station NHK.

Of course, it warns about side-effect of birth-defects, but not an issue for elderly people.

Let's hope more treatments will be found quickly!


Carnegie Mellon University also will transition to all lectures to online-lecture next week.  I thought it was too much, but I changed my mind.  Online lecture can be a very smart way of battling this Coronavirus.  Online-lecture systems have been developed long time and ready to use off the self.  At this point, we need to find a way to live close-to-normal life while assuming that the viruses are around us.  The reason of the low fatality ratio in the developed country is thanks to the functioning medical system.  If we overwhelm the system, it's going to be worse.  Online-lecture can be a good way to live close-to-normal life while reducing the number of patients.

I was thinking it is impossible to stop spread of this virus in Japan anyway, but Japan is doing pretty good job at this point.

At this time the fatality rate in the U.S. is 3%, and in Italy scary 6%.  Experts point that in Italy light-symptom patients and non-patients stampeded to the hospitals and overwhelmed the medical system.  I hope the same thing won't happen in other regions in the world.

I am still optimistic.  As long as we don't overwhelm the medical system, developed countries should be able to keep the fatality rate very low.  0.5% in South Korea, from the last number I saw.  South Korea did a comprehensive tests (which might risk infections among the people come to the test center), so this number would be a good estimation.  I was expecting lower number though.  Maybe I was too optimistic.  Also my expectation that the virus will fade as the weather gets warmer might be too optimistic considering infections were reported in Australia, which is warm right now and has good medical system.  But, I at least expect the speed of spread in the northern hemisphere may slow down soon.... (Well then we need to be worried about southern hemisphere soon)

Already multiple vaccines are being tested.  It would take a few more months, but once we find an effective vaccine, we can start with high-risk population first, and that would substantially reduce the fatality.


I don't understand why we should be worried about Corona Virus more than common cold.

I have no idea what's the world is thinking about Corona Virus.  I thought the number coming out of communists should be interpreted by multiplying by 10, but probably the fatality rate could be taken as is.  From the beginning the it was indicating very low fatality rate.  As the new data coming from other more trustworthy countries, the fatality rate among the patients are staying less than 2%.  In developed countries, it seems to be even less than 1%.

Some news sources say majority of the patients even get no symptom.  In an interview in a TV news, a person was saying it's scary because he could be contracted without even knowing.  Seriously?  Where is the logic?  The data is just implying that this Corona Virus is spreading out-of-control, but it's harmless for the majority of the population.

I am not in a medical school, but from what I am hearing I can say at least:

Corona Virus is dangerous to elderly people and persons with background health condition.  It can be fatal to younger generation whose vital is weakened for some reason.  Unless otherwise, you have less than 2% risk of being killed by the virus.

Common Cold is dangerous to elderly people and persons with background health condition.  It can be fatal to younger generation whose vital is weakened for some reason.  Unless otherwise, you have very small risk of being killed by common cold.

In regions without sophisticated medical-care facilities, Corona Virus patients may have less chance of survival, and therefore may show higher fatality rate.

In regions without sophisticated medical-care facilities, Common Cold patients may have less chance of survival, and therefore may show higher fatality rate.

If you caught a sign of Corona-Virus symptoms, see a doctor if the symptom is severe.  If not, hydrate yourself, take nutrition, take good rest until you fully recover.  Forcing to do work would increase the severity, even may lead to death.

If you caught a sign of Common-Cold symptoms, see a doctor if the symptom is severe.  If not, hydrate yourself, take nutrition, take good rest until you fully recover.  Forcing to do work would increase the severity, even may lead to death.  (Don't underestimate the danger of common cold!)

When Corona Virus is spreading, you should wash your hand often, avoid directly touching door knobs, elevator buttons, or anything that other people could touch.  Avoid crowd, cover your mouth when you cough or sneeze.  Those will substantially reduce the probability of catching or transmitting Corona Virus.

When Common Cold is spreading, you should wash your hand often, avoid directly touching door knobs, elevator buttons, or anything that other people could touch.  Avoid crowd, cover your mouth when you cough or sneeze.  Those will substantially reduce the probability of catching or transmitting Common Cold.

To avoid getting severe symptoms from Corona Virus, you should take good sleep, hydrate yourself, take nutrition, and good exercise.

To avoid getting severe symptoms from Common Cold, you should take good sleep, hydrate yourself, take nutrition, and good exercise.

At this time, I have seen absolutely no evidence, ABSOLUTELY ZERO, that indicates any greater risk of Corona Virus than common cold.  I don't understand why the world is so overly reacting to this particular virus.  Is there anything that the news media are not reporting?  It is true that we should be very worried if the virus mutates and becomes highly fatal.  But, that hasn't happened yet, and therefore we don't have to be worried about it yet.  We need a vaccine before it happens, and the doctors over the world are trying to come up with a vaccine.  The virus seems to be incredibly infectious.  It is impossible to prevent spread.  If you try to do something impossible, you need infinite energy.  Therefore you shouldn't.  Rather, the weakness of this virus is its extremely mild symptom and low fatality rate.  Then, rather than trying to prevent its spread, it seems to me more reasonable to prevent death of those who got infected and grow population with anti-body.  Also it would be impossible to quarantine all those got infected.  The infected population will grow exponentially.  It would be easier to protect high-risk population, who are elderly people and patients with background health condition.

My guess on what's going to happen next is the disease disappear by itself by spring.  First when the environment gets warmer, our immune system will kill viruses more effectively.  Also by then certain rate of people will acquire anti-body, and the virus won't be able to spread as easily as it can right now.  Some doctors are telling many of those who got infected do not show any symptom.  What it means is the population with anti-body might be growing rapidly, but we just don't know about it.  If you are healthy at this time I don't think you have no reason to be worried about this extremely weak virus which is pretty much harmless except it is highly infectious.

It was reasonable to attempt to prevent the spread when we didn't have those data about the virus, but now we know that its fatality rate can be less than 1% if treated, and majority of the healthy population won't get a severe symptom from it.  The reaction should be according to what we learned.

One thing remarkable this time is that communists are broadcasting their over-reaction to the world.  Communists typically hide and conceal whatever bad news from the rest of the world.  One thing that is their business as usual is they are spreading a wrong information.  They want the world to view this mostly-harmless virus as an extreme danger.  What's their purpose?

For you, what to do?  Just take same precaution as common cold.  Wash your hand, avoid crowd, hydrate yourself, take nutrition, good sleep, and exercise.  By the way, I bowled 3-game total of 693 yesterday.


Happy New Year!

I have spent majority of my time during the winter break for Fujitsu FM TOWNS preservation project.  It started because the FM TOWNS II MX (originally released in 1993, 28 years old computer!) unit that I bought from Yahoo! Auction came with a bad internal CD-ROM drive.  Then I found that many of the working FM TOWNS unit suffers from broken internal CD-ROM drive.  I was looking for a way to substitute an external SCSI CD-ROM drive to a broken internal CD-ROM drive, and developed a single driver that does it in November.  This is the computer model that I grew up with.  I don't let it die without resisting.  Then I made some major improvements.  And wrote patches to some programs that did not work with my driver.  I am thinking to add more patches when I find a game title that does not run with my driver.  I think I made a good contribution to the preservation of historic Japanese computer models.

What about YS FLIGHT SIMULATOR development?  Sorry, for the past two years, I was spending majority of my free time (aside from bowling and flying) for an effort to preserve Fujitsu 8-bit computer FM-7 series and then 32-bit computer FM TOWNS series.  I'll spend time for YSFLIGHT again when this project winds down.  Actually I need to upload a macOS version that supports high-resolution mode in OS Catalina.  I hope Apple doesn't drop OpenGL support, but if Apple really do that, I'll need to drop YSFLIGHT macOS support until I find an alternative and good graphics library.  Vulkan is a crap.  I want to ask Vulkan people, if you want that much performance, why don't you write in assembly?  Probably less than 1% of the programmers who can use OpenGL will be able to use Vulkan.  Absolutely not for education.  Vulkan is a crap.

[LINK to 2019 POSTS]

Comments are welcome.  Send E-Mail to: 

Back to