case
ADM Blog
17Apr/090

Free Windows serials keys and more


Belarc Advisor is a free personal PC Audit software that builds a detailed profile of your installed software and hardware.

What this tool also does is identifing licenced software and unlicenced ones. Stupid enough, it makes a list of those licences, and for some reason, different websites publish this hidden somewhere on their website. But as we all know, you can keep nothing secret from our good old friend Google.

So...if you need a software licence, just google for "Belarc Advisor Current Profile" (quotes included) and see a computer report with everything that computer has installed and the serials for those softwares.

Here's an example (somewhere on the bottom of the page you can find the serial keys for office and windows and others)

If you want to be more specific, add the software name in the google search: "Windows XP Professional" "Belarc Advisor Current Profile"

freewindows xp serial key

17Apr/090

Install Windows XP on your Asus Eee PC using a USB flash drive

This method of running and installing a Windows from a USB flash drive works on all computers not just Asus Eee PC's.

To complete this tutorial you'll need:

- a 32bit version of Windows XP or Windows Vista installed on your computer

- USB_PREP8

- PeToUSB

- Bootsect

- a Windows XP instalation CD or image

Extract all the zip archives, copy the PeToUSB content into the USB_prep8 folder. Inside the USB_prep8 folder double click the executable named usb_prep8.cmd

The window that opens will look like this:

Click to enlargePress any key to continue.

Your next window will look like this:

Click to enlargeThese settings are preconfigured for you and all you need to do now is click the Start button.

Once the format is complete, DO NOT close the window. Just leave everything as it is and open a new command prompt from your start menu (type cmd in the Run box)

Inside the command window, go to the directory you have bootsect.exe extracted and type (see note bellow first)

bootsect.exe /nt52 R:

Note: R: is the drive of my USB stick. Open Windows Explorer and see what letters yours is assigned to and change the command accordingly. When running the bootsect.exe command, you must close all windows/programs that are displaying/using the content of the USB stick to allow the boot sector writer to lock the device and write the sector correctly.

This part writes the correct boot sector to your USB stick and allows the pc to boot from the stick. Without this noting works.  If all went well with the command, you should see "Bootcode was successfully updated on all targeted volumes"

Now you can close this command prompt and the PeToUSB window (but make sure not to close the usb_prep8 one by mistake)

The window you see now should look like this:

Click to enlarge

Now you need to enter the correct information for number 1, 2 and 3

- Press 1 and then enter. A folder browse window will open for you to browse for the location of your XP setup files (cd rom drive, mounted image or a folder somewhere on your system)

- Press 2 and enter a letter not curently assigned to a drive on your PC (try x or someting at the end of the alfabet)

- Press 3 and enter the drive letter of your USB stick

- And finally, press 4 to start the process

The script will ask you if its okay to format the virtual tempdrive (the one at step 2). This is just a temp drive the program creates and mounts to cache the windows installation files. You can safely press Y to continue

Once it's done formating, press enter to continue again, you can now see the program copying files to the temp drive it created. This will take a while (browse other articles from my blog till then :) ) but once this is done, press enter to continue again.

Next you will see a box pop up asking you to copy the files to USB drive (yes/no options). You want to click yes here.

Once the script has completed once again a shit long copying process, another window asking if you would like the USB drive to be preferred boot dive U:. select Yes on this window too.

Now select yes to unmount the virtual drive.

Ok we are done the hard part, close the usbprep8 window.

Now make sure your EEE pc is configured with USB as the primary boot device.
Insert your USB drive and boot up the EEE.

On the startup menu you have two options, select option number 2 for text mode setup.

From this point on it is just like any other windows XP installation delete/recreate the primary partition on your EEE pc and format it using NTFS. Make sure you delete ALL partitions and recreate a single partition or you will get the hal.dll error message.

Once the text mode portion of setup is complete it will boot into the GUI mode (you can press enter after the reboot if your too excited to wait the 30 seconds)

