Thursday, January 31, 2013

More Alphas

Wow!  It's been a long time.  I guess I got a little burnt-out after all my Fahrfall-related activities last year.  But, at least I could have posted the updates that I actually made!

Alpha 2

In preparation for the Burlington Mini Maker Faire in 2012, I implemented a few new features:
  • keyboard control of Fahrve, including both CoCo and Dragon keyboards
  • an interstitial screen when starting the game
  • a Hall of Fame screen for collecting high score information
I have made a fresh rebuild of the Alpha 2 code available here:

FWIW, this is also the same version of Fahrfall that I had on display at VCF East 8.

Alpha 3

In advance of Maker Faire NC 2012, I had a few more changes:
  • improve the wording on the interstitial screen
  • improve the workings of the Hall of Fame screen
  • make the platforms change color as the game progresses
I have made a fresh rebuild of the Alpha 3 code available here:

I assure you that with this version, great fun was had by all... :-)

Coder's Block

I still maintain that I am not yet done with Fahrfall.  I have a few minor improvements in mind here and there, but mostly I want to add some in-game music.  I even have a few tunes in my head!  The problem I originally had was that I knew that playing music would require some precise timing, and that inserting code to do that would make it difficult to make further changes to the game.  Now there are few changes that I really want to make, so I guess that excuse is no longer valid.

I am not sure when I will get back to Fahrfall either for adding music or for any other new features.  By now I already have a few other projects in mind or in progress.  Maybe I should add support for my rotary controller to Fahrfall? :-)

In any case, I still think that I will be back to Fahrfall before too stay tuned!

Saturday, July 21, 2012

Retrochallenge Summer 2012 Redirect

When it came time for this years Retrochallenge Summer event, I hadn't managed to come-up with a good idea for a project.  So, I punted -- I said I'd just work some more on Fahrfall.  Unfortunately, I didn't get around to that either.  But, I did finally come-up with something good to do!

I have opened a new blog to describe that project.  Please check-out my new Stupid VDG Tricks blog for details!

Sunday, April 15, 2012

Back In The Saddle

Whoa -- it's been a while...sorry about that!  I can offer the typical excuses about life getting in the way and all that, but things really have been a bit busy lately around here lately.  Along with the usual work and family stuff, I had a big deadline at work and I did a little work-related travel.  Also, I've spent some of my free time in activities related to our upcoming Burlington Mini Maker Faire.  Part of that includes time spent towards making an arcade-style joystick intended for use in my Fahrfall display -- I intend to blog a bit more about that later, when it gets finished.  Anyway, what really matters is that I am back here now! :-)

Keyboard Control

I had always intended for Fahrfall to have keyboard controls.  I had even added them at one point, but I had some problems working-out how to handle having the choice between a joystick or the keyboard.  So, I backed that code out of the original Alpha 1 release.  No one seems to have minded that, although it did cause a little confusion for someone on the CoCo mailing list while he tried to figure-out how the emulator handled joystick inputs. :-)

I think I mentioned earlier that we have been trying to work towards having a "makerspace" in my local area.  As part of that, we have been having regular "maker club" meetings for the Alamance Makers Guild.  I have taken Fahrfall as a "show-n-tell" to a couple of those meetings.  The first time I did that was great, but the second time I forgot to bring a joystick!  Fahrfall just isn't the same when you can't get past the title screen...

The CoCo keyboard is composed of a keyboard matrix circuit formed from the pins on a couple of PIA ports.  Keyboard input is scanned by activating one column of switches at a time with one port and looking for certain input patterns on the other port.  For Fahrfall, this is simplified by the fact that the CoCo designers cleverly put the spacebar and the arrow keys on the same row.  The Dragon designers also did the same thing, albeit on a different row than what the CoCo used.  These facts not only allowed me to use a simple routine to check all the required keyboard inputs but also allowed me to select between the CoCo or the Dragon keyboard based on whichever layout was used to start the game.


