Home

Advertisement

30 years of video game history...

  • Jun. 27th, 2009 at 12:07 PM
burgerbecky, heineman, smile
It's been 30 years since I was sitting in my bedroom, with a wire wrapped ROM emulator, writing code on my little Apple ][ computer and making changes to existing Atari 2600 games, so I could learn 6507 assembly language and the art of video game programming. Sitting in my garage and in boxes around my house, are thousands of classic video game cartridges I've collected over the years. Some, I bought brand new in the stores, others, I've gotten from other collectors, and some I created, like the Apple ][ hosted ROM emulator that I used to write the Avalon Hill Atari 2600 games.

I was recently contacted by another collector with whom I've done business with over a decade ago and he asked if he could take my collection off my hands.

For years, I've lamented about my collection. I felt I wasn't doing it justice since I didn't have the time to make displays and share it with other affectionados. It's not doing much just sitting on shelves in my garage. I guess it was fate, but combined with his generous offer and my hopes that he will be able to properly catalog, archive and even display some of my best pieces; I've decided to sell him my collection.

Today, I'm grabbing every little thing related to the collection that isn't nailed down (And if it is, I'm using my hammer to remove the nails), and boxing it up for a cross country jounrey across the USA.

I have a bit of meloncholy as I am packing this up. Many of these things, as I hold them, trigger the memories of the time that I acquired them or in some cases, made them. *sigh* I can't live in the past. I hope I'm remembered for my part in it.

On the bright side, I'll have room again in my garage for my car. :)

Sailor Ranko update

  • Jun. 14th, 2009 at 11:06 AM
ranko, ranma, senshi, sailor, sun
As my readers already know, Sailor Ranko, the comic, is on a hiatus for the summer. I've switched artists and now the new pages look far, far better. It will return on September 7th, 2009.

My Reflection is also on schedule and will debut on October 5th, 2009.

I'm working on my Sailor Ranko novels in the meantime, and hope to get back to regular updates. I've got a personal coding project that's taking up my time, which is why the hiatus is in place and why the novels have been so slow in updating. I hope to wrap up this project in another month.

On the home front, my cats are being cats. I've resorted to keeping a lint roller next to my desk so I can keep my blouse free of fur since those furballs are shedding their winter coats all over the place. If anyone knows a decent maid service in the Seattle area, let me know. I need one, badly.

I wonder if I can run a lint roller on my cats? Would that help?

I'm overrun with cats!

  • May. 3rd, 2009 at 10:35 PM
ranko, ranma, senshi, sailor, sun
It's been a while since I updated my journal. I needed some time to grieve for the loss of my beloved cat, Bob. Since then, my daughter Cynthia sent me her cat Kimari because she was moving into a no-pets apartment and a good friend of mine, Devi, sent me her cat Amaya because she was moving back to Indonesia.

Now, I've got my other cat, Alucard. This make three felines running around, making my life less "boring". Still, even now, Alucard and I sit on my bed and stare at the empty corner of the bed where Bob used to sleep. It's been over two months since she died, and we can still feel her presence.

XNA Math has been announced and shipped in the March 2009 DirectX SDK and the March 2009 Xbox 360 XDK. Look in xnamath.h for my code (I pretty much wrote the whole thing.)

Writing news: I've gone insane and have gone into production of a second webcomic. It's called My Reflection, written by me and drawn by Asuka of Abstract Gender and Ruby Thursday. I give a big thank you to Jimmy Brimstone for all his conversations with me that allowed me to flesh out Kyle and the story that will be told twice a week, starting in July (Or earlier).

Sailor Ranko is on the verge of hitting 300 paged. Woo hoo! I'll need to start advertising it again to help promote it and My Reflection when it debuts.

In case you're wondering, My Reflection is found at http://www.myreflectioncomic.com and Sailor Ranko is at http://www.sailorranko.com

Tomorrow morning, it's back to work for me.

The final adventure of Bob The Cat

  • Feb. 14th, 2009 at 5:12 PM
burgerbecky, heineman, smile
At 2 o'clock, Saturday February 14th, 2009, my long time companion, friend and anchor in an ever changing world, suffered another breathing attack and I knew, her time was up. My little cat, Bob, looked at me with her big green eyes, begging for me to do something to make the pain go away.

At 3:45, I was at her vet as they administered the medication that would end her suffering. She died in my arms, as I petted her and comforted her before she left this Earth.

It's only been an hour, and I can still hear her purring at the foot of my bed. Alucard, my 2 year old tabby, already knows that the house is even more emptier. The two of us lay on the couch, both showing our grief in our own ways.

She came into my life in 1998, when Dayna, a friend of mine, was moving and couldn't take all of her cats with her. As soon as I saw Bob, I knew that kitty was coming home with me. She was already up there in the years, having been found under a porch in Albany NY at Dayna's mother's house, freezing to death from a New England winter. Dayna and her mother few Bob several cans of tuna before she would even slow down eating. Later, Dayna would move to Atlanta with Bob and stay there for a while. Then, she moved to Covina California, where Bob's journey switched over to me.

My kids and I bonded with Bob instantly and she was the center of attention. Bob and I, we had a special bond. When I felt sad or blue, there was Bob, rubbing my leg or purring in my lap, letting me know that there was someone who wanted to listen to my deepest feelings. We shared many times where I would tell her how I was feeling, and she'd always have a kitty smile for me and I could feel that things would be alright.

In 2004, Bob was nearly killed when she was run over by a car, and the vet did hip surgery on her to put her leg back into her hip. It was touch and go, and the family was there, visiting her at the vet until she came home.

2005, I got divorced, and Bob was there for me. Always being a good friend and looking out for me by just being there.

2006, I moved to Dallas Texas, and Bob got to ride in an airplane for the first time, and she was a hit among the passengers and everyone wanted say "Hi" to the cat in the cat carrier.

2008, I moved to Seattle, Washington and again, Bob was with me, both on the plane, and when I was living by myself in corporate housing. Each night, I would get home from work, and there she was, waiting for me at the door, and she'd escort me to her empty food dish with an expression of "I Can Has Cheezburger?"

Then, she started showing her age. She was not as energenic as she used to be, and it was my turn to comfort her. I fed her her favorite foods (Tuna and Meow Mix Select), I'd pet her each night, and I'd pick her up when she wanted to lie in bed with me since she couldn't jump up anymore.

Today, is supposed to be the day about love. I love my little Bob, and I never left her side as her time ran out. I already miss her so much.

Bob, whereever you are, thank you, for just being there for me all these years. I only hope that I was as good a friend to you, as you were to me.

Bob The Cat, Born before 1995 - 2/14/2009

Tags:

Arms of steel!

  • Feb. 4th, 2009 at 11:14 AM
burgerbecky, heineman, smile
During the snowstorms of December, I drove my car to the airport. The trip was rough on my steering system and it blew out my power steering pump.

It was going to cost a chunk of change to repair it, so I shrugged and am driving my car without power steering. It was tough at first, and after a month of this, it doesn't bother me at all. I've noticed that my arms a much stronger now due to my daily workout I get when I commute to and from work.

In a way, I got two benefits. Stronger arms and a slight workout, and I don't really have to cough up the money to fix the power steering sub-system. Woo hoo!

As an added note, the valets at my office dread parking my car. They don't have buff arms like me! Hee hee.

It's not over yet

  • Jan. 25th, 2009 at 10:24 PM
burgerbecky, heineman, smile
As stated in the news all over town, Microsoft had a layoff. Thankfully, no one in my department lost their jobs from this, but it has been the topic of water cooler conversation.

All I can say about this is *SIGH*.

I'll keep my head down, do my job to the best of my ability and keep proving my worth. I really don't need any stress in my life right now, it's finally calm and serene and quite peaceful.

Outside my window, it's snowing just barely. It should all melt by noom tomorrow. Still, it's quite pretty outside.

I've finished chapter #7 of Sailor Ranko the Webcomic, and already have chapter #8 all plotted out. I think my readers will be pleasantly surprised as to who will be guest starring in the chapter. :)

My 18 year old daughter, Cynthia, will be coming up to visit me for a month starting in March. I'm so happy that I'll be seeing her. I feel blessed that I have a strong bond with my kids.

Now, no more procrastinating! Time to finish and release Thrice In A Millennium!

MySpace, the Nigerian scammer capital

  • Jan. 11th, 2009 at 5:14 PM
burgerbecky, heineman, smile
I complained about NIgerian scammers previously, and it's time again to rant about them.

About once a day, I get a message on my myspace page from a guy or sometimes a girl who "fell in love with my photo" and wants to get in contact with me. Shortly afterwards, they contact me on yahoo messenger and profess their love for me, and tell me they are an American citizen on business, visiting family, buying antiques or some other half-baked excuse for them to be in Africa (Nigeria usually, but I had two from Kenya and another from Somalia). Then they immediately tell me they are single (Usually widowed and they have a kid or a sick mother) and they can't wait to come see me. Of course, they quickly tell me they are a few hundred short on getting a plane ticket, or they need money in their bank account to get a visa, or a tollbooth blocks their way and it would be great if I wired them a few hundred or even a few thousand to them.

My record so far is three sentences before I decide that the person chatting with me is not a fan of my comic or someone who has a real interest in speaking with me and I added him to my evergrowing "Ignore" list.

What I find amazing is the sheer numbers of these whack jobs that are trying to pull these scams and how brazen they are with their lies.

It's so easy to tell too. If their myspace page or yahoo messenger profile is pretty much empty, scammer. The myspace page has a single photo and it's flagged as "Recently uploaded", scammer. If they use the "Buzz" feature on Yahoo as their first or second message to get your attention, scammer (They have limited time in the internet cafe). If Africa is even once mentioned in the conversion, block immediately, scammer. If they make excuses not to go on webcam and insist that photos prove who they say they are, 99.999999% chance, it's a scammer.

It's shocking to me that people fall for these scumbags. Sadly, people do.

To avoid getting scammed...

If someone contacts you and wants to "get to know you", have them go on webcam to show themselves. If they don't, NEVER trust a word they say. They are very clever in coming up with excuses, but it costs $30 for a cheap USB webcam and if they can afford an internet connection and a computer, they can afford a webcam.

If they say they are in Africa for any reason. End the conversion and block them.

If they say they are having feelings for you based only on your picture, it is very likely a scammer. They love to find lonely people and prey on their emotions.

If their profile on myspace or yahoo doesn't have dozens of pictures or friends who you can contact and get more information about the person contacting you, likely it's a scammer.

If they send you their phone number or strongly suggest that they can only tell you something over the phone or skype, scammer. NEVER give them your cell phone number, they can use it to do billing scams where they buy things using your number and the bill appears on your cell bill. This is why they want to get your cell number instead of a land line.

These people are scum and should be put behind bars for life. They have no pity. They have no remorse. To them, scamming even $100 is the same as earning two month's pay, so no amount is too small for them. If you send even a dollar to these slimeballs, they will hound you forever.

Goodbye King, I'll miss you

  • Jan. 6th, 2009 at 8:48 PM
burgerbecky, heineman, smile
Today, Jacob took our family dog, King, to the vet for the last time. Almost a week ago, King was diagnosed with Lymphatic Cancer. In simpler terms, he was in constant pain and he only had 4 to 10 weeks to live.

It was heartbreaking to get the news. Over the weekend, Jacob thought long and hard about what was best for his dog and it was decided to end King's suffering humanely.

We spent some fun time with him on Sunday and Monday. Everyone had some moments with him, we fed him some of his favorite foods, took him on a walk, and even a car ride (He likes those).

This morning, I gave a big hug to King before I left for work. It was bittersweet, knowing it was the last time I was going to hold him.

At 2PM, King was at the vet, with Jacob and Samantha by his side during the entire procedure and they stayed with him after it was done.

The house seems a little emptier now. I know Jacob made the right decision and King is in a happier place, free from pain.

Goodbye King. I'll miss you, you silly mutt.

Xmas week with Jeffrey!

  • Jan. 4th, 2009 at 10:18 AM
burgerbecky, heineman, smile
Another holiday season has come and gone. What an adventure it has been!

It started on December 20th, when my 16 year old son was flying from Los Angeles to Seattle to spend the Christmas break with me. That day was the start of Snowpocolyse 2008 in Western Washington, where the entire Seattle and Portland Oregon areas were covered in a blizzard. My son's plane was diverted at the last minute and he ended up in San Francisco.

My son was a bit scared. He had never flown before solo and his first experience was to end up in a strange town and several hundred pissed off passengers. Virgin America put him up in a hotel and booked him on the next flight out on Sunday morning.

On the 21st, my son overslept and missed his flight. He called me in a panic and I talked him through the procedure to get himself booked on the nexr flight. Shortly, he was at the San Francisco Airport, among the thousands of stranded passengers and he was able to make it to a flight leaving for Seattle in an hour.

Once he was on the plane, I got the text message from him, and I got in my car, a second time, and drove to the airport.

In the snow.

On a slippery road.

In a car with rear wheel drive?

And I moved 3 inches before being stuck.

No way was that going to work again.

On the 20th, I drove my Firebird in the snow, blowing out my power steering, and nearly crashing at least four times before making it to the airport. I was not doing that again. I borrowed my other son's PT Cruiser (Light and with front wheel drive) and made it to the airport.

Finally I got my son, and went home.

Then we stayed home.

We were snowed in.

It appeared that Seattle, despite being a city as far north as the state of Maine, is ill equipped to deal with nine inches of snow and they only plowed the major highways. Therefore, it was impossible for my Firebird to move from it's "nest" of snow and down the street to get to a major highway to go anywhere.

At least me, my sons and my daughter-in-law celebrated a white Christmas. Jeffrey got a digital camera for Christmas and he took pictures of everything.

A week passes, and thankfully, I was able to do my job at home as did most of my co-workers. My son was getting restless and bored, since he had a "to-do" list of things he wanted to do in Seattle during his stay.

Sunday, the snow had receeded enough that I was able to drive my car, very slowly, down the road and onto the main highway. We then visited Pike's Market, the Original Starbucks and took a three hour drive all over the Western Washington countryside.

Monday, I went to work, and had my son with me. After that, we had dinner on the Space Needle.

Tuesday, dinner at Marinepolis (A nice budget sushi place)

Wednesday, I had my car looked at since driving without power steering was really bothering my arms (It's tough). Then we yelled Happy New Year, and fell asleep.

Thursday, we Blamed Canada! Jeffrey's biggest to do item was to take a tour of Canada. So, we hopped in the car New Year's Day, and drove two and a half hours north to the border. We drove around the city of Vancouver, and all around the countryside. We also went to a mountain park and drove around the forest, stopping a few times for pictures. On the way back, waiting to cross the border, the wait was so long, my battery died. Thankfully, the US Border Patrol, waited for us as we pushed the car twenty feet until we hit US soil, then they all joined in and pushed us to their service garage where they gave our battery a jumpstart. Later, we found the US agents technically invaded Canada to rescue us due to confusion as to where the border was.

Friday, work was really boring. Hardly anyone was at the office and the cafeteria was closed. NOOOOO! Need food! We left early and hit another local Sushi place for lunch.

Saturday, January 3rd, *sniff*, it was time for Jeffrey to fly back to Los Angeles. We went to Pike's Market one more time because Jeffrey was looking for a Christmas gift for his sister. We had lunch at Marineopolis again and Jeffrey made sure that he got several of his favorite dishes. We drove for an hour in the countryside, burning off the time until it was time to get to the airport. Finally, we drove to SeaTac, and I walked him to security and watched him go.

Of course the adventure had to have a footnote. My Ex was informed Jeffrey was to be at the airport in Los Angeles at 6:30 PM. She didn't arrive until 7:30 because she forgot. *sigh* At least he's home safe.

That was fun

  • Dec. 7th, 2008 at 6:05 PM
burgerbecky, heineman, smile
I went to the company xmas party yesterday. There was much soda and hor 'd orderves to be had. I hooked up with some co-workers and we chatted the night away and it was a really fun evening.

Later, some of us took off to the Old Spaghetti Factory and had dinner.

I really had a fun time at the party. Yay!

One thing, downtown Seattle has a lot of homeless and scary people wandering around. There were a couple of times I held my keys in my fist in case someone attacked me so I could use a key as a weapon. Yuck. I'll make sure if I ever go downtown in the middle of the night to go in a group.

Nemesis, Rest in Peace

  • Nov. 11th, 2008 at 8:14 AM
burgerbecky, heineman, smile
Our family dog, Nemesis, a black Labrador, succumbed after several months of illness. He was with the family for over seven years. He was Amanda's dog and she's taking it pretty hard.
burgerbecky, heineman, smile
As I mentioned in my last article, branches suck on modern CPUs. Any excuse to remove excess branches is almost always a win.

The first step in getting rid of branches, is looking at your "C" code and finding all the places that code flow can change. A very common test is where a character is tested against uppercase and lowercase to find a string match.


int temp = pInput[0];
if (temp=='a' || temp=='A') {
    DoSomething();
}


In that code fragment, two tests were performed, and two branches were generated, one for the 'a' test and another for the 'A' test. Now, what actually differs between the tests? A is hex 0x41 and a is hex 0x61. Only one bit is different, 0x20. So, if the value in temp could be altered so logically only the other 7 bits are tested for equality and the bit for 0x20 was considered a "don't care", both values could be tested for at the same time and only one branch is required.


int temp = pInput[0];
temp ^= 'A';    // Normalize so 'A' -> 0x00 and 'a' -> 0x20
if (!(temp&(~0x20))) {    // Is everything but 0x20 zero (It's A or a if this test yields zero)
    DoSomething();
}


With one additional logic instruction, a branch is removed increasing the chances of a successful branch prediction. This is crucial on lower end CPUs where the branch prediction unit has very limited branch prediction slots available. Also, since it's a single test for true or not true, it reduced branch randomization which plays havoc on any branch prediction unit, since they are all designed with consistent branch behavior in mind.

Tags:

The Religious Right

  • Nov. 7th, 2008 at 2:08 PM
burgerbecky, heineman, smile
How do you fight these people?

A direct confrontation is suicide. They will use their hate mongering to demonize us and keep the vote in their favor, that much is certain.

The answer is education. We’re winning that war. The older generation are beyond help. They will go to their graves, never yielding and never trying to understand people who are different from what they believe people should be. Look at the demographic of who voted AGAINST Prop 8. It was mostly in areas where Gays and Lesbians were living side by side non-gay people and the non-gay people voted with us, especially the young, why? It’s the young we need to show that we aren’t the sick twisted people their parents make us out to be.

Why do you think the Religious Right is so up in arms about teaching about gay marriage in schools? It’s the same reason they are against teaching evolution. It teaches kids to think for themselves, to accept that there are other ways of life and thinking that differ from what their parents preach as the gospel truth. Deeply Christian parents are freaking out because their kids are coming out gay, asking questions about the Koran and the Torah and other religions and philosophies, and coming home with a friend who has two moms instead of a mother and father. These questions make the parents very uncomfortable because it goes against what they believe in.

Once, the church made it a crime to state that the Earth was round. The bible mentioned that there were four corners of the Earth which was at the time, reinforcing the idea that the Earth was flat, supported by pillars and the universe revolved around our planet. Only when it was shown overwhelmingly that this was not the case, did they “reinterpret” the bible to reconcile their world view with the truth.

The current pope? No hope of changing his mind. The next pope? Not likely either, but a pope twenty years from now, who was born and raised from an area where he was exposed to gays and lesbians and he saw first hand how they made family units that are to be honored and cherished? That pope is the one who may start real change.

These groups are terrified. Not of us, but of the truth. They can’t stop the truth. If we work to show via TV shows, stories, magazine and newspaper articles and living out in the open, despite their leers, gawks and bigotry, their kids will see the truth. Everywhere, we are visible, never to return to that closet, that is how the new generation will be educated.

We are not people to be feared. We are their neighbors. We are part of their families. We are someone’s son or daughter, brother, sister, aunt, uncle and who are raising our own children in our families. Everyone’s children will spread the word that our families only differ in very subtle ways. Our kids disagree with us, wreck our cars, refuse to clean their rooms and make us pull out our hair in frustration, just like the kids of heterosexual couples. We celebrate Thanksgiving dinner, come home for Christmas (For those of us who are Christian), mourn our dead and celebrate a new birth just like any other family.

In time, we will win this war. The Religious Right knows this, and that’s why they are fighting so hard to make us go back in the closet. Hiding the truth buys them time.

Time, is on our side.

Prop 8

  • Nov. 3rd, 2008 at 10:22 AM
burgerbecky, heineman, smile
If you are in California and can vote, vote no on proposition 8.

It appears that some people have forgotten American history and want to bring back the Jim Crow laws, laws specifically designed to relagate people to second class citizen status because of their religous beliefs.

What ever happened to seperation of church and state?

The argument about teaching about same sex marriage in schools is so much bull. The schools, if they choose to, can teach about it no matter what. After all, it's legal in several other countries and two other states. I'm amazed at how low the "Yes on 8" people are going to make discrimination part of the law of the land.

So, if you don't believe in discrimination, vote no on 8, no matter your feelings on the subject. It's a bad law.

I'm 45!

  • Oct. 30th, 2008 at 7:27 PM
burgerbecky, heineman, smile
Should I be celebrating, or mourning the fact that I'm one year closer to "lights out"?

Who cares! CAKE TIME!

NOM NOM NOM!
burgerbecky, heineman, smile
Once upon a time, branches were good. The way you knew your code was fast was by how few instructions it took to get the job done.

Not anymore.

Most modern CPUs use very deep pipelines, and as such, they favor long uninterrupted instruction streams that has no branching to be able to squeeze out the performance they offer.

A mispredicted branch can cost you anywhere from 6 to 40 machine cycles and large amounts of hardware exist to try to perform deep juju to predict the behavior of the code in an attempt to minimize the penaties.

Here are some code fragments, and ways in which they can be done in a branchless manner.

int abs(int iInputt)
{
    return (iInputt <0) ? -iInputt : iInputt;
}


Normally, that generates a test for (iInputt<0) and branches over the -iInput if positive. If the test is always the same, branch prediction minimizes the penalty. However, there is a way of doing this without branches.

int abs(int iInput)
{
    // Create a mask. 0 if positve. 0xFFFFFFFF if negative
    int iMask = iInput>>((sizeof(int)*8)-1); // Usually 31 bits to shift
    iInput = (iInput^iMask)-iMask; // Do nothing for positive, negate if negative
    return iInput;
}


There, no branches. It works by taking the sign bit and creating a mask of either 0 or all ones (0xFFFFFFFF). The logical form of negation is ((i^0xFFFFFFFF)+1) = -i and if we take that formula and insert zero into it ((i^0)+0)=i it does nothing. Since we don't have a one, but we have a negative one the formula is changed to ((i^0xFFFFFFFF)-(-1) = -i or ((i^0)-0 = i, now it yields a branchless formula to perform abs(i) = ((i^mask)-mask).

Easy huh?

Tags:

I love Perforce!

  • Oct. 18th, 2008 at 11:55 AM
burgerbecky, heineman, smile
I use a Perforce server for maintaining my source code and it was a lifesaver. Over the last few weeks, I've been making extensive upgrades to Burgerlib, inserting hand tuned assembly here and there and general clean up. I had several unit tests to verify my work and it's been working out great.

Until last Wednesday...

I ran numerous tests on the game Aliens vs. Predator to make sure that nothing was broken and it was running flawlessly. So I switched over to the Mac PowerPC version and ran it and to my horror, I found the 3D rendering engine was drawing all the textures black. A quick look at the source history showed me that I had made hundreds of changes to the code and finding out why the gamma tables were all screwed up was going to be a nightmare.

Then Perforce came to the rescue. I did a "revert" and went back in time, grabbing a source tree revision, rebuilding and testing until I found that it was a change made about 6 weeks ago that broke AvP MacOS PowerPC. With the possible suspects narrowed down, I quickly traced it to an inline assembly gotcha that happens with the Metrowerks CodeWarrior compiler for PowerPC. Shortly, I found that my Wii version also suffered from the compiler "glitch".

Here's the errorneous code...

static Int32 BURGER_INLINE FromFloatFloor(register float fInput)
{
    Int32 iResult;
    fInput = fInput-0.5f;
    register Int32 *pResult = &iResult;
    asm { fctiw fInput,fInput; stfiwx fInput,r0,pResult }
    return iResult;
}


In a controlled unit test, this code generated the assembly I was expecting, but in a gamma table creation function in Aliens Vs. Predator, the "return iResult" operation was optimized out and as such, it was filling the table with whatever was in register r3 at the time (In this case, it was always zero). Gamma = 0 means textures are all black.

The fix was to force the compiler to never get rid of iResult and here's where "volatile" has its uses.

static Int32 BURGER_INLINE FromFloatFloor(register float fInput)
{
    volatile Int32 iResult;
    fInput = fInput-0.5f;
    register volatile Int32 *pResult = &iResult;
    asm { fctiw fInput,fInput; stfiwx fInput,r0,pResult }
    return iResult;
}


Adding the keyword fixed the code and I double check the Wii compiler and it solved the issue there too.

Lesson learned... No matter how many safeguards you put in your development process, something always gets through. Being able to "go back in time" through source reversion saved me hours, even days, of crazy coding detective work.

Tags:

Grok code

  • Oct. 17th, 2008 at 9:19 AM
burgerbecky, heineman, smile
It looks like the interview I did for Grok-code went live today. W00t!

I wonder if I'll get slash dotted. It's a good thing I just paid my hosting bill today. :D

In other news, I'll be going back down to Los Angeles at the end of the month to take my son to Magic Mountain in Valencia for his 16th birthday. Eeek! He's my YOUNGEST child and he's 16! Already he's talking about going to Digipen in 2 years to be a game designer/programmer. I've got a lot to teach him before he's tossed to the gaming wolves.

Sailor Ranko just started chapter #5. Hard to believe that a webcomic I started six months ago has gotten the following it has. Even after all this time, it's really fun to be creative and express it in a visual form.

One thing... Hosting and producing the comic isn't cheap. Please donate? Please? Pretty please? Just a little? It's not like I make anything on it, in fact, I lose money (A lot) every week, so help out a poor and two starving artists and chip in a bit. :) No monies go to me, it's all for Wraith, Aakashi and the ISP that hosts the site.

Burgerlib

  • Oct. 6th, 2008 at 9:26 AM
becky
Last weekend, I wanted to do some serious low level coding and spent the better part of Saturday working on data conversion routines on burgerlib. It's amazing what I found in my old code. To put things in perspective, there are functions in there I wrote as far back as fifteen years ago.

I found stuff that in 1995 would have been speed demons, but on modern processors, would be performance killers. For the Macintosh PowerPC version, there was a fsqrt instruction in some rendering code. That instruction was only available on some really old models of the Power Macs but it didn't exist on the Mac G4 or G5, so it was being emulated by the host operating system at a huge performance penalty. Ouch. I corrected that and several other little gotchas on my Intel, MIPS and PPC targets. Overall, it was fun and I learned some new tricks, mostly on my PowerPC target for Xbox 360 and PS3 targets.

I went through my fixed point math library and rewrote several key functions into ARM assembly for the iPod and DS targets and did some benchmarks on The Wotch DS and noticed some speedups, mostly in the skinning code for the 3D models.

Then I did a small interview for http://grok-code.com/. It will go up in a few weeks. I'll post here when it's live.

It was a really geeky weekend, and it was fun!

The further adventures of Bob The Cat

  • Sep. 23rd, 2008 at 9:45 AM
becky
I'm all but convinced my cat is an undead zombie, searching the Earth for mouse brains. For starters, she's really old and I'm amazed how she's still moving under her own power. When she does move, she has the strangest limp because she sometimes walks sideways like a crab or drags her rear legs on the hardwood floor and only uses her forward paws for locomotion.

Lately, she has made it very clear to me she craves attention. As soon as I get home, she's meowing at me. When I sit at my workdesk at home, she meows and demands to sit in my lap and when I'm in bed, she's lying next to me, putting her head on my tummy.

How she's still alive with all her ailments? I have no clue. I thought for sure she had already cashed in her nine lives.

Perhaps she's waiting for the right moment to crack open my skull and feast on the goo inside?