Once the GUI portion of setup is complete you will again have to boot into GUI mode this will complete the XP installation and you will end up at you XP desktop. It is very important that you DO NOT REMOVE THE USB STICK before this point. Once you can see your start menu it is safe to remove the usb stick and reboot your pc to make sure everything worked.

This method has advantages over all current no cdrom methods of installing XP to the EEE. You do not have to copy setup files in DOS to the SSD and install from there. It gives you access to the recovery console by booting into text mode setup, and it gives you the ability to run repair installations of XP if you have problems later on.

I hope this worked out for you and please post feedback to the comments section.

xpinstall

17Apr/090

Reset system password for EeePC


If you managed to lose your Eee PC password, you can reset it with a pretty simple hack without resetting it with the built-in "Restore Factory Settings" and lose everything on your drive.

The first step in recovering your password is to remove the login password request so you can access your system.

Removing the login password request

To remove the password request, you have to delete a configuration file from your file system. You can do this by entering the single user mode.

1. Entering boot loader of the Eee PC

boot window for eee pc

Turn on your Eee Pc and as soon as the first screen appears (the one with the "Press F2 to run setup") pres and hold pressed the f9 key, until the Grub main screen will appear.

Click to enlarge

Your options are:

  • Normal Boot
  • Perform Disk Scan
  • Restore Factory Settings

2. Booting Single User Mode

Select Perform Disk Scan and press "e" key to edit the line. Now select the second line (the one that begins with "kernel") and pres "e" again

Click to enlarge

The cursor will blink at the end of the line. To enter the single mode you have to replace the string XANDROSSCAN=y with XANDROSBOOTDEBUG=y. Make sure you typed it correctly.

Click to enlarge

Now press enter and then press "b" key to boot single mode user.

3. Removing the configuration file with BusyBox

Now you'll enter BusyBox, a small Linux-based system, with an ash shell. With this shell you'll have to delete the configuration file (requireLogin) located in /home/user/.AsusLauncher/. This way you'll remove the login password request !

Once in the BusyBox shell, execute the following commands:

for the Eee PC 701 or Eee PC 904 HD:

- mount /dev/sda2 /mnt-user/

- cd /mnt-user/home/user/

- rm .AsusLauncher/requireLogin

- exit

for the Eee PC 900:

- mknod /dev/sdb b 8 16

- mknod /dev/sdb1 b 8 17

- mount /dev/sdb1 /mnt-user/

- rm /mnt-user/user/.AsusLauncher/requireLogin

- exit

Click to enlarge

... press return to reboot and to enter your Eee PC without the login request ;) This was the the hardest part. Keep reading

Resetting the old password setting a new one

Now you're able to read and edit your files, but you can't administrate your Eee PC; you have to set a new password

Open the terminal (browse for it or just press CTRL+ALT+T) and type:  sudo passwd user

Press enter and type the new password. Do the same for the root password by typing: sudo passwd

As promised, you're playing again with your Eee PC without any data loss! Have fun ;)

28Mar/090

Sudoku solver in python

lens1512255_sudoku12Sudoku is a logic-based, combinatorial number-placement puzzle. The objective is to fill a 9×9 grid so that each column, each row, and each of the nine 3×3 boxes (also called blocks or regions) contains the digits from 1 to 9 only one time each. The puzzle setter provides a partially completed grid.
I'm really not a sudoku fan but I love solving problems and sudoku offers you a challenging one. So...here's a the shortest sudoku solver written in python

1
2
3
4
def r(a):i=a.find('0');~i or exit(a);[m
in[(i-j)%9*(i/9^j/9)*(i/27^j/27|i%9/3^j%9/3)or a[j]for
j in range(81)]or r(a[:i]+m+a[i+1:])for m in'%d'%5**18]
from sys import *;r(argv[1])

If you want to test that, save it in a file and use the command line to execute the code. Execute the code as following: python solver.py puzzle - where puzzle is an 81 character string representing the puzzle read left-to-right, top-to-bottom, and 0 is a blank space

python solver.py 530070000600195000098000060800060003400803001700020006060000280000419005000080079

