All posts by johannes

CT63 has arrived an is running!

The CT63 has arrived in march, but unfortunately there was a bug on the accelarator. A short curcuit caused the Falcon to power off on random situations. After a lot (!) of testing and sending it back to Rodolphe, he managed to fix it and it returned to me, working like a beast! :-)

Some impressions…

CT63 Setup Complete

CT63 Setup by you.

Kingston RAM for CT63 by you.

Replacing the NVRAM Chip

After the Falcon arrived, it showed the typically symptons of a dead NVRAM Chip Battery. The internal clock was skewed up every boot. To ensure that the Falcon will work properly it has to be changed.

The following instruction is given WITHOUT ANY WARRANTY of success. You might damage your Falcon irrepairable!

The ingredients

The replacement chip is a DALLAS DS12887A. In germany it can be ordered from Reichelt electronics.

Because the original DALLAS chip fits exactly under the lower shielding it will be hard to replace the chip with a new one and a socket. But soldering the new chip directly to the board is no option here, because in a few years,when the battery in the new chip is going to die again, it has to be easy to change. For this reason i’ve ordered a “low-profile” socket from Reichelt, too.

CT63 005

Tools and other stuff

  • A soldering iron with a fine round needle (1 – 1,5mm)
  • Desoldering braid
  • Solder (Sn 60, Pb 38, Cu 2)
  • multifunction rotary tool with cut-off wheel
  • Small caliper
  • Perhaps a needle for cleaning the pin holes.

falcon 007 falcon 008 falcon 010

Doing the job

First we have to remove the old chip. Desoldering all pins at once and then removing the chip is no option, as the board quickly absorbs the heat. The best option in my opinion is to desolder one pin at a time and remove it with a caliper.

falcon 010

So i removed the chip carefully by using a multifunction rotary tool. Cut parallel to the pins and then parallel to the board to remove the upper part of the Chip. Be careful not to damage the GALs left to the chip (look at the left Chip on the picture above. One of the preowners had damaged it slightly by trying to remove the NVRAM chip with a screwdriver or something similar).


After the upper part is removed (where also the battery fits in) you may take a look on the chip and all we have to do now is to remove the middle part of the remaining NVRAM chip part.


Try to get some help and have somebody to hold a vacuum cleaner near the multi tool as it oterwise might become very dusty 😉

Be carefull not to cut the board!

Now you can break the inner chip from the pins…


… and easily remove it …


And after a little bit of cleaning up, you can access each pin seperately to cleanly desolder them.


No need for the old chip any more 😉


Desoldering each pin with desoldering braid and removing the pins is now an easy job which will take up to 20 minutes maximum. You can now insert your socket and solder it firmly to the board. Pay attention to cold capillary joints.

falcon 002 falcon 003

Even better 😉 But i suspect the chip + socket will be a little bit to high for our shielding, even it is a “low-profile” socket.

From this time on I have forgotten to take pictures (sorry!), but I needed to cut off the shielding where the DALLAS chip sits. Best, use a small metal saw, but be carefull, the rest of the shielding is very unstable and may get deformed. So don’t be to rough!

Once reassembled, the Falcon boots up normally …

falcon 004 falcon 005

… and keeps the time i’ve entered in the Control ACC. I don’t even need to reinitialize the NVRAM up to this point but i decided to reset it, so that further settings saved to the NVRAM will not end up in a data nirvana.

falcon 006

I used NVM_CONF by Manuel Hermann, which warned me at startup that the NVRAM is unreadable and has to be resetted. After a reboot everything seems ok and i’m quite happy that the falcon returned to normal operation.

The falcon has landed

Today the Falcon arrived! :)

falcon 002

 falcon 003

cute :)

falcon 013

Taken apart

 falcon 006

hm, a nice 10 GB IDE HD

 falcon 007

14 MB of RAM

falcon 008

uh oh, whats this? The NVRAM Chip really looks bad – the falcon obviously had a frustrated pre-owner…

falcon 010

Looks like someone tried to remove the NVRAM Chip before

falcon 016

yes, definitively. I will try to change the Chip on the weekend and pray that the board did not taken damage during the previous removal attempts…

More CT63 parts arriving

Yesterday and today more parts for my CT63 project arrived.

CT63 002

PicoPSU – a very small power supply, fits perfectly in a Falcon case

CT63 007

The corresponding external Notebook Power Adapter with 120 Watts Output at 12 V. And hey! It is designed for CT63 use!

CT63 006

A double sided PC133 512 MB SDRAM Module by Kingston – that should be enough!

CT63 005

And for the probably empty DALLAS NVRAM Chip in the Falcon… a new DS12887A and a socket (extra low profile).

Today the Falcon should arrive and on the weekend i am going to repair the NVRAM Chip!

HTML: Calculating the height of a DIV-Container

Today i had to calculate the height of a DIV-Container in Javascript:

1. Select the DIV-Container to calculate carefully, if you have a div container only with sub div containers in it and no other container, select the sub containers for calculation, if you have to know the outer div containers height, sum up both sub containers height.

2. If you haven’t yet, assign IDs to the div containers

3. use this code to get the height of the div-container:

var divelement = document.getElementById("divID");
calculatedHeight = divelement.offsetHeight;

It is important to use “offsetHeight” and not “clientHeight” as the Internet Explorer (version 7) does not parse this correctly.

The code

var divelement = document.getElementById("divID");
calculatedHeight = divelement.clientHeight;

does not work in all circumstances.

Windows Workflow Foundation: invokeWebService URL manipulating at runtime

The invokeWebservice Activity inside the Microsoft Workflow Foundation (WF) is a nice helper to get or send data from/to a webservice.

In Visual Studio 2008 you normally add the Webservice reference by referencing a URL and in most cases this URL will be a pointer to a development server. In production use you want to configure this URL of course. And here the pain begins. The invokeWebService Activity does not allow to edit the URL property at runtime. Instead you have to modify the runtime instance of the used proxy class.

You can do this by using this method in the invoking event of the activiy:

/// Called before the webservice is invoked. Here the URL can be configured during runtime by manipulating the proxy class

Webservice EventArgs including the instance of the proxy class
private void invokeGetMails_Invoking(System.Object sender, System.Workflow.Activities.InvokeWebServiceEventArgs e)
     service_ns.service proxy;
     proxy = (service_ns.service)e.WebServiceProxy;
     proxy.Url = this.wsUrl;