Category Archives: Computers

WordTsar Update 2



Previous Posts here and here

An update has been a LONG time coming.

I’ve been using WordTsar in all of my work for the last year.  It hasn’t lost data, and it hasn’t crashed.  It’s also not complete, and has a couple of bugs.  It does exactly what I need to get my work done, and when I need something else, I code it.  And although that method works for me, it doesn’t work for getting something out the door.

So here is what I plan to do.  I’ll finish the next feature set and make an Alpha Release available to a limited number of registered testers.  The release will be for Windows, Linux, and OSX (see below).  It’s called Alpha because it is not feature complete, and it’s only been tested by one person.  What I’m looking for from my testers, is continual feedback and feature requests.  I’ll try to get a voting system in place to rank the features, and work on them in order.  Features will be limited to items that are available in Wordstar 7.0d only.  Once WordTsar gets a bit more feature complete, I’ll allow feature requests for items not in Wordstar.

I’m looking for active testers, people that want to use WordTsar and make it better.  If you just want to play to see what it’s like, please don’t register as a tester at this time… there will be an opportunity later on in WordTsars development cycle.

To register as a tester, send an email to with the following items:

  1. First and Last Name
  2. EMail Address
  3. Why you want to test
  4. What you bring to the table as a tester (Wordstar experience, nostalgia, etc)
  5. Operating Systems you’d like to test on.

You’ll receive an email in return specifying whether you have been accepted as a tester or not.  At this point, I don’t see anyone being turned down, but you never know.  Your email address will be added to a distribution list I can use to send announcements.

For my part in this tester/developer relationship, I’ll do my best to get new releases out on a regular basis, and get a working Wordstar clone out the door for you.

Let me state again, WordTsar is not feature complete.  It has a fair amount of the command keys, below are screen  shots of the control menus.  Anything in italics is not done.

blockandsavemenu editmenu onscreenformatmenu printcontrolsmenu quickmenu

For DOT commands, the following are implemented: .ls, .lm, .rm, .mt, .mb, .oj*. , .pa Any other dot commands can be entered, of course, but are not acted upon.  Bringing the file into Wordstar will work.

Styles are not implemented.  They are very high on my todo list though.

Printing is not implemented.

Spell check is implemented under Linux only.

Very basic RTF import and export are implemented.  Import sometimes has issues.

So, as you can see, very basic indeed.  Essentially, I haven’t worked on WordTsar in a year, since as I said, it does what I want/need.


A Word on Fonts

Wordstar fonts are whacked.  Wordstar knows a little over 200 fonts.  The fonts are only available based on the printer you have.  Modern computers have laser or inkjet printers capable of many fonts.  Mapping fonts between Wordstar and WordTsar is a pain.  In order to facilitate font mappings, this is what WordTsar currently does.

  1. Try to map the Wordstar fontname to a system font name, using a Levenshtein distance algorithm.  
    1. If a good match is found, that font is used for the display.
    2. If no match is found, use a system selected font based on the font characteristics
  2. When a Wordstar file is loaded, the selected font is remembered, so when the file is saved, the same font is put back.
  3. When you select a font in WordTsar
    1. The font displays as selected.
    2. When the file is save, the fonts characteristics are saved in the Wordstar file, and Wordstar can select a matching font.
    3. When the file is loaded, it’s possible for the system to select a different font, based on font characteristics.


Basically, font handling sucks.  That being said, Wordstar 7.0d handles its file format elegantly.  I can create a new ‘sequence’ that properly stores WordTsar fonts, and have WordTsar read them back.  Wordstar will ignore the sequence when the file is loaded.  I’m not sure what it does on file save yet.  In order for WordTsar to be able to handle modern font selection properly, the Wordstar file format needs to be changed, but it can be done in a backwards compatible format.

1 –  All three versions are at the same feature level, except for the following:
OSX: Slow screen updates and somewhat flakey cursor (carat).
OSX and Windows: No spell check.

2 – All test software will be binaries, no install files, and some possible hand creation of files.  It should be straight forward, but don’t expect anything fancy yet.

WordTsar Update


Update here

