Showing posts with label General. Show all posts
Showing posts with label General. Show all posts

Sunday, May 2, 2010

Emulation vs. Hardware

Before I move into the 3.x versions of Amiga OS, I think I'd like to talk about emulation as it applies to older machines.  A lot of older machines have software emulations of some kind now available for another computer platform.  For example, I have been using WinUAE as a stand-in for the actual hardware while exploring the Amiga.  While I won't talk about that specially here, I do want to address the things that I have been thinking about while using this emulator and others (and having actual hardware to compare it against, instead of memories.)

Many of the existing emulators are labors of love - love for the platform they emulate and the software that could be run on it.  There is a desire to preserve at least a shadow of these old platforms, and luckily those with enough skill and time have made the effort.  Many practical people can and do question the sanity of putting in thousands of hours into re-creating a dead computing platform (I will guess you're not one of them, since you're reading this blog), and oftentimes these platforms reside in a murky area of legality and copyright quagmire.  The truth is much of this legacy software and hardware would be forgotten entirely and lost to history - old software does not age gracefully and will degrade and disappear in the blink of an eye if not preserved. (If you questions this - How many of you run CP/M, once the most popular home DOS system, at home?  Didn't think so...)

While writing the last few entries, I attempted to re-create in software what would have taken me much time and effort to do physically.  Tracking down some of these old machines isn't how I want to spend most of my time, and keeping them running and happy is harder yet.  In the case of some of the larger systems it may be becoming impossible (Yes, I have run a PDP-11/40 with core memory and RK05 drives in my basement - while it looks cool it's not very practical.)

So here's my take on the whole idea:
1. It preserves that which is becoming scarce in a way accessible to many.  You can put the actual hardware in a museum, but making it available to the average person is better, even if its virtual.
2. It allows the exploration of configurations that would have been very expensive or rare at the time they were originally available.  My hardware Amiga would have cost over $14,000 at time of release, if you could have done it at all.
3. It preserves software that is essentially abandoned, even if someone somewhere still thinks there's some commercial dollars to squeeze out of it. (They're wrong - and yes, people protect copyrights for other reasons - They're wrong too, in this case.  Your game/productivity/utility software came out in 1985? Get over it.)
4. The legality can sometimes be murky due to our IP laws.  Based on strict morality, I don't have any issues over it. (See 3)  Much of this software is still copyrighted, and some is truly abandoned (no known owner), and even still others have been officially released of copyright by the holders. That's all great, and should be observed if you're going to try and make money off of it (yeah, sure.)
5. In addition to the hardware emulators, a lot of software is beginning to be archived.  I see this much like I see libraries - for the education of the people.  Sure there's lots of games out there, but see 3.  Even of more interest are things like SCSI drivers, printer drivers, etc.  Or how about old word processors?  Do you still have documents around in old WP formats?  I do - it would be neat to read them again.
6.  The emulations aren't always perfect, but mostly they're good enough.  I figure they generally work about as well as some of the old hardware they're trying to emulate!  How many times in a day did you reset your TRS-80 Model I level 2 because the ribbon cable between the keyboard and expansion unit was loose?  Yeah, like that.

So, go forth, emulate, and learn about these old machines and how they worked (or didn't.)  Learn about why we both pine for and run from some of these old machines, learned from them (or didn't), and applied those lessons (or didn't.)  If you own some of these old machine, bring them out from the basement and rediscover them - they will provide ample perspective on where we've been and perhaps on how we got here.

Saturday, April 17, 2010

Underway

Underway

Here you will find a general rambling of my attempts to bring life back to old hardware and software.  I intend to write about these things from both a historical perspective and through the lens of today.  I don't have a set agenda - it will be wherever my fancy leads me, and whenever I have the time.  I will make use of both the real hardware and emulations of that hardware, and hopefully make comparisons where I have direct knowledge.

I expect that you will join me in this - I certainly don't know everything (or sometimes anything!) about these old machines, and would enjoy reading comments - just don't flame me if I screw up some fact about your favorite machine!  Just remind me that the foo-o-matic 2000 couldn't transmit greater than 9600 baud on more than four RS-232 lines simultaneously (or whatever), and we'll move on.  Accuracy is important, but not the most important thing.

I know I'm not unique here, but there seems to be enough interest around in this topic and it has been something that I enjoy, so I thought I'd share what I can, and in the process maybe learn something new through the rigor of writing about it.


My background is in software engineering, where I started as a "code slave" in 1985.  At that time I had been using micros at home for a number of years and some Digital Equipment Corporation machines at various institutions (PDP-11, Vax-11).  I was also the Sysop of the Science Fiction SIG on Portal, where I met many influential people in the microcomputer world, especially in the Amiga forums where I was especially fond of Harv Laser.  I was also eventually voted lead Sysop for Portal, which mostly involved holding internal meetings and presenting our point of view to Portal.
Later work took me around the country on various jobs, where I worked with many different machines and software and established myself as a "Big data" kind of programmer - databases, parallel programming, caching.   I wrote code for PDP-11's, Vax's, PC's, Unix workstations (Sun, MIPS, RS/6000, AT&T, HPUX, Dec Alpha), mainframes (GE, IBM), Macintosh, and Amigas.  Languages I have used professionally include C, C++, various assmebler architectures (Z80, 6502, 68000, VAX Macro), Basic, Java, and now Scala.

Today I am a principal software architect at Tracelink, Inc. where I am working with the new (to me) breed of functional programming with Scala and the Lift framework for a groundbreaking combination of cloud computing and enterprise level application.

Ok, enough "retro me" - next I will get started with a machine that is dear to me, and also readily available in hardware and emulation!