Monday, October 16, 2017

My DNA has been places

myOrigins


The unique genetic assemblage that has been passed down to me in my autosomal DNA from my ancestors comes from 7 of the 24 reference populations around the world. This blog post will highlight major historical and genetic events, thus shedding light on the wild complexity of my genetic tapestry. Though we are all unique and distinct, we are also woven from the same fundamental elements. Here is a percentile breakdown of those populations to which my own aDNA is connected. This is also known as my ethnic makeup. 

Trace* amounts from East Asian areas
>1% is from Siberia
>1% is from Siberia
Modern humans arrived in Siberia roughly 40,000 years ago after access to the region was opened up by retreating ice sheets. These ancient hunter-gatherer populations spread all across Siberia with some groups continuing east across the Bering Land Bridge to populate the Americas roughly 15,000–23,000 years ago. Because of this, there is still genetic relatedness between Siberian and Native American populations to this day.
As Siberian populations became more established in the area, their lifestyles changed little from the first bands of people; consisting largely of small semi hunter-gatherer and pastoral nomadic groups. Populations within this cluster experienced predominantly Chinese influence starting around 1000 BCE and later, influence from the Turkic-Mongols in the 3rd century BCE. Genghis Khan and the Mongol Empire laid claim to Southern Siberia from the 13th to 14th century CE.
Colonization from Russian forces in the 16th century CE led to the destruction of many of the smaller tribes due to the spread of disease and exploitation from colonists. However, larger tribes, such as the Sakha (Yakut) and Buryat, utilized the colonists to gain profit and were largely incorporated into the colonizing society, while others were able to maintain their traditional practices. Present day populations of Sakha (Yakut) still practice a mostly pastoral lifestyle and continue to herd horses, cattle, and reindeer.
Today, the people of Siberia express closer relatedness to populations within East Asia and northern populations in Japan, suggesting more recent migrations from the south. There has also been increased relatedness between populations in Siberia and western Russia since Siberia’s integration as a Russian state.
>1% is from Northeast Asia
The Northeast Asia cluster encompasses present day China, Mongolia, Japan, Korea, Siberia, and Kazakhstan. Modern humans are believed to have arrived in this region of East Asia via two potential routes: a coastal route leading from the eastern regions of Africa and an early continental migration through western Eurasia.
The scope of the regions in which these ancient peoples settled was vast. Populations within this cluster mostly consisted of small mobile hunter-gatherer groups. These hunter-gatherer groups spread wide, and migrations took these hunter-gatherers into Siberia, Korea, and further east to Japan. During this time, sea levels were low enough that Japan was still connected to mainland Asia via a land bridge.
Farming practices were established roughly 10,000 years ago in the Loess Plateau and Central Yangzi River Valley and came later to peripheral areas in this cluster. Notably, the Jomon in Japan are recognized as one of the longest enduring hunter-gatherer groups in the world. On the Asian continent, early populations experienced continual tension with populations from the western steppe regions until the region was unified by the Qin dynasty in 221 BCE. Following the Qin, the Han dynasty and later the Mongol army of Genghis Kahn continued driving international expansion.
In Korea, the Han empire had established four provinces, maintaining control for the following 400 years. Regular contact between populations in China, Korea, and Japan is estimated to have started around 500 BCE. Later bronze and iron trade between Korea and Japan proved to be transformative for Japan and their weapon industry.
Populations within this cluster remained largely isolated until roughly 5,000 years ago. However, once this region was opened, other populations were quick to adopt many cultural and technological artifacts from the area and spread them around the world. Two of the most notable features of this region were the creation of the Great Wall and the Silk Road trading route. The Great Wall was initially created to defend China from the invading Xiongnu warriors from Mongolia and was later extended westward to protect merchants traveling along the Silk Road. The first leg of the Silk Road was marked by the Great Wall and proved to be enormously impactful to most of the Old World regions, as it facilitated previously limited or non-existent trade and interaction between largely separated cultures.
Trace* amounts from Middle Eastern area
> 2% is from West Middle East
The West Middle East cluster is comprised of present day populations from regions along the Eastern border of Egypt, Jordan, Israel, Lebanon, and Palestine. Regions within the West Middle East and East Middle East clusters were areas of the first migrations out of Africa roughly 100,000 years ago. Nestled on the western edge of the Fertile Crescent, this cluster has been home to populations that have played a key role in the development of human civilization throughout history.
With the development of farming and the domestication of animals roughly 12,000 years ago, populations from the West Middle East are noted for the introduction of farming into Southern Europe. Populations in this cluster are also credited with establishing the first civilizations, thus laying the foundation for urbanism.
Populations in this cluster have been influential throughout history, though the most significant achievement could be said to have been made by the Phoenicians more than 3,000 years ago. Credited with establishing the foundation for all modern alphabetic writing systems, the Phoenician alphabet (created before 1000 BCE) directly influenced the writing systems of the Hebrew, Aramaic, and Greek civilizations. The Phoenicians established colonies throughout most of the Mediterranean, including the strategically important city of Carthage in Northern Africa. Carthage became the largest Phoenician colony and allowed them to control and monopolize trade throughout the Mediterranean. Trading within this region meant that as populations within this cluster expanded throughout the Old World, they came into contact with populations from as far away as Russia, Morocco, Spain, and even Viking traders from the north.
Populations within this cluster share genetic relatedness and a history of trade and conquest among many regions within the Mediterranean. Present day members of the West Middle East cluster share genetic similarity with members of the Druze religious sect primarily found in Lebanon and the nomadic Bedouin tribes found within the deserts of Jordan and Syria. Each of these cultures remains deeply rooted in the history of this region. The Druze are particularly noted as successfully resisting Crusader invasions along the Lebanese coast, and rebelling against the Ottoman Empire.
98% European areas 
61% British Isles 
Modern humans arrived on the British Isles roughly 40,000 years ago via a land bridge that connected these islands to continental Europe. Early hunter-gatherer populations were able to navigate into and out of this region until roughly 6000 BCE when melting ice sheets caused sea levels to rise and the connection was severed between the populations within the British Isles and continental Europe. Farming occurred largely as an indigenous adaptation with little evidence of acquiring this technology from surrounding colonizing regions. Small agricultural communities are even recorded as the primary lifestyle by Roman invaders in the early 1st century CE.

