Monday, April 23, 2012

Samsung P-SSD1800 Firmware update

Update 2013: My SSD died and I replaced it with CF card. For more info check out my blog post.

Last weekend I had to work all day on my Acer Aspire One AOA110. That's roughly 12 hours of painful waiting for the slow SSD to finish the simple tasks I was doing! At some point that day I started searching on the internet for a solution to this agony and found a firmware update to my Samsung P-SSD1800 8GB SSD. The update is for 8 and 16 GB variants, so AOA150 can flash it too. I did not rush into doing it because I knew I'd lose all of my info (not that you could store a lot on 8GB :D). It wasn't till today that I flashed it and I'm impressed by the results!
Here you can see the test before the update:
Here is the same test after the update:
As you can see, burst rate is doubled, access time is nearly twice faster and the drive now keeps much stable read speed! Write speeds are not tested, as that would have destroyed all my info, but I bet they are better, too. Note before the update the drive was called P-SSD1800, where after the update it's PATA SSD - that's normal. My original FW version was ver2.Y0C. The new one is ver2.M0J. So, if for some reason you already have this version, there is no need to flash it. Ok, let's get to the flashing part!

Things you'll need:
1. A flash drive.
2. HP USB Disk Storage Format Tool, Rufus or other utility that can make your flash drive DOS bootable.
3. AOA110SSDFWv1.rar, containing needed files to create DOS boot disk with HP USB tool, and the firmware itself.

Steps:
1. Backup things from your SSD and flash drive as both will be erased during this operation!
2. Insert the flash drive into one of your USB ports and run the utility from 2. above.
3. Format the drive with FAT32 file system and create a DOS startup disk using the files extracted from AOA110SSDFWv1.rar
4. After the disk is created, copy all the contents of AOA110SSDFWv1.rar to it, ignoring conflicts.
5. Reboot and boot from USB flash drive.
6. You'll have two choices now - (0) Erase SSD and (1) Flash SSD FW - choose (0) Erase SSD
7. This will trigger another dialog with options (0) Erase good Block only and (1) Force Erase All block - choose (0) Erase good Block only
8. After the erase you'll get "OK SSD is erased now time for Flash" and only one option to choose - (0) Flash SSD FW. Choose it :)
9. Another dialog (and the last of that type) shows with options (0) 8GB SSD and (1) 16GB SSD - choose the one right for your SSD. In my case this is 0, as I have 8GB version.
10. After that, the main window of the flasher program will be loaded. You need to press Enter once to start the process of updating. Some lines will start showing in the right side of the window and when all is done, you'll get big green PASS in the bottom left corner of your screen.
11. After that press X on your keyboard to exit the program.
12. Reboot PC and install your OS of choice.

Here is a video (thanks Simon Holland) of the final stage of the flashing procedure

Hope you can get better results than mine ;)

Update: I got this firmware update working on 16GB model. It failed 2 times, but eventually on the 3rd time it flashed successfully. Here are the results:
Before
After
Sorry about the warning balloon - I noticed it too late to test again. As you can see here we don't have such a boost, but in my opinion the SSD is feeling better with the new firmware ;)

Other posts related to Acer Aspire One:
Replace SSD with Compact Flash card on Acer Aspire One ZG5
Aspire One AOA110/AOA150 BIOS mod - a disaster and a solution
Save precious pixels by using thin scrollbars
ReactOS on Acer Aspire One (installation without CD)
Chromium OS on Acer Aspire One
MenuetOS/KolibriOS on Acer Aspire One
EasyPeasy on Aser Aspire One
Darkness Beyond Limits

Tuesday, March 27, 2012

Darkness Beyond Limits

A couple of months ago I was keeping my monitor's brightness setting to the maximum and it was normal for me, even in the evening with the lights off. But things have changed a bit with those tablets around - now I'm used to much less brightness than my monitor's setting allows. I like Android with it's apps (like RootDim) that can control backlit and go beyond the limits. So I wanted an app for Windows that can do the same, as my minimum brightness was too bright for night reading - that's how Darkness Beyond Limits was born. Unfortunately, Windows cannot control monitor's brightness like Android can. The only thing you can do is simulate lower brightness, but this won't actually be backlit going darker :( Nevertheless, the result is satisfying - you get much dimmer screen :) There are two possible ways to achieve that and this app (written in Delphi XE, so if you want to make changes (yes, I provide the source code too) you'll need to install it) supports both of them. XE outputs quite big file, but it assures it's Windows 7 compatible, so I preferred it instead of Delphi 7. Darkness Beyond Limits is really easy to use - it has no options and no hotkeys to mess with your other hotkeys, just a tray icon. The main goal here is to be dead simple. The app will remember your last brightness setting and will apply it on startup. So, if you want to start it with Windows, just put a shortcut inside your Startup folder. I've tested Darkness Beyond Limits on 1 PC, 1 netbook and 1 laptop with Windows 8 DP, Windows 7 and Windows XP respectively. It works quite well. Also I've made some power consumption measurements (see bellow). So, how does those methods work? I'll give you an explanation with pros and cons - you decide which method to use:

