Qemu 1.3 released!

You can download the source from qemu.org.  And the changelog is here.

I am on an extended holiday, and I don’t have access to any Windows build machines, or OS X build environment.. So I won’t have a build of this for quite some time (March?)..  Unless I score something in the UK that is.  Or until I find an external disk I can abuse the living daylights out of compiling.  The laptop I’m using is all flash and I don’t think it’d be ‘nice’ to run compile on it for fear of burning it out.

Anyways yeah, new Qemu.

These aren’t my binaries.. but here you go. No idea if they work, either.

Virtualizing Floppy Disk Drive – Part 1

(this is a guest post from Tenox)

I had a really bad weekend associated with floppy drive failures. Either all my floppy disks or all my drives decided to jump the ship. Nothing worked! Worse, I could not buy any “new” floppy disk anywhere. Office Depot still stocks floppies but not in stores and you have to order online and wait. Neither Halted nor Weirdstuff had them as well. Seriously?

A major disaster! Something had to be done to make it future proof. So I went to research floppy drive replacement solutions. And this is what I found. There are several Floppy Disk Emulators on the market.

Here is the list and a little bit of research on every one of them. They do have major differences to be aware of.

  • EMUFDD – The first one I found. Italian made, intended to be used in industrial machinery. The device is extremely compatible, customizable, feature rich and according to the company, individually installed in each deployment. I bears a lot of interesting features such as Network option. Apart from the high price the device is not intended to be used by hobbyists.

emufdd

  • Gotek – This one is by an Indian company. Very cheap and you can find it everywhere. It costs about $25 on eBay including shipment. However a major warning: they work by dividing the SD card in to 100 partitions, each size of a single floppy disk and multiplexing them to emulate a floppy disk. Because the partitions are formated with FAT12 the device is not usable for anything else than MS-DOS and Windows. Apparently revision F is capable of storing a single “bootable” or non-MS-DOS disk image. Also they have separate models for 720k, 1.2MB and 1.44MB.  There is a whole army of Gotek clones.

  • IPCAS – This is another clone of Gotek, however worth separate mention and a warning, it costs $300 – ouch!

ipcas

  • HxC – this one was found by claunia. As with most French stuff bit confusing because it has several web sites (one two three). The devices are manufactured in Poland by Lotharek. The price is around $150 and you can buy it on eBay. Feature wise may be the best of all, it definitely supports all the non-PC platforms and even very weird formats. The software naively supports conversion from the notorious IMD and TD0. For some people it will be appealing the HxC is an open source project and you can build it yourself. Certainly it helps to ensure longevity in case of the vendor going out of business. Definitely a winner here.

  • HxC USB Version – This is interesting variant that instead of SD card uses a wired USB connection to a host machine.  The main drawback is that it is read only. However you can’t beat it’s $70 price. For this I could probably refit few of my machines and use it for boot only.

hxcusbonly

 

  • FlexiDrive – Made in Argentina. The manufacturer claims to support all floppy disk formats including 8″ disks. SD card or USB based. They are made for industrial machinery and customized firmware for different applications. Cost $385.

FlexiDriveMV-SD

 

  • DTX200 – from Datex a French company. These are also made for industrial machinery. They maintain a large database of emulated floppy drive types. Interestingly they have video of MicroVAX using their emulator, certainly interesting from retrocomputing point of view! They also make MFM 2 CF hard disk emulator. The price is $495.

dtx200

 

I have ordered two units for testing: HxC, SD revision F from eBay and Gotek Rev F from the manufacturer. I guess testing of the units will be subject of part 2 of this post. I’m planning to try to install some of the weirdest operating systems with wildest disk formats.

Also as a final note, for more modern computers with USB support there are some more mainstream options. I have used following two professionally:

  • Floppy Emulator in Pendrive / USB Stick. The best success I had so far was zMate pen drive from DaneElec which registers as a floppy drive with the system in addition to regular removable disks. I used it several times for booting, loading Windows storage drivers or saving BIOS diagnostic logs from servers without FDD.
  • Lantronix Spider, which allows you to mount a virtual floppy disk or cdrom image from the viewer machine or SMB share, just as you would using VMware or VirtualBox. Pretty cool.

Updates:

  • Mac Floppy Emu – is specifically designed for Macintosh. However currently it only support 800K. Very promising project and once they add 1.44MB support I will want to retrofit my Macs with this.
  • 1541 Ultimate – Floppy disk emulator for Commodore C64.

WordPress spam…

So, I was looking at the start of the year about 8% of my stats was SPAM.yuck. Then something insane happened this week, it jumped to 28%.

So I crossed that point when something would have to be done!

I’ve already installed stuff to detect the spam, and it does a good overall job.  But I wanted to take it to the next level and block all traffic from the spammers! Anyone who SPAM’s probably is engaged in other nonsense that makes me not want their traffic.

Thankfully for me and this brave new era of google, I could quickly find someone has done 99% of the leg work for me right here! Thanks to Sakis’s hard work I was able to add some minor tweaks, and generate a full iptables config, flush & add the new rules, then have cron run it every few minutes.

Pretty cool stuff if I do say so myself!

Since the primary site is now offline, I’ve updated with an archive.org link. For what it’s worth, here is the meat of the article in question:

Dodging WordPress comment spammers

I admit: Allowing anyone to post comments is bad practice. Though, I’ve got my reasons to stand my ground. I’ve many times read something on a blog and to some of them I even had something to add. Could potentially help blog’s author or future visitors by sharing my own experience or request a solution to one of my problems by posting a question. Guess what? I am so lazy that I rarely go through registration procedure, just to enable me posting a comment.

