Guide: Install Windows without a CD-ROM or floppy drive

February 27, 2007 41 comments

Guide: Install Windows without a CD-ROM or floppy drive

There are many times where I have run across a system (mainly laptops) that I need to install Windows XP or Windows 2000, and the system doesn’t have a CD-ROM (or functioning CD-ROM). This is a method I have divised using another computer, that will help you install Windows on a system with no CD-ROM available.

Items you’ll need…

– Windows 98 or equivilant CD
– A floppy bootable with Windows 98 (you can get one at bootdisk.com)
– A seperate system with Windows XP (that has a CD-ROM and floppy)
– Working knowledge of Windows and some DOS (including fdisk)
– Adapter to convert a laptop 2.5 inch to a 5.25 inch IDE Adapter (if you are trying to install to a laptop)

1) So you’re ready to install Windows XP (or 2000) on a system with no working CD-ROM or floppy. The first thing you are going to want to do is make a bootable floppy with Windows 98. On this floppy, you need to format it so that it’s system bootable. If you go to http://www.bootdisk.com, you can download various bootdisk’s from various Windows OS’.

2) So you have your floppy that is bootable now. Using the windows 98 CD, you need to extract some files from the cabinet files on the CD (.cab files). Using the extract command in the CD, you need to extract the following files and put them on the bootable floppy. “himem.sys”, “smartdrv.exe” “format.com” “fdisk.exe”.

3) Next you will need to write an ‘autoexec.bat’ and ‘config.sys’ for the floppy. This will be relativily easy. With the floppy still in the drive, open notepad (or whatever editor you want) and write this in…

device=himem.sys

Then you can save it as ‘a:\config.sys’.

After you save your config.sys file to the floppy, next you want to write an ‘autoexec.bat’ file for the floppy. Open notepad again and write this in…

smartdrv.exe

…then save it as ‘a:\autoexec.bat’.

Your floppy is locked and loaded. It’s ready to prep your hard drive for installation.

4) You will need to take the hard drive that you want to install Windows to and install it to your working XP system. When you do this, you will need to boot to the floppy disk that you created. At the DOS prompt type in…

‘a:\fdisk.exe’

In FDISK, you will need to partition the hard drive and prep it so you can format it with FAT32.

MAKE SURE THAT YOU DO NOT PARTITION THE WRONG HARD DRIVE! IT WOULD SUCK IF YOU PARTITIONED YOUR MAIN DRIVE AND LOST YOUR DATA!

When the disk is partitioned, get out of fdisk. You will have to reboot. Go ahead and boot back into the floppy disk.

5) Now you’re ready to format the hard drive. Let’s check to make sure you can access the drive. At the prompt, type in ‘dir C:’. You should see a message stating that the media is ‘invalid’. At this point, you know you are ready to format it. Type in…

‘a:\format c: /s’

It will take some time but when it’s finished, it should say ‘system transfered’. This message indicates that your hard drive is now bootable.

If you receive an “Invalid drive specification” at any point, then the drive was either…
a) not partitioned correctly or
b) the drive is not hooked up.

Next type in the prompt…

‘copy a:\*.* c:\’

It will ask if you want to copy over the command.com and a few other system files. Just say no to everything it asks. Everything else will copy over.

6) Next you need to remove the floppy from the drive, and reboot the computer back into Windows with the drive attached as a secondary drive. When you boot into windows, you should see the attached drive (drive D or something equivilant) Create a folder in this drive called ‘WinXP’. Next you want to put in the Windows XP disk into the CD-ROM. Copy the complete contents of the CD into the ‘WinXP’ folder you just created.

7) After the Windows XP CD contents are copied over, turn off the computer and remove the drive. Put the drive back into the system that you need to install Windows and boot it up. The system should automatically boot into a DOS prompt. Type in…

‘c:\WINXP\I386\WINNT.EXE’.

The next window you will see is Windows asking for the directory of the Install files. It should say

‘C:\WINXP\I386’. Continue the installation and you are set.

Most of this write up is from memory. If I misdirected a piece somewhere, please let me know so I can correct it.

Advertisements
Categories: How To:, Nerd Stuff

HowTo: Guide to replacing your laptop LCD

February 20, 2007 97 comments

