Friday, February 12, 2010

How I met the transistor

When I was perhaps 11 years old my father brought me home a book, and what a book it was! It was a red covered paperback titled Transistors, and I think it was published by Tab. The book was a perfect introduction to semiconductors for the neophyte. It was peppered with cartoon characters and helpful diagrams. The wonders of doped germanium and silicon were laid bare. PN, NPN and PNP junctions, holes, valence electrons and more all demystified. I already had a basic understand of what a transistor was, but until I read this book I really had no idea how they worked. The book blew the door wide open!

This was obviously a well written book to be suitable for an 11 year old to grasp and the information has stuck with me even after all these years. Thanks Dad! Now where did I leave that book?

Thursday, February 11, 2010

VIC-20 Blues

Here's an embarrassing story. One day I got the bright idea to put my VIC-20 on my lap and then I put my nearly new black and white television on a milk crate on the floor in front of me. I sat on a chair in front of it and wrote code. This would have been awkward I suppose if not for the fact that the VIC-20 had only 23 rows of 22 characters. The letters on the screen were huge, so the screen could be rather far away and I was comfortable.

Alas, I put my foot on the corner of the milk crate. At some point I shifted my weight to get comfortable and unwittingly kicked the television over backwards. It fell only about a foot to the floor. The back of the plastic case was so close to the back of the cathode ray tube that the case only needed to deform slightly to press against the tube. The back of the tube snapped off and it was ruined. The phosphor on the front of the screen was removed by the action of the gasses rushing in and you could see inside. What a disappointment, but it was a good lesson for me.

I never found an opportunity to replace the TV, and I never used my VIC-20 again and all these years later I don't remember what happened to it.

Tuesday, February 9, 2010

On the Road in a Green Bug

In addition to the East Coast Video in Brockton, we picked up a second customer for our video rental software in Somerville, Massachusetts. It wasn't unusual for me to drive myself to these locations in my forest green 1965 VW Beetle. Sometimes there were bugs that needed fixing and sometimes they wanted enhancements. There was at least one evening when I was at the Somerville store late into the night.

These two customers were the very last work I did with Patrick Alessi, and the only real money I made with him aside from the circuit assembly work he provided. Perhaps if we had managed to sell to more stores I might have continued to work for him, but my life was about to take a turn in a totally different direction.

Soldering my way to Israel

Patrick Alessi wasn't just interested in the software business. He was an electrical engineer. There was a company up in Wilmington, Massachusetts called Cryovac. They made machines that shrinkwrapped fruit, and presumably other things too. Mr Alessi had managed to win a bid on some business to provide them with electronic controller boards for their machines. There were two different boards, and he offered me a chance to make some money assembling and soldering them together. It's amazing to me how I was able to memorize where hundreds of parts should be inserted and soldered into place. The more I worked the faster I got and the more money I made.

In my junior year of high school I had met a very sweet girl who was a foreign exchange student from Israel. Her name was Michal Zilberman. I began to spend a lot of time with her and we became very close. When she went back home we wrote back and forth a few times and I called her on the phone once in a while. I decided to visit her the following year.

I would pay for the trip by assembling circuitboards for Mr. Alessi. It only took me a few weeks to earn the $850 or so dollars I needed for the plane ticket. When my folks noticed what I was doing and that I had obtained a passport they figured I wasn't ready to be a world traveler (probably true) and they sent my grandfather with me. He had always wanted to go to see the Holy Lands, so he was eager to go. When we got to Tel Aviv we didn't actually see each other very much. He was a great traveling companion and we did enjoy some time together and he let me beat him at checkers. When he took off to go on tours including a diversion to Egypt, I enjoyed exploring Tel Aviv with my camera in the mornings and then I would walk to Michal's home and see her family. We spent a few days together in Tel Aviv seeing the city. The we went to stay with her sister in Jerusalem for a few days and spent a day in Haifa.

My relationship with Michal was not meant to be, but this was an unforgettable adventure.

Monday, February 8, 2010

Mis-adventures in PDP-11 Programming

I mentioned earlier that I didn't become much of a Pascal programmer, but I neglected to mention one very important reason. We were too busy messing around. Brice Illingsworth (I hope I got that right) managed to get copies of all the manuals for the PDP-11 and the RSX-11 operating system. The most useful thing we managed to produce with these generously donated manuals was a simple internal email system. Pretty amazing when I think back on it.