I am one of those that insist dialog and discussion is always constructive as long as both ends feel like establishing it. I do not want to lose the opinion and comments of stopping-by visitors, just because I want a “safe” thing that runs on its own. But, “buts” exist. My blog is currently one month old, still it manages to receive 300+, in average, spam-oriented comments per day, while I’ve even witnessed a 1k/day.

Thank god, WordPress provides blacklist features based both on IP addresses and comment content. And it really does a good job: After messing around with your recent “spam” you can easily end up with a list that accurately detect a non constructive comment. However, you’ve not solved all your problems this way:

  • New comments still come. They are just automatically rated as spam.
  • Your database fills with garbage.
  • Your web traffic statistics are spoiled.
  • You waste bandwidth.
  • You waste CPU time.
  • If your spammer ever stop selling drugs and starts advertising flesh, all your content matching rules go away.
  • If your spammer loose interest into being a blog spammer and switch to a port-scanner, you will receive that too.

How about you refuse them a spare TCP socket? Besides, you don’t even wanna know them. All their connection attempts will end-up to void. Time for some “iptables” magic.

WordPress has already stored their IP addresses within its database. Consult that wp-config.php file you lately edit when you firstly installed WordPress, and refresh your memory on what your database name, username and password is. Mine are:


$ grep "DB_" wp-config.php

define('DB_NAME', 'mywordpress');

define('DB_USER', 'sakis');

define('DB_PASSWORD', 'myextrastrongpassword');

define('DB_HOST', 'localhost');

define('DB_CHARSET', 'utf8');

You now have to use that information into constructing this single-row command:

Check my example:

$ mysql -f -p --user=sakis mywordpress <<<"select distinct CONCAT('iptables -A INPUT -s ',comment_author_IP,'/32 -j DROP') from wp_comments where comment_approved='spam' order by 1 asc" | grep -v "^CONCAT" >> THEY_BOTHER_ME
Enter password:
$ head THEY_BOTHER_ME
iptables -A INPUT -s 113.161.128.232/32 -j DROP
iptables -A INPUT -s 117.121.208.254/32 -j DROP
iptables -A INPUT -s 118.141.141.7/32 -j DROP
iptables -A INPUT -s 118.194.1.157/32 -j DROP
iptables -A INPUT -s 119.235.27.100/32 -j DROP
...

You now have a simple recipe, named “THEY_BOTHER_ME”, ready to be executed (as root):

$ su

# . ./THEY_BOTHER_ME

Make sure you hook “THEY_BOTHER_ME” at your system’s start-up procedure and construct a cron/at job to periodically refresh it.

I’ve created a file named /etc/cron.daily/update_spammers.sh, with the following contents:

#!/bin/sh

fileloc="/etc/THEY_BOTHER_ME"

before=`cat "${fileloc}" | wc -l`
before=`echo ${before}`

cp "${fileloc}" /tmp/BOTHERS.$$

mysql -f --user=sakis --password=myextrastrongpassword mywordpress <<<"select distinct CONCAT('iptables -A INPUT -s ',comment_author_IP,'/32 -j DROP') from wp_comments where comment_approved='spam' order by 1 asc" | grep -v "^CONCAT" >> /tmp/BOTHERS.$$

sort /tmp/BOTHERS.$$ | uniq > "${fileloc}"
rm -f "/tmp/BOTHERS.$$"

. "${fileloc}"

after=`cat "${fileloc}" | wc -l`
after=`echo ${after}`

di=`expr ${after} - ${before}`
di=`echo ${di}`

printf "[%s] Spammers updated. Added %d new spammer(s) (Before: %d, After: %d)\n" "`date`" ${di} ${before} ${after}

And sadly, his original script is now offline.  This should be enough for anyone to get going on this exciting spam adventure…

Elite Dangerous

There has been some buzz about for years (decades?) about a new Elite game.  Sure the Frontier sequels were simply amazing, but now that PC’s are far more advanced than they’ve ever been, what would Elite look like today?

 

So here is a small taste!

Unlike other video games, there has been a movement afoot of the end customer directly financing the upstart cost for projects to get them off the ground.  The idea being that people themselves may be interested in a product, and they can cut out the middle men of marketers & financiers, and do so in a mob fashion.  Kickstarter is one of many sites built for this purpose.

So I was surprised to find that David Braben (Of recent Raspberry Pi fame), had started one for the future of Elite, right here.  He is trying to raise a hefty £1,250,000 to directly fund this new version of Elite.  Right now he is £683,487 short but has 41 days to go.  I would imagine that one of the reasons of why they want to go this way, is that during the Frontier days when GameTek went bankrupt, leaving much of their distribution and marketing in the air.

Is this madness?  Maybe a tad, but the original developers behind Wing Commander managed to fun their project, Star Citizen on Kickstarter as well!

Of course here is the original pitch video:

 

And be sure to check out the projects website.

Oh yeah, and as part of my jdosbox rescue, I’ve cleaned up the Frontier Elite & First Encounters images so they work now!

So I got to play with a ‘surface’ yesterday

Honestly it’s not that bad, the UI is surprisingly snappy.  The thing has a quad core processor, 2GB of ram..  the bundled keyboard… sucks. badly.  I don’t even know why they even made it.

Surprisingly, there is adobe flash on the platform.  Getting to the command prompt was pretty trivial, although I didn’t have any pure unsigned .net exe’s on me to test..  I forgot to check if the runtime included csc.exe …

The price is just too high for the platform to be compelling to be honest, it would have been a contender around the time the iPad launched, but true to MS’s nature they always let others lead before they enter the market.

Maybe after Christmas sales, or the lack of, there will be some motivation on Microsoft’s part to price it more competitively.

Also DOSBox would be a nice to have for Windows RT … but if it is all walled garden crap who knows if that’ll happen easily…