This is a general guide on how to replace an LCD on a laptop. Replacing an LCD is second to the most costly repair next to replacing the motherboard. I hope this guide will help you in repairing an LCD that has been damaged/destroyed.

This is by no means an official super user manual. This write up is a check list and a general guide to help you replace a laptop LCD without having to purchase a new laptop.

Disclaimer: I claim NO RESPONSIBILITY for anyone who fails in their attempt to replace a a laptop LCD or any damage laptops can receive following this guide. I am just trying to inform others from the steps I have taken and the problems I have come across.

Alright. You just ran over your laptop and you are ready to replace that cracked LSD’d LCD display. Let’s see what we can do.

Tools Needed:

– Small Phillips Screw Driver
– Paper and pencil for documentation
– A little bit if tape to keep the screws together
– Fingernails on your fingers (i’ll explain later)

I advise those who want to replace an LCD on a laptop to read the artcle “How to Replace a DC Jack”. It will help give disassembly steps that you will help you replace a laptop LCD. The process in replacing a laptop LCD is much easier than a DC Jack replacement.

1) Do your research. Find out what type of LCD you have in your laptop. This is really important. It becomes costly, considering LCD replacements can range between $100-$300. I have ordered wrong LCD for laptops before. I once ordered an SXGA laptop screen for a Dell when the laptop took only a normal XGA. The screen looked like poop. There may be different screens for the exact same model laptop. Make sure you find the correct display type for what you have.

2) Preparing for surgery. So your replacement screen from ebay came in and it has to be installed. The next step is to decide if you are going to remove the laptop frame or not. Personally, I like to remove the frame so I don’t risk any funny business with the laptop itself. Removing the frame to the laptop also allows more freedom in movement and more visual cues. It’s purely up to you. This is a picture showing the most common place to remove the screws for the hinges to the laptop.

If you decide to remove the frame from the laptop, the front panel has to be removed. When the front panel is removed, you will see the hinges and the cable connecting the LCD to the motherboard. You can remove the cable, and unscrew the hinges to remove the frame from the laptop. Any time you remove screws, document the steps you take with the paper and pencil so you can reassemble the frame with ease.

3) Look at the frame of the laptop LCD Frame. You will see cover stickers or cushion tabs. These are the places where the screws will hide. Using a very thin flat head screwdriver or a knife, carefully dig underneath these stickers and cushions and remove them. You want to be careful because you will need to cover up the screws again using these cushions.

When you remove the screws. make sure you place these screws and covers in an easy place to find. Personally, I place the cover stickers and cushions right next to the hole where I removed them. I use tape to keep the screws together and in a safe place.

4) Next comes the tricky part. The frame from the LCD screen will not fall off. It will appear latched to the frame. That is because it is latched to the frame. This is where your fingernails will come in handy. Using your nails, you must dig into the frame and snap it off. Try not to press onto the LCD too much. When you unsnap the frame in any given area, it will become easier to snap it off around the whole frame. Just be really careful not to break the frame itself.

5) So you removed the frame. You can see the edge of the LCD and maybe the inverter. If you look on the right and left edges of the frame, you will see screws holding in the LCD screen. At this point, you will have to be extra careful on removing the LCD. Remove the screws that you see on the edges.

Be careful when you removing the last screw. You don’t want to damage the cable if there is no cushioning. Avoid touching the edges of the LCD. You will see the connector cable at the back of the LCD. Carefully remove this cable. Most of the time you have to pinch the cable to remove it. Make sure you don’t damage the cable, otherwise the new LCD won’t work.

6) The old LCD is out and you are ready to put in the new one. Once again, be very careful not to touch the edge and components of the LCD. The edge is where the all the magic happens. It’s where the interface between the circuits and the LCD goodness happens and disturbing the edge can make your new LCD look like poop.

Place the cable onto the new LCD and CAREFULLY place it into the frame. Once again…DO NOT TOUCH THE EDGES! When the LCD is back in the frame, put the screws that you removed and screw them into the frame. When the screws are tied down, now is the time to plug in the cable to the motherboard and test the laptop. We need to see if the LCD works. Turn on the laptop with the cables plugged in. If the screen works, turn off the laptop and put the rest of the frame together, and reattach the frame to the laptop (if you took it off). You are done.

Problems:

