Tuesday, September 9, 2014

A word of caution: MSI H97 PC MATE

First time since forever, I purcase a new system, and decide on a midrange system consisting of an I7-4790 with 32 GiB ram on an MSI h97 PC MATE motherboard assisted by a GeForce GTX 780 and powered by a 700 watt PSU from CoolerMaster.

The system booted perfectly, and I decided to venture away from my strict Linux-ways and do a dual-boot with Windows 7.

Installation goes smooth, and as a last, finishing touch, I decide to make sure the firmware on the motherboard is as new as shiny as it can be. This is where everything went south.

I have a look around in the BIOS, taking notice of the "M-Flash" utility, which surely must be the safest bet.

I jump to MSI's website, and download the latest BIOS, ,my old version was 7850v50, and I download 7850v3, extract it to the root of a fat32 formattet usb disk attached to one of the USB3 ports.

After rebooting to BIOS, I first save the old BIOS, just in case, the file saved is called E7850IMS.500.
Good, everything seems fine, I'm now choosing to upgrade with E7850IMS.530. I'm confronted by a screen telling me the obvious: "Don't turn off the power, restart or unplug anything while the upgrade is in progress, the system will reboot to continue"

I accept, and the system does indeed a reset, to darkness. Forever.

After useless advice from MSI (Clear CMOS, rip out battery, try again and again), I admit defeat. I tried booting the system with the usb disk in every possible USB port, I tried 3 different USB keys, it is dead, fans runs, but nothing else, no beep, no power led, nothing.

I continue my investigation as to what might have gone wrong:
I redownload the file and compare sha512 sums of both the file on the USB disk, and they unsurprisingly match.

I download the old version of the bios, also called E7850IMS.500, this should be the same software as I had on the board to begin with. I compare this with the backup that I did from the BIOS, well, first of all, the file from the website is 16777216 bytes (all versions from there are the same length), but the file written by the BIOS backup function is 6815744 bytes long.
Opening the files in a hex editor shows that the content of the file written by the BIOS is only a subset of the file from their website.. The content that the board wrote corresponds with what appears inside the file from the website at offset 0x9d0000.
So here's my question... (which MSI would not answer, even though I phrased it quite politely in my corrospondance with support): Why the FUCK does the BIOS write different files than it's supposed to read? Would it read both? or could the "M-Flesh" be so badly written that it just writes whatever file to the flash without checking as an absolute minimum the following conditions: "Does this file contain firmware for this board model?", "Does this file contain firmware in a format compatible with the current version of M-Flash?", "Is this firmware the expected size?" - I guess stuff like that is not important for a board which comes with no jtag, no schematic, no NOTHING that could possibly allow me to recover it?

Could it be that MSI ships their boards with a flash utility which is not able to flash their own updates ?

MSI has no documentation on how to update their BIOS, they state "use the provided utility", well, I did, it was provided by my motherboard, and if the onboard version can't handle the file format, it shouldn't fucking try, now should it ?

And how to flash the board correctly.. MSI is not able to give me any instructions, the README that comes with the updater tells nothing at all, the utility that comes with the board will not run under windows (which was why I resorted to M-Flash to begin with), and MSI is unable to tell me which version of DOS I should use with it..


Support finally told me this, in more broken English:
Flash the board by extracting the files into the root of an USB-Drive and using the M-Flash utility.

They told me this AFTER I told them exactly how I bricked the board.
They told me to do the exact same thing that I did, that's as close to a canned answer as it can be.

I'm done with MSI.

Sunday, August 31, 2014

0d:00.0 System peripheral: Ricoh Co Ltd PCIe SDXC/MMC Host Controller

If you're running Archlinux and have trouble getting SD-Cards to work with a Rioch PCIe SDX/MMC reader, the following series of commands will work.
I found these via launchpad.