However, we did almost get ourselves into some real trouble. Brice had the brilliant idea that we should create a mock login routine that would capture people's account information into a file and then present a login error and then quit to a real login. We managed to capture a few passwords before someone noticed our little mischief. Thankfully he gave us a wink and a nod and we didn't repeat this bad behavior.

Since graduating from high school I have not used a PDP-11. I just checked ebay.com and found a DEC Digital PDP 11/03-LK Rack Mount Computer for a mere $203. I'm sure I wouldn't know what to do with it. ;-)

Sunday, February 7, 2010

My own Commodore 64

One of my close friends Jeff Benitz (whom I had originally met years before at Radio Shack while playing with their TRS-80s) bought a Commodore 64. I went with him to Westwood, Massachusetts to buy the used computer. It included a monitor, a cassette deck, and a dot matrix printer. We enjoyed staying up late into the night playing a game called Telengard, which was a popular Dungeons and Dragons style game. I seem to remember we went to Toys R Us to buy the game back when you could buy tons of software for this machine in the stores. Telengard was written in BASIC, and we figured out how to break into it to modify it. Terrific fun (if you ask me).

One other cool thing I remember doing with this computer was writing a custom routine to reprogram the custom graphics characters on the fly to draw detailed images. This was in BASIC. It was slow but it worked.

Eventually Jeff sold this computer to me. I didn't use it for much and after moving a couple of times I tossed it because I couldn't find the power supply. Oops. What was valuable became obsolete and disposable. Nowadays I wish I could find the time to rediscover the simple joy of programming old home computers.

Saturday, February 6, 2010

Computerized Cameras

Nowadays most everyone uses a digital camera without film. Back in 1983 I became involved in the old fashioned sort of photography. My brother Neil sold me his Canon FTb-n camera and a couple of very nice lenses. This was a completely mechanical SLR camera, the only electronic part being the meter which was a real meter with a physical needle that swung back and forth in the viewfinder.

A couple of years later my brother sold me his Canon AL-1. This was a smaller camera based on their popular AE-1 model. It had a computer in it, and needed batteries just to fire the shutter. It also had an early autofocus system. It didn't actually turn the focus ring on the lens with a motor like modern cameras do. Instead the computer in the camera controlled a red LED in the viewfinder to tell you to turn the focus one way, another red LED to tell you to turn it the other way, and a green LED in the middle to say that focus is achieved.

This was a nice enough little SLR I suppose, but it wasn't as durable as the FTb-n. Also, the batteries didn't last very long.

My attitude at this time towards computers in cameras was "computers are wonderful computers, but computers are not wonderful cameras." I still feel this way about computers in automobiles, but digital cameras have finally come into their own. I still love film, but it's too expensive now.

Friday, February 5, 2010

The Macintosh and its Imitators

While I was busy learning how to develop software for the IBM PC and it's copies, Apple was marketing a complete new kind of computer called the Macintosh. I didn't know anybody who owned one, and somehow I never found my way into a computer store to try one out. My only experience of the Mac was what I read about it in magazines. It certainly looked cool and amazing.

To me it was a very distant phenomenon, sort of like a distant land. Very exotic and unreachable. One thing seemed clear from what I read. Programming a Macintosh required a different way of thinking about software. Microsoft did produce a version of QuickBASIC for the Mac.

Other manufacturers were working hard to create their own Mac-like products. Atari has their ST computer with GEM desktop. Commodore announced the Amiga which had a similar windowing system as the Mac. Microsoft was demoing their very primitive early version of Windows as far back as 1985. Berkeley Softworks released GEOS, which was a Mac style operating environment for the Commodore 64, the Apple II, and later on the PC. Nowadays you can still buy the PC version which is sold by its new developer Breadbox Computer Company under the name Breadbox Ensemble.

Wednesday, February 3, 2010

East Coast Video - Communications Breakdown

Our friend James Foster had found us some contract work. A video rental store in Brockton, Massachusetts wanted to get out of their 3x5 index card system and into a computerized one. The software was going to run on an IBM PC clone with two floppy drives. This was to be a pretty big project worth thousands of dollars. I went with James to meet the owner of the store. He began to explain what he wanted. I would ask him questions to try and clarify the details and I took notes. He was very enthusiastic about our designs.

I went back to Mr. Alessi's house and with great energy proceeded to build this system. We wrote and debugged it using the BASICA interpreter and then created binaries with the IBM BASIC Compiler. It had to manage a catalog of customers, and catalog of video tapes, and also keep track of who rented what, and for how long, and how much that cost depending on what category of movie it was. It also had to calculate total charges including taxes, and of course the cashier had to be able to override the price.

