Oldskooler Ramblings

the unlikely child born of the home computer wars

The diskette that blew Trixter’s mind

Posted by Trixter on September 28, 2008

As an IBM PC historian, one aspect of my hobby is archiving gaming software.  (You can take that statement to mean anything you want — whatever you think of, you’re probably right.)  At the 2008 ECCC this past Saturday, a vendor wanted to offload his entire PC stock on me for $5, which I happily accepted since there was at least one title in there (Martian Memorandum) worth that much.  When I got home, however, I found two additional Avantage (Accolade’s budget publishing title) titles that have not yet been released “into the wild”.  This means there are no copies of these games floating around on Abandonware sites.  For me, this was like finding actual gold nuggets in a collection of Pyrite.

The two games I got were Mental Blocks and Harrier7, so they join my third Avantage title Frightmare.  I decided to archive all three properly, and it was when I got to Mental Blocks that I ran into something I’d never seen before: The manual for Mental Blocks claims that, for both C64 and IBM, you put the diskette in label-side up.  I thought that had to be a typo, since every single mixed C64/IBM or Apple/IBM diskette I have ever seen is a “flippy” disk where one side is IBM and the other side is C64 or Apple — until I looked at the FAT12 for the disk and saw that tons of sectors in an interleaved pattern were marked as BAD — very strange usage.

The Incredibly Strange FAT of Mental Blocks That Stopped Living And Became Mixed-Up Formats

The Incredibly Strange FAT of Mental Blocks That Stopped Living And Became Mixed-Up Formats

A DIR on the disk shows that only about 256K of it is usable as space, instead of 360K.  My Central Point Option Board’s Track Editor (TE.EXE) confirmed that every other track on side 0 cannot be identified as MFM data.  So the manual is correct, and this truly is a mixed-format, mixed-architecture, mixed-sided diskette.

This diskette has officially blown my mind.

This is the very first time I have ever seen something like this.  The data for the IBM program takes up more than 160KB as evidenced by a DIR.  The C64 1541 drive is a single-sided drive; IBM’s is double-sided. Based on all this, we can deduce how this diskette is structured and why:

– The IBM version of the game required more than 160KB (ie. needed more than one side of a disk), probably because it has a set of files for CGA/Herc (4/2 colors) and another for EGA/Tandy (16 colors) and either set will fit in 160K but both won’t
– The C64 version required around 80K, based on the fact that every other track is unreadable by an IBM drive
– The publisher had the requirement of using only a single disk to save on packaging and media costs
– Not wanting to limit the game to either CGA or EGA, someone at Artech (the developer) built the format of this diskette BY HAND so that DOS would not step on the C64 tracks, and somehow the C64 would also read/boot the disk

I don’t know how the C64 portion boots since track 0 sector 0 looks like a DOS boot sector, but quick research shows that C64 disks keep their index on track 18.  If anyone knows how C64 disks are read and boot, I’d love to know.

I think I need to go on a mission to discover who built the disk format(s) by hand to see what he was thinking.  Did he work on it for weeks, feverishly trying to figure out how to meet the publisher’s demands?  Or was he so brilliant that he did it all in a day or so, not thinking too much about it other than it was just another facet of his job?  Fascinating stuff!

Just goes to show that you can still get surprises in this hobby after 25 years, even after being considered one of the top 20 “subject experts” for PC oldwarez.  I guess you truly can never see it all.

Posted in Software Piracy, Vintage Computing | 180 Comments »

I’ll save you the trouble

Posted by Trixter on September 20, 2008

As I edit the NVScene video that I shot for nVidia/Demoscene.tv (technically I own the rights to the footage, but out of professional courtesy I am giving them a six-month exclusive license to it), I find myself with a lot of free time, because creating .WMV files for previews requires rendering, and rendering 1920×1080 footage on my hardware takes a very long time.  So I’ve decided to pick another series I haven’t seen completely and watch every single episode in the downtime during the renders.  I did this previously with Star Trek: Voyager and DS9.  This time, I’ve chosen Mystery Science Theater 3000, including the early KTMA episodes.  With nearly 200 shows, at 1.5 hours per show (minus commercials), this will take a while.