Method 1 (Power):
This method uses a transparent black canvas over (almost) all of your applications, making them look darker.
Pros:
- You can get almost black screen
- Power consumption can go down a bit, depending on your screen
- Always works
Cons:
- May produce 100% usage of a core under XP and below
- Taskbar stays ontop when clicked once. This can be used as a pro when setting set too low, but otherwise it's pretty irritating. There is a workaround, but it's for Windows Vista and below - un-check "Keep taskbar on top of other windows" option in your taskbar properties.
Method 2 (Gamma):
This method uses Windows' gamma settings to simulate darker screen.
Pros:
- No 100% usage under XP as Power method
- No Taskbar ontop as Power method
Cons:
- Doesn't always work (depends on the drivers)
- Can't go as dark as Power
- No potential power consumption savings
- Improper shutdown of the app will result in brightness level not returning to normal until system reboot or by running again DBL

Switching methods:

The default method is Power. If you want Gamma, after you've run DBL at least 1 time, open DarknessBeyondLimits.ini (should be next to the exe file you ran) and correct Gamma=0 to be Gamma=1. Save. Now when you start DBL it'll use Gamma method. System Tray icon will correspond to the method used.

Systems:

PC: monitor Fujitsu Siemens P20-2 on Windows 8 Developers Preview
Netbook: Acer Aspire One AOA110 on Windows 7
Notebook: Asus X51L on Windows XP

Power Consumption (only on Power method):

PC w/o DBL: 31.3W
PC w DBL: 29.6W
Netbook w/o DBL: 13.6W
Netbook w DBL: 13.6W
Notebook w/o DBL: 19.2W
Notebook w DBL: 37.5W

Note: All systems have their backlit set to minimum. Increased power consumption on Notebook is because of Windows XP using one core on 100% for DBL.

Conclusion:

As you can see from the graphics above, you can get less power usage, no change in it, or get a lot more of it. It really depends on your monitor. Some monitors use less energy when displaying black colors, so the darker the image is, the less power it consumes. If your monitor is not one of those, Power method will not increase power usage, unless you are using Windows XP, so if you are with XP I strongly recommend Gamma method for you. If you are energy saving maniac like me, use Power method (probably you won't be using XP, as it's draining more juice than 7, not to mention 8). If you prefer stability, use Gamma method.

Download:

Binary
Source code

Wednesday, February 29, 2012

How to get the best interest, quality and save time at the same time?