The joystick inputs on the CoCo will "float high" if no joystick is connected to them.  This means that if there is no joystick plugged into the CoCo, they read as if the joystick is pointed into one of the corner positions.  So, what?  Well, that means that if we allow both joystick and keyboard input at the same time and someone tries to play without a joystick plugged-in at all, then the joystick input will force Fahrve over to one side of the screen, making the game unplayable. :-(

For now, my solution is to differentiate between whether the game is started using the joystick button or using the keyboard.  If the user hits the spacebar to start the game, then that game will only use the keyboard.  If the users starts a game with the joystick, then the keyboard will be disabled while that game is being played.  This isn't my ideal solution, but I think it is workable.  In the future I may find a good algorithm to simply detect when the joystick is missing and then to ignore it.

More To Come!

I've still got a lot in mind for Fahrfall, and time is ticking for my planned events.  I had hoped to be further along than I am, but I think this will still work.  Besides, it might be better to give Fahrfall some public play testing before moving much further in order to have a better game in the long run?  Anyway, I do have in mind a few embellishments to make in the next few always, stay tuned!

Wednesday, February 22, 2012

News Bytes

Hey y'all!  Sorry I've been inactive here for a happens...  Anyway, I thought it might be good to at least announce a few tidbits.

The Sounds Of Fahrfall

In an earlier post, I released an Alpha Test version of Fahrfall.  That release originally included a disk image which can be used either in an emulator or with DriveWire or which can be converted into an actual diskette for use on a real CoCo.  But, not everyone with a CoCo has enough hardware laying around to make use of those options and they may not be satisfied with using an emulator.  So, I used the Toolshed tools to make an audio file available that can be used to load Fahrfall through the cassette interface built-in to every CoCo!


Also, in order to satisfy my own curiosity I set-up my Tano Dragon (a CoCo "clone").  I was able to use the audio file above to load Fahrfall on this American-ized Dragon without any problems -- hooray!

Ready For The Road

In another earlier post, I mentioned that I had plans to take Fahrfall on the road a bit.  For years I have made a habit of going to the annual "Last" Chicago CoCoFEST!, and I have often taken one or more CoCo systems along with me.  Impromptu packing strategies are workable for one trip per year, but I wanted something more durable for this year's activities.  To me, nothing says "durable" like a Pelican case.

I chose the Pelican 1620 because it was the biggest case that was still small enough not to automatically qualify as "oversize" with most airlines.  With a 20" LCD monitor, a CoCo2, a CoCo3, and some misc support hardware, it will probably still be "overweight".  Hopefully I can still take it on an airplane if I need to do so.

Video Killed The Radio Star

Where I live, a group of us are trying to establish a "makerspace" (aka "hackerspace").  We do not yet have an actual space, so for now we have formed a club that we call the Alamance Makers Guild.  The club has regular meetings, and at the last meeting I did a little show-n-tell session about Fahrfall.  Our club leader Ben Harris took some video which he then edited and posted.

IMHO, Ben did a great job on the video.  You should also check-out some of the stuff he offers through his business Harris Educational.  If nothing else, buy one of his t-shirts! :-)

I have added an event to my Fahrfall road show!  For those on the east coast of the USA, make plans to attend VCF East 8.0 on May 5th and 6th, 2012.  Why?  Because Fahrfall will be on exhibit there!  Seriously, come out and tell me how much you love Fahrfall! :-)

So Long For Now

Well, those are the current highlights.  On top of that, I have recently spoken to a reporter for the local news paper.  I expect Fahrfall to be mentioned in the Burlington Times-News sometime soon -- how exciting!  Sometimes it pays to live in a more rural area...

Anyway, now you should grab the Alpha Test release and give it a go.  Let me hear from you!

Thursday, February 2, 2012

RetroChallenge Winner!

Well, the results are in...Fahrfall is a RetroChallenge Winter Warmup winner for 2012!  That officially makes Fahrfall an "award-winning" game! :-)

I know, I know -- many of you will compare this to winning an argument on the Internet... ;-)  But, I am really excited about this little honor.  The other RetroChallenge competitors had some cool projects, and it would have been perfectly reasonable to pick a different winner.  I really appreciate this little bit of recognition...I am proud of Fahrfall!!

Captains Of Industry

I know that you must be dying to get a Fahrfall t-shirt!!  Still unable to shake the Fahrfall bug, I took a little time to actually setup a CafePress storefront.  There are several options to accommodate a modest range of tastes and budgets.  Feel free to deck-out yourself in some Fahrfall gear, then come to CoCoFEST! or Maker Faire: NC and say "hello"!

I hope to get back to some Fahrfall development soon.  It might not be this weekend -- I need to dig out of the hole I made over the past month while focusing on Fahrfall.  But, I'll be back soon with some more updates -- stay tuned!

Wednesday, February 1, 2012

Fahrfall T-shirts!

OK, so I haven't quite decompressed from my work on Fahrfall.  In fact, I decided that I needed a Fahrfall t-shirt!

Capturing Graphics

I hacked-up a dummy version of the Fahrfall code.  This version cycles through just enough title screen frame sequences to get all of the "FAHRFALL" bits onto the screen.  It also skips printing the copyright info and the "PUSH BUTTON" message.  But, it does put both the falling and standing versions of Fahrve onto the screen.

I loaded that version of Fahrfall into MESS and I let it run.  I then used the GNOME screen capture utility on my Fedora desktop to cut-out the title and the Fahrve variants.  These looked alright, but they needed a little processing.

The custom t-shirt sites are fairly easy to use, but they don't seem to be very good at resizing graphics.  The Fahrve images looked fine, but they were a bit small.  I used the ImageMagick 'convert' utility to make them quite a bit bigger.  Once they were resized, you could see that there had been some dithering along the way -- Fahrve looked really blurry!  I added an option to 'convert' to sharpen the image somewhat, and it looks OK now.