One month later we were ready and we took the system to Brockton. Wouldn't you know it, the system was not anything like the way our customer was expecting even with the long design session together. So, now equipped with the knowledge of what they didn't want we sat down for another design session.

The software needed to be rewritten from scratch, and this time they wanted in a week! I spent the next week working late into the night to create the new system. When we were done and showed it to the customer we were relieved that he was happy with the result. We just needed to deal with some minor tweaks and some performance optimizations.

In retrospect this would have gone a lot better if I had developed the software there in the store. That way we would have learned very quickly if we were straying from the customer's needs.

Tuesday, February 2, 2010

Noisy Calculator, the SR-56

One very interesting feature of the Texas Instruments SR-56 calculator was that it was noisy. I know that sounds strange, but if you held it up to your ear you could hear some quiet humming noises. If you used a trig or a log function it would change the sound as it worked out the answer. I can't think of any other digital devices I've ever owned (actually this particular calculator belonged to my brother Billy) that make noises you can hear. Sure, you can hear your cell phone blasting out data packets over your stereo or PC speaker system, but that's radio interference. This was actual audible noise. I wonder if they made any other noisy calculators back then.

Monday, February 1, 2010

Pocket Computers and Programming

My brother Ernie was a fan of the Radio Shack pocket computers. He started with the original pocket computer. This was a neat little machine with a QWERTY keyboard and a BASIC interpreter. This was a real step up from a programmable calculator. Later on he bought their Pocket Computer 2 model. I think this model had two microprocessors, and you could draw very simple pixel graphics with it. You could save your programs to tape, and there was a printer for it. My brother managed to discover a machine code monitor in that model and he was experimenting with that. This reminds me of what another friend of mine told me about the first model of the HP-41 calculator, that it was possible to program it in machine code in an undocumented way.

Today these pocket computers would seem quite primitive and wanting, but for many purposes even today they would be very useful. Of course nowadays people expect their pocket devices to have Wifi and Internet access. What was great about these machines? They shared the same approachability as home computers like the VIC-20 and TRS-80. Just by reading a simple 100 page manual you could learn how to make the computer do your bidding. Want to be a programmer?

You + pocket computer + 100 pages of reading = programmer

Sunday, January 31, 2010

Pascal on the PDP-11

When I was a junior I transferred from Xaverian Brothers High School to Needham High School. One of the great things that NHS had was a DEC PDP-11/40, and there were several classes you could take in order to access this minicomputer. I enrolled in the APP Computer Science class, which was essentially a course in Pascal programming.

I'm guessing there were at least a dozen terminals on the school property. I remember four Lear Sieglar ADM-3 terminals and two DECWriter dot matrix terminals in the room where we studied Pascal. I'm sure there were a bunch more in other locations, but I never saw them. I never saw the PDP-11 either, but I'm pretty sure it was there. ;-)

The experience was pretty sluggish. To compile a very short Pascal program took 15 seconds at least. If you made a mistake in your code it would give you a cascade of error messages. It took some practice to figure out what the errors meant. The computer system was so slow we didn't actually get to be very good at Pascal because the maintenance guy would kick us out of the building just 20 minutes after the end of the school day and before anything interesting could get done. Ah well, I had a good time.

Saturday, January 30, 2010

Enhancing Your Apple II

Back in the day friend Richard Stoddart loaned me a book titled Enhancing Your Apple II by Don Lancaster. Mind you, I didn't even own an Apple II but I was very interested in learning, and the book seemed promising so I took it home. The author Dan Lancaster was a popular writer and quite an Apple II guru. My understanding is that he was part of the same computer users group that Steve Wozniak, the creator of the Apple II belonged to. The contents of this book are certainly compatible with the idea that he had an insider's caliber of insight.

The book starts off with some really neat but simple modifications to the motherboard of the Apple II. The kinds of modifications described were things like adding a single wire to connect together circuits that would otherwise not have any knowledge of each other. Then he explains how with this and some simple software tricks you can do multimode graphics and high resolution text. He even shows how to do this from an Applesoft BASIC program by calling some machine code he provides in the book. Very nice.

Later in the book he explains how to disassemble machine code and figure out how a machine language program works so that you can make modifications. What an excellent education!

There is also supposed to be a Volume 2 of this book, but I'm not sure what it contains.

Friday, January 29, 2010

Whoa Daisy!

