[an error occurred while processing this directive]

December 20, 2006

Announce: GWindows 1.0

As a followup to the release of Moments out of TIme (Adventure Type), I'm proud to announce the release of GWindows 1.0, the Screen Management Framework I used to design the look-and-feel of the game.

This new version of the screen management framework for Glulx Inform
(6) adds a variety of features, including:

  • Fixes to several minor bugs
  • GForm: a widget for building forms containing features like radio buttons, checkboxes, and the like
  • GRTS: A system for scheduling real-time events in Glulx
And what I think is the most exciting development of all: the GLoader Gallery. The GLoader Gallery is a collection of templates for GWindows user interfaces that you can slot into your games with very little effort.

Included is the gltemplate program, which acts both as a skeleton
template for writing GWindows code that uses UIs from the Gloader
Gallery and as a demo of the gallery itself.

The new home of GWindows and the GLoader Gallery is:
http://gwindows.trenchcoatsoft.com

November 30, 2006

The Wait Is Over

Well, it's bad form to pull the same gag twice running, so I'll be forthright
this time. I've written a sequel to Moments Out of Time, and now it's out.

At 865741.3 UDC, StreamDiver Alpha Tango-678 performed a routine
StreamDive to the middle of the twenty-first century.

He did not travel alone...

An agent of the Temporal Sciences Commission has gone rogue.
Now you, Captain Remington of the Streamdive Investigation
Division, must follow him back into the past to set right
what he has set wrong before all of history is unravelled in
his wake.

Explore six detailed environments for the clues you'll need
to unlock a mystery woven into humanity's past -- a secret so
powerful that it drove one of your own to commit the ultimate
crime against history.

Fully illustrated and with a complete musical score, Moments Out
of Time (Adventure Type) explodes the story begun 2001's
Interactive Fiction Competition second place winner.

Available now at http://streamdive.trenchcoatsoft.com, Download.com, and shortly at the if-archive.

November 22, 2006

[Announce]: Moments out of Time Re-release

It gives me great pleasure to announce that, after five years, I'm releasing
A revised version of my 2001 game, Moments out of Time. I did a lot of work
Making this game, and it always bothered me that my own poor choice of
platform and a few bad decisions alienated so many players from taking the
Leap and finding out what it was all about. So this new version is in Glulx:
You can rest assured that (though it might take a little effort), any solid
Interpreter should be able to handle it. Thanks to an unfortunate hard-drive
Not working at a key moment, I've had to rebuild the game from the ground up.
Go try it out, please, even if you've already played: you might even
say that it's a whole new game.


Moments out of Time is the story of a time traveler, sent back to study the
way humans lived on the eve of the third world war -- it's also the story
of a human family, flawed in their many ways, trying to cope with the
increasing inevitability of the end of their world. It's a parable about
the way we see the world, with a lot of symbolism I only noticed well
after-the-fact.

Moments out of Time took second place in the 2001 rec.arts.int-fiction
competition.

It is available at http://streamdive.trenchcoatsoft.com/moments.r2.gblorb
and will shortly appear on the if-archive.

For historical purposes, I have also rereleased the original competition
version of the game, upgraded with cover art and metadata based on the Babel
initiative (http://babel.ifarchive.org).

I hope you enjoy.

May 25, 2006

I bring you: Catopia

So, my girlfriend has just moved to town (Which is among the reasons that I've failed to keep to anything like a regular posting schedule), and she has a cat.

Her cat, being of a certain age, and being, well, a cat, is not expected to have an easy time adjusting. So, as any caring cat-owner would, my girlfriend means to bribe the cat into being happy.

More specifically, we figure that if we made her a nice cat condo (they call them that because "cathouse" was already taken), it would ease her transition to the new environment.

So we had a looksee and found that those tiny little carpeted pedestals are actually surprisingly expensive. And, as my beloved is really rather fond of her cat, she wanted to furnish her with something extravagant -- and we tok a look, and whatever the prices were, they weren't even willing to display them on the floor models for fear of scaring off the customers.

Well, it occurred to me that I could almost certainly build one of these for a fraction of the cost. So I fired up Poser (Blender or Visio would have been closer to the right tool for the job, but I've hardly ever used Visio, and Blender's UI seems to have been designed by a blind autistic Nazi) and came up with a design.

This rendering is not quite the final design, but it's pretty close. Construction s underway, and I'll have an itemized material and cost list as soon as I can find one.

In the mean time, I give you: Catopia

January 08, 2006

All the girlies say I'm pretty fly for a white guy

So I'm reading MAKE:Blog today (see link to the left), and two things caught my eye. I'm throwing this out there to the public. Maybe one of you can build it, maybe I'll build it myself (Though it seems likely that by the time I can afford the development costs, I won't have the time).

Link 1: A detailed review of the Fly Pentop Computer

The fly, if you haven't already heard the hype, is a gizmo targeted at the 8-13 crowd. It's a computer shoved into a pen. You scribble on a piece of paper (Has to be special paper, unfortunately. There's some very clever math in how it works, but the notion is that there's this thing called the Anoto pattern, which the Fly -- and most other digital writing systems -- uses to orient itself), and it does interesting stuff. The most basic of its features is that it can record what you wrote. Of course, since the Fly is, in addition to being a pen computer, a computer pen, you've technically already got a hard copy of whatever you wrote.

But it does other neat things. You can draw a calculator and use it to do math. It's very flexible in this regard; you write a C within a circle, activating calculator mode, then draw a rectangle and put some numbers and symbols in it -- in any arrangement you like -- then tap on them to do math. You can also draw a keyboard and play music. Or insert the translator biochip [2 points], and have whatever you write in English read back to you in Spanish. (Actually, I kinda get the feeling that they invented this thing, then realized that they couldn't think of very much to do with it.)

