Tiny Basic, Signetics 2650 and a SC/MP: HalfByte’s early days

I am sitting here, banging away on a run of the mill HP Windowsc03742269 computer. It has a decent set of specs for today, but is no match for even a low end gaming PC or a research oriented computer. For the few games I play, the Internet browsing, code writing and Microsoft Office tasks, it works well.  Compare it to the comptuers that I started out with, however, it might as well be a Cray Supercomputer. 

Indeed, this AMD based HP would be the hottest thing in 1974, the year I can remember first ‘using’ a home computer (or, actually, ANY kind of computer.)  Back then, home computers were barely out of science fiction. In fact, that first computer was the Mark 8 ‘mini’ computer first showing up on the pages of Radio-Electronics Magazine.  It was an Intel based 8008 ‘beast’.  It was something that my Dad was working on and, once it got to a bootable point, I was hooked.

mark8_re_coverIf I remember correctly, this thing was a pain in the butt to use. Just to ‘boot’ it up, you had to key in a sequence of sixteen bytes, one bit at a time, on the front panel.  Once they were keyed in, the computer would start.  My Dad had this ‘TV Typewriter’ that we used to talk to the computer. It was, in reality, a Serial based video terminal, but it was new then.  A fellow by the name Don Lancaster designed it. My Dad bought the bare board and built it himself. That’s how things were done, you did not go to a Best Buy and just buy one. No, you built it.

So, this computer couldn’t do much.  My Dad bought something called ‘SCELBI Tiny Basic’ on a paper tape.  He had scrounged (something he was very good at) a paper tape reader and we were able to load this program into the computer. He would painstakingly key in a Tiny Basic program that I could then use.  I was only nine at the time, so programming was not something I thought about, but I was intrigued.

Fast forward a year and my father built another, more powerful, cTinyTrekBasicListingomputer. This one, a sixteen bit behemoth, was based on the Signetics 2650 microprocessor.  Man, this thing was great.  Signetics made them for quite a long time and they special because of their architecture: 16 bit internal, 8 bit bus.  It was unique among a sea of ‘me too’ chips.  More importantly, there was a dynamite version of Tiny Basic for the chip. This is when I started to figure out this programming thing.  It was addictive and started purely by accident.  See, my Dad was an engineer and built a lot of things. But, he was not good at this programming thing.  He, one day, gave me a program listing, the Tiny Basic manual he had printed out and told me to figure out how to get the program listing to work with Tiny Basic.  It was a Lunar Lander game from a very famous (at the time) book: Dave Ahl’s 101 computer games in Basic. I figured out that some statements just would not work, which ones needed small changes and I even figured out how to make some work by making a ‘gosub’ function-which is what I called a subroutine then.  It took me several weeks, but i got the game to work. Then, I found out, that my Dad already had a version that worked and was specifically for that version of Tiny Basic.  At first, I was upset. All that time I wasted.  Something struck me though…I had a blast making it work.  That is what he had hoped would happen. 

It paid off too.

Now, I had the bug in me. I WANTED to figure out and learn this programming stuff.  I started making small programs…mostly code that made Tiny Basic do thing it was not supposed to do. Like string handling and ‘graphics’ by making the cursor move about the screen and ‘drawing’ with ASCII characters.

I also got my very own computer. 

That computer, based on the National Semiconductor SC/MP, had 16k of RAM (quite a bit then) and a version of Tiny Basic called NI/BL.  Nibble, as I called it, was quite sophisticated for its day. Written for control applications (the SC/MP was an industrial controller, much like the ATMEL line of microcontrollers) Nibble was able to directly talk to the hardware, had the DO-UNTIL construct for looping, direct memory addressing, direct serial line addressing and memory management.  The computer also a cursor addressable video terminal and cassette I/O, which required me to write a ‘loader’ application in Nibble.  I could save my code just by typing LIST and pressing record, but I had to write code to load it back because the cassette was too fast for the input routine of Nibble.  I had to read the tape, 128 bytes at a time, poke it into a memory page, wait 1 second, and get more code.  The cassette was controlled by a relay, so I could start and stop it as needed. A 2K program took a couple of minutes to load, but it was much faster than typing.  I eventually had a paper tape reader and punch as well.

Ferguson-BigBoard-IBy now, my Dad had a disk drive based Z80 computer and something called ‘CP/M’.  It was a computer made from the ‘furgeson big board’.  The Big Board was very close to the design of modern day motherboards: integrated memory, cpu logic, video terminal and disk controller on one board.  Prior to that, we used the ‘S-100’ bus.  In this setup, the ‘motherboard’ only contained the connectors for the bus itself and no real logic.  Some had a power supply, most did not.  Each piece of the computer was on a separate board.  The Big Board, however, had it all on the SAME board.   It was very cool and was used as the design in the first real ‘personal’ computer from Xerox: the Xerox 820.  I had one.  My dad was able to get the board and built it into a desk, along with two 8 inch disk drives, keyboard, monitor and a printer.  I was set now.  In the interim, I also bought a ZX-81 and got a TRS-80 Color Computer. But, the Xerox is what I did my ‘real’ stuff on and the others were relegated to games or collected dust. 

