Posted by Trixter on June 17, 2013
Back from @party 2013 where I went bug-nutty over the PCjr and everyone graciously tolerated and humored me. I gave a speedy 30-minute intro to the PCjr as the first talk of the party, then I spent 3 hours trying frantically to get my laptop and PCjr to talk to each other over ethernet so I could upload what I was working on, then coded up the rest of our demo (intro, really) with Phoenix and relaxed for a few hours until the compo.
Inverse Phase and I won the game compo with a silly little thing called HARLEM SHAKEjr and Phoenix and I came in 2nd place in the oldskool demo compo. 2nd place was quite deserved because the 1st place was Sigflup and co.’s Sega Genesis demo “Day Trip” which had some truly amazing effects in it that all ran at the full framerate. (The end screen in that demo is 512 simultaneous colors and when you learn how it works you will laugh your ass off.)
For now, all party productions are downloadable but I don’t know how long that link will last. If you want to run my stuff, you’d better have a real PCjr because I use an undocumented video mode I discovered that doesn’t work in DOSBox.
I’ll post video of both productions in a week or so when my PCjr comes back in the mail :-)
Posted in Demoscene | Tagged: demoscene | Leave a Comment »
Posted by Trixter on May 15, 2013
June 14-16 you should be able to see me at @party in Boston. (If anyone is looking to share a hotel room, drop me a line!) I am scheduled to give a 30-minute version of the PCjr presentation I had worked on for NOTACON, and hopefully enter a compo or two with some oldskool hardware I will be shipping to arrive ahead of me.
Speaking of entering a compo: I really, really dig retroprogramming. The cool part is, after 10 years of retroprogramming in spare time, my kung fu is getting advanced enough where I not only know how to do what I want in assembly, but I know the fastest possible method to getting it done on the target hardware. For example, I recently implemented a vertical-retrace interrupt in software because the hardware one wasn’t good enough. It’s sick that I know how to do that, but sicker that I know why I need to do that.
I still get a kick out of impressing Jim-of-20-years-ago.
Posted in Demoscene, Programming | 7 Comments »
Posted by Trixter on April 21, 2013
I was part of the first wave of people tackling the gigantic task of preserving personal computing gaming history in the early 1990s. (I suppose pirating software in the 1980s counts too, but scanning materials and interviewing people began, for me, in the 1990s.) Without connecting to others or knowing what was out there, I started to hoard software and hardware where financially possible and appropriate. I collected software I considered hidden gems, that should be given their due in some public forum before being forgotten. I grabbed many Tandy 1000s and other early PCs to ensure various works could be run and studied. I was an original member of the abandonware movement. I wrote articles on how to get old software running on modern machines, and contributed to software that did the same. I co-founded the world’s largest gaming database so that information about these works could be consumed and researched by millions.
I did this all before Y2K. When you’re the only guy shouting in a crowd, you tend to look the lunatic, and that’s pretty much how most of my friends and family saw me.
Look around the preservation landscape today and much of what I was working towards for years has come to pass. There are many vintage hardware and software museums, both physical and virtual, including some dedicated to gaming. There are some wonderful emulators that get closer and closer to the real thing each year. There are even some curated collections online. (There are many more curated collections offline, orders of magnitude larger than what is online, but in a decade or so I believe these will move online as well.) Most importantly, there are established communities that support these efforts. All in all, I’m pretty happy with how things have turned out.
Looking around all of my possessions inside my home, I see the fallout of what I was trying to accomplish many years ago. I see no less than five PCjrs, three identical Tandy 1000s, three identical IBM PC 5150s, and multiples of Macs, Apples, C64s, and Amigas. I see crates and bookshelves and closets filled with hardware and software. I see clutter where there should be a nice desk for displaying a computer in a respectful way, or an easy chair for reading or watching TV. It’s too much. It’s time to let most of it go, and focus like a laser on the things that are the most important. I will be disseminating most of my collection, both software and hardware, in the following year.
What I will continue to do, however, is archive and preserve software, as there is still a ton of IBM PC software from the 1980s that has not yet been released into the wild. I am also committed to creating the “sound card museum” project I keep threatening to do. To those ends, I will retain a few systems that will allow me to achieve both of those goals.
So, I’ll still keep buying and collecting vintage software — the difference is, I won’t retain the software after preserving it. Consider me a vintage personal computing clearing house.
Posted in Family, Gaming, Home Ownership, Lifehacks, MobyGames, Software Piracy, Vintage Computing | Tagged: curated collections, gaming, technology | 9 Comments »
Posted by Trixter on April 18, 2013
Our basement flooded due to Illinois floodrains. I will not be traveling to notacon; there will be no PCjr talk this weekend.
Posted in Uncategorized | 4 Comments »
Posted by Trixter on April 16, 2013
As previously mentioned, I’ll be giving my PCjr history/hacking talk “Admiring one of IBM’s Biggest Mistakes” this weekend in Cleveland, OH at NOTACON, but I didn’t know the exact details until a few days ago, so here they are: My talk is at 1pm Saturday, plenty of time to wake up, find some lunch, and settle in. (I say this to reassure myself, not give instructions to potential audience members. I will likely be freaking out about the PCjr-to-projector hookup, since the jr’s video output is not quite spec.)
Because they gave me a larger time slot, the talk has been expanded from 50 minutes to 90 minutes. There will be some media to watch, as well as a real PCjr showing off its more unique features.
I’m not sure what to do with the extra time — I’ll have the room for 2.5 hours, and I can’t imagine people having more than 5 minutes’ worth of questions. How to fill the time? Boot up the original first version of King’s Quest (which has additional functionality on PCjr) on the projector and let people have at it? Connect it to the internet and join an IRC channel? Take game requests? Show off additional software that supported the PCjr? I’m open to suggestions.
Rumor has it I might have something silly to submit into the wild compo. Maybe.
Posted in Entertainment, Vintage Computing | Leave a Comment »
Posted by Trixter on March 6, 2013
2013 is the 30th anniversary of the IBM PCjr, and heck, I love that little machine too much to let an opportunity like this go by without educating the unwilling public about it. So, I’ll be giving a presentation on the PCjr at NOTACON 10 in Cleveland OH in April, and again at the Vintage Computer Festival Midwest in September in Lombard, Illinois (more on VCFMW as the website becomes available). The title is “Admiring one of IBM’s biggest mistakes: The IBM PCjr” and I will be covering what the PCjr was, its strengths and weaknesses, how it flopped so incredibly hard, and how it managed to change the home computer industry anyway. Also, old hardware withstanding, I will have a PCjr with me to demonstrate a few things, so you can gawk at or admire it at your discretion.
What’s this pee-sea-june-your I speak of? Well, I’ll let Ebeneezer Scrooge and Bob Cratchet explain:
Posted in Vintage Computing | 4 Comments »
Posted by Trixter on February 9, 2013
I thought I had squeezed every drop of blood from the stone that is LZ4 decompression on the 8088, but with some help from Peter Ferrie and Terje Mathisen, we’ve managed to improve the decompression speed by another 1%. 1% may seem laughable, but believe me, it’s quite an accomplishment if you followed my previous 3-part series on optimizing for the 8088.
In addition to even faster code, I thought it would be interesting to see how small an LZ4 decompressor could get, so with Peter’s help we managed to come up with a version of the code that trades speed for size. It’s 30% slower on average, but it compiles to only 78 bytes.
The downloads section of the LZ4_8088 website has been updated to contain both versions in the single .zip file.
Posted in Programming, Vintage Computing | Tagged: decompressor | Leave a Comment »
Posted by Trixter on January 18, 2013
In this final part of 8088 optimization posts, I present a case study for 8088 optimization. Specifically, I’ll cover a problem that I needed to solve, how I solved it, how long it took to optimize my solution for 8088, and what the performance benefit was from that optimization.
For the TL;DR crowd who will likely skip to the end of the article: Through clever 8088 optimization and a thorough understanding of our problem, a decompression routine was created that not only beats all known methods previously created for 8088, but can actually exceed the speed of a memcopy given the right input. But to see how this was achieved, you’ll have to grab a snack and settle down for 10 minutes.
Now, on with our case study.
Read the rest of this entry »
Posted in Programming, Vintage Computing | 20 Comments »
Posted by Trixter on January 11, 2013
Welcome back to our little crash course on how to optimize code for maximum speed on the 8088 and 8086 CPU. Let’s jump right back in with a quick way to transmogrify the contents of a buffer.
Read the rest of this entry »
Posted in Programming, Vintage Computing | 9 Comments »
Posted by Trixter on January 10, 2013
There is a small but slowly growing hobby around retroprogramming for old PCs and compatibles. This hobby has existed for decades for other platforms, as evidenced by the active demoscenes on each retro platform, but the IBM PC (and other 4.77MHz 8088 compatibles) has only recently started to gain that same sort of attention. As a public service to the 8088 retroprogramming community — “All four of you, huh?” — I’ve decided to write a crash-course on optimizing your code for maximum speed on the 8088. This information is targeted to people who already know either modern x86 assembly or assembly for other CPUs, and are programming for the 8088 or 8086 for the first time (or the first time in a long while).
Read the rest of this entry »
Posted in Programming, Vintage Computing | 26 Comments »