When the new LCD is installed, if the LCD powers on and it has colorful lines going through it or it looks bad, turn off the laptop, remove the LCD again and reseat the cable plugged into the back of the LCD. If it still does not look correct, then you might have a bad cable. It is also possible you may have a bad interface between the motherboard and the component that plugs into the cable. In that case, it’s time for a new laptop (unless anyone has any better solutions).

Some of the problems I have run across are…
– Screen does not have a backlight. (This usually is a problem with the inverter and it needs to be replaced.)
– Screen has lines through it. That indicates
a) damage
b) bad cabling
c) bad interface in which you unplug the cable and replug it back in or…
d) other

I hope this mini-guide helps you replace an LCD. Make sure when you replace the LCD to properly dispose the old LCD at a recycling center.

some pictures are curtousy of IrisVista and fm noise

Categories: How To:

Guide to fixing a laptop power jack. A Do-it-yourselfer

February 15, 2007 148 comments

Fixing a DC power jack on your (or someone else’s) laptop can be difficult. Not knowing what you are up against is a sure sign that you won’t ever get it back together. However with the proper steps, repairing a DC Jack can be accomplished with little headache.

This is by no means an official super user manual. This write up is a check list and a general guide to help you replace a DC jack without having to purchase a new motherboard or a new laptop.

Disclaimer: I claim NO RESPONSIBILITY for anyone who fails in their attempt to replace a DC jack or any damage laptops can receive following this guide. I am just trying to inform others from the steps I have taken for DC replacement and the blunders I have performed myself.

0) As step zero, it is important to make sure that you identify a bad DC jack. If a laptop isn’t charging when it’s plugged in combined with a very loose power jack port usually indicates you have a bad DC jack. I have also seen DC Jacks that are just fine, however when looked inside, you see it has been physically destroyed on the rear end of the jack itself. Each case is mostly different, but you will run across 3 possible scenerios.

a) The DC jack has cold solders and it just needs to be resoldered (the most common).
b) The DC jack has been broken in unseen areas of the jack itself (common diagnosis is the wiggling of the jack with the adapter).
c) There is nothing wrong with the DC Jack and it’s an issue with something else onboard (uncommon, but it happens).

1) Do your research.

So you conclude that you have a bad jack. Find out what style or sort of power jack you need for the laptop. You don’t need to open the laptop to find out what type of power jack you need. Go to ebay and search for model laptop + dc jack. For example, if you have a Dell Inspiron 2300, search ebay for “inspiron 2300 jack”. You will be greeted with some useful results. Not only will it give you results for DC Jacks but they they look like in general. It would suck if you ordered a random DC jack that doesn’t even fit inside the notebook.

At this time, it would be best to check to see if the laptop powers on. If here is enough battery juice left, turn it on to ensure that the laptop works fine. It will be essential after reassembly which I will explain later

Some models like Toshiba Satellites will have a DC jack with different pin sizes. The pin in the middle of the jack will be a different gauge or different size. It’s crucial that you check to ensure that you get the correct jack size. Failure to do so will ensure you some problems when you plug in your Power adapter (ie: it won’t fit). When you receive your DC jack in the mail, fit it on the power adapter that goes the notebook to make sure that you received the right DC jack.

2) Prepare and gather the tools you need. Make sure you have the right tools for the job.

– Screw Drivers (different sizes and shapes)
– Paper
– Pen or Pencil
– Packaging Tape
– Soldering Iron (and soldering essentials)
– Volt meter (to check continuity)
– Basic electronics and soldering knowledge

Make sure you have different types of phillips screw drivers, flat headed screw drivers, hex screw drivers, torque screw drivers, etc. If you have never been inside your laptop, then you don’t know what to expect.

3) Visual overview and time to get to know your laptop. This one is I consider an important step, but it can easily be missed.. Before I am ready to disassemble a laptop, I always look at every single screw hole, removable piece and potential issues. It’s just a practice that I myself perform to help me remember where the nooks and corners are. Take about 5 minutes to sit down and rotate the laptop around and look at it in more detail.

Time to get started…

4) Remove the external devices. By external devices, I am talking about the Hard Drive, Battery, PCMCIA devices if you have any, etc. When you remove these devices, you will see screws in new places and it will obviously make it easier to access the laptop when disassembly occurs. The CD ROM from a laptop, most of the time, cannot be removed at this point. When you start removing screws, it may be easier to remove the CDROM later but not in the beginning.