Are you trying to save some money by depositing in savings account? If so, good! Putting spare money in deposit is good way to fight inflation and even make some money. Currently, the inflation in Bulgaria is 4-5%, where deposit interests are 5-7% depending on the bank, so deposits are the best safe way to save money. Or are they? What if I tell you there is MUCH better way to save small amounts of money? Yes there is - it's food. That's right food can give you way better interest that every bank. How you may ask? It's actually really simple - with the whole global economics problems the prices of daily groceries rise constantly. If you buy something today, in 2-3 months it's price will be higher and usually it'll be more than the 7% your bank is giving you! For an example, 3 months ago a jar of beans cost 2.79 BGN (1.43 EUR) where now it costs 2.99 BGN (1.53 EUR) which is just above 7% rise. Another example is a bottle of spaghetti sauce - 3 months before was 1.59 BGN (0.81 EUR), now it's 1.99 BGN (1.02 EUR) or a massive 25% increase! Also, for the latest example, the quality of the sauce is now worse than before! So if you bought it before, not only you saved 25% + inflation, but you got a better quality too! Of course you have to buy a lot of bottles to really worth it. Here it comes the time saving too - buy bulk! Buy packages of 10 or 20, but first check the expiration date of course (most products have 1-2 years). That way you'll go only 1 time (loose time for one purchase), but you'll buy as for 10 times :) Time is money ;) Ok, some calculations:
Let's say you buy 20 jars of beans:
20 x 2.79 = 55.8 (before)
20 x 2.99 = 59.8 (now)
This is 7% saved in just 3 months or 2 "free" jars of beans! Considering you eat from those jars and the price rises again through the year, we can estimate around 10-14% APY! Not bad :)
Let's say you buy 20 bottles of spaghetti sauce:
20 x 1.59 = 31.8
20 x 1.99 = 39.8
Again, here we got 4 "free" bottles and an estimation of 50% APY!!! Get that! Not to mention the quality and time.
Now, here it comes the fun part - promotions! It's another way to save even more money and combined with bulk buying it saves A LOT! Yesterday I saw those jars of beans discounted to 2.19 from 2.99! That's 36%!!! Let's do the calculation again:
20 x 2.19 = 43.8
20 x 2.99 = 59.8
That are more that 5 "free" jars! Estimation of more that 50% APY if you buy only when a promotion is active! And there always will be a promotion when buying bulk - don't start searching for a promotion when you run out of food! When your reserve is less than 40% it's good to start looking for promotions to refill it ;) Also promotions can be used to save money and time even when the prices are not going up constantly. Right now there is a promotion for my favorite rice - 1.99 BGN (1.02 EUR) for 1 kg package, where it's normal price is (for a loooong time) 2.45 BGN (1.25 EUR). Calculation:
20 x 1.99 = 39.8
20 x 2.45 = 49.0
Around 4 "free" packages of rice or estimated 15% APY!
Only one golden rule when buying bulk - buy one to test it before buying a lot, because the quality may got worse and you'll end up with a lot low quality food!
In the end, you can get over 20% APY when combining different foods. Let's say you gave 1000 BGN (511 EUR) for bulk buying this year at 20% APY average:
1000 x 20% = 200 BGN saved through food for 1 year
1000 x 7% = 70 BGN max saved through deposit for 1 year
As you can see you can easily get over 3 times better interest from food than from your bank. The more food you buy, the more savings you have :) It's up to how much you eat and how many people are there in your house. Of course bank deposits will still remain the best safe way to save money, as you can't spend 100 000 for food, but you can put them in deposit. So next time you see a promotion of a food you regularly eat, don't hesitate - buy! If you don't have the money - find it and buy! Presuming you have a deposit account, you'll be able to repay the debt when next salary comes, so get money and buy the food, as it'll give you better interest than your bank will!

Monday, February 13, 2012

MenuetOS/KolibriOS on Acer Aspire One

This is my next conquest in the series "OS for the Acer Aspire One". I've managed to boot MenuetOS and KolibriOS (it's based on MenuetOS) on my AOA110 by using a flash drive. Some may ask why? Because I can :) KolibriOS is a bit easier to make as it has bootable CD image already build on their site, where MenuetOS has only a floppy image and we have to make a CD image out of it. But the hardest (and dangerous) thing to prepare is your flash drive! You have to divide it into 2 partitions - one with CDFS file system (the FS on all compact disks) and one normal (FAT or NTFS). Not every flash drive supports that, and the way to be done depends on the controller in it. I really should make another post about how to do that, because it's really big question, but for now search Google how to do it on your flash drive and then follow the instructions below. Of course if you have an U3 flash drive, then you don't need to search anything, just use Universal Customizer to insert the CD image into your CDFS partition. After you get the things going with your flash drive, everything else is pretty easy - put the CD image into your CDFS partition on your flash drive, reboot and boot from it :) This way you should be able to boot other OSes (like Windows XP), but I haven't tried it yet. Now let me show you the steps to boot MenuetOS, as it's a bit harder:

1. Download Menuet32.
2. Use UltraISO or other imaging software to put .img file into your CD's boot sector like that:
2.1. Click on Bootable -> Load boot file...
2.2. Choose .img file
3. Save .iso image.
4. Open the program corresponding to your flash drive and burn your .iso image to your CDFS file system.
5. Reboot your netbook and boot from you newly added USB-CD

KolibriOS steps are just two - 4 and 5 from the above ;) Hope you like the experiment :)

Friday, February 10, 2012

Chromium OS on Acer Aspire One