But…

Before the Xerox 820, my passion was the ZX-81 because I BUILT IT.  zx81adI bought the kit with money got back on my very first income tax refund.  Yep. $99 was sent to Sinclair for the kit.  Wow, I built it and…it did not work.  In looking at my work and the schematic, my Dad figured out that I was missing a resistor…to pull the Z80 reset pin low (I think) which allowed it to start up. I may have that backward, it has been so long. Once I soldered the resistor into place (there was a spot on the board, and it was on the schematic, but it was missing from the parts list and instructions) the Zed Ex came to life. I was thrilled. My Dad, he was unimpressed.  Not sure why, but he always hated Sinclair and anything Uncle Clive ever did. That little computer was awesome. To this day, I wish I still had the six or so that I had (I collected them for a bit, was going to make something great…never did.)  This thing introduced me to wanting to get into electronics more, but that waited until recently with my Arduino stuff.

The TRS-80 Color Computer also grabbed my heart.  I had one well into the late 1990’s or early double 00’s.  I don’t remember when, but I gave it to some kid at a hamfest.  Games, peripherals, the computer, etc.  He was so excited. I hope it inspired him. At any rate, the CoCo introduced me to GUI’s too.  I wrote a couple in Extended Basic.  Went on to write one in assembler, but it sucked.

Looking back, however, I think I was happiest on that 2650 and the SC/MP. They were, comparatively speaking, so basic and so primitive and the things I could do with them. Man, that was exciting. Exciting enough to keep me interested (well, there was that time when I discovered the opposite sex, but that is something for another time…and blog) in pursuing programming as a career.