Another problem with the screenshots was the opaque black background.  That doesn't sound like a problem, but when you put it on a t-shirt you will have a big square area of black that probably won't match the t-shirt beneath it.  Luckily, 'convert' understands transparency (at least for PNG images).  So I added another option to the 'convert' invocation and the opaque black backgrounds disappeared.
Customized Goodness

I visited the CafePress site and found their custom t-shirt offerings.  Their online design software is fairly easy to use.  I uploaded my graphics, added some text to plug the blog you are reading, and moved stuff around a bit.  My t-shirt is on it's way!

If you are a Fahrfall fan and you want to show your true colors, then feel free to order a copy of my design!  I don't have any relationship with CafePress (other than as a customer), so I won't make any money off your purchase.  I doubt many people will pay the full price for a custom t-shirt anyway.  Still, I would love to see someone sporting Fahrve on their back! :-)

Maybe someday Fahrfall will be popular enough to merit bulk merchandise production?  That would be cool... :-)

Tuesday, January 31, 2012

RetroChallenge Wrap-Up

The end of the RetroChallenge Winter Warmup is here.  It's time for an alpha test release of Fahrfall!

Last Minute Details

Astute observers of my videos might note that the "FAHRFALL" on the title screen has been changing a bit.  I wanted something not only that would reflect the relative sizes and speeds of each scroll from the background of the game but also that would be readable and that would look reasonably good.  After a lot of tweaking, I think that what I have now is looking just about right.

Another little detail for the alpha release is that I have added an "ALPHA TEST 1" label to the title screen.  This should clarify which version is running if there are any issues reported with the binary.  Also, it clarifies that this is not the final version of Fahrfall.

Alpha Test Release

I wasn't sure about how to release Fahrfall.  I fully expect to release the source code at some point.  However, I haven't yet gone to the trouble of adding all the proper license info and such to the source tree.  For that matter, I haven't even decided on a proper license for the source.  I'm not at all sure that the average CoCoNut is prepared to deal with having obligations under the GPL! :-)

Anyway, for now I figure that anyone interested in Fahrfall mostly just wants to play it.  Frankly, playing Fahrfall and commenting on it is the best way for anyone to help me right now.  So, I decided to just do a binary release along with a license to allow anyone to (re-)distribute it.

Fahrfall alpha test #1 LOADM binary: fahrfall.bin
BASIC loader for Fahrfall: fahrfall.bas
Disk image containing the above: fahrfall.dsk
Legal information regarding all of the above: LICENSE.TXT

SHA1 checksum values for all of the above: SHA1SUM
Detached GPG signature for SHA1SUM: SHA1SUM.sig

Don't be too freaked-out by the license file!  I am just allergic to releasing software without some sort of license attached.  This license just gives you the right to distribute the Fahrfall binary in case you want to pass it around.  I lifted it from the license file that a number of hardware vendors use to distribute their firmware for use with Linux.  If you somehow feel it is too restrictive, then feel free to contact me so we can work something out!

The disk image contains a BASIC loader for the machine language binary.  So you should only need the following command to run the game:


I tested the above on a CoCo2 using DriveWire 4.  All seems well for that setup.  If you are using an emulator, well, then YMMV.

I have done a lot of development using the "-quickload" option to the MESS emulator.  So, you can imagine my surprise when Fahrfall crashed in MESS when loading from a disk image!  I am prepared to believe that Fahrfall is doing something wrong, but I don't have time to figure that out right now.  Given that Fahrfall is running fine on real hardware, figuring-out what might be wrong with MESS isn't my highest priority.

Another emulator that is popular with CoCoNuts is VCC.  I tested Fahrfall with VCC and while the colors seemed wrong (i.e. too dark), Fahrfall seemed to work alright.  Of course VCC claims to emulate a CoCo3 -- so Fahrfall should not have run at all!!  Well, I said, YMMV...

Add some comments below if you have trouble using the binaries!  Also, feel free to comment below or to contact me off-line if you find bugs with Fahrfall or if you have serious suggestions for how to improve the game.

So, RetroChallenge has been fun!  I had intended to work on Fahrfall as an exhibit for CoCoFEST! anyway.  But the opportunity to be part of a little competition was motivating.  If nothing else, the deadline helped me to keep some focus.  Now I just have to catch-up with my DVR, etc... :-)

One problem with having a retro-computing hobby is that so few people seem to grok what it is all about.  So, it is rewarding to have an outlet to reach a few other people with the same kind of wierd interests as me.  It was even more rewarding to find that my silly little blog on Fahrfall was interesting enough to gather over 1200 page views from around the world in less than a month's time!  Who is the wierdo now?  Hmmm? ;-)

Fahrve Marches On!

Anyway, no one should read this as the end.  Fahrfall isn't done yet!  I might slow-down a bit on the blog posts, but there is still some progress to be made.  Plus, I have to get Fahrfall ready to exhibit at Maker Faire NC and CoCoFEST!  I recently got a Pelican Case for my CoCo stuff, so I might expand to some other vintage computing events as well -- feel free to suggest some venues! :-)

The Fahrfall updates will continue for a while yet to come.  As always, please continue to watch this space!