Recently ReactOS 0.3.14 was released with USB support and I decided to try it. Unfortunately I got blank screen on my AOA110 right after the beginning (after loading a couple of drivers) of the installation :( So I decided to search for other operating systems and try them on this Aspire One AOA110. Then I remembered trying Chomium OS on my PC a while ago (failed miserably) and decided to give it a shot. It worked with a little exceptions:
Mouse sensitivity setting is not working
Brightness setting is not working. Fn key combination is working good though.
To get Chromium OS running on your machine you'll need:
1. 4 GB flash drive
2. Latest Hexxeh build
3. Image Writer
4. A little time
Steps are really simple:
1. Insert flash drive
2. Run Image Writer
3. Select img file
4. Select USB flash drive you inserted
5. Click Write
6. Wait to finish
7. Reboot and try your Chromium OS build :)

Thursday, February 2, 2012

Mazda EPC 2 Portable Launcher

I've searched a lot around the net for a portable version of Mazda EPC (Electronic Parts Catalogue) 2, but didn't found anything, so I decided to do it myself (back in 2010). Installation of Mazda's EPC is really pain in the ass, not to mention you loose all of your History when reinstalling. Here I'll show you 3 things:
1. How to prepare Mazda EPC 2 to be ready for portable launching
2. How to make your portable launcher.
3. Links to my portable launcher and source, in case you don't want to compile yourself (you still need to prepare the EPC though)

Ok, lets go!

Note: No PortableApps.com Format Specifications are met as there were none back in 2010. Still, this launcher works like a charm even in the latest PortableApps.com platform.