By the second millennium BCE, trade relationships spread, and under the control of the Chieftains of Wessex, trade routes spanned from Ireland into central and eastern continental Europe via waterways. The wealth amassed from this intensified trade likely enabled the Wessex Chieftains to begin construction on what would grow to become Stonehenge. These trade practices further solidified a deep genetic connection with populations in the West and Central Europe cluster and areas of Scandinavia.

By 43 CE, Roman forces had conquered Britain. However, by 500 CE, Germanic tribes (originating in present day Scandinavia and eastern Europe) and Asian forces toppled the Roman Empire, and the subsequent continental European expansions brought Saxon tribes into the British Isles. Powers in the British Isles also conscripted mercenary populations from continental Europe. The Saxons, Angles, and Jutes came over to support Briton forces defending against the Picts and Scots in the 6th century CE.

Starting in the late 8th century CE, the British Isles were invaded and settled by Viking parties during the Viking expansion. Normandy later invaded and solidified cultural and economic connections between the British Isles and continental Europe. To this day, these ancient occupations and trading practices left a lasting impression on the genetic relatedness between populations in the British Isles cluster and Southeast Europe, Scandinavia, and West and Central Europe clusters.

20% West and Central Europe
The West and Central Europe cluster consists of present day countries of France, Belgium, Netherlands, Luxembourg, Switzerland, Austria, Czech Republic, and Germany. Modern humans began to populate West and Central Europe toward the end of the last ice age when the ice sheets north of the Mediterranean coast began to retreat.

Due to ancient interactions and exchanges with cultures from the British Isles, Scandinavia, Asia, and Africa, this cluster displays an incredible history of migration, invasion, and colonization resulting in continual shared genetic, cultural, and linguistic relatedness with nearly all of the other European clusters.