I don't know if we were quite prepared for the noise and vibration of the daisy wheel printer that Mr. Alessi bought. This kind of printer was called a daisy wheel because it has what looked like a black plastic flower with the letters and numbers on the petals. This sort of device was borrowed straight from typewriter technology. To print each letter the wheel would spin around and a hammer would knock the desired petal against the paper. It would also rapidly shift up and down because there was more than one symbol on each petal. The wheel assembly would swing back and forth energetically (zooming is a good word for this) as it printed each page. It was loud, and it would shake the table like a bucking bronco! It was intolerable. The printer did produce nice clean and smooth black characters on the page, so we kept using it. The solution to all the noise and vibration was to sit the printer on top of a very large and thick piece of mattress foam. This worked a lot better than it probably should have.

Thursday, January 28, 2010

Enter IBM

After I had worked on a couple of projects on the Apple II+, Mr. Alessi decided it was time to develop software for the IBM PC. I think he bought his at the Sears Business Systems Center in Natick, Massachusetts. He purchased one with two floppy drives, an expansion unit housing a 10MB hard drive (the first one I had ever used), and a green phosphor monitor. He also bought a daisy wheel printer so we could produce letter-quality documentation for our software.

I enjoy discovering a new computer, but my initial impression was not all positive. The machine was big and expensive. It felt slow. This didn't make sense to me because even though the PC's 4.77MHz Intel 8088 processor was clocked at nearly 5 times higher than the 1MHz 6502 processor in the Apple II+, the Apple felt much, much faster. Steve Wozniak's hard work on the Apple II+ was clearly more efficient in many ways.

In addition, the computer came with PC-DOS 1.10. I was expecting something more advanced than CP/M from IBM but was disappointed. In fact PC-DOS seemed to me to be nothing but a ripoff of CP/M.

Overall, this computer was underwhelming. With IBM behind it this design would be copied widely. The variety and innovation in the microcomputer market was slowly wiped out by this computer and its imitators.

Wednesday, January 27, 2010

Rumblings of the Future

One formative project I started but never finished on my VIC-20 was a programmable calculator program. I got my start programming the HP-67 calculator, and I've always been fond of these little pocket sized computers so this was my inspiration for this project. This was going to be the simplest interpreter you could write in BASIC. I didn't bother to sit down and design it on paper first. I just starting coding it. Really, I can't remember much about it except that I was motivated to give it a try. I didn't get very far.

Another idea I've always been very interested in pursuing is to create a robot battle programming system like Robot Wars on the Apple II. This is similar to CRobots for the PC. It's a very simple real-time simulation of two or more robots duking it out in an arena. The robots search and destroy each other by executing battle programs written by a human user.

I never finished my programmable calculator. Years later on I would go on to write different kinds of interpreters and some similar things in connection with paid work, and ultimately Liberty BASIC and Run BASIC.

Programming languages have always fascinated me, and I enjoy reading books and articles by other programming language implementors to improve my understanding of the field.

Monday, January 25, 2010

6502 Assembly Language

My brother Ernie is a little more than a year than I. He was ahead of me in the programming department when we were kids, and my first exposure to assembly language was through a book he had on Z-80 assembly language. I never did have an opportunity to try Z-80 assembly, but when I had my VIC-20 I decided to try 6502 assembly language. I didn't find machine language hard at all to grasp because it seemed very similar to the language used to program calculators, especially the HP-67.

I was a regular reader of COMPUTE! magazine, and in one issue they included source code in BASIC for a 6502 machine code monitor. This was a far cry from an assembler, but it was better than nothing. I wanted to try speeding up a side-scrolling video game, so I decided it made sense to write an assembly language routine to move characters from the right to the left by one character. This is how video game graphics were done on the VIC-20. You could program up to sixty four 8x8 pixel custom characters, and you put these on the screen for some crude graphics.

So, since I didn't have an assembler I needed to be my own assembler. The VIC-20 Programmers Reference Guide included all the information I needed to write my first assembly language program. Once I had the code written, I translated the assembly language instructions into machine code. On the 6502 the instructions are in the form of hexadecimal numbers. I typed these into the machine language monitor to try them out. I don't remember if I got this to work the first time.

When using machine code in BASIC on the VIC-20, you would usually convert the hexadecimal numbers into decimal and then put them in a DATA statement. Then READ the numbers and POKE then into memory and call the routine with the SYS statement.

The great thing about the VIC-20 is that anyone can learn to do these things. It's fun!

Stop reading this right now. Go to ebay.com and buy a VIC-20. Go to amazon.com and buy a copy of the VIC-20 Programmers Reference. Try it yourself! Seriously!