I’ve been getting questions about my WordStar clone (WordTsar). Some people want to know if it’s ready for beta testing yet… when can they get their hands on it.

Not yet. Summer is never a great time for me to be coding or writing, and I’ve fallen behind.

I did refactor the display engine, and I need to do more work in there. Also, almost none of the dot commands are implemented yet. None of it’s overly difficult, but it is time consuming.  The application currently runs on Linux (very good), Windows (so so), OSX (mediocre).

Here’s a little teaser:

WordStar – My Choice in WordProcessors


Update here, and here

I was introduced to WordStar many, many moons ago.  I built myself a Ferguson BigBoard CP/M based computer (the system came with a board and parts.  I had to buy my own soldering iron), bought a Hazeltine 1400 Hazeltine Modular One terminal and two 8 inch floppy disk drives.  The terminal is so old, I can’t even find an image of it on the Internet.  That computer eventually fried… don’t ask.

Gerald Brandt - Big Board

The one thing I truly got from that system, was a deep love for WordStar from MicroPro.  I took to the command sequences like a fish to water.  Even after the BigBoard died, I stuck with WordStar and it’s command sequences.  Turbo Pascal used the WordStar keys, one of the text editors I use today has a WordStar mode (joe).

I’ve even remapped my Caps Lock key to be a Ctrl key to make keyboard navigation easier. That being said, I do seem to have gotten into the habit of using the cursor keys for navigation.  Hmmm.

Gerald Brandt - WordStar

I missed my WordStar.  Oh, I always had a DOS or CP/M Emulator available that would run WordStar, but then I couldn’t print quite right.  The files couldn’t be read by other apps for printing.  It was generally a pain.

So, I decided to double my pain… I wrote a WordStar ‘clone’.  It’s got most of the command sequences in it, it’s missing most of the dot commands, and has only rudimentary formatting support.  Still, it’s getting there.  I can pretty much read and write WordStar 4 and under files.  Wordstar 5 and up is coming.

Gerald Brandt - WordTsar (WordStar)

My next steps from here (once I get out of novel revision mode) is to

  1. complete printing
  2. complete the command keys
  3. complete the dot commands.
  4. add RTF read/write abilities (write for sure).
  5. read and write all WordStar files

Then I’ll look into adding macros.  I’ve never used WordStar macros, so it’s a new one on me.

WordTsar (yeah, bad name) isn’t a WYSIWYG wordprocessor, but it does try make things look close.  For example, the screen width is the printer width (hard coded to 8.5 x 11 for now).  The screen shot above uses Times New Roman as it’s font, so variable width fonts are displayed correctly.  Bold, italics, etc are displayed as is as well.  The main code base can deal with font changes and display the correct font, but a user can’t change the font yet.  These font styles do not yet follow the WordStar font table.  I’m not sure if they will.  I’ve added a full screen mode, since I hate distractions when I write.  The program is UTF-8 throughout, except reading and writing of WordStar files, that’s still 8 bit ASCII.

It’s currently at version 0.0.1 Alpha, but it’s pretty stable and usable.  It has one crashing bug that I’m working on (weird delete problem).

I use wxWidgets to code it, so it’s cross platform: Windows, Linux, and OSX.  I currently only have the Linux version running, but next month, we’ll see.

Ahh, what I do to keep my programming skills up while I write!  Fun fun fun.

Drobo Speed vs Linux RAID5 Speed

I recently had a failure on my 4 TB RAID5 array.  It happened when I moved the server from the rack to my office, in preparation for converting it to a desktop system.  It would still host the RAID array, but it would no longer be running all the virtual machines.

During the move, I also upgraded the RAM.  Shortly after powering the server on, I noticed that any access to my harddrives (RAID or not) was extremely slow.  The kernel showed high load, with 98% being in system.  Wow.  Before I had time to realize it was the RAM I added, I lost a drive on the RAID array.  I pulled the RAM, and things went back to normal.  I added a new drive and started rebuilding the array.  At 97.1% complete a second drive got a permanent read error.  Good bye array.

I managed to get the array back up degraded, but I couldn’t rebuild it.  Now I know I could probably have used dd to copy the disk to a new one, get another new drive, and rebuild that way.  Oh well, hindsight is 20/20.