But limited in use though it may be (for now), it's a really neat evolution of the medium. Which is why an alarm went off in my brain when I saw this:

Link 2: How to turn an optical mouse into a handheld scanner

As you know, an optical mouse is a mouse that uses, very basically, a pretty simple digital camera (or, rather, a CCD -- the bit of a digital camera that takes the picture) instead of a ball to detect motion. As it turns out, there is a way to just pull the image from the CCD on some mice instead of turning it into a direction and distance.

So, here's my big and infeasable idea: Let's combine the information in these two links and build ourselves a Ghetto Fly homebrew pen computer.

There are some obvious problems with this idea. First, the optical mouse CCD has a very low resolution, and probably can't read an Anoto pattern. Second, the Fly is not built from off-the-shelf components. But hey, I just stuck a computer inside a radio. I think we can overcome these problems if we just make everything BIGGER.

I'm now imagining my homebrew pen computer. I figure that the "pen" would be about the size of an electric leaf-blower. A sheet of notebook paper would have to be enlarged to, say, 8 feet wide. It would weigh about 50 pounds.

But imagine pulling that out at a party...

January 04, 2006

MP3 Unveilled

So, as previously mentioned, I was building an mp3 player. It worked for a solid fifteen minutes before the hard drive crashed.

Well, I've replaced the hard drive, and made a few changes that I hope will keep it from happening again (A possibly unsuccessful attempt to make it mount the primary filesystem as read-only).

At any rate, it seems to be working now, though I want to add another control knob to hit a mouse button triggering a soft shutdown in the hopes of keeping this from happening again.

But now that the gift is given and received, I can reveal what it was all about:

I stuck a computer into the chassis of a 30s-style tombstone radio. The body only cost me about thirteen dollars (Two bucks plus shipping), the pedestal is made from scrap wood, and the computer was given to me by a friend's wife when she moved out of town. The speakers were an old pair I picked up years ago, the mouse came with my newest computer (Sacrificed because I had an optical mouse to use instead). The most expensive single component I had to buy for it were the three drawer knobs I bought for controls (About $4 and change a piece). The three knobs on the front control the volume, power, and track. The body came with three drilled holes for the knobs, marked for volume, tuning, and band. I drilled the connector for the volume knob directly into the original plastic volume dial for the speakers, attached the tuner dial to a dowel which presses against the Y-motion wheel from the mouse, and attached the band wheel to a dowel with various nails stuck in it to hit the controls. On the upsweep, toward the AM postion, it hits the power button for the PC. On the downsweep, toward a band which I've never heard of, it clicks one of the mouse buttons, causing the software to pause. One of the other mouse buttons now causes a shutdown. I haven't quite worked out what to hook that to.

For the tuner dial, I found a photograph of a compatable tuner dial on the internet, printed it out, and mounted it over the relevant opening. Right smack in the center, I drilled a hole and mounted a yellow LED to illuminate the dial. It doesn't look quite as natural as I'd hoped, but the other choices I had seemed likely to be even worse (I considered a cold cathode, which would have been (a) too bright, (b) too big, and (c) Too cold-cathodeish. I also tried an incandescent bulb, which burned out instantly. The LED takes its power from the motherboard's power LED jack, and glows apropriately. If I'd had more space and time, I might have tried to wire up a cluster of LEDs to the power supply, but I was on a timetable).

In all, I think it ended up looking quite convincing. If you find that hard to believe, have a look at these grainy, low-resolution pictures (Really got to get a proper digital camera): http://photos.trenchcoatsoft.com/thumbnails.php?album=5.

Cool? I like to think so.

December 13, 2005

This guy kicks my ass