5) Disassembly and documentation of your steps. This is where the paper and pencil come in. The super duper most important tactic you need to perform during the disassembly process is the documentation. I cannot emphasize enough the need to document where every single screw location and size.

The most general place to start disassembly is on the bottom of the laptop. It has the most accessible screws. Generally what you want to do is draw on a piece of paper a rough diagram of one laptop. Draw one side of the laptop per page. On the diagram, label where screws are located on the laptop. Be as descriptive as possible about the location of the screws and their location. Here is a general example of a diagram.

When you remove screws, use the tape to stick them near the hole where they came from. In case the tape fails, the diagram you draw will assist you in putting them back where they belong. Document the order in which pieces are removed. Another solution (and what I personally do) is to collect all the screws from a section, tape them in a little bundle and stick them in a notable location.

Some laptops have only 2-3 sizes of different screws. There are many laptops that have many different sized screws. Take the time and document where each screw comes from. IBM Thinkpads are nice. They actually have a sticker that shows the label of screws and screw sizes. It comes in handy. Some Toshibas also have a label next to screw holes and give you unique identifiers.

Once again, it’s essential that you document each step you take during the disassembly of the laptop!

6) Handle with care. The Plate connector beneath the LCD is the most fragile piece of the laptop disassembly. That’s why I gave it it’s own mini-section.

It’s the most fragile because if you force to plate too hard, you will snap or damage it. Some models have it just tied down by a few screws underneath the laptop. Most models have a snap action to it. It comes in handy to use a very super duper thin flat head screw driver to probe the plate. If the screw driver bends too much, then it’s time to probe in a different section. Please be cautious when doing this. A good place to probe is on the hinges where the plate overlaps next to the LCD hinge. When you start pulling up on the hinge from the corners, it will start exposing the parts underneath it.

(Note: The LCD display will not have to be disassembled fully. Just the cord and hinges can be removed alone. You do not have to get into the insides of the LCD.)

7) Motherboard access review. You’ve disassembled the laptop and you have the motherboard in your hands. Look at the DC jack and it’s connection to the motherboard. The most common issue I see with DC jack failure is cold soldering or failure in the solder itself. Most of the time, the jack can be repaired by re-soldering the current DC jack in place. Some of the time, the DC Jack itself is damaged and needs to be replaced.

8 ) Replace / Repair the DC Jack. If the DC Jack needs to be replaced, use your soldering iron to heat up the solder from the DC jack and remove the old jack. If you have a DC jack with hooks or curves in the connector, good luck. I know how much it sucks removing this type of DC Jack, but with some patience and persistence, it can be done. When the DC Jack is removed, go ahead and solder in the new DC Jack into it’s slot.

Warning: Some motherboards have very thin rings around the DC Jack connectors themselves. The older sony Vaio laptops have them. If you heat the solder too hot or too long, these rings come off. When that happens, you might as well call it game over. These rings connect the DC Jack to the motherboard using extremely thin connections. The rings are vital to the DC Jack connection to the motherboard.

When you get the new DC Jack in the slot, you have the option of putting hot glue around the corners of the new DC Jack. It’s an option to prevent the DC jack from getting bumped and pushed too much from the AC Adapter. It’s just added strength. Just don’t over-do it if you decide to put some on.

BE CAREFUL ABOUT THE CHIPS AND ELECTRONICS AROUND THE DC JACK!

I have destroyed chips on laptops because I was not careful when I was de-soldering and soldering. A sharper soldering iron is a better tool than a blunt rounded soldering iron. Trust me on that.

9) Test your continuity. It sounds impossible, but you can test to make sure that you connected your DC Jack correctly. Most volt meters have a continuity checker on them. Check to make sure the grounded section of the DC jack properly grounds, and if possible, check to ensure that the positive pin on the DC Jack is properly connected to the motherboard. You can do this by touching some of the diodes on the motherboard close to the jack. You will know if it registers.

10) Reassembly with a little faith. This is the moment of truth. If you documented your disassembly well, then it will be your roadmap to reassembling the laptop. Start reassembling the laptop in the reverse order in which you disassembled it. Make sure you plug in every little cord, and ribbon back into your laptop. Disassembling the laptop again because you forgot a wire or ribbon is just annoying to the max.