So, having gotten through 20 or so KTMA episodes and well into the first proper season, I am going to save you the trouble of watching the KTMA episodes:  Don’t.  Weinstein’s acting and riffing is just horrible, there is no invention exchange (my favorite part of the Joel episodes), and the movies aren’t bad enough to be funny, just bad.  Which makes the whole experience incredibly boring.  I watched them at night because I knew they would put me to sleep, which they did.

There are two KTMA episodes worth your time:  SST Death Flight (for all of the cameos) and Hangar 18, which is silly in the first hour but neat sci-fi in the last 30 minutes.  That’s right: I’m recommending those two episodes for the movies themselves.  Watch those.  Delete the others, and don’t look back.  Start with the proper Season One and just try to ignore Weinstein until he’s gone.

Yes, I am being unnecessarily unfair to Weinstein.

Posted in Demoscene, Uncategorized | 5 Comments »

Chock full of awesome

Posted by Trixter on August 27, 2008

NVScene was everything I had hoped for and much more.  Thanks to the money put behind the event by NVidia, the sound system and bigscreen was something to be in awe of:  1920×1080 on a screen about 30 feet tall.  North American sceners got the chance to meet some of the modern greats, with representatives from Farbrausch, ASD, Plastik, and more.

The talks were all outstanding, even the “history of the scene” talk we could all give in our sleep.  The demoscene.tv crew were busy running around doing interviews and live-cutting footage for your enjoyment, so they were understaffed for the actual talks and conferences.  I missed Mentor’s talk :-( :-( due to a misunderstanding on my part about the schedule, and then I may have irritated him by asking him for his slides during the Spore talk when he was busy, so that was a flub on my part… I hope he releases his slides because they looked really awesome and I’d really like to learn what he had to say.

I am in the airport waiting for my delayed flight to be undelayed, so I thought I’d put up a quick summary of what I learned at NVScene.  First, the obvious-to-Euros-but-not-Americans surprises:

  • Americans and Euros can get along wonderfully in the demoscene. (By association, there can indeed be two NA demoparties in a year without the space/time continuum imploding.)
  • Everybody has a chance to learn from each other, regardless of experience or skill.
  • Computer graphics techniques are so universal that you can hold a conversation with any demoscener, even if you can barely understand each other due to English not being your native language.

Here’s what I learned that surprised me, mainly because I don’t write demos for modern platforms, only follow them:

  • Realtime raytracing with fantastic quality is not only possible, but can be done entirely by the graphics card using pixel shaders (!).
  • Most demos (and some 4K intros!) use a scripting/build system, and each major group has their own tools.  One very interesting exception is ASD, whose coder writes all sections of the demo with the ability to render along any point in time (ie. f(x) where x is a float from 0 to 1 with 0 the start of the scene and 1 being the end).  He said he likes to “scrub” through his demo using the mouse, and doesn’t mind that his scenes are hard-coded because it only takes him 3 seconds to recompile and run.
  • Future of the scene for the next two years in two words:  Ambient Occlusion.

Polaris/ND and I tossed around a demo idea.  Not sure if NVScene will be around next year, but if not, Block Party will be.  So who knows.

I would like to publicly thank the organizers of Block Party for enabling me to attend NVScene.  And, of course, I would like to thank Gloom, Gargaj, Steeler, and Temis for making NVScene possible.

Posted in Demoscene | 2 Comments »

[N|R]VScene

Posted by Trixter on August 18, 2008

As the title says, I will be attending NVScene this year through RVScene (“The demoparty you can drive!”). I hope to see you there!

Posted in Demoscene | 2 Comments »

Kicking my own ass

Posted by Trixter on August 8, 2008

I love Wizball. Every few years, as I slowly work my way through my hobby of restoring vintage IBM PCs and clones, I will pull Wizball out and try to finish a game on the PC that I’m restoring at that time (as a burn-in test — yeah, that’s it), and see how far I can get.

The PC version of Wizball is brutal in that the speed of the game is not constant. It speeds up and slows down based on where you are and what enemies are onscreen, which is annoying all by itself, but the real problem is that the entire game is not based off of a timer. If you play it on an original 4.77MHz 8088, gameplay is glacial; the game itself is much easier because of the slower speed, but you discover a new hidden gameplay mechanic of endurance (it can take three to four hours to finish). If you play it on any 80286 or higher, it’s too fast to play.

About two years ago, I discovered a bootable disk distribution I hadn’t seen before with four games on it, one of them being Wizball. I wrote it to disk and decided to try it out on my 4.77MHz PC/XT. After trying the others, I started Wizball and before I knew it a few hours had gone by. Determined to finish, I slogged through and managed to complete the game and get a pretty good high score.

Since the game wasn’t written to save high scores to disk, I wrote my score on the sleeve (like putting quarters on the marquee of an arcade game, a common computer nerd practice back in the day). For your enjoyment, here is that disk:

Not a bad score, if I do say so myself. I wrote the score down, happy that I had finally finished the game, and put the disk away.

Today I was organizing all of my loose floppy disks and sleeves (gathering into a giant pile is more accurate) in an effort to see which disks I could reformat to archive some data off of a new conquest.  In a pile of nearly 100 sleeves, this little gem put me in my place:

Evidently, twenty years ago, I had kicked my own ass at Wizball.

(And it was a true ass-kicking, since my machine twenty years ago ran at 7.16MHz, not 4.77MHz, which meant the game ran normally and required decent reflexes to play.)

Posted in Gaming, Vintage Computing | 6 Comments »

A Rebuttal

Posted by Trixter on August 3, 2008

My son wanted the opportunity to rebut the rules I laid down for shooters, so here is his response:

Max’s Rebuttal

Posted in Family, Gaming | 1 Comment »

Birthday Frags

Posted by Trixter on August 1, 2008

Today I am 37. I am also 237. I’m working on the latter.

My youngest son Max will be 9 years old in November, but already he has been bugging (begging?) me to play some first-person shooters. I initially thought this was a good idea and let him play TimeShift with all of the blood/gore turned off. But something struck me as he played it: As he was gunning down the enemy, he was showing hardly any reaction as to what they were doing. In other words, he was shooting a fairly realistic gun at a fairly realistic enemy, who was yelling and dying in a fairly realistic way, and he simply was not reacting to this at all. That bothered me, so I uninstalled the game (actually I rar’d it up and moved it to another drive — I figure by the time he’s smart enough to figure out how to restore it, he’ll be old enough to play it :-).

While I relish the thought of nurturing the next Fatal1ty, I am bound by the morals/values/scruples that all parents (should) have. So I had to lay down the law last month about what he could and couldn’t play specifically regarding first-person shooters. Coming up with parenting-friendly rules was surprisingly easy (no realistic human targets, etc.). Coming up with the games that honor those rules was a little harder, given that the point of an FPS is to kill things :-) Here’s what Max can expect:

  • 8-9 years old: No human targets or scary environments. Acceptable FPS games: Serious Sam series, Tron 2.0, Shadowcaster
  • 10-11: Human targets okay only if they are zombies or possessed or otherwise completely unrealistic (ie. quite pixelated graphics or low polygon count). Acceptable games: Doom, Heretic/Hexen
  • 12-13: Any target or setting is fine as long as the game is rated ESRB “T” for teen
  • 14-15: Can play anything he wants as long as it’s not pointlessly sadistic (ie. games like Manhunt are not allowed)
  • 16+: Anything goes (I was sneaking into R-rated movies when I was 16 so I figure it would be hypocritical to not let him play anything he wants at 16)

(I’m probably forgetting some eligible games; let me know which ones and I’ll amend the above.)

Note that the above guidelines assume all games will have all gore and bad language set to “off” if the game allows it. Even if they don’t, Max and I have an understanding about bad language (when it is and isn’t appropriate) so I’m not worried about that, and blood coming from an obvious non-human enemy is fine too. Fantasy violence is clearly a game. Getting a headshot on a human soldier can also be a game, but only if you’re properly grounded, and I don’t think a 9-year-old is that grounded.

Max, of course, thinks these rules are completely unreasonable. I think they’re pretty damn lenient!

Posted in Family, Gaming | 6 Comments »

From Courier To Supplier

Posted by Trixter on July 21, 2008

Half of my friends will read the title of this entry and think “Courier? US Robotics Modem?” and the other half will think “warez”. This article is for the latter half.

Back in the mid-1980s, there were essentially two places you could get warez from: Friends, and BBSes. You might find the occasional bootleg in a store, but 99% of the scene was about personal hook-ups and online trading. Young Trixter started out his computer gaming life getting games from friends and spreading them to BBSes for download credits, then using those credits to download other games to add to his collection (and spread to more friends and BBSes.) In warez parlance, young Trixter was a courier: A person who spreads games from person to person and place to place.

At first, copying software was about trying cool games for his new computer. But after a while, young Trixter became a bit obsessed and wanted to take things to the next level. What’s the next level for a waycourier? A supplier. A supplier is someone who supplies the games to the crackers in the first place. Software piracy begins with suppliers; they’re the first link in the chain. Suppliers can be anyone and come from anywhere, like software engineers providing beta copies to friends, people who work in the packaging companies or distribution warehouses that let a box or two fall off the back of the truck, or people who work at software stores. Young Trixter was the latter.

Exactly two months after young Trixter turned 16, he started working at Babbage’s, a software store chain located in a nearby mall. In his defense, he started working there not to become a supplier, but because it was a dream job to be surrounded by software and people talking about software. (That, and his existing job of bagging groceries was, shall we say, a demoralizing endeavor that left emotional scars.) But when young Trixter found out that Babbage’s had a take-home policy (let’s pause for a second and reiterate that they had a TAKE-HOME POLICY), his path was set in motion.

The take-home policy existed in a time before software viruses, where you were not merely allowed but encouraged to take software home to try it out, so that you could learn more about it to help sell it to customers. Some stores even had machines in the back room that you could play with to this end (off the clock, of course). When you brought it back the next day, you simply used the shrinkwrap machine in back to re-shrink the package, resticker it, and put it back out on the shelf. You can imagine how many neurons exploded in young Trixter’s head when he learned he could do this.

It wasn’t all milk and honey; there were roadblocks. Most game software was copy-protected. Some software came in an envelope that, were you to open it, indicates your acceptance of the EULA (but more importantly, destroys the envelope). But young Trixter was determined. For envelopes, he tried many experiments and eventually found that a very thin knife, passed extremely slowly between the flap and the envelope, could separate most glues without damaging the paper. He would reseal it with rubber cement, which mimicked most glue textures used on EULA envelope flaps. A few envelopes would require a hot air blower to melt the glue, but this wasn’t a problem because all software stores conveniently had one next to the shrinkwrap machine (because heat was needed to, you know, shrink the wrap). After confessing his refined envelope method to a co-worker a few months later, young Trixter was shocked to hear the other young man’s alternate solution, which was almost zen-like in it’s simplicity: Simply throw the opened envelope away. Customers don’t get mad over opened envelopes if they don’t know an envelope was ever in the package.

The copy-protection proved to be a much more difficult problem. Young Trixter was not a cracker; he didn’t have the assembler experience for that (yet). What he did have was fierce determination, strong drive, lots of caffeine, and a teenager physiology that could withstand days without sleep. So young Trixter spent months learning all about how diskette-based copy-protection works on the IBM PC. He researched copy utilities, unprotectors, decryptors. Some games he could unprotect himself using tools and knowledge, and this allowed them to be supplied and couriered. He discovered Snatchit and was able to use it to supply protected diskette images to crackers. For the most stubborn of all software, he spent half a month’s pay on a Central Point Option Board, which not only dominated diskettes but also allowed the truly difficult software to be supplied to a few select crackers who also had Option Boards by trading special “TransCopy images” in secluded BBS file areas.

Life was good. Young Trixter eventually went to college, and reverted back to courier while away because his supply had been cut off, but upgraded to supplier again when working summers at a new store, Egghead Software. But it couldn’t last. The end of young Trixter’s warez involvement was ended by a few events that occurred almost simultaneously: Jim Seymour of PC Magazine wrote an article about how he bought a piece of software from CompUSA (called Soft Warehouse back then) and how, when he went to install it, found someone else’s name burned into the bits. (A customer had installed the software, which wrote his name onto the disks, then returned it to the store and they reshrinked and resold it.) Around that time, the Michelangelo virus got major media coverage. These two events killed the take-home policy that most software stores employed. But even if they hadn’t, the Option Board was losing the cat-and-mouse game of publishers vs. pirates: Every time a new release came out, two things happened:

  • Publishers complained voraciously and a few of them, under threat of litigation, got Central Point to alter the next release of the software so that SekretProtektionSkeme-X could not be copied with an Option Board
  • Some protection authors studied the Option Board so well they they were able to come up with schemes that fooled the board or its software into producing a less-than-perfect copy (Cop’s Copylock II comes to mind)

But it wouldn’t matter for long, because the creator/maintainer of the Option Board died, and Central Point was purchased by Symantec, so that coffin was finally nailed shut. Eventually, young Trixter threw himself into the demoscene, where he had fun creating and enjoying software instead of copying and hoarding it, and the warez chapters of his life story came to a close.

Or did they?

Remind me sometime to tell you about the oldwarez boyz. Or the birth of Abandonware. Or Demonlord’s protection diary. Until then, take a peek at the back of young Trixter’s Babbage’s business card, which had all of the primary SKUs written down and what they were for. If you ever wanted to know what a software store stocked in 1987, well… now you know.

That’s right: SKUs for printer ribbons and diskette holders. How times have changed.

Posted in Software Piracy | 9 Comments »

Showing promise

Posted by Trixter on July 15, 2008

Today was Fitness Score day on the Precor treadmill, and it surprised me:

  • Fitness Score: 30 (Change: +6, Cumulative change: +6, Medium fitness starts at 35)
  • Weight: 238 lbs (Change: 0, Cumulative change: 0)
  • Body Fat: 27% (Change: -1%, Cumulative change: -1%)

After only one week of walking on the treadmill at 3mph (medium walking speed) on the “hills” setting (incline raises and lowers) for an average of 25 minutes a day, already I see great improvement.  Not to my weight — I’m not completely concerned about that — but my fitness score shot way up and I lost a percentage of my weight in body fat.

I don’t want to get too optimistic yet, though.  According to the treadmill, I still technically died a few days ago.

Posted in Weight Loss | 3 Comments »

Demographics and horses

Posted by Trixter on July 8, 2008

The MindCandy crew released the Volume 1 featurette Demographics: Behind the Scene to the public with a Creative Commons license this weekend. Enjoy, and spread the word.

I was in charge of processing, encoding, and uploading the video, and not coincidentally there is a lot of footage of me in the featurette, which I had to look at while processing. That footage was shot in 2002; almost exactly six years later I found myself staring at 31-yr-old me and wondering what god I must have pissed off to get so much neck fat since then. Also in the footage, at the end, is an outtake where Jeremy had me walk on a treadmill for no reason whatsoever. (I bought a nice Precor M9.25i with Internet Bubble Stock money back in 1998.)

Seeing it in the footage, I was reminded that it has a Fitness Test mode to be used with a heart monitor (I have one) and I realized that in the decade I’ve owned it I’ve never once tried the fitness test! So I dragged it out in front of the TV and took the test. I also decided to weigh myself and take a body fat percentage just so I can say that I’ve measured my baseline this year. Let’s see where 37-yr-old Trixter is at:

  • Fitness Score: 24 (Low Fitness — Medium Fitness starts at 35!)
  • Weight: 238 lbs
  • Body Fat: 28%

According to the fitness test and the above measurements, I died a few months ago. So I’m going to run on the thing every day, breaking a sweat, and will take the fitness test every week to see if I’m improving. Must… get… back up on the horse!

Or collapse and die. If the weblog entries stop, call for help!

Posted in Demoscene, Weight Loss | 6 Comments »