Tuesday, March 15, 2011

Authorize.net makes it hard to get a refund after a credit card expires

I'm having difficulties obtaining a refund after the credit card expired. The merchant is willing to provide a refund, but Authorize.net doesn't allow it. After a conference call with the merchant and Authorize.net support, it turns out the merchant needs to add Expanded Credit Capabilities to their account. That service is free, but it involves filling out a form and that makes the merchant a bit reluctant.

This is happening even though the transaction was less than a month ago, the same credit card account is still active, and the new card has the same number. The merchant tried just updating the expiration date, but that didn't work.

Monday, March 14, 2011

Manually downloading Yahoo Messenger

If you "download Yahoo Messenger" from Yahoo, you actually download a small executable which can download Messenger and other things. Yahoo doesn't provide you with links to the actual executable which installs Messenger. You can get links from an .ini file you can download:

http://xp.yimg.com/gj/msgr/10/ini/ymsgr10_us.ini

For other countries, change the _us to another country code, such as _ca for Canada. The Messenger install file is located at the URL which is the INST_PATH value in the YMSGR section. Currently Yahoo Messenger is located at:

http://xh.yimg.com/gj/msgr/10/client/ymsgr1000_1270_us.exe

Friday, March 04, 2011

Copying Windows to a new hard drive with dd

Based on the existence of disk cloning software, one might assume that specialized software is needed to move Windows to a new hard drive. However, that's not true; the raw data can simply be copied. My normal personal setup has a small OS partition and a large data partition. I did the copying from Linux (SystemRescueCd) using dd. Here's the procedure I followed, with sda being the new drive and sdb being the old one (don't mix them up; that could cause data loss):
  1. Copy the start sectors, before the first partition: "dd if=/dev/sdb of=/dev/sda bs=512 count=63". I could have just copied the MBR with "count=1".
  2. Run fdisk and delete the data partition from the new drive. As a side effect, this causes Linux to recognize the newly written partition table.
  3. Copy the system partition to the new drive: "dd if=/dev/sdb1 of=/dev/sda1 bs=1M".
  4. Run fdisk and change the ID of the old drive. This is one of the advanced functions. There's a bug in fdisk: it doesn't save the partition table after this. To work around the bug, make another change. I set the type of the old system partition to NTFS hidden.
  5. Reboot into Windows. It should boot off the new drive and mount the partition there as the system partition.
  6. In Windows Disk Management, extend the new partition. Windows can always use more space, and new drives are usually bigger.
  7. Still in Disk Management, create the new data partition.
  8. Copy data to the new data partition.
  9. Remove the old hard drive. It is no longer needed.
If there's no need to resize the system partition and the new drive is the same size or bigger than the old drive, the entire drive can be copied, simply using "dd if=/dev/sdb of=/dev/sda bs=1M".

When working with modern large hard drives and not moving partitions relative to the start of the disk, the NT boot sector doesn't need to be altered. If moving a partition (for example, to align it for Advanced Format on the new drive) it would be necessary to change "Number of Hidden Sectors" at offset 0x1C in the boot sector.

If the new drive fails, and the old drive has to be used again, the procedure is simple: just change the disk ID to its former ID and unhide the system partition.

Medieval CUE Splitter 1.2 is broken!

Medieval CUE Splitter is a seemingly nice and user friendly Windows application which can split many audio formats using CUE files. It supports many audio formats and preserves tag information. In terms of features, it seems so great, but it's broken and it loses audio data!

I already knew that splitting of MP3 files is broken. I wrote about it in the past, with version 1.0. A quick check in version 1.2 shows that it still doesn't work correctly.

Recently, I learned that FLAC splitting is also broken. The total number of samples in the output files is less than the number of samples in the input file. This means data was lost. There is also another minor bug which may actually be helpful: the MD5 value is not written to the file. This can be used to identify FLAC files may have been split using Medieval CUE Splitter, because "flac -t" will complain about it.

So far, it seems that Monkey's Audio (APE) files split without any data loss. The number of samples is correct, and the concatenated audio data from the split files matches the audio data from the source file. This means that as a workaround, other lossless files can be converted to APE and split. However, this workaround certainly slows things down, and I can't really trust the program because of the other bugs.