Continental Cablevision and the Apple IIc

The first real paid contract software job that Mr. Alessi and I did was for a local cable company called Continental Cablevision. I guess with a name like that they must have had grand ambitions, but I'm sure they don't exist anymore. We got this work through a fellow named James Foster, who was an associate of Mr. Alessi's.

The business model for cable TV was different back then. They actually had real sales reps, and they would call people up and try to sell cable TV service. The packages would have different options and depending on how successful the rep was at selling these to the customer, commission was paid appropriately. This is what our Apple II application was for, computing sales commissions and payroll.

I was new to this, and quite naive. When we went to the customer site (one in Needham, Massachusetts and one in nearby Natick), I found myself making mistakes in the way I disclosed information. The people who worked there were pretty good at getting my to talk about things that I should have been more discreet about; For example, how easy or hard it would be add certain features. I was a member of a team, and needed to act appropriately. This was a good lesson for me, and it sticks with me.

In the Natick office for Continental Cablevision they had the miniaturized version of the Apple II, called the Apple IIc. These machines were really small, about the size of a laptop computer, but of course the screen was separate. Apple sold very small screens that looked appropriate for the size of the Apple IIc. It was a complete Apple II, and it was cute. Brains and beauty in one package.

Saturday, January 23, 2010

Compilers, coffee and cookies

As Mr. Alessi and I proceeded with development of Forecaster-Buy we decided that we wanted to use a BASIC compiler instead of using the built-in Applesoft BASIC interpreter. This protected the source code of the program so no one could steal it. It also made the program run faster, but honestly because most of the time was spent entering data, waiting for disk access and printing stuff on a slow dot matrix printer it was pretty hard to tell it was faster.

The only real choice if you wanted to compile Applesoft BASIC was to use Microsoft's Applesoft BASIC Compiler. Imaginative name, right? This was a very nice product. Back in those days, compilers made your program run faster, but they made development very slow. You tried to cram as much work as you could in between compiles because each line of code took 3 or 4 seconds to compile. Each next line would appear on the screen, and then the floppy drive would go brrrr, brrr, mmmm, mmmm, mmmmm. Repeat.

Now this actually had a nice benefit. Every half an hour or so you would compile the program, and then run off and have a coffee break. I drank soooooo much coffee, and Keebler fudge cookies were consumed in large quantities also. I wish I could still eat like that. ;-)

Soldering, and joysticks

Some of the time I spent working with Mr. Alessi was actually spent just playing around. I didn't always write business software. Sometimes I would write code to draw graphics, or read BYTE magazines, or play video games on the computer.

Some of these games allowed the use of a joystick, which we didn't have. I decided to build my own. The Apple II+ supports the reading of 2 variable resistor (volume control) knobs. Many joysticks use this to provide x/y positioning.

To plug a joystick into the computer, the joystick needs to have a 16 pin DIP connector. I went to Radio Shack and bought the connector, a cable, and the joystick module preassembled. I had an old radio control car, so I took the steering controller and cut out a hole where the steering wheel was. It had button for reverse, so I used that for button 1 on the joystick. I can't remember if I added a second button. I guess I must have since it would be hard to play games without it.

The joystick came together easily with my limited soldering skills, and it worked! Thinking back on it, Mr. Alessi was remarkably okay with my plugging in a homebrew device like this into his $2400 computer. The only thing about the joystick was that the value of the potentiometers was slightly off. I didn't get the complete range of motion of a properly designed joystick. However it was good enough to play Choplifter and some other games!

Friday, January 22, 2010

My Education

I wasn't much of a high school student, I suppose. I did like some of my classes, but I really didn't like to do my homework. Whether this disposition is a good or bad thing is probably irrelevant. I wasn't lazy. I wasn't rebelling at a conscious level. I was simply crazy about computers, and after school most days I would walk the three blocks to Mr. Alessi's house and spend hours writing software, playing games and watching TV with my new boss and mentor. I'm sure my parents weren't completely thrilled with this, but they seemed glad I wasn't getting in trouble.

There was simply no end to what I could learn. There were many books and magazines to read and computers to experiment with. Mr. Alessi was an accomplished electrical engineer and businessman. I really thought we were going to make millions of dollars. That didn't happen, but I must always remember to be grateful for my education. I make just as much money today as software engineers who paid for four years of college, and I was ready for full time work right out of high school. I think young people today should try to find similar opportunities for themselves in whatever field interests them. Read a lot about what interests you. Find other people with your interests and do something ambitious together.