Long distance travel between continental Europe and populations in the British Isles are illustrated by the shared knowledge of specific pottery and metalworking technologies. Through analysis of his teeth, remains of an individual (the Amesbury Archer) buried around 2000 BCE near Stonehenge in England was proven to have grown up in mainland Europe, thus illustrating the close connections between these two clusters.

The development of complex city-states was first established along the southern coastlines of France. Colonies of Greek, Phoenician, and Carthaginian settlers were the first to establish these complex societies; Roman colonies were quick to follow transferring cultural practices, such as the importance of wine drinking for the elites in central and eastern France.

To the north, barbarian tribes maintained semi-nomadic settlements throughout most of the cluster. By roughly 300 CE, Jutes, Angles, and Saxons, having originated in Scandinavia, were pushed westward by invading forces from Attila the Hun, further intensifying tension between the Romans and the barbarian tribes. With Germanic tribes being pushed out of eastern Europe as well, Slavic speaking peoples settled in their wake, occupying areas leading up to east Germany. Continual raids from various European and Asian groups ended the Roman occupation of this area by roughly 500 CE. During this time period, these various groups continued migration to further reaches of land once unified by Rome. These regions included Northern Italy, most of Britain, modern day France, and Spain; they also conquered most of Northern Africa, Sardinia, and Rome in the process.

It is after this migration that populations within this cluster began to establish complex and diverse civilizations that are later recognized as some of the most powerful and influential cultures in the world. These ancient histories continue to influence identities and histories of present day populations in this cluster.
9% East Europe
The East Europe cluster consists of an area encompassing present day Latvia, south to Ukraine, Romania, and the northern part of Bulgaria, west along the eastern edge of the Balkan states to Poland and the eastern half of Germany.

The early populations in the East Europe cluster consisted largely of small agricultural communities. Some of these developed indigenously, while others were colonies of farming communities from Asia Minor. Eastern Europe played a significant role in the metalworking traditions of Scandinavia, and an intense metal trade was established between the two by 1500 BCE. In 1000 BCE invasions from the Celts (from Gaul and Germany) in 1000 BCE in the north and central regions and invasion from Iranian tribes to the south in interrupted this trade. By 200 BCE, Scandinavian groups drove southward and ended the Iranian control in the south.

Slavs from the North Carpathian Mountains were forced into the steppe regions of present day Ukraine and Belarus by the 5th century CE. The Turkish Empire controlled the Ukrainian steppe between 700–900 CE and used its location to improve their mercantile empire. By the Viking Age of the 8th century CE, trade between the Scandinavia cluster and the East Europe cluster continued. By the middle of the 9th century CE, Vikings took control of the trade route that ran from the Baltic Sea, along the Dnieper River, and into Constantinople in present day Turkey. The Vikings exploited the local Slavic peoples and established their stronghold in Kiev. These Viking merchants were to be the progenitors of the Kievan Princes. By the 11th century CE, the Viking Age ended, and in 1240, the Mongol army sacked Kiev, adding further cultural and genetic influence to this cluster. Since the invasion of Kiev, this arm of the Mongol army became known as the Golden Horde—the western portion of the Mongol Empire.

The East Europe cluster sits on two prominent trade routes, which resulted in a history complete with invasion and migration. As a result, the genetic relatedness of populations within this cluster is shaped by the water trade routes from Scandinavia and from the Baltic to (the Black Sea) Constantinople via the Volga, Dnieper, Dniester and the Danube, connecting Eastern Europe with Scandinavia and Siberia; it also includes the Steppe region, connecting Eastern Europe to Russia, Asia Minor, and the Eastern Middle East. Genetic diversity in this region is high.

8% Southeast Europe
The Southeast Europe cluster consists of present day populations from the areas of Italy, Greece, and the western Balkan states from Bulgaria to Croatia. Present day populations in the Southeast Europe cluster show some of the highest rates of genetic relatedness to the second wave of migration into Europe roughly 11,000 years ago. This wave of migration consisted of Neolithic farmers from the Fertile Crescent and expanded primarily into southern Europe, incorporating small scattered European hunter-gatherer communities along their path.