Part 1 (preparing Mazda EPC 2 to be ready for portable launching):
1. (Optional, but recommended) Install Windows on a virtual machine.
2. Install your Mazda EPC 2
3. Import all of your CDs in the same folder as your BIN folder.
4. On your PC (or on another PC, if you don't use virtual PC) create a folder to store your portable version of EPC. Inside of it create 2 folders - App and Data.
5. Copy all of your EPC files in App folder.
6. In Data folder create folder called Settings. In Settings folder you should put 2 files - borland.reg and MAZEPC.INI (this one I recommend you to get it from your own installation - it's stored in your Windows folder, e.g. C:\Windows)
End structure should be:
MAZDAEPC
- App
-- A1 (if you have this disk installed)
-- A2 (if you have this disk installed)
-- B1 (if you have this disk installed)
-- B2 (if you have this disk installed)
-- B3 (if you have this disk installed)
-- BACKUP
-- BIN
-- LOCAL
-- SAVE
- Data
-- Settings
7. Now prepare the launcher (part 2) or download it (part 3) and put it a side to your App and Data folders.
8. Run the launcher. You should get an error of a missing file. Go to the PC you installed Mazda EPC, find the file (typically in your System32 folder) and copy it inside your App\BIN folder (so it's next to mazdaepc.exe). Do this for all the files needed and in the end you should get Mazda EPC 2 protable running ;) I don't remember the list of files you need to copy, as I did this two years ago, but that's the way I've done it and it's working perfectly (tested on XP x86, Vista x64, 7 x86 and x64 and even 8 Developers Preview x64).
9. Enjoy!

Part 2 (writing and compiling the launcher)
1. Either install NSIS or download it portable from PortableApps.com
2. (Optional if you want icon) Either install IcoFX (or other icon editing software) or download it portable from PortableApps.com
3. Make a file called Mazda.nsi and paste the following code in it:

SetCompress force
SetCompressor /SOLID /FINAL LZMA
SetDatablockOptimize on
!include 'LogicLib.nsh'
!include "Registry.nsh"
Name "Mazda EPC2"
OutFile "MazdaEPC2Portable.exe"
VIProductVersion 1.0.0.0
VIAddVersionKey ProductName "Mazda EPC2"
VIAddVersionKey Comments "by metal03326"
VIAddVersionKey FileDescription "Launcher for Mazda EPC2"
VIAddVersionKey FileVersion 1.0.0.0
VIAddVersionKey ProductVersion 1.0.0.0
VIAddVersionKey LegalCopyright "Copyrights 2010"
CRCCheck off
SilentInstall silent
XPSTYLE on
Icon "Icon.ico" // Remove this line if you don't want Mazda's icon
Var AppDir
Var SETTINGSDIRECTORY
Section 'Main'
StrCpy $SETTINGSDIRECTORY "$EXEDIR\Data\Settings"
StrCpy $AppDir "$EXEDIR\App"
ReadINIStr $0 $SETTINGSDIRECTORY\MAZEPC.INI "ExecEnv" "InstallPath"
StrCmp $0 "$AppDir" +2 0
WriteINIStr $SETTINGSDIRECTORY\MAZEPC.INI "ExecEnv" "InstallPath" "$AppDir"
ReadINIStr $0 $SETTINGSDIRECTORY\MAZEPC.INI "ExecEnv" "SavePath"
StrCmp $0 "$AppDir\SAVE" +2 0
WriteINIStr $SETTINGSDIRECTORY\MAZEPC.INI "ExecEnv" "SavePath" "$AppDir\SAVE"
ReadINIStr $0 $SETTINGSDIRECTORY\MAZEPC.INI "ExecEnv" "LocalPath"
StrCmp $0 "$AppDir\LOCAL" +2 0
WriteINIStr $SETTINGSDIRECTORY\MAZEPC.INI "ExecEnv" "LocalPath" "$AppDir\LOCAL"
ReadINIStr $0 $SETTINGSDIRECTORY\MAZEPC.INI "ExecEnv" "BkupDir"
StrCmp $0 "$AppDir\BACKUP" +2 0
WriteINIStr $SETTINGSDIRECTORY\MAZEPC.INI "ExecEnv" "BkupDir" "$AppDir\BACKUP"
${For} $R0 1 10
ReadINIStr $0 $SETTINGSDIRECTORY\MAZEPC.INI "ExecEnv" "DataPath$R0"
StrCmp $0 '' +4 0
StrCpy $R1 $0 2 #
StrCmp $0 "$R1,$AppDir\$R1" +2 0
WriteINIStr $SETTINGSDIRECTORY\MAZEPC.INI "ExecEnv" "DataPath$R0" "$R1,$AppDir\$R1"
${Next}
CopyFiles $SETTINGSDIRECTORY\MAZEPC.INI "$WINDIR\MAZEPC.INI"
IfFileExists $SETTINGSDIRECTORY\borland.bak 0 +5
Messagebox MB_YESNO|MB_ICONEXCLAMATION "Previous registry backup of 'HKLM\SOFTWARE\Borland' found. This maybe is caused by improper termination last time. If this is the case and the termination was done on this computer, please click 'Yes'. Do you want to use this backup before continuing?" IDYES +1 IDNO +3
DeleteRegKey HKLM "SOFTWARE\Borland"
nsExec::ExecToStack `"$WINDIR\system32\reg.exe" import "$SETTINGSDIRECTORY\borland.bak"`
Delete $SETTINGSDIRECTORY\borland.bak
ClearErrors
EnumRegKey $0 HKLM "SOFTWARE\Borland" 0
IfErrors 0 +2
Goto +5
nsExec::ExecToStack `"$WINDIR\system32\reg.exe" export "HKLM\SOFTWARE\Borland" "$SETTINGSDIRECTORY\borland.bak"`
Pop $R0
StrCmp $R0 '0' 0 +10
DeleteRegKey HKLM "SOFTWARE\Borland"
nsExec::ExecToStack `"$WINDIR\system32\reg.exe" import "$SETTINGSDIRECTORY\borland.reg"`
SetOutPath "$AppDir"
ExecWait "$OUTDIR\BIN\mazdaepc.exe"
Delete $WINDIR\MAZEPC.INI
IfFileExists $SETTINGSDIRECTORY\borland.bak 0 +4
DeleteRegKey HKLM "SOFTWARE\Borland"
nsExec::ExecToStack `"$WINDIR\system32\reg.exe" import "$SETTINGSDIRECTORY\borland.bak"`
Delete $SETTINGSDIRECTORY\borland.bak
SectionEnd
4. (Optional if you want icon) Extract mazdaepc.exe icon with IcoFX (or other icon editing software) and place it next to Mazda.nsi
5. Compile Mazda.nsi with NSIS and you should get MazdaEPC2Portable.exe file next to Mazda.nsi
6. Place it next to App and Data folders from your prepared (part 1) Mazda EPC 2 portable and run it!
7. Enjoy.

Part 3 (download time!)
Here are links from previous 2 parts as well as links for the source code and the compiled launcher. Enjoy!
borland.reg
My MAZEPC.INI (I really recommend using yours)
Source code (Mazda.nsi)
Compiled binary (MazdaEPC2Portable.exe)

Wednesday, February 1, 2012

Save precious pixels by using thin scrollbars


Hi all. Recently I bought second hand Acer Aspire One AOA110 ZG5 and found 1024x600 pretty inconvenient for browsing. Then I found Thin Scroll Bar extension for Google Chrome. I know it's not much, just a couple of pixels, but still it's good. So if you are a Chrome user, give it a shot. Hope you like it.

PS: It also makes tiny scrollbars to all dropdowns.