sudo setpci -v -d 1180:e823 f9.B=fc
sudo setpci -v -d 1180:e823 150.B=10
sudo setpci -v -d 1180:e823 f9.B=00
sudo setpci -v -d 1180:e823 fc.B=01
sudo setpci -v -d 1180:e823 e1.B=32
sudo setpci -v -d 1180:e823 fc.B=00
sudo rmmod sdhci_pci
sudo rmmod sdhci
sudo modprobe sdhci
sudo modprobe sdhci_pci

Tuesday, June 24, 2014

Howto: Play RollerCoaster Tycoon 1 & 2 on wine

My current computing setup does not allow me to easily change resolution or depth on my display. Therefore, I was in quite a lot of trouble when I wanted to play RollerCoaster Tycoon.

When doing wine Rct2.exe I would get a solid black screen with the audio playing fine. My fix to this problem is installing the Xephyr server.

I'm on ArchLinux so packagenames and packagemanager commands may be specific.

First, install Xephyr and Wine (and whatever else you need)
 $ sudo pacman -S xorg-server-xephyr wine

The original installer works fine in wine, so just install the game.
 $ cd /path/to/rollercoasterdisc
 $ wine Setup.exe

Now to the "tricky" part, you need two terminals, in the first one, start Xephyr:
$ Xephyr :1 -ac -screen 1280x1024x16
A black window appears, you're now running another X-Server in 16 bpp mode on display :1.

On the other terminal, go to wherever you installed RCT1 or 2
 $ cd .wine/drive_c/blabha/RollerCoasterTycoon2/
Defining the DISPLAY variable will tell wine to start on screen :1 instead of :0.
 $ DISPLAY=:1 wine ./Rct2.exe

Woho!
An interesting note is that I tried starting Xephyr in 8 bpp mode, but then I'd get the same black screen as with the standard method, don't ask.

RollerCoaster Tycoon 2 on Wine on Xephyr on ArchLinux

Sunday, May 18, 2014

Installing Apache OpenOffice in Arch Linux

After trying and failing to get Libreoffice to work with Danish spellcheck, I gave up and decidede to install Apache OpenOffice, which by all accounts, seem like a more solid piece of software. However, this was not available in the official repositories, and I could not find any up to date, Danish versions on AUR, so I decided to give it a shot.
The only reason I've not submitted a PKGBUILD to AUR is that I can not find a direct link to the openoffice tarball. Anyway, here's how to install it:

  1. Install rpmextract ( sudo pacman -S rpmextract )
  2. Download the RPM bundle of OpenOffice for your architecture and language and extract it (tar xf Apacheblabla.tar.gz)
  3. When the bundle is unpacked you get a directory like en_US or da_DK or whichever language you downloaded.
  4. I'll use en-US as an example in the commands below, substitute as needed.
  5. Then move the RPMS directory into a newly created oooarch/src dir as shown:
    $ mkdir -p oooarch/src/
    $ mv en-US/RPMS oooarch/src
  6. Now create a new file inside oooarch called PKGBUILD, and put the following text into it:
    pkgname=apache-openoffice
    pkgver=4.1.1 #or something
    pkgrel=1
    pkgdesc="Danish openoffice from Apache"
    arch=('x86_64')
    license=('GPL')
    depends=('libidn')
    makedepends=('rpmextract')

    build() {
  7.  Then execute:
    $ cd oooarch/src/
    $ find *.rpm -exec echo rpmextract.sh {} \; >> ../PKGBUILD
  8. Now open the PKGBUILD file again, and add the following text:
    }
    package() {
      mv opt ${pkgdir}
    }
Done, build and install the package:
$ makepkg
$ sudo pacman -U apache-openoffice-blablabla.tar.xz

Done, this does not include .desktop files and such, you can add these if you want, I don't care for them.
One thing that might be convenient though, is to add a symlink  /usr/bin/soffice -> /opt/openoffice4/program/soffice so that office can be started with the "soffice" command and documents opened with the "soffice" binary, this will automatically open the writer, calc, draw, applications depending on the argument file.

$ ln -s /opt/openoffice4/program/soffice  /usr/bin/soffice

That's it.

Monday, September 2, 2013

Wizznic is not dead

Still some tweaks left, but.. WOW! :) New theme is going to be awesome ;)