I needed to get my data off the degraded array.  There was no critical data on it, so it had never been backed up.  How am I going to back up 2+ TB of data anyway.  It mostly contained over 1000 recordings from MythTV, some audio and video, and pictures.  Still, if I could save the data, I really wanted to.  So, I went out and purchased a Drobo.  Drobo’s don’t really like Linux that much, so I hooked it up to my Mac Mini and started copying data over via rsync.  Wow, was that slow!

It turns out the Drobo is a really. slow. device.  Although it can handle watching live TV via MythTV, it barely keeps up.  Anything else done on the Drobo kills the TV.  Granted, the Drobo is a Firewire 800 device, but it still slower than that would imply.  Knowing that I will be recording and watching 2 HD streams at the same time, I knew the Drobo wouldn’t cut it for me.  For example, a Drobo rebuild could take days, and it’s all internal to the Drobo, no firewire used.  But, during rebuild, live TV was impossible to watch.

I built a new 4 disk 2.8 TB RAID5 array under Linux, and started transferring live TV and recording to the RAID5 array.  Things got much better  I decided to do some tests.

The Drobo, connected via Firewire 800, writing a 16GB file took 628.89 seconds (10.48 minutes) ~25 MB/s
The Linux RAID 5, writing a 16GB file took 135.59 seconds (2.26 minutes) ~121 MB/s

25 MB/s is doable for two HD channels, except for the issue that nothing else could use the drives at the same time.

I then tested the connection via the network.  My MythTV Server is a simple Pentium M 1.5 GHz system, and it uses remote Samba shares for it’s storage, over GB ethernet.

The Drobo via OSX SMB share, same 16 GB file took 1451.37 seconds (24.19 minutes) ~ 11.3 MB/s
The Linux RAID5 via Linux SMB share, same 16 GB file took 459.08 seconds (7.65 minutes) ~ 35.7 MB/s

Ummmm.  Ouch!  The Mac Mini is a Core2Duo at 2.6 GHz, the Linux is a Core2Quad at 2.6 GHz.  Neither used any noticeable CPU during the file transfer.

Tweaking the OSX smb.conf file didn’t help any.  What did help was specified here.  That alone changed my speed to 16 MB/s.  Still not good enough, but better.

The Drobo is a cool device, and has it’s place.  But not in  a media streaming type environment.  I’ll use the Drobo to store my audio, pictures, and movies, but not my live TV recordings for MythTV.

A good friend of mine, Rob Peters, posted in his blog some pearls of wisdom he gleaned from Jennifer Kornelsen, Ph.D. :

1)  The simplest explanation is the best. (i.e. the most likely, the most accurate, the most truthful)

2)  The data is what it is. (trust it, let it be…)

3)  If you’re nervous and think you’re going to puke, eat something colourful! (at least then it will be Spectacular!)

Rob found these pearls to be as true in Design as in Neurophysiology.  I’m here to say they also apply extremely well to Software Design/Development, and IT work.  It’s unfortunate that, in software and IT at least, a lot of people forget item number one.

However, in the writing of fiction, I’m not so sure (well, except for item 3), at least not on the surface.  For item 1, when the reader reaches the end of a book, the final explanation of event should be clearly evident and obvious, and yes, even simple.  But during the reading of the book, the simplest explanation of the events occurring is usually the one you want the reader to follow, but should not be the true reason.  You gotta keep ’em interested.

In writing fiction, item 2 closely correlates to item 1.  This can be especially true when reading a first person narrative, where everything presented to the reader is viewed through the eyes of a single (or potentially multiple first person) characters.  If the character looks at the world through rose colored glasses (cliché), then that is how the reader will interpret the events (data) in the book, and therefor, the data is tainted.

Perhaps I should re-phrase my original statement.  To the reader of fiction, the above pearls should not be true, but to the writer, they probably should.

A day away…

I had a wonderful opportunity today.  I was able to take off and spend the day alone.  I brought my laptop, worked on The Courier and started working on the undo/redo code for my WordStar clone: WordTsar (though I may change that name).