Patrick Alessi, I owe you a debt of gratitude. Thanks!

Thursday, January 21, 2010

The Apple II+

My job with Mr. Alessi started out with a software project he called Forecaster-Buy. The idea was to create a trend following inventory management system for distributors and manufacturers so that overstocking was a thing of the past. The computer we did all our initial development was:

An Apple II+ with 48K RAM and Applesoft BASIC in ROM
Two 143K Apple Disk II floppy drives
An Epson MX-100 dot matrix printer
Later we added a Microsoft Z-80 Softcard but didn't do much with it

I learned so much about programming with Mr. Alessi. We worked in the basement. There was a small room at the bottom of the basement stairs where the computer was kept, and in the larger basement space there was a TV and some chairs. We would talk about the software (and politics) and I would go into room and write software. Mr. Alessi would come in and ask me how I was doing. He'd make suggestions to which I would sometimes respond "That's impossible!" Of course it wasn't impossible, but if I didn't know how to do it, that is what I sometimes said. Then we'd talk and I'd think it over and come up with some sort of code to do the previously impossible.

Working with Mr. Alessi was a great experience. He was smart enough to know what sort of software to create. He'd bring me endless coffee and cookies. On Saturdays he would make me breakfast. He made very nice scrambled eggs. His two sons Tom and Michael were a little older than me and they'd always be around. I remember I used to play with them (and with all the other kids around the block) up at the park at the end of my street; kickball, pickle, keepaway, capture the flag, and hide and seek with the whole neighborhood as our hiding place. :-)

Yeah, working with Mr. Alessi was a great opportunity. It didn't pay much, but I learned a ton!

Tuesday, October 13, 2009

Going Forth

I came across a surprising book in the Needham Public Library when I was 15. It was called Starting Forth, and it was about a programming language called Forth.

The author Leo Brodie had written a charming and fun book about a very interesting language. Forth is a stack based language, and it has a postfix notation in its syntax. So instead of writing 3 + 4 you wrote 3 4 +. Seems strange, but to me it was very familiar because I got my start using HP calculators where you did exactly the same thing.

Forth is interactive, like BASIC. It has a very small core of functions called words, and you create an application by adding new words which have the same syntax as the ones that come built-in. Essentially you extend the language to solve your problem. Smalltalk is also like this.

Forth is the language used to program NASA's space shuttle, so it has some clout. I discovered that there are quite a few Forth fans out there, and I even managed to buy a Forth language cartridge for my VIC-20. Awesome.

Friday, October 9, 2009

Strange Computer Stories

The following is a true story. My Commodore VIC-20 suddenly stopped working. Somehow I figured out that the power supply (one of those black bricks) was at fault. I told my boss Mr. Alessi about it. I needed to order a new one. He made an interesting proposal. He happened to be an electrical engineer specializing in power supplies. He had a novel idea. He would make me a new power supply for my computer himself at no charge, for fun.

Okay, I accepted. He explained that he wanted to build me a very special power supply. It would have a standard lightbulb socket on top, into which would be screwed a standard 60 watt bulb. The purpose of this strange addition? It would act as part of a surge protection mechanism. If there was a surge, the filament in the bulb would become hotter and its resistance would go up. A kind of thermistor (look that up). This was useful for regulating the voltage.

The end result was a very plain looking black project box with a two prong power cord going in on one side, and power cable going to the VIC-20 on the other end. On top, to one side was a dimly orange glowing Sylvania lightbulb. The brightness (dimness really) would remain fairly steady. Here and there it would suddenly glow a little brighter, or dimmer. No lie.

Did it work? Seemed to.

Saturday, December 27, 2008

COMPUTE! Magazine

Computer magazines used to be so much fun. First of all most of them had a very strong focus on programming and they would have articles about how to make electronic hardware to plug into your computer. Very much fun indeed.

Since I was the owner of a Commodore VIC-20 I would buy issues of COMPUTE's Gazette which catered specifically to Commodore 8-bit computers.

I remember one issue which included a machine code monitor listing. The program was in BASIC and it would POKE a machine code monitor (in machine code of course) into memory and then it would start up. I experimented with 6502 assembler using this monitor. I would write the assembly code down and then I would translate it myself to hexadecimal numbers and type them carefully in.

This was one of the great things about the computers of those days. A fifteen year old kid could figure this stuff out by reading magazine articles. There's probably no reason why it can't be made relevant to young people today. Why not make a cool and easy game programming tool for the Nintendo DS for example?