As you know, I've been working on an arcade cabinet for several months now. My stumbling block has been that some of the parts I need to buy are an extravagance that I'd like to put off until after the holidays. So I don't feel that bad, but still, it's a little disencouraging that I'm on month 4 of my project while I find in MAKE: Blog this:

Build a MAME Cabinet in 24 Hours

Kudos.

December 13, 2005

MP3 Project: The Final Chapter

Today, the whole shebang is completed. Pictures will be available after christmas, and I'll post the player code too.

Here's the endgame:

94. Glue down the gutted mouse. Insert and secure a dowel rod that presses against the vertical motion mechanism inside the mouse (tuner). Screw a knob on the front
95. Mount a second dowel with a screw through it such that it hits the mouse button when turned (pause). Secure both dowels at the opposite end with blocks of wood
96. Gut a pair of computer speakers. Mount the volume control inside the case, then drill a screw into it onto which the third control knob is mounted. Mount the dial face and speakers. Stick a yellow LED in the middle of the dial.
97. Glue the power switch to another dowel and mount it so that the pause knob hits it on the upswing (lefty pausey, righty rebooty). Try to work out a way to wire the speaker power to the DC supply in the computer. Fail, because the speakers apparantly run off of 9 volts AC (An AC-AC adapter? WTF?)
98. Stick the CD drive in there, power it up. Nothing happens. Take the whole thing apart to reinstall the video card and see what gives. Just a loose connection. But while I'm in here, make a last minute change to the player code
99. Secure the CD-ROM. Correct for an error in the alignment by screwing through a floppy disk (the bad one from step 23).
100. Stick a back on the thing and turn the knob counterclockwise. Thirty seconds later, and it's "Time now for... (brrrrring) Johnny Dollar."

So that's the way it went. 100 steps and a pint of blood later, I am the proud temporary steward of a somewhat awkward MP3-CD player. There's a lot of things I could have done better, but I'm on a schedule. We'll fix it all in the next version. And let me tell you, it's a fine looking machine.

Just hope it keeps working.

December 09, 2005

MP3 Project: Day Four