11) Testing the laptop. Test the battery first to make sure that the laptop turns on without the DC Jack. There have been a few laptops that I have worked on that didn’t turn on after I reassembled it. It sucks, but it does happen. Sometimes you damage something during the whole process, but with caution it can be avoided.

Once you verified the laptop turns on with battery, then go ahead and plug in the DC Jack. First sign it works is the “Battery charging” light turns on and you know you have a successful replacement. At this point you can turn on the laptop and your job is complete. If your laptop doesn’t turn on .. well.. go back to step 4 and 5 and go from there. It can happen, but I haven’t seen it too often unless there are more problems with the laptop than originally thought.

I hope this gives you a general idea on how to replace a DC jack on a laptop. It’s not a perfect guide and I will edit it as necessary to clear the rough edges up.

Categories: How To:, Nerd Stuff

MySQL Learning Experience

February 7, 2007 Leave a comment

I never considered myself to be a MySQL buff. In fact I don’t think I really am a SQL buff of any sort. when trying to first learn SQL about 4 years ago, I don’t think I lasted a week before I gave up considering MySQL to be extremely boring. Trust me … it is. However the power behind it is amazing. It’s like this…

Drinking water is boring. Water tastes boring. Water is boring. But when you get a lot of it, it’s really powerful and can’t be ignored. SQL is like that. It’s rather boring on the surface, but if you can harness the power of it and use it, then it can be an amazing tool, useful and something that can just be the best thing since sliced bread.

A coworker and I were working on a SQL project we started a couple weeks ago. It was amazing the progress a co-worker and I completed with some SQL queries that he came up with that resulted from a ‘how do you do this’ question. He was working on importing data into SQL from a text file. During that process, we learned what and what not to do for an import of data.

For Example, Did you know that if you perform a ‘Load Data’ query, SQL will import data. No matter what it is. As a dummy subject, I imported ‘notepad.exe’ into my SQL database. Yes, it does import, and no it’s not pretty. All this gook went into the database and god knows why SQL doesn’t check to see if it’s correct. I’m under the assumption that it just assumes you know what you are doing. Well apparently it assumes I like importing ‘.exe’ files into databases randomly.

The support file for data imports on the MySQL page is really not too helpful. It mentions seperating data by ‘tabs’ which in turn doesn’t work. We of course put tabs between the data sets. However, Instead of seperating the data into their appropriate fields, MySQL put all the imported data into one field set. I can’t tell whether the documentation people are not keeping up with the programmers or the programms just can’t tell which ass their heads are in, but I don’t think the instructions they gave us worked.

Through bad imported data and learning processes, my time working on MySQL at the hospital has been very educational. I have a good grasp on how MySQL works and how data flows through databases on it. I may not remember the queries by heart offhand, but working on this project definately gave me a good foothold on it. If it hadn’t been for me trying to relearn it at the hospital, I don’t think I would fully acknowledge it’s capabilities.

Categories: Reviewish

Wikidoityourself

February 7, 2007 Leave a comment

Here’s what I am trying to do…
I am trying to find the resources necessary to start a Wiki and do this through an MS Windows platform. the problem is, that information on setting up a Wiki through a Windows platform isn’t readily available, let alone helpful in any direction. The resources to start a Wiki appear to be diluted. There are many projects and different types of wiki software out there, but there really isn’t a guide to help you get started on a Wiki project. the information just isn’t available. Especially if you want to learn more about it at home.

I think the main difficulties are finding the resources to make it easy in a Windows platform to any end type user. I’ve learned of many websites that offer wiki hosting. Obviously they are paid services, however I don’t think this route is the most effective. Sure it can solve any situation given that you can throw money at it, however what if you want to try this at home? I, myself am a do-it-yourself type of guy and a guide really isn’t available. However the direction I am approaching this isn’t the standard norm, but very overlooked either way. Who wants to host a Wiki from Windows? Well, I do. The resources I have seen are very Linux based resources and quite frankly, I am not going to setup another Linux box just to test out a Wiki.

I have 2 computers that are readily used at home. My main computer has Windows Vista, and my laptop has Ubuntu Linux 6.10. On the Ubuntu, i’ve already dedicated the box to learning more about Linux and Ruby on Rails programming. I even installed MythTV on it (which I shouldn’t have). I want my Linux box to be a learning experience for programming and Linux. Not for Hosting Wikis. Hence, there is my Windows box which I do a blunt majority of the work needed for anything outside of playing. It hosted a BBS, it downloads all my big Linux distros, it’s a media center for recording TV shows, it’s a server for Music and Movies. It’s the everything box. I want to host a Wiki from it for testing since it has more firepower for this sort of job.