The island of Sardinia, having early evidence of post-glacial hunter-gatherer inhabitants, was not permanently settled until this migration of Neolithic farmers from the fertile crescent populated it roughly 8,000–7,000 years ago. Although a key position in early Mediterranean trade routes, the populations of Sardinia remained relatively isolated genetically and today, represent a particularly unique connection to Southeast European Neolithic ancestry.

Populations within the Italian peninsula and the Greek and Balkan states, however, display more genetic diversity having experienced waves of migration and the rise and fall of numerous civilizations. The ancient populations on the Italian peninsula generally consisted of the Greek colonies in the south, Etruscan cities in west-central Italy and north of Rome, and Italian groups, such as Samnites and the Umbrians, who inhabited Rome and central Italy. The western Balkan States mostly consisted of small kingdoms until the rise of Alexander the Great’s father Philip II of Macedon (present day Macedonia).

These early states had a wide influence as they were shaped by Alexander the Great’s campaigns, the Roman expansion, and migrations from Slavic tribes who were forced from the Carpathian Mountains by Germanic tribes in the 5th–6th centuries CE.

The Southeast Europe cluster is home to civilizations that many consider to have founded the principles of Western civilization and continue to influence modern politics, art, and architecture. Greek and Roman influence spans the western and southern regions of this cluster, while the influence of the Hellenistic world of Macedonia and Alexander the Great encompass the Western Balkan states.


*A trace percentage indicates a very small amount of shared DNA in common with the corresponding population. In some cases this minor percentage could be attributed to background noise.

Sunday, January 8, 2012

ATTENTION! Get 680+ FREE Personal Growth and Business Building Products, Services & Memberships Absolutely FREE!

Have I got some exciting news for you today!

You can now get instant access to 100s of downloadable self help gifts at NO COST to yourself.

Yep, you heard me right...for FREE!

All you have to do is go here: click here!

So, if you have found yourself going round in circles time and time again just trying to improve things in your life, but find yourself getting nowhere fast, then I'm pleased to tell you that it is now easily within your reach to change things during 2012.

HOWEVER, just like anything in life there is a downside here - BUT don't panic because if you act fast you won't miss out.

The Self Improvement Gifts Giveaway 6 hosted by Stephanie Mulac, Carolyn Hansen and Dr. Joe Rubino will only be open for a VERY LIMITED TIME... only a few weeks in fact!

So if you are serious about making 2012 the BEST year ever, then you need to jump on board as soon as the event opens on the 5th of January.

Don't delay because the doors close for good a few weeks later.

Here's just a small sample of the 100s of gifts that are available for you to download instantly once the event goes live:

* Affirmations For A Wealthy Mindset Audio - Elaine Lockard
* The All-Natural, No-Fail Weight-Loss System - Willie Crawford
* 10 Free Personal Development Reports - Steven Aitchison
* Sound Transformation Starter Kit - Iain Legg
* A Beginners Guide To Running - Paul Klein
* 3 FREE Hypnosis MP3s - Dan Bainbridge
* How to Make Your Mind a Money Magnet! - Dr. Robert Anthony
* The Law of Attraction Key - Kristen Howe
* Create Your Own Self Improvements Products - Keith Purkiss
* Brain Maximization Package - Alvin Huang
* And Much Much More!

If you are ready to start the year off right, which I'm sure you are, and tackle EVERYTHING that is holding you back from moving forward in life, or if you just want to change things because you are looking for a sense of inner peace, then you need to go here RIGHT NOW:

Click here!

You know, this is the 6th Self Improvement Gifts Giveaway event and each year it just gets BIGGER and BETTER!

This REALLY is the largest collection of POWERFUL self help and personal growth gifts you will find on the Internet EVER!

Before you go I just have one question for you...

Now that you know about this potentially life changing giveaway, are you going to make the most of the opportunity, or are you going to sit back and let 2012 be a repeat of 2011?

The choice is yours, but I know what I'm going to do and that is FIGHT BACK and live life the way I want to....Are you with me?