I also brought some free range chickens to Ev and Rob in Winnipeg Beach, and spent some time on the shores of Lake Winnipeg.  A wonderful and restful day.  Thanks Marnie!


iPhone Fail…

iphone-failI’ve had my iPhone for quite awhile now, and I’ve been adding and removing apps as I needed them.  Before each removal, I synced the phone, and made a backup of the device, just to be sure.

Well apparently that’s not enough.  First, syncing the phone does not, by default, sync the apps that are on the phone.  Okay, that’s my bad.  I should have looked at all the other tabs in iTunes, and figured out what was going on.  Now that I have ‘sync apps’ checked, they still don’t sync since my Mac doesn’t have rights to the apps.  Great, thanks.

However, backup doesn’t actually backup the phone.

My phone had been getting slower and slower as time went on.  I did some research, and apparently a reset of the phone would fix the issue.  So I dutifully did a backup of the phone, did a full reset, and then a restore of the phone.  BLAM!  I lost almost everything.  The only thing that stayed was my email and calendar settings (oh, and my contacts list).  Everything else was gone.  Wiped out.  Not to be seen anywhere.  That included, of course, my handy dandy ‘Password Wallet’ that stored all of my passwords for the various systems I use and admin.

I’m not sure I have a copy of those passwords.

The iTunes App store keeps a list of the software I’ve downloaded, so I’ve restored all my purchased apps.  But c’mon.  Really?  A backup that doesn’t actually backup?  What the hell are you guys thinking?

Now some Apple dude (or dudette) is probably going to tell me what I did wrong, and why backup does what it does (my guess is something to do with DRM bullshit).  But that’s not going to bring back my lost data, or the lost time I spent getting my apps back (and I’ve only gotten back the paid apps so far).

All-in-all, I’m not a happy camper.

edit: But my iPhone is fast again!  LOL

iPhone OS 3.0

The new software for the iPhone is available today.  iPhone 3.0.  Get your copy today!


edit: 8:40 AM – I just tried to update, and it’s not available yet.

edit: 4:18 PM – Apples servers are being hit hard, and I can’t authenticate for the update.

edit: 4:47 PM – Update in progress.

2008 Accomplishments

I figured I’d write a post about what I accomplished in 2008.  This is it.  I’ll also add what I hope to accomplish with each item in 2009.

WordSlinger Beta released.  WordSlinger is an Integrated Development Environment for writers.  It’s geared towards the way I write, although I’m looking at integrating some users wishes into it.  In 2009, I’m hoping to bring this up to release quality and get it out into the world.

Moved my computer systems from Gentoo based servers to Ubuntu, as well as my desktops.

Got interviewed as a stay-at-home dad for Sharp magazine

Went to Ghana, Africa for two weeks.  (Yes, it was an accomplishment)

Went to the World Fantasy Convention for the first time.  I’d like to go again in 2009.

Started updating the blog weekly with a list of links I’ve found interesting.

Completed The Courier and got a couple of copies out to first readers.  I’ll touch it up, work on a Query, and get it out to agents in 2009.

Stopped being a true stay-at-home dad.  I accepted a job that still allows me to be the primary caregiver to my kids (essentially I’m home whenever the kids are).  I was lucky to find a forward thinking company.  My work load has increased a lot, but so far so good.

BuildMaster Beta released.  BuildMaster is an application that does nightly builds of software projects.  It notifies users on whether the builds succeeded or failed, and if they failed, what the issue was.  For 2009, I’d like to get this finished with a nice web page to report status, and some sort of data storage on the backend to show the history of builds.

Boy, when it’s listed out like that, I feel like a pretty lazy guy.  Where did all the time go anyway?

What are some of your accomplishments this year?

As the blog languishes

To my faithful reader (singlular),

I apologize for the lack of posts.  I’ve had a contract job since early this year, and on top of putting in 6+ hours a day on that, I’ve also kept up my stay-at-home dad responsibilities.  This week, I’m doing 16 hrs a day on the contract, and Grandma is taking care of the boys.  Thanks Grammy!

Next week I’m of to Albequerque to visit my clients clients, and hopefully make a delivery.  The week after that is 3 weeks of camping with my boys, and a chance to rest.

I’ll try to post something sooner next time.