I look back with much fondness and some sadness as well.  Those were the days when I bonded with my Dad.  Learned quite a bit and was genuinely excited.  Names like Les Soloman, Don Lancaster and Dave Ahl were the ‘rock stars’ of my world.  They were among the founders of the home computer revolution that you never hear about. Sure, I saw Microsoft rise, witnessed Apple’s few innovations (Apple ][, Apple //c) and saw IBM create an entire industry (the Wintel computer) but, more importantly, that time with my Dad and a small number of class mates in high school. Neil, Patrick…you guys rock.  Sadly, though, those computers are history and my Dad…well he is too.

I miss those days.

Advertisements

A Timex-Sinclair 1000 is reborn (using the Half-Byte Console)

zx81adThe Sinclair ZX-81 is one of my favorite computers. I bought the kit version, back in 1981, with some money I got from a tax return. I was in heaven. I bought a COMPUTER, one I can put together. I did it and, with my Dad’s help, it worked. (The resistor on the reset pin of the Z80 chip was missing, luckily, he had tons of them.)  Sure, I already had messed around with computers, for years at that point, and had one of my own that my Dad had built me a few years before (a SC/MP based computer, very cool, even today.) But, this one had GRAPHICS! Glorious black and white graphics. I could make a video game. WOW!

Eventually, I had a couple of ZX-81’s, six or seven Timex Sinclair 1000’s, a TS-1500 and one or two WP_20140708_006of the color versions, TS2068, maybe, not sure.  I loved that whole line of computers. Sadly, though, I don’t have any of them left. I did, however, bid on and win an auction for a TS-1000 (twenty bucks, with shipping.) I don’t know if it works or not, I never even bothered to power it up.

Why didn’t I power it up?

Good question.

Well, I had a different idea for it in mind. I wanted to put my newly minted Half-Byte Console in the case. So, that is what I’ve done.

WP_20140708_018I built up the console, leaving off most of the connectors and headers. This way, I can wire connectors that will be mounted on the case and not the board. I had to improvise with the PS/2 keyboard connector and, in hindsight, I should have used a wired extender cable instead of the board mounted connector, but, I made it work.

The RCA Video and Audio connectors were panel mount and fit nicely. The power adapter connector somewhat fits. I had to do a little trimming, but, it more or less fits.

For the Nunchuck connector, I had to do a little trim work on the back of the TS-1000 case, but it fits nicely. Same with the three pin serial header (so I can communicate with a PC or other device.)photo 1

I used some sticky back pads to secure the board, I didn’t want to cut up the case or drill a lot of holes so I could return it to its original function if I wanted to do so in the future. I may sell this at some point, I don’t know yet.

The one thing I’d really like to do is make the TS-1000 membrane keyboard work with the console. Right now, the information I’ve found requires the use of pins on the 328 that I am using for the video and audio and the Nunchuck. Maybe I’ll use an UNO Pro mini just for the keyboard.  I’ll have to give that some thought. But, that would be cool.  A new retro computer.

While I am no Ben Heckendorn, I am pleased with the way this turned out. I’m not a modder, but I could grow to like it.

photo 2I am going to add the ZX/TS1000 graphics characters to the 4×6 font for TVOut and recompile Half-Byte Tiny Basic to more look like the TS-1000. The Half-Byte Console even has the same RAM-2K. Ah, I love the ‘80s.

For more information on the Half-Byte Console and Half-Byte Tiny Basic, go here and here.  You can also search the blog for posts on both the console and Tiny Basic.

For more information on the Timex Sinclair line, go here.  You can also build your own ZX80/81. Go here to read more.

The archive. Confetti. Type in programs. Read.

syncmagAs part of putting together a package of materials for Half-Byte Tiny Basic, I came across several gems that either reminded me of my early computing days or are cool enough for me to write about.

One such site is the Internet Archive. (The link takes you to the magazine rack. From there, use the search bar near the top of the page, and search for, say, ‘Byte’. Or computer magazines.)

Now, this site has a treasure trove of material, including the Way-Back machine. The Way-Back machine allows you to enter a URL and then see it in various incarnation through the years. It’s really interesting to see how the Internet and web design have developed. But, that’s not what caught my eye, as cool as that is.

No, it was the site’s collection of magazines, specifically, computer magazines. You can download scanned images of whole magazines, going back to the mid 1970’s.  I remember quite a few and even had many of them. At one point, I had the first ten years of Byte Magazine, THE computer magazine of the 1970’s and ‘80s.

Now, the magazines I was looking for, Dr Dobb’s (another one that I had the first seven years worth, but, no longer) Journal and a bunch of Sinclair ZX related magazines. Unfortunately, CMP has Dr Dobbs, so you won’t find it here, however, you will find Byte and a whole slew of Tandy, Commodore, Atari and, of course, Sinclair related magazines.

The quality of the scans various widely. Some are really nicely done and care taken to line them up correctly, etc. BUT…some were not cared for very well. But, hey, they ARE scanned and there’s no charge to download them, so…all considered, it is a treasure trove that I’ll not complain about.

So, I did find a few things that I was looking for, namely some type-in BASIC programs.  I am putting together a booklet of short type-in programs-games-to use on the Half-Byte Console and Tiny Basic. And, the Sinclair flavour of BASIC is close and the ZX-81 lunarzx81specs are very close to the Half-Byte Console, so the conversion is pretty easy. I will also be writing about such a conversion process. The downside is that there are few examples of Tiny Basic software, or other BASIC for that matter.  Type in software is a thing of the past and pre-dates the Internet. 

I certainly remember the thrill of getting my next issue of Computer Shopper, Compute! or Sync Magazine and anxiously looking at the type in games or utilities and converting them to whatever computer I wanted to use them on.  I had my ZX-81, my TRS-80 Color Computer and, eventually, a Xerox 820 that ran CP/M and several flavors of Basic. Of course, the 32k Extended Microsoft Basic was my favorite, but the Xerox had no graphics, so I spent a lot of time on the ZX or the CoCo. 

Typing in games was great. I got to learn what the program did, hone my typing skills and felt accomplished when I typed that last line, saved and then type RUN.  Inevitably, of course, I would have made a mistake and would have to fix it. Sometimes, I made no mistake-the listing was just wrong. Other times, I made a mistake converting the code and would have to correct it. Sometimes, that took minutes. Other times…DAYS. Oh my. I remember one game that took me hours to type in on my CoCo. I had an original CoCo, which had a crummy key board. UGH.  I hated that thing.  Never replaced it though.  Should have. 

Anyway, I get through typing in this game. Saved it on two different tapes, just to make sure. I type RUN, press RETURN and…nothing.  The damned computer hung.  I had to TURN IT OFF! Now, this meant re-loading the game and trying to figure out why it choked.  Loading anything from a tape was a laborious and risky task.  Will it load? You pray, even if you don’t believe, you pray that the Tape Gods are  favorable to you today and will allow the software to load.  Fortunately, I had not upset the Tape Gods and all was good.  I figured out that I had reversed two numbers that were in some MACHINE CODE that was getting POKED into memory and run.  So, I fix that.  Re-save. On three tapes, this time. I want to be safe.

I type RUN.

Boom! Confetti!

It started. 

I followed the directions and pressed the space bar to start the game.

Boom! No Jimmy Johnson. No Confetti. Only a damned Syntax Error and that stupid multi-colored cursor blink at me.

This problem, a multi-statement line where I left out a bloody colon in the middle of the line. That…took a week to find.  I ended up just retyping the line. Three times! I mistyped that same line two different times. The third time was the charm.  This time, there was confetti. And, it was good.

Ah, those were the days. ‘Free’ and open source software before it was called that. Well, not totally free. You still had to buy the magazine.

So, sit right back my friends, you are sure to get a smile…or a chuckle. Once the console is out of the door, expect to see a few type in games or utilities on these pages from time to time.