Hope to see you there
Regina :)

http://selfimprovementgifts6.com/go/11695

Monday, April 25, 2011

Monday, November 22, 2010

WHU Icecrown Dwarf Hunter guild

I joined this guild in time to race change and participate with my former night elf hunter.

Sunday, March 14, 2010

Another thing that's getting hard to find

Headphones.

Sometime last year, I bought a pair of headphones for use with my computer. The ones I picked up at Staples were nice enough that I thought "I should get a pair of these for work when it's time." They even had an adapter for the full-size headphone jack I'm using because, being a crotchety old guy, I have my computer plugged into my home stereo tuner/amp instead of using those powered "computer speakers".

Well, it's time. So I wandered down to Staples only to find: no headphones. It's all headsets now. I don't want a microphone, I just want headphones.

And don't talk to me about earbuds. They aren't comfortable and don't sound good.

Thursday, March 4, 2010

Thank you, Bill Gates!

The magic smoke escaped from the charging circuit of my trusty EEE PC netbook. I'm not as upset about that as you might think, since I had been looking for an excuse to replace it for a while. However, since I needed a replacement *right away*, I decided to take a look at what the local Staples had.

They had two models: an ASUS One and an HP Mini 210.

The two machines are quite comparable, but a little web research turned up the major advantage to the Mini 210: you can get into the thing to upgrade the memory and the hard disk without so much as a screwdriver. To upgrade the ASUS, you have to take the whole bloody thing apart.