On day 4 (Yesterday), the case arrived. It's absolutely beautiful. It's also much smaller than I was imagining (I wasn't mislead about its size when I bought it, I just have a poor sense of scale.

I realize I haven't told you all the details, such as what the case is. That's because this is a Christmas present, and the person whose Christmas present it is may be reading this blog. You'll find out next year.

So day 4 was spent building an external case for most of the hardware in the form of a pedestal. Here's how it went...

72. Yoink the motherboard.
73. Convince myself that no, this motherboard is not going to fit in that case
74. Cut a piece of lawan to the dimensions of the motherboard plus the power supply.
75. Realize that I ought to have left an inch on each side for the side panels. Oh well.
76. Measure how big this will be. Yoink out the wavetable and video card
77. Make sure it still works
78. It does. The bios makes some new and exciting beeps (probably the "I couldn't find a video card" beep), but it works. Huh. I wonder what that wavetable does anyway.
79. Extract the little stand-off nuts that the motherboard screws into.
80. Drill holes through the baseboard for these little stand offs.
81. Discover that the board shifted while I was marking the places to drill, so only two of the stand offs are in the right place. Drill new holes, which work
82. Experiment with setting the power supply on top of the motherboard
83. I don't like how tall that makes it, or how unstable. Screw down the power supply beside the motherboard
84. And now I need feet on the bottom since the screws went right through.
85. Trim the baseboard -- but this time remember to leave an inch on one side for a side panel.
86. Cut sides out of 1x4 -- coincidentally the same height as the power supply.
87. The back has to be attached low, since it bolts to the feet. I justify this on the principle that it will make a vent.
88. Build a top out of the heavy cardboard that was originally the back of the cupboard in my desk. The top should be load-bearing, but nothing else I had looked nice enough to be functional. I will shift the load onto the sides.
89. The back looks atrocious. Replace it with more cardboard.
90. Run the wires through the top. Realize that the physics of IDE cables precludes putting the hard drive inside the upper case. Stick it in the pedestal
91. Trim a quarter inch off the front place of the CD drive to make it fit without compromising the structural integrity of the case.
92. Slip with the saw and cut my thumb. Bleed for about 15 minutes
93. Finish trimming the CD drive. Try to work out how to secure it. Fail. Nail the back panel on. Whack my thumb with the hammer. Bleed some more.

So this is where we stand. I still need to rig up the controls, which will involve a trip to the home despot to buy some knobs and dowels. The speakers are in the mail. I may buy a sheet of fiberboard to replace the top. Looks like I've got one more day's work ahead.

December 07, 2005

More On The Mp3 Box

Kudos to hink, for pointing me at Limp. It looks like it should do exactly what I need (though MoviX also looked like that before it failed to run, but I am enheartened to learn that there's another option).

However, by the time I'd read his comment (ie. Ten minutes ago), I'd already solved the problem. So, where was I?

Day Two:
21. Boot off the slack bootdisk. Boot failed. Investigate
22. Try about fifteen other things before I realize that the boot failed because the disk was bad. Write another.
23. And another...
24. And another.... I should point out that I haven't bought a floppy disk in about ten years, so I'm just using the massive pile of old discs I've had sitting around since '95.
25. It boots! Write a root disk
26. And another...
27. And another...
28. Hey, that's a bash prompt! Let's try installing...
29. "Lost interrupt"? WTF?
30. Okay. Worked that time. Install me just enough slack to get going.
31. Hey, the BIOS never made that alarm sound before.
32. But it seems not to care.
33. Okay. I'm linuxing!
34. Let's try inserting a USB pen drive.
35. Kernel Panic. Retry.
36. etc.
37. Okay. Giving up on USB. Remove the PCI usb card because I'll use that for something else I guess
38. Mount the CDROM and try to play an MP3
39. What do you mean no sound?
40. Run ALSA configuratior. It flashes "Found 2 sound cards" then tells me it didn't find any.
41. I bet it's...
42. Yep. Reinstall the ALSA packages. Now it finds the sound card.
43. But none of the mp3 players I installed work. Something about a library...
44. Which also wasn't installed. Install it.
45. And another.
46. And another.
47. And, lo, an episode of Yours Truly, Johnny Dollar starts playing.
48. Okay. Now I need some controls...
49. Knit 1. Perl 2.
50. Cobble together a perl program that builds a playlist and then plays it. Have the program check which signal amp died from to detect whether to go to the next file on the list or the previous one.
51. Cobble together a perl program to respond to keyboard input by sending a SIGSTOP, SIGCONT, SIGTERM, or SIGHUP to amp.
52. Huh. Amp always dies from a SIGPIPE. WTF?
53. Oh. I'm killing the wrong process.
54. Success!
55. Edit inittab to launch the player and control program automagically.
56. Catastrophic failure! You can't just launch arbitrary programs from inittab if they want to talk to the real world.
57. Coax getty into running the program for me.
58. Success! Sleep mode

Day Three:
59. The thought occurs t ome that it would be mechanically simpler to accept input via the mouse.
60. Gut a mouse
61. Think long and hard about how to do this.
62. Start GPM
63. Write a perl function that opens a pipe to mev and parses its output, turning leftward, rightward, upward, or downward movement into a a single character
64. Test it. Hey! It works!
65. Replace the keyboard input bit of my controller with the mouse input bit
66. It doesn't work
67. Huh. Calling a function doesn't store the result in $_. Learn something new every day
68. Yay it works!
69. Oh. It crashed.
70. Stick a half second sleep in the controller program to keep it from responding to a zillion mouse events for every gesture
71. Success. Turn the damned thing off and do some real work.

December 06, 2005

MP3 Jukebox

Okay, here's the goal:
I want a device that will boot up, search the CD-ROM and attached USB drives for MP3 files, and play them. The device needs to respond to the following commands:
*Next
*Previous
*Volume up
*Volume down

And that's it. Also, it ought to boot up as fast as possible.

So, here's what I've done so far:

1. Buy case
2. Find target hardware (Pentium 133, 32 MB of ram. Small hard drive.
3. Download and install MoviX, which is a linux live-cd which can be installed to the hard drive to make a standalone media player.
4. MoviX won't load on the target machine. Start over.
5. Download and install Damn Small Linux. This is an itty bitty little linux distribution that should install on anything
6. Damn Small Linux won't boot on the target machine. Start over.
7. Try both on some other hardware
8. Won't work on any of those either. Start over
9. Boot target machine off of old salvaged hard drive
10. Linux boots. Fast! Hey. I wonder what the root password is on this...
11. Reboot in single-user mode and reset the password.
12. Linux boots! Fast! Yay!
13. It's redhat 5.2. Ask some friends how to get sound working in redhat 5.2
14. They tell me, rather snarkily, to buy a whole new computer costing several hundred dollars to perform the exact same task that a my $25 mp3 player does.
15. Hey. This computer doesn't have a network card. I don't actually need one, but without it, it's going to be a bitch to download the relevant software.
16. Did I mention this computer couldn't boot from the CD-ROM?
17. Decide to have a go at slackware. Hey, there's no isos. I have to download all these files manually?
18. Oh. This mirror has isos. Let me download that
19. Four CDs. Okay. Fine.
20. Estimated time Left: 3 hrs. 46 minutes.

So, I'm not going to get this done today. Sigh.

Obligatory badges

This weblog is licensed under a Creative Commons License. Some rights reserved.

Powered by Movable Type