The problem with the above code is that is really slow. Here's another one that runs about 100x faster and is less cryptic.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
import sys
 
def same_row(i,j): return (i/9 == j/9)
def same_col(i,j): return (i-j) % 9 == 0
def same_block(i,j): return (i/27 == j/27 and i%9/3 == j%9/3)
 
def r(a):
  i = a.find('0')
  if i == -1:
    sys.exit(a)
 
  excluded_numbers = set()
  for j in range(81):
    if same_row(i,j) or same_col(i,j) or same_block(i,j):
      excluded_numbers.add(a[j])
 
  for m in '123456789':
    if m not in excluded_numbers:
      # At this point, m is not excluded by any row, column, or block, so let's place it and recurse
      r(a[:i]+m+a[i+1:])
 
if __name__ == '__main__':
  if len(sys.argv) == 2 and len(sys.argv[1]) == 81:
    r(sys.argv[1])
  else:
    print 'Usage: python sudoku.py puzzle'
26Mar/090

How Software Companies Die

orson-scott-card_03The environment that nurtures creative programmers kills management and marketing types - and vice versa. Programming is the Great Game. It consumes you, body and soul. When you're caught up in it, nothing else matters. When you emerge into daylight, you might well discover that you're a hundred pounds overweight, your underwear is older than the average first grader, and judging from the number of pizza boxes lying around, it must be spring already. But you don't care, because your program runs, and the code is fast and clever and tight. You won.

You're aware that some people think you're a nerd. So what? They're not players. To them C++ is a decent grade, almost a B - not a language. They barely exist. Like soldiers or artists, you don't care about the opinions of civilians. You're building something intricate and fine. They'll never understand it.

BEEKEEPING

Here's the secret that every successful software company is based on: You can domesticate programmers the way beekeepers tame bees. You can't exactly communicate with them, but you can get them to swarm in one place and when they're not looking, you can carry off the honey.

You keep these bees from stinging by paying them money. More money than they know what to do with. But that's less than you might think. You see, all these programmers keep hearing their fathers' voices in their heads saying "When are you going to join the real world?" All you have to pay them is enough money that they can answer (also in their heads) "Geez, Dad, I'm making more than you." On average, this is cheap.

And you get them to stay in the hive by giving them other coders to swarm with. The only person whose praise matters is another programmer. Less-talented programmers will idolize them; evenly matched ones will challenge and goad one another; and if you want to get a good swarm, you make sure that you have at least one certified genius coder that they can all look up to, even if he glances at other people's code only long enough to sneer at it.

He's a Player, thinks the junior programmer. He looked at my code. That is enough. If a software company provides such a hive, the coders will give up sleep, love, health, and clean laundry, while the company keeps the bulk of the money.

OUT OF CONTROL

Here's the problem that ends up killing company after company. All successful software companies had, as their dominant personality, a leader who nurtured programmers. But no company can keep such a leader forever. Either he cashes out, or he brings in management types who end up driving him out, or he changes and becomes a management type himself. One way or another, marketers get control.

But...control of what? Instead of finding assembly lines of productive workers, they quickly discover that their product is produced by utterly unpredictable, uncooperative, disobedient, and worst of all, unattractive people who resist all attempts at management. Put them on a time clock, dress them in suits, and they become sullen and start sabotaging the product. Worst of all, you can sense that they are making fun of you with every word they say.

SMOKED OUT

The shock is greater for the coder, though. He suddenly finds that alien creatures control his life. Meetings, Schedules, Reports. And now someone demands that he PLAN all his programming and then stick to the plan, never improving, never tweaking, and never, never touching some other team's code. The lousy young programmer who once worshipped him is now his tyrannical boss, a position he got because he played golf with some sphincter in a suit.

The hive has been ruined. The best coders leave. And the marketers, comfortable now because they're surrounded by power neckties and they have things under control, are baffled that each new iteration of their software loses market share as the code bloats and the bugs proliferate. Got to get some better packaging. Yeah, that's it.

Orson Scott Card {Windows Sources, March 1995, p. 208}