The Mini 210 comes with 1GB of RAM, so the memory upgrade was going to happen right away; taking the 2GB from the formerly trusty EEE PC also allowed me to recover some of the cost sunk into upgrading it (I fear I'll never recover the cost of Windows XP).

The Mini 210 runs Windows 7 Starter Edition. I didn't know what was special about Starter Edition, but I figured if it was Windows 7 it had to be good.

And things were going well until I decided that I didn't really like the light blue background with a Windows logo in the middle of it.

It turns out that the primary features mission from Windows 7 Starter Edition are:


  • The ability to play DVDs.
  • The ability to change the desktop wallpaper.

The first one makes sense. A netbook isn't likely to have a DVD drive, so if someone wants to play DVDs they'll have to pony up for an external drive. As long as they're buying a drive, they may as well pony up for an operating system upgrade as well.

But the second confused for me a while.

Until I realized the whole point of Windows 7 Starter Edition is a sales tool for upgrades. Most people that are buying netbooks will have some reason for upgrading the OS. The technophile will just have to be able to play DVDs.

But what about grandma, who just wants to send e-mail and surf genealogy web sites? How do you convince her to upgrade?

This is where the second limitation comes in: the one thing grandma is going to want is a picture of her grandkids on the desktop.

By removing the ability to change the desktop, Microsoft has converted grandma from a casual user to an operating system upgrade customer.

But, I figured it couldn't be that hard to hack a new desktop background in. All I had to do was find the right file and copy over it, right? Which I did.

But when I rebooted, I didn't have my image as the desktop. I had a simple black background. Why?

It turns out that Windows 7 Starter Edition has a hash code of the supplied background image hardcoded into it somewhere. At boot time, it checks the image and, if it doesn't have the right hash value, the operating system deletes the registry entry that specifies which image should be used as the background.

Why would they do this? Easy. What's grandma going to do when she can't figure out how to put a picture of her grandkids on the desktop? She'll hand the machine over to one of the technically minded grandkids and say "fix it". The technically minded grandkid will do the obvious things (find the file and overwrite it or try to change the registry entries by hand) and, being stymied, say "Grandma, just upgrade; I'm already late for my raid."

As for me?

Well, what I really wanted was a plain black background in the first place, so I'm golden.

Thank you, Bill Gates!

Monday, February 15, 2010

Manzanar again

Gordon has been in Ridgecrest visiting this week and helping me organize my junk better. Since we hadn't done anything touristy yet, for Valentine's Day we went to Manzanar and dinner at the Mt. Whitney Restaurant in Lone Pine.

It was fun, we all got to take a few pictures. Roger in 3D, mine just of random things, and Gordon even took a few of Roger and me.

Saturday, January 23, 2010

I hate when that happens

I've been arguing with Mission Control's PC the last couple of weekends. It's a monster server-class PC that we bought used from someone who picked up a bunch of them during the liquidation of the renderfarm for Star Wars: The Clone Wars; it was allegedly used to do some of the rendering for the movie.

Lately, it's been shutting itself off after a while. Poking around, we discovered that the little fan on one of the motherboard chips wasn't starting up; if we gave it a nudge when we turned the machine it, it'd start going and everything was fine.

Until recently.

So, it was time to buy a new fan. I contacted the manufacturer and they told me I needed to look at a 3rd party solution, but didn't offer any pointers. Problem is that the fan in question is right next to the slot used for the video card and sits in the space underneath the part of the card that hangs over motherboard. So the average fan won't work, because it's too tall to fit in that space.

Finally wound up buying this one, and it just barely fits. It's a couple of millimeters taller than the original fan, so it's a close thing, but fit it does.

So I finally got brave enough to take the motherboard out of the box (you can't take the bottom of the box, so I had to pull the motherboard to clip the plastic pin thingies holding the fan in so I could pry it off) and change the fan.

I powered the thing up and the fan spun and the machine booted, so I was happy.

For about 15 seconds or so, after which the machine shut itself off.

When I turned it back on, instead of booting all I got was a constant loud beep.

There's a power indication LED on the motherboard; when you have the thing plugged in, the LED is green. The manual says "LED on = power to board. LED off = no power to board."

Trouble is, when I plugged and got the loud beep the LED was red. It was on, but it wasn't green. The manual says nothing about the expected color of the LED, nor does it even mention that it's a multi-color LED.

By now, of course, I'm convinced that I've somehow killed the machine. I don't have an anti-static workplace at home to do this sort of thing and I have zapped things in the past (that's how I wound up with a framed CVAX chip hanging on my wall), so I'm convinced that's what I've done.

But this sort of thing smells like a bad power supply, so I decide to check that out anyway. Unplug the supply, short the pins that get connected when you push the power button, and put a voltmeter on the +12v: +8v. Similarly, the +5v is only giving me +3v.

So clearly, the power supply has died and, just because God is some sort of joker, decided to do it just after I had worked on the system.

Unless, of course, I had somehow managed to kill the power supply.

Regardless, it was time for a new power supply.

Minor complication: looking around the web, I see that this particular motherboard is kind of finicky; lots of folks having problems coming up with a supply that will work for it, and the general consensus of opinion is that you should stick to the exact supply recommended by SuperMicro.

The only easy way I found to get one involved buying a whole new case with the power supply included, which is what I did, the plan being to move the new power supply into the old case, so that I don't have to move all the drives and everything to the new case.

When I took the new supply out of the new case, I discovered that one of the screws was in a position that would probably require me to take the motherboard out just to get at it. Nevertheless, I pulled the supply and grumbled about folks that design cases.

Looking at the old supply, though, I discovered that I could slip a wrench alongside
the supply and get to that screw without pulling the motherboard. Of course, it would be completely impossible for me to put the screw back in, but I don't mind; there are four other screws holding the power supply in. So that's what I did.

Fired the thing up. It booted.

I'm always amazed when something I've fiddled with works when I'm done with it. That doesn't always happen.

Anyway, I now have a spare case. It's a hefty, good quality case, too; the sort of case Ken Olsen could sit on without collapsing it.

But the new case doesn't have the one feature of the old case that I really liked: the old case has four hot-swap drive bays; each bay has a nice drawer holding the drive with a cute little handle you can pop open to pull the drive from the system. The new case just has your average, everyday drive bay.

Maybe I should mention that the motherboard is a SuperMicro H8DCE just in case someone is googling for a fan that fits it or an explanation of what a red D25 means.

Tuesday, January 5, 2010

Ergonomics!

I recently picked up a snazzy, new, 160GB iPod. Regina recently bought a snazzy HDTV that was on sale at Staple's. My intent is to store movies on the iPod so that I don't have to fumble through a pile of DVDs to find something to watch.

To that end, I needed a cable to hook the iPod up to the TV. Although I ordered it at the same time as the iPod, the cable just arrived today; it was shipped from China, while the iPod was shipped from right here in California.

Being an HDTV, it wants "Component Video" instead of the familiar composite video. The cable therefore has three video connectors: Y, Cr, and Cb. The video connectors are your average RCA plug with, not surprisingly, red, green, and blue doobers to mark which is which.

Audio is, of course, stereo, so there are two connectors for that. They are labelled in the normal way: white and red.

That's right; this cable has two red connectors on it.

And there's no obvious visual difference between the video red connector and the audio red connector; that'd doubtless interfere with its stylishness.

Which means that in order to know which is which, you have to trace the red cable to see whether it comes from the three-way video splitter end or the two-way audio splitter end.

Ergonomics!

EDIT: Death to line breaks.

Monday, January 4, 2010

You know it's Monday when...

So, anyway, I've got this ARM project for which I've written a simple ODT-like monitor that includes the ability to download files using KERMIT; ^A, the KERMIT start-of-packet character, is treated as a command to accept and process a KERMIT packet. The files are stored on one of those little SD flash card thingies popular for MP3 players and digital cameras.

Being a simple system, it stores files contiguously in a manner similar to RT-11. Files are described by their starting data block number and size in blocks; when you look up a file, the monitor searches the directory for the named file and fills in a structure describing its
position and size.

The monitor itself is stored in flash memory internal to the CPU; when the CPU is reset, it jumps to the monitor and starts running. The flash can be programmed either using JTAG or by the CPU using a special command sequence.

When you create a file, the monitor searches for free space and fills in a structure describing the position and size of the hole that it found.

Today, all of a sudden, right about lunchtime, I couldn't create files. Totally out of the blue. Downloaded one file just fine, the next download couldn't create the file.

Fiddling with the system, I discovered that it was no longer properly describing the hole it had found in which to create the file. It reported the size, but no longer reported its starting position.

When a file is deleted, the system just marks the space occupied by the file as being empty. When searching for a hole in which to create the file, adjacent holes are collected and treated as a single, larger hole. The search continues until a hole is found that is either at least the requested size or is the largest hole available on the disk.

Since it needs to coalesce holes, the hole-finding routine tracks the current largest hole in a local variable. When it's done, it copies the description from the internal variable to the structure in which the info is supposed to be plunked and returns success, kind of like this (in C):

 
FoundHole->Start = LargestHole->Start;
FoundHole->Size = LargestHole->Size;
return Success;

This is the only place where the routine returns successful status, and also the only place where the size of the hole is returned, so clearly this code was being executed. It just wasn't returning the start of the file.

After scratching my head for a while, I got desperate enough to pull out the assembly language listings and poke through them.

I discovered that a bit had flipped in the flash. The instruction that was supposed to return the starting address of the file had changed into something else.

Now, programming the internal flash of the CPU is not simple and straightforward; it's intentionally complicated so you can't do it accidentally. You have to issue commands to the flash controller to put it in program mode, then you have to tell it what you want to program, and then you have to wait for it to be finished, and then you have to issue another command to turn the flash programmer off so that you can read the flash.

Key point being that you can't run from the same flash bank you're programming, because once you flip into programming mode you can't read the flash anymore until you command the programmer to exit.

Unless, apparently, it's Monday.

EDIT: D'oh! I had no idea Blogger was keeping my line breaks. What's the point of the p tag, then?

Tuesday, November 17, 2009

Help me

DSC_0239

Could you please send me the full names of everyone in this picture. *for genealogy reasons

P.S. Please click for the full picture, it was cut off because of the size. I wanted to post the full size so it was easier to see everyone. This was from Aunt Bonnie's funeral.

Sunday, September 13, 2009

Danny MacAskill


An awesome bicyclist I found video on today. This is a music video, Winter Hill by Doves.