The more recent resources (and most promising lead so far) in starting a Wiki is at this site…
http://en.wikibooks.org/wiki/Wiki_Science:How_to_start_a_Wiki

I will have to research it further, but the first hours of searching on information have been crap so far. As soon as more information is readily availabe, I will post it and hopefully my stumbling blocks so far can be made into building blocks to help others along…

Categories: Reviewish

Ruby of Rails

January 30, 2007 Leave a comment

[disclaimer — I am not a full blown ruby programmer. I only play one on tv.]

To install rails after you install Ruby, put in…
prompt> gem install rails –remote

This will promote the rails install process. Make sure you select yes for everything it asks.

If you decide to use Apache, then please enter the line in your httpd.conf file…

<VirtualHost *>
ServerName todo
DocumentRoot /[directory]
<Directory /[directory];
Options ExecCGI FollowSymLinks
AllowOverride all
Allow from all
Order allow,deny
</Directory>
</VirtualHost>

This will redirect Apache to the necessary Ruby guts.

This code will also serve as a beginning for MySQL database for Ruby. Refer to the Rails4ruby.pdf for more detail on this publishing for Ruby.

SQL Code:

CREATE TABLE `categories` (
`id` smallint(5) unsigned NOT NULL auto_increment,
`category` varchar(20) NOT NULL default ”,
`created_on` timestamp(14) NOT NULL,
`updated_on` timestamp(14) NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `category_key` (`category`)
) TYPE=MyISAM COMMENT=’List of categories’;

If you see a forbidden on your Apache, then one of the following have occured…

1) The app/directory has not been created using rails. at the prompt, put…
> rails [appname]
it will populate the directory with necessary information for the creation of the ruby application.

2) the incorrect directory in the virtual hosts code has been put in the Apache httpd.conf file. Make sure that the directory is correct.

That’s to my knowledge anyway… If you start fiddling with Apache’s httpd.conf file without knowing what you are doing, then you are at your own costs for fixing it. It’s not for toying with unless you know exactly how to fix it / or you know what you’re doing.

> ruby script/generate controller [App]
– Creates a new controller. The controller determines the flow for moving around the application. Modify the code accordingly to have it respond in a specific way or react in a certain way determined by the browser input. (Hence it’s called the controller).

More later….

Categories: Programming

Ruby on Rails derailed by unknown creature.. film at 11.

January 25, 2007 1 comment

It’s so damn frustrating when Ruby on Rails does not want to cooperate. I started working back to the rails4days pdf that helped me start the basics into RoR and even that pdf doesn’t cover the problems that I am having. I think the problem may lie with the fact that my plural versions of the names of my databases are not the same. That’s the only thing I can think of…

Scenerio:
I have created a MySQL database called “ruby”. Inside this database is a table called “tacops”. I populated ‘tacops’ with the proper fields that I want populated inside the scafford that I will create later on (scaffold :tacops). Anyway, i put in the directory rails ‘tacops’. Something I probably should have named ‘ruby’ but doesn’t matter at this point (at least I don’t think so). I have Apache pointing into that directory (c:\www\webroot\tacops\blah blah blah). I ran the controller script, the model script and the scaffold scripts. I edited the controller script and added “scaffold :tacops” line into the script to activate the tables for rails. When I go to the site, it just tells me “uninitialized constant Tacop”. I ran every scenerio I could think of to correct the issue, but I think ruby has a problem when i name my databases plural instead of singular. The problem with that is the notification system I want to impliment is tacops. It’s not plural but alas Ruby think’s it is.

Either way this shouldn’t cause a problem..right? I won’t get the chance to work on this issue on this database for probably another couple of weeks because I am being relocated to my old spot in the back area again. It has a win2k machine and I don’t feel like installing servers everywhere I go. I have 2 apache servers and ruby installed on both machines as well.

I’,m just a little frustrated today. That’s all. I just need to get my Linux box working with ruby but I haven’t put much effort into that either. Just another project..

Categories: Nerd Stuff